0
Raj Kissu Rajandran Life of A GsoC Student
Google Summer of Code <ul><li>What Is It? </li></ul><ul><li>How I Got Involved </li></ul><ul><li>The Project:  </li></ul><...
What Is A BLOB? <ul><li>Binary Large Object </li></ul><ul><li>Commonly used to store files in databases </li></ul><ul><li>...
BLOBStreaming <ul><li>What Is It? </li></ul><ul><li>Advantages: </li></ul><ul><ul><li>Avoid “dangling” references </li></u...
Goals of BLOBStreaming <ul><li>Store BLOBs of any size </li></ul><ul><li>Stream BLOBs in and out of databases </li></ul><u...
What Is phpMyAdmin? <ul><li>Web-based GUI for managing MySQL </li></ul><ul><li>Open Source community-driven project </li><...
What Is PBXT? <ul><li>Pluggable storage engine (MySQL v5.1.x) </li></ul><ul><li>Supports Transactions </li></ul><ul><li>AC...
What Is MyBS? <ul><li>Storage Engine </li></ul><ul><li>Stores/Streams BLOBs (MySQL v5.1.x) </li></ul><ul><li>Built-in Web ...
BLOBStreaming Architecture Reproduced with permission from Paul McCullagh, (c) 2008 PrimeBase Technologies
BLOBStreaming Support in phpMyAdmin <ul><li>How It Works: </li></ul><ul><ul><li>Plugin Detection </li></ul></ul><ul><ul><l...
PROJECT DEMONSTRATION
Project Limitations <ul><li>CURL </li></ul><ul><li>No uploading to BLOB Repository via FTP </li></ul><ul><li>Upload Limita...
Future Goals <ul><li>Feature Customisation </li></ul><ul><li>Support for CURL alternatives (like wput) </li></ul><ul><li>U...
Resources <ul><li>phpMyAdmin: </li></ul><ul><ul><li>http://www.phpmyadmin.net </li></ul></ul><ul><li>PBXT: </li></ul><ul><...
Q & A
THANKS FOR LISTENING!
Upcoming SlideShare
Loading in...5
×

Life of a GSoC Student

1,083

Published on

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

  • Be the first to like this

