0
How I learned to use SQL             and then learned not to use it                            Henrik Ingo                ...
Henrik Ingo                      open source technology and                      strategy specialist                      ...
19942011-07-26   OSCON 2011   3
1994USSR fell 4 years ago     Finland yet to win first gold medal in hockey             Windows 3.0 replacing MS-DOS      ...
1994                                                   SQL                                            Standard Interpreted...
19972011-07-26   OSCON 2011   6
19972011-07-26   OSCON 2011   7
Learning SQLNoSQL advocates say:               Henrik says:    SQL is hard to learn               MS Access easy to learn ...
1997                                                  WorldWideWeb                                           Free Software...
19972011-07-26   OSCON 2011   10
1997ERROR: Could not connect to MySQL: ERROR 1040: Too many connections                             "Slashdotted"         ...
History of MySQL1985... ISAM key-value store - Trivia: Access is also ISAM db                        Data Warehousing: bul...
1997"Read-mostly" - No MVCC - Not transactional                                  Not crash safeScales well for 2-3 CPUs - ...
1997This site is currently offline for nightly backup.Please come back after 15 minutes.                       (No online ...
1997-2007 InnoDB and BDB  - Transactions!                    Replication                                      - Statement ...
2007                     Users are not happy!We want a database that- does not conform to SQL standard- has no transaction...
You see where Im going, dont you...2011-07-26                 OSCON 2011                17
Sorry, that was a cheap shot...                  ...I just couldnt resist :-)2011-07-26              OSCON 2011           ...
It really started with...2011-07-26          OSCON 2011           19
Actual questions from Memcache users, ca 2007:How can I dump all recordsfrom a memcached instance?                 How can...
Answers from Memcache developersIts a cache. Please use ittogether with a real database!             Why would you ever   ...
So clearly there was a market demand...2011-07-26                  OSCON 2011                 22
Things NoSQL guys do really well        No SQL (parsing)        Schemaless = Win! for agile development                 HA...
Best of both worldsNoSQL                                    MySQL    No SQL                                   HandlerSocke...
Clayton Christensen on Disruptive innovation2011-07-26                     OSCON 2011                   25
Clayton Christensen on Disruptive innovation                     First they ignore you                   Then they laugh a...
It used to be2011-07-26     OSCON 2011    27
The future is2011-07-26     OSCON 2011    28
The future is             All Open Source2011-07-26          OSCON 2011    29
Upcoming SlideShare
Loading in...5
×

Froscon2011: How i learned to use sql and then learned not to use it

2,107

Published on

