Trouble with nosql_dbs


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Trouble with nosql_dbs

  1. 1. Iran Hutchinson
  2. 2.  I work for InterSystems who drives the new NoSQL project. Email: Twitter: #iranic Skype: chatwithiran
  3. 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. 4.  Edgar Frank “Ted” Codd Known for 12 Rules (0 ~ 12) for Relational Data Systems
  5. 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. 6.  Simple APIs  Java Example: 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. 7.  Proven Available talent / Well-known AD-Hoc querying Scalable (limits?) Free and Commercial production support
  8. 8.  Interface for data access Limited horizontal scalability? Impedance mismatches Programming model In-flexible data model
  9. 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. 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. 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. 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. 13.  This depends on your use case. Example  es Compare your problems to others. Example: 
  14. 14.  lists 122 today. Depends on your model selection. Most likely choose well-known project. Don’t forget about shared risk!
  15. 15.  Some solutions have no querying When available query languages differ Lack of general AD-Hoc querying – “no” SQL NOTE: Toad for Cloud
  16. 16.  Skills Data Model Data format Tools Standards?
  17. 17.  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
  18. 18.  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
  19. 19.  Two Systems  NoSQL + SQL/RDBMS Updates  Real-time  Asynchronous or Batch Data SQL/RDB NoSQL Mapper / MS Translato r
  20. 20.  One system does both NoSQL and SQL
  21. 21.  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
  22. 22.  Core of InterSystems Caché Free for development and production Simple APIs Java and JavaScript Sponsored by InterSystems
  23. 23.  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
  24. 24.  Hadoop/Hbase Cassandra MongoDB CouchDB Riak Couchbase Neo4J
  25. 25.  InterSystems Caché SimpleDB Azure Table Storage Google App Engine Data Storage Mark Logic Server Infinite Graph Riak (has open source version) Berkely DB