No Downloads
Views
Total Views
1,083
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Life of a GSoC Student"

  1. 1. Raj Kissu Rajandran Life of A GsoC Student
  2. 2. Google Summer of Code <ul><li>What Is It? </li></ul><ul><li>How I Got Involved </li></ul><ul><li>The Project: </li></ul><ul><ul><li>BLOBStreaming Support in phpMyAdmin </li></ul></ul><ul><li>Mentors: </li></ul><ul><ul><li>Marc Delisle </li></ul></ul><ul><ul><li>Paul McCullagh </li></ul></ul>
  3. 3. What Is A BLOB? <ul><li>Binary Large Object </li></ul><ul><li>Commonly used to store files in databases </li></ul><ul><li>File types: MP3s, Videos, Photos, etc </li></ul><ul><li>Advantages of BLOBs: </li></ul><ul><ul><li>Transactional operations </li></ul></ul><ul><ul><li>Consistent Backups </li></ul></ul><ul><li>Disadvantages of BLOBs: </li></ul><ul><ul><li>BLOB columns slow down reading of tables </li></ul></ul><ul><ul><li>Databases become large easily </li></ul></ul>
  4. 4. BLOBStreaming <ul><li>What Is It? </li></ul><ul><li>Advantages: </li></ul><ul><ul><li>Avoid “dangling” references </li></ul></ul><ul><ul><li>Fast backups </li></ul></ul><ul><ul><li>Fast replication </li></ul></ul><ul><ul><li>Better scalability </li></ul></ul><ul><li>Requires: </li></ul><ul><ul><li>MySQL, phpMyAdmin </li></ul></ul><ul><ul><li>PBXT, MyBS </li></ul></ul>
  5. 5. Goals of BLOBStreaming <ul><li>Store BLOBs of any size </li></ul><ul><li>Stream BLOBs in and out of databases </li></ul><ul><li>Open system usable by all storage engines </li></ul><ul><li>Standardised client API for applications </li></ul>
  6. 6. What Is phpMyAdmin? <ul><li>Web-based GUI for managing MySQL </li></ul><ul><li>Open Source community-driven project </li></ul><ul><li>SourceForge.Net Community Choice Awards 2008 Winner: </li></ul><ul><ul><li>Most Likely to Be the Next $1B Acquisition </li></ul></ul><ul><ul><li>Best Tool or Utility for SysAdmins </li></ul></ul><ul><li>SourceForge.Net Community Choice Awards 2008 Finalist: </li></ul><ul><ul><li>Best Tool or Utility for Developers </li></ul></ul>
  7. 7. What Is PBXT? <ul><li>Pluggable storage engine (MySQL v5.1.x) </li></ul><ul><li>Supports Transactions </li></ul><ul><li>ACID Compliance (PBXT v1.0 onwards) </li></ul><ul><li>Referential Integrity </li></ul><ul><li>Supports BLOBStreaming </li></ul><ul><li>Open Source </li></ul><ul><li>Developed by PrimeBase Technologies (http://www.primebase.org) </li></ul>
  8. 8. What Is MyBS? <ul><li>Storage Engine </li></ul><ul><li>Stores/Streams BLOBs (MySQL v5.1.x) </li></ul><ul><li>Built-in Web Server </li></ul><ul><li>BLOB Repository </li></ul><ul><li>Provides API for storage engines to reference/dereference BLOBs </li></ul><ul><li>Open Source </li></ul><ul><li>Developed By PrimeBase Technologies </li></ul>
  9. 9. BLOBStreaming Architecture Reproduced with permission from Paul McCullagh, (c) 2008 PrimeBase Technologies
  10. 10. BLOBStreaming Support in phpMyAdmin <ul><li>How It Works: </li></ul><ul><ul><li>Plugin Detection </li></ul></ul><ul><ul><li>Supported Databases Detection </li></ul></ul><ul><ul><li>CURL Detection </li></ul></ul><ul><ul><li>Upload to BLOB Repository </li></ul></ul><ul><ul><li>Streaming of BLOBs via BLOB References </li></ul></ul><ul><ul><li>Removal of BLOB References </li></ul></ul>
  11. 11. PROJECT DEMONSTRATION
  12. 12. Project Limitations <ul><li>CURL </li></ul><ul><li>No uploading to BLOB Repository via FTP </li></ul><ul><li>Upload Limitations imposed by PHP: </li></ul><ul><ul><li>memory_limit </li></ul></ul><ul><ul><li>max_execution_time </li></ul></ul><ul><ul><li>upload_max_filesize </li></ul></ul><ul><ul><li>post_max_size </li></ul></ul>
  13. 13. Future Goals <ul><li>Feature Customisation </li></ul><ul><li>Support for CURL alternatives (like wput) </li></ul><ul><li>Upload to the BLOB repository via FTP </li></ul><ul><li>Multipart/form-data handling </li></ul>
  14. 14. Resources <ul><li>phpMyAdmin: </li></ul><ul><ul><li>http://www.phpmyadmin.net </li></ul></ul><ul><li>PBXT: </li></ul><ul><ul><li>http://sourceforge.net/projects/pbxt </li></ul></ul><ul><li>MyBS: </li></ul><ul><ul><li>http://sourceforge.net/projects/mybs </li></ul></ul><ul><li>Project SVN: </li></ul><ul><ul><li>svn://sebastianmendel.de/phpMyAdmin_gsoc2008_bs </li></ul></ul><ul><li>PBXT/MyBS Blog: </li></ul><ul><ul><li>http://pbxt.blogspot.com </li></ul></ul><ul><li>Project Blog: </li></ul><ul><ul><li>http://code.kissu.org </li></ul></ul>
  15. 15. Q & A
  16. 16. THANKS FOR LISTENING!
  1. A particular slide catching your eye?

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

×