Quick Upload

Loading...
Flash Player 9 (or above) is needed to view slideshows. We have detected that you do not have it on your computer.To install it, go here
 
Post to Twitter Post to Twitter
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons
  • angelamaiers
    locifer favorited this 2 weeks ago
SlideShare is now available on LinkedIn. Add it to your LinkedIn profile.

Amazon S3 storage engine plugin for MySQL

From kapil, 2 years ago Add as contact

1215 views | 0 comments | 1 favorites | 23 downloads | 2 embeds (Stats)

Categories

Technology

Tags

Groups/Events

Embed in your blog options close
Embed (wordpress.com) Exclude related slideshows Embed in your blog

More Info

This slideshow is Public
Total Views: 1215 on Slideshare: 1200 from embeds: 15
Most viewed embeds (Top 5): More
All Embeds: Less
Flagged as inappropriate Flag as inappropriate

Flag as inappropriate

Select your reason for flagging this slideshow as inappropriate.

If needed, use the feedback form to let us know more details.

Slideshow Transcript

  1. Slide 1: A Storage Engine for Amazon S3 How to store a hundred billion BLOBs without buying a single disk.
  2. Slide 2: Who is this guy?
  3. Slide 3: http://fallenpegasus.com/code
  4. Slide 4: Storage Engine
  5. Slide 5: Protocol Translator
  6. Slide 6: Traditional Storage Engines use the local disk
  7. Slide 7: Network Storage Engines
  8. Slide 8: Federated ODBC HTTP MemCacheD and...
  9. Slide 9: S3
  10. Slide 10: What is S3?
  11. Slide 11: Petabytes?!
  12. Slide 12: This can't be free
  13. Slide 13: Why do I want to use it?
  14. Slide 14: “An empty disk costs the same as a full one.”
  15. Slide 15: Can I move my existing database over?
  16. Slide 16: Translating S3 to MySQL AWS Account → CREATE SERVER • S3 Bucket → Table • S3 Item → Row • S3 Item Key → VARCHAR PRIMARY KEY • S3 Item Contents → BLOB or VARCHAR •
  17. Slide 17: CREATE SERVER 'MyAWSAcct' FOREIGN DATA WRAPPER 'AWS' OPTIONS (USER 'aws id string', PASSWORD 'aws secret string');
  18. Slide 18: CREATE TABLE 'bierce' ( 'word' VARCHAR(255) NOT NULL PRIMARY KEY, 'defn' BLOB) CHARSET=utf-8 ENGINE=AWSS3 CONNECTION='awss3 DevilDictionary $server MyAWSAcct';
  19. Slide 19: SELECT defn FROM bierce WHERE word='WIT';
  20. Slide 20: SELECT defn FROM bierce WHERE word='WIT'; WIT, n. The salt with which the American humorist spoils his intellectual cookery by leaving it out.
  21. Slide 21: INSERT INTO bierce (word, defn) VALUES ('AUTHOR', 'One noted for confusing bitterness with humor.');
  22. Slide 22: DELETE FROM bierce WHERE word='AUTHOR';
  23. Slide 23: So, what's it good for?
  24. Slide 24: “If you build it, they will come.”
  25. Slide 25: Saving EC2 work • SQL CMS for S3 virtual hosting • Huge list of persistent primary keys • Big slow BLOBs, to join against fast local tables. • “The Image Server Problem” • ... and more •
  26. Slide 26: Transactions?
  27. Slide 27: What do you mean, “No temporal guarantees”?!
  28. Slide 28: No WHERE clause means “MAKE MONEY FAST” for Amazon
  29. Slide 29: The Future (watch me wave my hands)
  30. Slide 30: Code Improvement • S3 & HTTP Metadata • Multiple Data Columns • Information Schema • Security & Authentication • Transfer & Storage Compression • Streaming BLOB • More Storage Engines •
  31. Slide 31: Code Improvement
  32. Slide 32: S3 & HTTP Metadata
  33. Slide 33: Multiple Data Columns
  34. Slide 34: Sharing a solution with HTTP and MemCacheD Engines
  35. Slide 35: Information Schema
  36. Slide 36: Security & Authentication
  37. Slide 37: Transfer & Storage Compression
  38. Slide 38: (new slide) Streaming BLOBs like PBXT
  39. Slide 39: More storage engines
  40. Slide 40: More storage engines “A Storage Engine for AWS SQS” • There are more AWS services rolling out • Replication distribution via S3 • Cluster persistent storage via S3 • ... and the EC2 holy grail: •
  41. Slide 41: “A Generic Schema Storage Engine for S3”
  42. Slide 42: Back to the present...
  43. Slide 43: “Where do I get it?”
  44. Slide 44: “Where do I get it?” MySQL 5.1 • GPL • http://fallenpegasus.com/code •
  45. Slide 45: “You never write, you never call...”
  46. Slide 46: Suggestions • Use Cases • Bug Reports • Patches • Feature Requests • Support Requests • Gigs & Proposals • mark@fallenpegasus.com
  47. Slide 47: Questions?