They waited! The new version of the
DBMS CUBRID 8.4.0 is the most powerful of the previously released versions, and now with the doubled accelerated database engine!
This release combines enhanced performance with many new features often requested by users. Test results based on the same
scenario [link to PDF file of the report in English], which we usually use to conduct quality control of new releases, show an increased engine performance by almost three times for certain functions.
Performance version for Linux

The performance of the insert operation (INSERT) in Linux version increased by 260% compared with the previous version 8.3.1. The performance of the update operation (UPDATE) increased by 120%. The performance of the delete operation (DELETE) increased by 141%. The performance of the fetch operation (SELECT) decreased by 5%, which is caused by the lack of a test in our scenario of samples that would use the covering index.
')
Instead, we set a goal to test the conversion of implicit types from all sides, which were massively used in insert operators. Therefore, in real conditions, where column indexing is widely used, the performance of an insert operation will be very high, more than 2 times as compared with the previous version.
Performance Version for Windows

As indicated in the table above, the performance improvement of the CUBRID version for Windows OS is even higher. The performance of insert and update operations has increased by 190%. The performance of the delete operation has increased by 228%, and the performance of the select operation has increased by 140%.
Such a large increase in the performance of the new version is obtained by reducing the size of the index structure, as well as the implementation of the covering index. To reduce the size of indexes, in CUBRID 8.4.0 we completely changed their structure. As a result, the size of the indices decreased by 70%, and the size of the data volumes decreased by 20%.
Comparing Database Volume Usage

After the implementation of the
covering index [link to the manual] in CUBRID 8.4.0, the data retrieval approach during the search has changed. In previous versions, the index structure stored the value of the index keys, and the data itself was stored in a heap (HEAP). With this implementation, when a record search request was made, CUBRID first found the record in the index, and then retrieved the data for that record from the heap. But starting from the new version 8.4.0, in the index structure, CUBRID stores both the key and the record data. Thus, when a request is made to search for a record, these records are returned immediately, bypassing the heap view.
In this new version, we also increased the size and number of pages of the volume, which are created by default at the time of
creating the database [link to manual]. To this day, we often monitor statistics on the use of large corporate databases, like the NHN. (Maybe next time I will talk about one of them, about the amount of data that is operated, and how they use CUBRID.) As a result, we noticed that the number of database volumes increases very quickly, each of which stores 20 MB of data. Therefore, in order to reduce the frequency of creating volumes starting from version 8.4.0, the page size of the volume was increased from 4KB to 16KB, and their number was 25,000 instead of 5,000. Thus, by default, the size of the data volume will be 400 MB instead of 20 MB.
There is more news ... and I think you will like it!
Now the new CUBRID 8.4.0 has become even more noble! It now has no strict limitations in comparing and assigning data of different types, instead - extended support for
converting implicit types [link to manual]. Now it's a developer's paradise. They are free to compare, use and assign different types of values, and CUBRID will do the rest of the work. This extension will allow users to quickly and easily get started with CUBRID.
In addition, now in CUBRID 8.4.0 we provide support for almost 90% of the SQL syntax of MySQL, which really makes life easier for the developer! It is no longer necessary to modify SQL queries in order to comply with the syntax of the CUBRID DBMS. Almost all operators used in MySQL queries are now implemented in the CUBRID system. For more information on the list of all extensions you can find in the
official blog [article in English].
In addition to the SQL extensions, we have significantly improved the PHP CUBRID library, which also provides almost full support for all functions of the MySQL PHP library. All that is required is to replace the “mysql_” prefix with “cubrid_” in all functions except those related to the database (for example: mysql_select_db, mysql_drop_db). The entire list of CUBRID PHP functions and their comparison with MySQL can be found
here .
In addition to all this, you have reworked two main tools for working with the CUBRID DBMS - these are the
CUBRID Manager and the
CUBRID Query Browser [official project pages]. We have introduced many innovations, reworked the graphical interface, and most importantly, have significantly improved usability. Now everything is much more convenient and easier to use. More details about the new features in the
official blog .
In the new CUBRID 8.4.0, the configuration of the High Availability feature has become much easier than before. We have made every effort to deliver more convenience and stability, as well as functionality, since High Availability is something that CUBRID is different from all other DBMSs. Users can now quickly set up High Availability and monitor nodes right in the CUBRID Manager itself. If you want to learn more about the function of High Availability CUBRID, you can read about it
here in English (maybe later I will tell here on Habré separately).
Finally, another improvement in the new CUBRID Manager regarding usability and functionality is the nLucene plugin support. In this way, users can create, configure and manage nLucene instances directly in the CUBRID Manager. Wow, isn't it !?
CUBRID 8.4.0 is a welcome release. Now it is available! Until a stable version is released, you can download the beta version of CUBRID 8.4.0 from the official site
http://www.cubrid.org/downloads and feel how it works.
For more information about changes in version 8.4.0, you can view the
notes for the current version (PDF).