Your SlideShare is downloading. ×
0
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Arnia-Cubrid - Programatica2010
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Arnia-Cubrid - Programatica2010

1,471

Published on

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
1,471
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. CUBRID<br />For Your Web Services<br />
  • 2. Content<br />Ciprian Badescu, managing director Arnia Software, development and globalization partner for CUBRID<br />What is CUBRID?<br />CUBRID’s Features for Web Services <br />CUBRID’s Performance for Web Services<br />CUBRID Apps &amp; Tools<br />Contributors &amp; Developers<br />
  • 3. 1. What is CUBRID?<br />
  • 4. 1.1 History<br /><ul><li>Fast Growing and Evolving DBMS</li></ul>- Over 10 Official Releases over last 2 years<br />- Over 90,000 downloads Achieved (Korea, US, Romania, Japan)<br />- Over 1,500 monthly downloads via sourceforge.net<br />Oct. 2010 CUBRID R3.0 with MySQL Compatibility<br />Feb. 2010 CUBRID on Sourceforge.net<br />Aug. 2009 CUBRID R2.0 with HA feature<br />Nov. 2008 CUBRID R1.0 &amp;<br />Open Source Project Launched<br />Jan. 2007.01 CUBRID Development<br />sponsored by naver.com<br />
  • 5. 1.1 History<br /><ul><li>CUBRID’s Agility Catches the Functionality!</li></ul>CUBRID<br /><ul><li>CUBRID Cluster</li></ul>Cluster<br />R3.2<br /><ul><li>MySQL Compatibility</li></ul>R3.1<br />R3.0<br /><ul><li>HA Feature
  • 6. Hierarchical Query</li></ul>R2.0<br /><ul><li>Views
  • 7. Triggers
  • 8. Stored Procedure
  • 9. AUTO_INCREMENT
  • 10. Query Plan Cache
  • 11. Query Result Cache
  • 12. Replication
  • 13. Partitioning
  • 14. Click Counter</li></ul>R1.0<br />MySQL<br />5.5<br />5.4<br />5.1<br />5.0<br /><ul><li>Views
  • 15. Triggers
  • 16. Stored Procedures
  • 17. AUTO_INCREMENT
  • 18. Query Cache
  • 19. Replication
  • 20. Full Text Indexing
  • 21. Partitioning
  • 22. Event scheduler
  • 23. MySQL Cluster
  • 24. XML Functions</li></ul>4.1<br />4.0<br />3.23<br />2003<br />2001<br />2002<br />2004<br />2005<br />2006<br />2007<br />2008<br />2009<br />2010<br />
  • 25. 1.2 Roadmap<br /><ul><li>CUBRID’s Definite Roadmap to be optimized for Web Services</li></li></ul><li>1.3 CUBRID Architecture<br /><ul><li>3-tier Architecture for High Performance and Scalability
  • 26. Various Interfaces and Easy Management Tool Available</li></ul>Interfaces<br /> CUBRID Manager GUI Tool<br />ODBC<br />OLEDB<br />JDBC<br />PHP<br />CCI <br />Python<br />Ruby<br />Brokers<br />CUBRID <br />Manager <br />Server<br /> Connection Pooling<br /> Job Queuing<br /> Monitoring/<br />Logging<br /> Query Parser Optimizer<br />Lock <br />Caching<br /> Transaction<br /> Manager<br /> Object Manager<br />Database Server<br />Utilities<br />(Backup/Restore/<br />Compact/Check/<br />Lock..)<br />Lock<br />Manager<br />Query <br />Manager<br />Storage Manager<br />Log<br />Manager<br />
  • 27. 1.4 Key Features<br />High Performance<br />Multi-threaded server: Multi-CPUs optimization<br />Broker Middleware: Connection pooling<br />Cost-Based Optimizer(CBO)<br />Query Plan Cache, Query Result Cache<br />Key-range Indexing<br />Logging: Group commit, Async-commit, Background archiving<br />Scalability<br />Multi-volumes, Multi-threaded server<br />1:N Replication<br />Table partitions<br />
  • 28. 1.4 Key Features<br />Real-time Backup/Restore<br />On-line Backup<br />Parallel, Compressed Backup<br />Incremental Backup (Full, Level1, Level2)<br />Replication and High Availability<br />Transaction based Replication<br />Broker Duplication, DB Duplication<br />Node Monitoring and Automatic fail-over<br />
  • 29. 2. CUBRID’s Features<br />For Web Services<br />
  • 30. 2.1 High Availability<br /><ul><li>Can Handle Sudden Increase of Traffic</li></ul>+ 5000 visits/sec.<br />similar requests<br />Sends only one query to the server <br />30 visits/sec.<br />+5000 visits/sec.<br />Due to article quote<br />1 optimized request<br />Combines similar requests<br />Low server<br />usage<br />
  • 31. 2.1 High Availability<br /><ul><li>Automatic node failure detection and Automatic Failover
  • 32. Separate Failover on M/S Brokers and M/S DB Servers</li></ul>Application Servers<br />(with CUBRID Interface)<br />Broker<br />Failover<br />Server<br />
  • 33. 2.2 Table Partitioning<br /><ul><li>Table Partitioning by Hash, Range, List- Enterprise Feature supported by Oracle EE only
  • 34. READ Performance Increased by Directly Accessing the Partitioned Table</li></ul>READ<br />WRITE<br />Table<br />Table<br />Table<br />Table_p1<br />Table_p1<br />Table_p1<br />Table_p2<br />Table_p2<br />Table_p2<br />Table_p3<br />Table_p3<br />Table_p3<br />DATABASE<br />
  • 35. 2.3 Faster Query Processing<br /><ul><li>READ Count by executing SELECT and UPDATE at the same time</li></ul>Fast &amp; Cheap Lock<br />SELECT title, INCR(read_count) FROM bbs WHERE id = ?<br /> _____ ____ _____ ___ __ <br />SELECT article FROM bbs WHERE id = ?;<br />UPDATE bbs SET read_count = read_count + 1 WHERE id = ?;<br />Long &amp; Expensive Lock<br /><ul><li>Server-side Cache for Query Plan and Query Result with Client-side Cache
  • 36. Increased READ Performance for the Same Pattern Query</li></ul>Result Cache<br />Plan <br />Cache<br />JDBC<br />ResultSet Cache<br />
  • 37. 2.4 Scalability for LOB data<br /><ul><li>Unlimited Scalability for Large Objects with Distributed File System
  • 38. Enable using a Single Interface for Multiple Storages</li></ul>INSERT INTO T1 VALUES(col1,col2, content, image);<br />CUBRID Broker<br />{col1, col2}<br />{content, image}<br />CUBRID Server<br />Owfs<br />File Replica<br />File Replica<br />File Replica<br />DB<br />DB<br />DB<br />File Replica<br />File Replica<br />
  • 39. 3. CUBRID’s Performance <br />For Web Services<br />
  • 40. 3.1 Benchmark - Read<br /><ul><li>Hot-spot Read Test for Small and Medium-sized Services
  • 41. CUBRID Read Performance is in 2nd place with less CPU usage</li></ul>Y: PV/sec<br />Y: CPU usage<br />* Testscenario and configurations can be found at http://www.cubrid.org/benchmark_result<br />
  • 42. 3.2 Benchmark - Index<br /><ul><li>Index Scan Test on a Table with 1,000,000 Records
  • 43. Key Range &amp; Filtered Index Scan is Much Faster than MySQL 5.1</li></ul>SELECT name, address FROM member <br />WHERE age&gt;=60 and grade=‘A’ and address LIKE ‘%Bucharest%’;<br />Y: Time<br />Y: Time<br />* The testhas been conducted by Performance Engineering Team in NHN<br />
  • 44. 4. CUBRID Apps &amp; Tools<br />
  • 45. 4.1 Easy Management Tools<br />CUBRID Manager<br />Database management Tool (JAVA)<br />Equivalent of Microsoft Enterprise Manager for MSSQL<br />CUBRID Web Query<br />Database management Tool (PHP&amp;AJAX)<br />The equivalent of phpMyAdmin for MySQL<br />
  • 46. 4.2 Publishing platforms - CMS<br />Joomla!<br />Download:<br />http://sourceforge.net/projects/cubrid/files/Applications%20for%20CUBRID/Joomla/Joomla_1.5.20-CUBRID-RC-Full-Package.zip/download<br />Demo site:<br />http://joomla.cubrid.org<br />Wordpress<br />Download:<br />http://sourceforge.net/projects/cubrid/files/Applications%20for%20CUBRID/WordPress/CUBRID%20R3.x%20%2B/wordpress-cubrid-2.9.2.2.zip/download<br />Demo site:<br />http://wordpress.cubrid.org/<br />
  • 47. 4.3 Community platforms<br />phpBB<br />Download:<br />http://sourceforge.net/projects/cubrid/files/Applications%20for%20CUBRID/phpBB/CUBRID%20R3.x%20%2B/phpbb-cubrid-3.0.1.zip/download<br />Demo site:<br />http://phpbb.cubrid.org<br />MediaWiki<br />Download:<br />http://sourceforge.net/projects/cubrid/files/Applications%20for%20CUBRID/MediaWiki/CUBRID%20R3.x%20%2B/mediawiki-cubrid-1.15.2.zip/download<br />Demo site:<br />http://mediawiki.cubrid.org/<br />
  • 48. 4.4 Demo site for all Apps &amp; Tools<br /><ul><li>http://demo.cubrid.org – Demo portal for all Applications &amp; Tools</li></li></ul><li>Appendix – Useful Links<br />CUBRID Introduction<br />CUBRID User Site (http://cubrid.org)<br />CUBRID Blog (http://blog.cubrid.org)<br />Interview (http://opensourcebuzz.technetra.com/2010/06/21/meet-cubrid-one-of-koreas-top-open-source-projects/)<br />Animation (http://www.youtube.com/watch?v=c574-rBsdMg)<br />CUBRID Dev-Projects<br />CUBRID Engine and Tools (http://sourceforge.net/projects/cubrid/)<br />CUBRID Cluster (http://sourceforge.net/projects/cubridcluster/)<br />CUBRID Interfaces (http://sourceforge.net/projects/cubridinterface/)<br />CUBRID Documentation<br />CUBRID Wiki (http://wiki.cubrid.org/index.php/Main_Page)<br />CUBRID Manual (http://www.cubrid.org/manual/)<br />CUBRID Video Tutorials<br />YouTube CUBRID Channel (http://www.youtube.com/cubrid#g/u)<br />CUBRID Apps and Tools <br />APIs and Applications on top of CUBRID (http://www.cubrid.org/apps_and_tools)<br />
  • 49. 5. Contributors &amp; Developers<br />
  • 50. 5.1 Sourceforge - open project<br />Open development process<br /><ul><li>All tickets are online
  • 51. All contributors can participate in the development process
  • 52. All tickets are open to the community</li></li></ul><li>5.2 Online Specs and User Docs<br />
  • 53. KEY POINTS<br />1. Open Source Project<br />2. High Availability and Scalability<br />3. Powerful sponsor assure continuity<br />Thank you for your time!<br />ciprian@arnia.ro<br />

×