Keynote for the Open DB Camp track (developer room) at Froscon2011. The point is to compare the history of MySQL with the evolution of new NoSQL systems.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,107
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Froscon2011: How i learned to use sql and then learned not to use it"

  1. 1. How I learned to use SQL and then learned not to use it Henrik Ingo Froscon 2011-08-202011-07-26 OSCON 2011 1
  2. 2. Henrik Ingo open source technology and strategy specialist active in MySQL, Drupal communities current: Senior Performance Architect at Nokia Ovi worked in mobile and LAMP with business management, sales, R&D author of "Open Life: The Philosophy of Open Source" www.openlife.cc henrik.ingo@openlife.cc2011-07-26 OSCON 2011 2
  3. 3. 19942011-07-26 OSCON 2011 3
  4. 4. 1994USSR fell 4 years ago Finland yet to win first gold medal in hockey Windows 3.0 replacing MS-DOS Windows 95 did not yet exist I learn how to write .bat scripts from my dad Word 6.0 replacing WordPerfect 5.1 Excel 5.0 replacing Lotus I had not yet used Internet2011-07-26 OSCON 2011 4
  5. 5. 1994 SQL Standard InterpretedC++ & Visual Basic Flexible and expressive command line env LAN "SQL for secretaries" Printer Database Good for English speakers 2000: Bad for IDE w IntelliSense Client - Server architecture Stored procedures rule DBA is king of business logic2011-07-26 OSCON 2011 5
  6. 6. 19972011-07-26 OSCON 2011 6
  7. 7. 19972011-07-26 OSCON 2011 7
  8. 8. Learning SQLNoSQL advocates say: Henrik says: SQL is hard to learn MS Access easy to learn To really scale, you must Darn, I always got de-normalize normalization Most people dont get I know, teaching n:n normalization right relations was always fun Impedance mismatch INSERT INTO t ... between oo and sql serialize($obj) I just need a simple key- SELECT value FROM t value store WHERE key=?;2011-07-26 OSCON 2011 8
  9. 9. 1997 WorldWideWeb Free Software 1998: Open Source LAMP stack Where P = Perl, runs +90% of web "apps" Oracle doesnt support Linux PostgreSQL doesnt support Windows MiniSQL has poor performance Wish I had a simple data store for my web apps that was really fast and scalable and Free Software...2011-07-26 OSCON 2011 9
  10. 10. 19972011-07-26 OSCON 2011 10
  11. 11. 1997ERROR: Could not connect to MySQL: ERROR 1040: Too many connections "Slashdotted" Web jargon ca 1997. "Your site is down because it isnt web scale." 2011-07-26 OSCON 2011 11
  12. 12. History of MySQL1985... ISAM key-value store - Trivia: Access is also ISAM db Data Warehousing: bulk loads, reporting. - Flexible attitude to errors during insert SQL support added (HTML) ODBC (Excel) - BI tool #1 1995.. Released under FOSS-like license2011-07-26 OSCON 2011 12
  13. 13. 1997"Read-mostly" - No MVCC - Not transactional Not crash safeScales well for 2-3 CPUs - This will work well for the next 10 years Not ANSI SQL2011-07-26 OSCON 2011 13
  14. 14. 1997This site is currently offline for nightly backup.Please come back after 15 minutes. (No online backups) 2011-07-26 OSCON 2011 14
  15. 15. 1997-2007 InnoDB and BDB - Transactions! Replication - Statement based - Asynchronous SAP partnership - 4 CPU servers - Support SQL-92 "enterprise" features - Oracle acquires InnoDB and BDB Online backup tool2011-07-26 OSCON 2011 15
  16. 16. 2007 Users are not happy!We want a database that- does not conform to SQL standard- has no transactions- is not crash safe- impossible to do consistent backups- but scales to more than 4 cores!2011-07-26 OSCON 2011 16
  17. 17. You see where Im going, dont you...2011-07-26 OSCON 2011 17
  18. 18. Sorry, that was a cheap shot... ...I just couldnt resist :-)2011-07-26 OSCON 2011 18
  19. 19. It really started with...2011-07-26 OSCON 2011 19
  20. 20. Actual questions from Memcache users, ca 2007:How can I dump all recordsfrom a memcached instance? How can I make memcached highly available? Backups?2011-07-26 OSCON 2011 20
  21. 21. Answers from Memcache developersIts a cache. Please use ittogether with a real database! Why would you ever want to do that? No no no, youre doing it wrong!2011-07-26 OSCON 2011 21
  22. 22. So clearly there was a market demand...2011-07-26 OSCON 2011 22
  23. 23. Things NoSQL guys do really well No SQL (parsing) Schemaless = Win! for agile development HA with quorum consistency: R + W > N Transparent sharding Graph databases N:N relationships, whats the big deal? Actually makes sense to give up on SQL! Map Reduce Bypass ETL, get clean data Implemented in Java or Python (or Erlang)2011-07-26 OSCON 2011 23
  24. 24. Best of both worldsNoSQL MySQL No SQL HandlerSocket . Memcache API, NDB API Simple key-value store BLOB . SELECT v FROM ... WHERE k=? ...and secondary indexes Functional indexes Virtual columns, etc... Quorum consistency Synchronous replication . Galera, NDB Graph databases Damn N:N relations! Map Reduce against text files Map Reduce against RDBMS Java and Python C++ can be done right . Drizzle2011-07-26 OSCON 2011 24
  25. 25. Clayton Christensen on Disruptive innovation2011-07-26 OSCON 2011 25
  26. 26. Clayton Christensen on Disruptive innovation First they ignore you Then they laugh at you Then they fight you Then you win - Gandhi2011-07-26 OSCON 2011 26
  27. 27. It used to be2011-07-26 OSCON 2011 27
  28. 28. The future is2011-07-26 OSCON 2011 28
  29. 29. The future is All Open Source2011-07-26 OSCON 2011 29
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×