Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Database Throwdown Introduction

Quick overview of database concepts, part of PhillyDB's Philly Tech Week event

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

  • Be the first to like this

Database Throwdown Introduction

  1. 1. Database Terminology in 15 minutes or your money back!
  2. 2. Sean Collins@sc68cal
  3. 3. Currently Works With....9AM - 5PM (SQL) Oracle 11gR25-???? (NoSQL) Redis SimpleDB
  4. 4. ConceptsACIDCAPAll of these terms describe thepromises that a database system willabide by.A contract for your data
  5. 5. ACIDAtomicityConsistencyIsolationDurability
  6. 6. AtomicityAll operations will occur, or nonewill occurSimple example: INSERT INTO Names (firstname,lastname) VALUES (Sean, Collins)
  7. 7. ConsistencyAll operations will leave thedatabase in a known good state Keys, Constraints, triggers, etc..Cannot have operations that violatethe rules for your data Customer doesn’t exist Primary key that already exists
  8. 8. IsolationOperations cannot interfere with one-anotherHandle multiple, concurrentoperations (One write, many reads) ina defined manner.
  9. 9. DurabilityCompleted operations are bullet-proof Yank out the power cable Crash the database server processWhen the database server comes backup - database is in a consistentstate - with your data intact.
  10. 10. CAPCAP Theorem - Eric Brewer(Conjecture)Seth Gilbert and Nancy Lynch(Theorem) Consistency Availability Partition Tolerance
  11. 11. ConsistencyAll nodes in a distributed system seethe same data - at that exact moment Simple example: Update item B on node #1, query node #2 about B - get back the updated data
  12. 12. AvailabilitySystem will process requests, despitefailures in individual nodes Not a guarantee that the operation will succeedJust a guarantee that you will get aresponse back No guarantee is made for WHEN you will get a response back
  13. 13. Partition ToleranceSystem will continue to operate, evenwhen arbitrarily many messagesbetween nodes are lost
  14. 14. PICK TWOCAP Theorem asserts that of the threeproperties, a system can only havetwo.
  15. 15. Data TypesRelational Database Tables Columns Rows
  16. 16. Common NoSQL DatatypesKey/ValueColumn StoreDocumentetc....
  17. 17. ACID vs. BASESomeone clever... har har“Basic Availability”“Soft State”“Eventually Consistent”Much prefer CAP theorem - exposes thetradeoffs that you have to choosebetween