Logo
Principles

Principles #

DBPlusEngine adopts the database plus design philosophy, which is committed to building the standards and ecology of the upper layer of the database and supplementing the missing capabilities of the database in the ecology.

  • Database Plus: It is the design philosophy of ShardingSphere;
  • ShardingSphere: It is the engineering implementation of Database Plus;
  • DBPlusEngine: It is an enhanced product for enterprise users based on ShardingSphere.

As a guiding concept for creating a distributed database system, Database Plus establishes a new connection relationship on the database that has shown a trend of fragmentation. This process will provide data enhancement services in the upper layer of the database without intrusion, such as distribution, data control and flow control.

For the storage layer, the original database technology stack needs to be retained for users, the stability, compatibility and operation and maintenance habits have not changed, and the reliability is better guaranteed.

In this way, the application only needs to talk with the standard service layer, and does not need to care about the differences and capabilities between the underlying databases, forming a closed-loop ecological environment.

The three core features of Database Plus are connectivity, enhancement, and pluggability. From “point” to “line”, and finally form an ecological “face”.

  • Connect: Create database upper level standard

Connectivity is the foundation “point” of database plus capabilities. That is, in the form of “database gateway”, it provides a unified database entry for the application system and an intermediate layer that can be adapted to various database SQL dialects and access protocols. Database plus parses the SQL into AST (abstract syntax tree) and regenerates the SQL according to the rules of other database dialects. It can shield the dialect differences of heterogeneous databases and the differences of heterogeneous development languages in services.

Upward, support multiple development languages with standard database protocols, so that applications can be used smoothly without feeling; Downward, it supports a variety of database products, which not only meet the requirements of multiple development languages in the north, but also support a variety of database products in the south. At present, it supports MySQL, PostgreSQL, openGauss and other database protocols, as well as MySql, PostgreSQL, openGauss, SQL Server, Oracle and all SQL dialects that support the SQL92 standard.

  • Enhance: Database computing enhancement engine

Based on the connected “point”, it can be further extended to this enhancement “line”.

The practical experience of traditional databases is the essence precipitated by time and multiple scenarios. Database plus breaks through its computing power, capacity and functions on the basis of reusing the storage and native computing power of databases.

After the traffic enters the gateway, Database Plus enhances the three aspects of distribution, data control and traffic control through the global capability.

Data sharding, elastic scaling, high availability, read-write splitting, distributed transactions and Heterogeneous Database Federation query based on vertical splitting are all enhanced capabilities that Database Plus can provide to users in a permutation and combination manner at the global level of distributed heterogeneous databases.

  • Pluggable: Building database function ecology

Facing users, Database Plus presents in the form of a “face”, that is, an ecological face.

We can try to understand this “face” as a well-known App store. You only need to select the required functions from a large number of plug-ins. It can be used alone or in combination. Even you can create your own customized plug-ins in the App store.

Through the pluggable system, database plus will be able to truly build a database oriented functional ecosystem and unify the global capabilities of heterogeneous databases. It not only faces the distributed of centralized database, but also faces the integration of shaft functions of distributed database.

The pluggable feature can not only provide better expansion, but also achieve convergence, and only provide the content required by users. Ecological borderless, and capacity is pluggable.