NPMG Databases Presentation

Post on 20-Jul-2015

244 views 0 download

Transcript of NPMG Databases Presentation

Databases

Ognyan Angelov

❖ TUES

❖ FMI

❖ Obecto

❖ Snowboard & Tennis

❖ Tea & Sleeping

Databases

❖ Define: “A database is an organised collection of data”

— Wikipedia

❖ In IT we mean DBMS - Database management system

(MySQL, Oracle DB, MongoDB)

History of Databases

How do we use a DB

❖ Command line interface

❖ Some GUI

❖ Adaptor to another technology (Java, Python, etc)

SQL

❖ Structured Query Language

Where is the data stored?

❖ Drive

❖ Cloud

❖ Warehouses

❖ In memory

Types of DBs

❖ Relational (Last 40+ years)

❖ NoSQL (Last ~15 years)

Relational

❖ Schema

❖ Relations

❖ Index

❖ Joins

❖ Transactions

ACID

❖ Atomicity

❖ Consistency

❖ Isolation

❖ Durability

ACID

❖ Atomicity

❖ Consistency

❖ Isolation

❖ Durability

NoSQL

NoSQL

NoSQL

❖ Documents / Key-Value Pairs / Graphs

❖ Big Data

❖ Horizontally Scalable

Example MongoDB

❖ Documents and Collections

❖ Queries

❖ Map Reduce

Common Stacks

❖ PHP+ [ORM] + MySQL

❖ Java + Hibernate + MySQL / Oracle / MongoDB

❖ Python / Ruby + ORM + PostgreSQL

❖ NodeJS + MongoDB

ORM / ODM

❖ Object Relational Mapper

❖ Object Document Mapper

Patterns

❖ Active Record

❖ Data Mapper

Interesting Stuff

❖ Column-oriented DBMS

❖ Multiple DB

❖ Spring Data

❖ DDD - Domain Driven Design

❖ CQRS - Command Query Responsibility Segmentation

What next?

❖ Books: Martin Fowler - Patterns of Enterprise Application

Architecture

❖ Courses: Coursera/EDX

❖ YouTube Videos (e.g. youtu.be/WovfjprPD_I)

❖ Wiki

Thanks :)