CUBRID DBMS presentation at Agora Open Source Conference


Published on

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Good morning dear ladies and gentlemen!I apologize for delivering my speech behind this barrier between you and me. But I think this is the only way, since the microphone is hard coded to it.Also, I would like to notify you that this is an updated version of the presentation. So, several slides will be different. However, if you have any questions, I will be glad to answer you after the presentation.My name is Esen Sagynov. You can call me Esen. I am representing CUBRID Company here at Asia-Pacific Conference.Briefly about me: I got my IT degree abroad and MBA degree here in Korea.Today I came here to introduce you a powerful database solution that will help you increase your server performance, provide non-stop service to your loyal users, and finally it will help you to decrease your overall expenses.
  • Today I will talk about CUBRID. CUBRID is an Open Source Free DBMS. Here I would like to emphasize on the fact that CUBRID is higly Optimized for Web Services.
  • Today you will learn what CUBRID is. Why thousands of enterprise organizations choose CUBRID over other alternatives. Then I will tell you the more specific features of CUBRID and its Interface the CUBRID Manager. I will conclude my presentation by giving some real world examples about the famous web applications that are already compatible with CUBRID. And the way how you may contact us.
  • So, what is CUBRID? Before we go on, let me ask you a short question: have you ever heard about CUBRID before you came to this conference? You are very lucky to be here and listen my presentation. I will tell you about CUBRID.
  • Simply put, CUBRID is a DBMS. It belongs to our parent company, which is called NHN Corporation. It is the largest IT company in South Korea with the largest knowledge assets. Most people know it as a Google of Korea.CUBRID is fully functional Database Server Engine. It is a proven technology which has been developed for over 15 years and consists of more than 1,000,000 lines of code.Currently CUBRID supports most well-known operating systems and is available in several versions: both for Linux distributions and Microsoft Windows with the support of 32 and 64 bit architecture.However, CUBRID is not just simple DBMS.
  • It’s an Open Source System. We host the source code of CUBRID on one of the well-known Online Open Source Repositories – does an Open Source software means?
  • A Free software. Anyone can download the executable file or the source code from several dedicated portals:Either from SourceForge.netNAVER Development CenterOr directly from the Official CUBRID Community sites – or
  • Now since we are familiar with the CUBRID, let me tell you why more than 6,000 Corporate Users prefer CUBRID over other alternative database solutions.
  • The most important reason why - is the one I have already emphasized at the beginning of my presentation: CUBRID is highly optimized for Web Services.DBMSs like CUBRID are usually used on the Internet. And we developed the CUBRID right for that purpose. CUBRID was born to be used on the Internet.Let me give you the more specific reasons.
  • CUBRID has a very unique and powerful feature called Click Counter, which does not exist in any other database systems. It helps to dramatically decrease the workloads of Data Servers, by optimizing the transactions.So how does it work? Assume you have a blogging or bulletin board service. And typically you would like to keep track of how many times a certain article was viewed. It means whenever your web site visitor views an article you have to increment, let’s say, Read_Count field in the database table by 1.Here is how usually the Database systems provide their solutions for this problem.However, the second UPDATE Query generates very Long Lasting and Expensive Lock of the record.Let’s take a look on how CUBRID manages this problem. CUBRID makes only 1 request in order to accomplish this task. It has a built-in Query-Function called INCR(), which allows us to optimize the transaction, thus dramatically decrease the workload of our Data Server.You might wander how important this feature is. It can make the difference between taking minutes versus hours to lock the disk and make changes for 50,000 concurrent requests.CUBRID provides very fast and cheap click counter, which allows it to respond twice faster than other database systems.
  • What else is important for Online Services?Assume the similar situation: you have to select a certain article and show it to a visitor.What if there are 50,000 concurrent request to view the same article?If a server processed each request one by one, it would cause very high server overloads.CUBRID has a middle-player called the Broker. All queries pass through the Broker. They are Fragmented and Optimized for faster performance. And once they are optimized, the first query is cashed and sent to the CUBRID Database Server. In response Database Server returns the query results back to the Broker. These results are cached by the CUBRID Broker. From now on every next concurrent request for the same article won’t even bother the data server any more. They will be processed by the Broker, which return to visitors the cached results.
  • Nowadays, one of the hot issues discussed around the Database Systems is the High Availability Feature of a DBMS.And CUBRID supports HA, which means it supports multi-threaded servers and provides multi-CPU optimization.CUBRID’s various optimizations and unique functional features enable it to balance extreme server loads.It is a High-Traffic Proof DMBS.It will make sure your online service is never down for 24 hours and 7 days a week. It will handle any sudden increase of Traffic.
  • Besides, CUBRID, as many other DBMS, enables Java Stored Procedures as well as Partitioning, which is either Range, List or Hash Partitioning.
  • In addition, as a relational database system, CUBRID provides seamless transactions even for high-volume database regardless of the size of databases or the number of tables.
  • CUBRID also supports commonly known in the database industry an ACID property. CUBRID makes sure Atomicity, Consistency, Isolation, and Durability are met in every transaction.
  • Now, let’s take a look at how CUBRID is engineered inside.
  • CUBRID consists of two parts: a client and a server sides. The server side is divided into two separate entities: the database server and the broker. Each has different responsibilities. They communicate through the Object and Transaction Managers.On the server side there are also other utilities like backup or restore managers, and the CUBRID Manager of the Server side.And the Client Side consists of Programming Interfaces and the CUBRID Manager of Client Side.The server side follows the General Public License, while the Client side is under the BSD (Berkeley Software Distribution) License. We developed such a smart License Policy to let the Commercial Organizations receive full benefit from deploying the CUBRID. We do not claim any profit of our users like some other database companies do. It means that if a company develops any client solution they do not need to buy any license or reveal their source code.
  • We tried to optimize the CUBRID as much as possible, taking into account very critical situations. This allowed us to provide a superior performance in comparison with other Open source and Proprietary DBMSs.I would like to show you a graph which we obtained as a result of series of tests that we conducted under the same circumstances, same load, and same data. Here is how different Database systems behaved.Guess which one is the outcome of CUBRID test. As a result of these tests we learnt that CUBRID processes the SELECT queries faster than other well-known Database systems.Blue: MySQLGreen: Oracle 11gBlack: MSSQLRed: CUBRID
  • In order to provide easy-to-use user experience, CUBRID Development Lab released a CUBRID Manager.
  • It is available for most Operating systems like Windows and various Linux distributions.
  • There is also an Eclipse RCP (Rich Client Platform) and Eclipse Plug-in.
  • CUBRID provides Multi-host Management, Enhanced User Authentication, andEnhanced System Monitoring.
  • I promised you before to give some real world examples about the famous web applications that are already compatible with CUBRID.
  • Here is only some of the software applications which deliver CUBRID DBMS. These Installation Tools deliver a set of LAMP like applications. In our case, let’s say, APMSETUP provides a combination of Apache + PHP + CUBRID.And there are also stand alone web applications which were successfully implemented to work with CUBRID like famous blogging system Wordpress or XpressEngine, a Content Management System.
  • Also we developed our own installation tool which is not only a bundle of Apache + PHP + CUBRID, but other embedded web applications like Wordpress, a bulletin-board system GNUBoard, etc.With CUBRID AppsPack you get everything: Web server, PHP Engine, and fully-armored Database System which is highly optimized for Web Services.
  • CUBRID was first released to the public as an Open Source DBMS in November 2008. Since then we announced three major releases of CUBRID, i.e. v1.0, v2.0, and v2.1.Overall we counted over 70,000 downloads which took place since June 2006. 40,000 of downloads were after CUBRID became an open source database.
  • At the end of April of this year we are going to announce a major bug-fix release of CUBRID DBMS v2.2.Later in May we are planning to release a totally new version of CUBRID DBMS v3.0, which will bring in significant improvements to the core system. Most importantly, CUBRID 3.0 will provide full MySQL Compatibility as well as migration tools. Since then any former MySQL user can change their database solution to CUBRID.In order to start using CUBRID, a user is not required to learn a new syntax and new functions. With MySQL Compatibility feature you can develop your database as if you are running a MySQL instance – same syntax, same functions. Of course, if you would like to be learn how to improve your database performance and become an expert in CUBRID, you’d better check its key features and how to implement them.
  • Currently there are over 6,000 active installations counted within Korea only. Most of our references belong to the governmental sector, more specifically 2/3 of all clients are governmental organizations.
  • Now, let me summarize what we went over today in our presentation about a powerful database solution – CUBRID.
  • First, we are proud to tell that we provide our Database solution for free.And we have an Open Source Community consisting of thousands of developers, who will provide 24/7 professional support and keep you out of troubles.You can use CUBRID on most Operating systems with both 32 and 64 bit architectures.Our enterprise level features consist of an Unlimited Storage, and Unique Click Counter Enhancement, which provides Superior High Performance, and High Availability.Our database is developed to handle Extremely High Traffic Loads.You can find numerous web applications which are fully compatible with CUBRID.With CUBRID you can troubleshoot and maintain your business without stop, which will enable you to serve your loyal customers 24 hours and 7 days a week.If you have now any question related to CUBRID or this presentation overall, I will be very happy to answer you.Meanwhile, here are our contact information.
  • Anytime you can directly contact me or send me an email, or other departments of CUBRID.
  • CUBRID DBMS presentation at Agora Open Source Conference

    1. 1. MR. Catalin Ciobanu Globalization Team, CUBRID CO., LTD.<br />Presenter:<br />Wednesday, May 26, 2010<br />
    2. 2. Open SourceDBMS<br />Optimized for Web Services<br />
    3. 3. Contents<br />What is CUBRID?<br />Why CUBRID?<br />CUBRID Insight<br />CUBRID Manager<br />Web Applications<br />CUBRID Contacts<br />3<br />
    4. 4. What is CUBRID?<br />4<br />
    5. 5. Database Management System<br />5<br />What is CUBRID?<br />DBMS<br />Linux 32bit<br />Linux 64bit<br />database<br />Windows 32 bit<br />Windows 64 bit<br />
    6. 6. 6<br />What is CUBRID?<br />Open Source Project<br />
    7. 7. 7<br />What is CUBRID?<br />Free Software<br /><br /><br /><br />
    8. 8. Why CUBRID?<br />8<br />
    9. 9. 9<br />Why CUBRID?<br />CUBRID is Optimized for Web Services<br />
    10. 10. 10<br />Why CUBRID?<br />Click Counter<br />Optimized for Web Services<br />Web Services<br />Click Counter<br />Long & Expensive Lock<br />Other DBMS<br />SELECT article FROM bbs WHERE id = 123;<br />UPDATE bbs SET read_count = read_count + 1 WHERE id = 123;<br />CUBRID<br />SELECT article , INCR(read_count) FROM bbs WHERE id = 123;<br />Fast & Cheap Lock<br />
    11. 11. 11<br />Why CUBRID?<br />Hotspot Read (Caching)<br />Optimized for Web Services<br />Web Services<br />Click Counter<br />Hotspot Read (Caching)<br />Broker<br />Article 34<br />Article 34<br />CUBRID <br />DB<br />Query Fragmentation & Optimization<br />N = 50,000<br />Query RequestsCaching<br />Query Results Caching<br />
    12. 12. 12<br />Why CUBRID?<br />High Availability<br />Optimized for Web Services<br />Web Services<br />Click Counter<br />Hotspot Read (Caching)<br />HA (High Availability)<br /><ul><li>Multi-threaded server
    13. 13. Multi-CPU optimization
    14. 14. Extreme Load Balancing
    15. 15. High Traffic Proof
    16. 16. Non-stop Service for 24 Hours and 7 Days!
    17. 17. Can Handle Sudden Increase of Traffic!</li></li></ul><li>13<br />Why CUBRID?<br />JSP & Partition<br />Optimized for Web Services<br />Web Services<br />Click Counter<br />Hotspot Read (Caching)<br />HA (High Availability)<br />Java Stored Procedures<br />Partition<br /><ul><li>Range Partition
    18. 18. List Partition
    19. 19. Hash Partition</li></li></ul><li>14<br />Why CUBRID?<br />Unlimited Storage<br />Optimized for Web Services<br /><ul><li>Multi-volumeDB
    20. 20. Number of DB, table and size: Unlimited
    21. 21. Number of column: 6,400
    22. 22. Size of column: 2GB
    23. 23. Number of indices: 6,400</li></li></ul><li>15<br />Why CUBRID?<br />ACID Support<br />Optimized for Web Services<br />Atomicity<br />Isolation<br />ACID<br />Consistency<br />Durability<br />
    24. 24. CUBRID Insight<br />16<br />
    25. 25. CUBRID Architecture & License<br />17<br />CUBRID Insight<br />Interfaces<br />CUBRID <br />Manager <br />Client (GUI)<br />Client<br />BSD<br />ODBC<br />OLEDB<br />JDBC<br />PHP<br />CCI <br />Python<br />Ruby<br />Brokers<br />CUBRID <br />Manager <br />Server<br />Server<br />GPL v2 or higher<br />Connection Pooling<br />Monitoring/<br />Logging<br />Job Queuing<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 />
    26. 26. 18<br />CUBRID Insight<br />Superior Performance DBMS<br />Optimized for Web Services<br />Features of BBS Apps<br /><ul><li>Read count updates
    27. 27. Hotspot Reads</li></ul>1 PV = 4~7 Queries<br />Level 1: 101,000 articles<br />Level 2: 602,000 articles<br />
    28. 28. CUBRID Manager<br />19<br />
    29. 29. CUBRID Manager<br />20<br />CUBRID Insight<br />
    30. 30. CUBRID Manager<br />21<br />CUBRID Insight<br />
    31. 31. CUBRID Manager<br />22<br />CUBRID Insight<br />
    32. 32. CUBRID Web Applications<br />23<br />
    33. 33. 24<br />Web Applications<br />CUBRIDWeb Applications<br />Installation<br />Tools<br />APC_Install-tools<br />Tools for Windows<br />Tools for Linux<br />Tools for windows<br />Applications<br />Blog<br />Blog<br />CMS<br />Blog<br />Dev Platform<br />EC<br />BBS<br />BBS<br />
    34. 34. 25<br />Web Applications<br />CUBRIDAppsPack<br />+<br />+<br />+<br />+<br />BBS<br />Blog<br />
    35. 35. 26<br />Web Applications<br />Free Software: Download Trend<br />Open Source DBMS CUBRID 2008 Release 2.1<br />Open Source DBMS CUBRID 2008 Release 2.0<br />Open Source DBMS CUBRID 2008 Release 1.0<br />* Total downloads: over 70,000 since June 2006<br />
    36. 36. 27<br />Web Applications<br />CUBRID: MySQL Compatibility<br />End of April, 2010 – CUBRID 2008 R2.2<br />a major bug-fix release<br />End of May, 2010 - CUBRID 2008 R3.0<br />significant improvements of the core system<br />MySQL Compatibility + Migration Tools<br />
    37. 37. 28<br />Web Applications<br />CUBRID References<br />
    38. 38. Summary<br />29<br />
    39. 39. CUBRIDKey Notes<br />30<br />Summary<br />Click Counter<br />Numerous Web Applications<br />Free<br />System Maintenance without Service Stop<br />High Performance<br />Open Source<br />32 bit & 64 bit Version<br />High Availability<br />24/7<br />Service & Support<br />Unlimited Storage<br />Load Balancing<br />
    40. 40. Contact CUBRID?<br />31<br />
    41. 41. CUBRID Contacts<br />Esen Sagynov<br /><br />+82 31 784 4405<br />CUBRID Contacts<br />32<br />CUBRID.Education<br /><br />+82 31 784 4485<br />CUBRID.Support<br />+82 31 784 4483<br />CUBRID.Sales<br /><br />+82 31 784 4406<br />CUBRID.Marketing<br /><br />+82 31 784 4402<br />
    42. 42. References<br />CUBRID Co., Ltd. Corporate Web Site.<br />,<br />CUBRID Open Source Project at<br /><br />CUBRID Open Source Project at Naver Development Center.<br /><br />33<br />* All materials provided in this presentation are copyrighted by CUBRID Co., Ltd.<br />