why organizations are looking at alternative database technologies – introduction to nosql

20
An Introduction to NoSQL: Theory and Practice Nosh Petigara [email protected] @noshinosh

Upload: dataversity

Post on 10-May-2015

1.498 views

Category:

Technology


3 download

DESCRIPTION

This webinar will first walk through the main forces driving developers and IT organizations to adopt non-relational or NoSQL databases. Next it will cover the key concepts and terminology used in the NoSQL space. Finally, using MongoDB as an example, the webinar will highlight examples of how organizations have put NoSQL technology to use in order to drive their business objectives.

TRANSCRIPT

Page 1: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

An Introduction to NoSQL:Theory and Practice

Nosh [email protected]@noshinosh

Page 2: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Today

• Why new databases?

• What is ‘NoSQL’?

• A brief introduction to MongoDB

• Some real-world use cases

Page 3: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Database Evolution

RDBMS

Oracle, MySQL,

PostgreSQL

OLAPNetezza, Vertica, Hadoop

NoSQLMongoDB, CouchDB, Cassandra

Page 4: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Why NoSQL?

• explosion of data and our desire to make meaningful decisions from that dataBig Data

• the existing data model is an impediment to agile development.

New Programming

models

• The Cloud is starting to become the dominant deployment architecture. Databases need to take advantage of horizontal scaling capacity

New Hardware Architecture

Page 5: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Trends

Page 6: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

What should my database be like?

• Enable faster development cycle• Deal with structured and

unstructured dataAgile

• Billions of objects, high read/write volume, terabytes/petabytesScalable

• Cost effectively operationalize data in cloud-like environmentsCloud-ready

Page 7: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

The Great Divide

Sweet spot: Agile, Flexible, Scalable

Page 8: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

How do I evaluate a NoSQL/BigData Solution?

• Real-time vs. Batch

• Data Model

• Distribution Model + Consistency

Page 9: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Some comparisons

• Realtime vs. Batch• Realtime: MongoDB, Cassandra, Membase, RDBMS• Batch: Hadoop, traditional data warehousing/BI

• Data models• Relational: Oracle, MySQL, etc

• Key-value: Membase, Redis• Document: MongoDB, CouchDB• Column/Tabular: Cassandra

• Distribution & consistency• Eventual consistency: Cassandra, Dynamo (S3, SimpleDB), RIak• Regular consistency: MongoDB, Oracle, etc

Page 10: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Some commonalities

• No Joins

• Relaxed transactional semantics

• No joins + simple transactions -> easier horizontal scalability

Page 11: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

What to look for

• Can I model my data

• Can I query my data

• Can I update my data

• Does it support my operational needs

Page 12: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

NoSQL in Practice: MongoDB

• Open source

• Non-relational, document-oriented

• Dynamic Schemas

• Regular consistency: Scale-out by auto-sharding (Similar to Google File System)

Page 13: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Data as Documents: A blog post

{_id:“A4304”author: “nosh”,date: 22/6/2010,title: “Intro to MongoDB”text: “MongoDB is an open source..”,tags: [“webinar”, “opensource”]comments: [{

author: “mike”, date: 11/18/2010, txt: “Did you see the…”,votes: 7 },….]

}

Primary key

Arrays

Embedded documents

Simple values

Page 14: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

MongoDB is:

Horizontally Scalable

{ author: “roger”, date: new Date(), text: “Spirited Away”, tags: [“Tezuka”, “Manga”]}

Document Oriented

Application

Page 15: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Photo Meta-Data

Solution:• Used MongoDB instead of Oracle

Results:• Developed application in one sprint cycle• 500% cost reduction compared to Oracle• 900% performance improvement compared to Oracle

Problem:• Store metadata for billions of photos and videos• Business needed more flexibility than Oracle could deliver

http://10gen.com/customers

Page 16: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Solution:• Used MongoDB to replace Google Analytics / Omniture options

Results:• Less than1week to build prototype and prove business case• Rapid deployment of new features (1/day, 1/week)

Real-time Customer Analytics

Problem:• Track customer activity in real-time across huge • Deal with massive data volume across all customer sites

http://10gen.com/customers

Page 17: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Solution:• Used MongoDB to replace MySQL

Results:• Less than1week to build prototype and prove business case• Rapid deployment of new features (1/day, 1/week)

Data Archiving

Problem:• Archive years of postings for compliance• RDBMS could not handle evolving schemas

http://10gen.com/customers

Page 18: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Next Steps

[email protected]• @noshinosh

• http://mongodb.org• http://10gen.com/presentations

• http://10gen.com/jobs

Page 19: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

Next Sp

Page 20: Why Organizations are Looking at Alternative Database Technologies – Introduction to NoSQL

• Easy to start• Easy to develop• Easy to scale