2. I work for InterSystems who drives the new
http://globalsdb.org NoSQL project.
Email: iran.hutchinson@intersystems.com
Twitter: #iranic
Skype: chatwithiran
3. … NoSQL Databases
Understanding what they are
Understanding how to leverage their strengths
Understanding their weaknesses
Staying away from hype and religious wars
Fighting your developer demon
4. Edgar Frank “Ted” Codd
Known for 12 Rules (0 ~ 12) for Relational Data
Systems
5. Rule 1: The information Rule
All information is represented in 1 and only 1 way,
namely by values in column positions within rows
of tables
Rule 12: The no subversion Rule
If the system provides a low-level (record-at-a-
time) interface, then that interface cannot be
used to subvert the system i.e. relational security
or integrity constraints.
6. Simple APIs
Java Example: Document.save(myObject)
Seamless language integration
No impedance mismatch
Designed to be horizontally scalable (elastic)
Flexible data model
Majority free and/or Open Source
Free and Commercial production support
7. Proven
Available talent / Well-known
AD-Hoc querying
Scalable (limits?)
Free and Commercial production support
8. Interface for data access
Limited horizontal scalability?
Impedance mismatches
Programming model
In-flexible data model
9. Does not include the underlying data
structure.
B-tree and B+-trees can be fast and efficient
The relational model + SQL can limit B-trees
10. Class of data management systems
inherently
Non-relational
Distributed
Horizontally scalable
With optional schemas
Providing simple APIs
Term Not-Only-SQL recently embraced
Dave Kellog’s Blog Post
11. No to ACID
No to the impedance mismatch with SQL
Dealing with Big Data and Web Scale
High prices from RDBMS vendors
Use commodity hardware
Flexible data models
It’s a cool movement ….
12. No
Remember MUMPS?
SET ^Car("Door","Color")="BLUE”
Remember Multi-value/PICK
MATWRITE array.variable ON file.variable,id. ….
Ever heard of the NoSQL RDB?
13.
14. This depends on your use case.
Example
http://www.mongodb.org/display/DOCS/Use+Cas
es
Compare your problems to others.
Example:
http://wiki.apache.org/hadoop/PoweredBy
15. http://nosql-database.org/ lists 122 today.
Depends on your model selection.
Most likely choose well-known project.
Don’t forget about shared risk!
16. Some solutions have no querying
When available query languages differ
Lack of general AD-Hoc querying – “no” SQL
NOTE: Toad for Cloud
18. Some databases are not as proven
Incomplete NoSQL solutions
You write a larger data management tier
You maintain your business code and
infrastructure code
You have to customize management and
deployment technology and procedures
19. Know your application
Don’t forget the past lessons
Consider a hybrid approach
Fight the desire to Roll-Your-Own-DB
Start small but significant
20. Two Systems
NoSQL + SQL/RDBMS
Updates
Real-time
Asynchronous or Batch
Data SQL/RDB
NoSQL Mapper / MS
Translato
r
22. InterSystems Caché supports SQL and NoSQL
Production NoSQL for 20+ years
APIs for .NET, Java, Perl, Python, etc.
Expanding paradigms for more use cases.
Comes the closest to approach 2
23. Core of InterSystems Caché
Free for development and production
Simple APIs Java and JavaScript
http://globalsdb.org
Sponsored by InterSystems
24. Over time I think we will see
NoSQL features in mainstream databases
NoSQL offerings by more commercial companies
Dominant open source / free NoSQL projects
New definitions of enterprise databases