How does OceanBase Database save more space than conventional databases do?
OceanBase Database achieves a high compression ratio through data encoding and compression. Data encoding provides a series of encoding methods based on the value range and type information of different fields in the database relational table. Data encoding "knows" data better than general compression algorithms. Therefore, it offers a higher compression ratio.
Why does OceanBase Database implement Hybrid Transactional and Analytical Processing (HTAP) on a single engine?
In fact, traditional databases such as Oracle or SQL Server also use a single query engine to handle HTAP hybrid workloads. This is more refined and cost-effective. These databases have solved the problem of separating transactional processing from analytical processing by using control groups. It is advantageous for OceanBase Database to draw on techniques that have been improving in traditional relational databases for more than 50 years.
What are the differences between OceanBase Database, a distributed database, and conventional databases in connecting to business applications?
As a distributed database, OceanBase Database may distribute replicas on different servers. OceanBase uses OBProxy to minimize cross-IDC data access. OBProxy is a reverse proxy server particularly designed for OceanBase Database. It provides high-performance and highly accurate routing services for frontend user requests and highly available and scalable disaster recovery capabilities for backend servers. Unlike other database proxy servers, OBProxy adopts an asynchronous framework and stream forwarding design according to the features of the actual standalone environment and multi-cluster deployment. It uses a fast parse and lockfree memory solution. OBProxy can forward millions of queries per second (QPS) with limited resources and provide extensive and convenient O&M support when a large number of servers are involved.
How is the analytical processing capability of OceanBase Database, which is known for its superb transactional processing?
The analytical processing capability of OceanBase Database is built on hybrid row-column storage, compiled execution, vector engine, and cost-based query rewriting and optimization. These features, along with the high scalability of OceanBase Database, make it one of the best in the industry in terms of real-time analysis. Of course, for offline big data processing, big data solutions such as Spark may be a better choice.
How much data is the analytical processing capability of OceanBase Database able to handle?
This depends on business requirements. The analytical processing capability of OceanBase Database is as suitable for handling 100 GB of data as it is for handling several PB of data. It is a capability provided by OceanBase Database. If you have a small amount of data, you can reduce the concurrency settings to consume a smaller amount of computing resources. If you have a large amount of data, all you need to do is allocating more computing resources. Data volume limit in the traditional sense does not exist. The analytical processing capability of OceanBase Database is embodied in the possibility to fully utilize hardware resources and create effective concurrency plans.
What is the relationship between the performance of OceanBase Database and the number of servers?
You can check the TPC-C report of OceanBase Database. In the TPC-C scenario where more than 1,500 servers are deployed, the performance is linearly scaled.
What is the level of support for standard SQL in the latest version of OceanBase Database?
Most MySQL businesses can be smoothly migrated. In Oracle mode, basic Oracle functions are supported. Businesses running on Oracle Database can be smoothly migrated to OceanBase Database with only minor modifications.
What is the cost to migrate an application that runs on MySQL to OceanBase Database?
OceanBase Database is compatible with general MySQL functions and frontend and backend protocols of MySQL. You can migrate applications from MySQL to OceanBase Database with zero or minimal modifications.
How do I use OceanBase Database?
Like conventional databases, OceanBase Database provides an SQL interface to enable you to access and manipulate OceanBase Database using SQL statements.
What is an instance? What is a tenant? What are the relationships between them?
OceanBase Database is a multi-tenant system. An instance is a tenant in an OceanBase cluster. Data of different tenants are isolated. In other words, data in one tenant cannot be accessed from another tenant.
Do I need one instance or multiple instances?
If your application has two or more subsystems that do not interact with each other in the database layer, we recommend that you deploy each subsystem in a separate instance/tenant.
What do I need to know before I use OceanBase Database in the development process?
The following list describes some points that you need to know in the development process:
After you create a table, you cannot change its primary key. To change the primary key, you can only delete the table and create a new one.
Column type modifications are subject to many limits. For example, you can increase the length of a VARCHAR string but cannot shorten it.
The index takes a long time to take effect. Therefore, we recommend that you include the index statement when you create a table.
To import a large amount of data, pay special attention to memory usage.
We recommend that you use mysql-connector-java 5.1.30 or later.
The server automatically closes connections that have been idle for more than 15 minutes. When you use a connection pool, you need to set a maximum idle time for connections. For example, set the minEvictableIdleTimeMillis parameter of Druid to a value smaller than 15 minutes.