Let's Talk About Dameng Database
In China, the database market share has long been dominated by foreign database giants, such as the well-known Oracle, Microsoft, IBM, etc. These renowned commercial database manufacturers are undoubtedly at the top in terms of technical strength and market influence, and without exception, they are all from the United States. In recent years, our country has finally realized that long-term reliance on foreign technology is a step backward, handing over our destiny to other countries. Therefore, many favorable policies have been introduced to advocate for domestic technology companies to independently research and innovate.
Against this backdrop, China has embarked on the process of domesticating databases. So far, many financial industries in the country have completed the domestication of databases. One of the important reasons is that they no longer have to worry about being strangled by a certain country one day, causing important data to be unsustainable.
Dameng is a strong member of domestic databases. It has its own intellectual property rights and has outstanding performance in terms of performance stability, security, etc. It ranks in the top ten of domestic databases and has been highly praised by many corporate users. It has many advantages such as strong universality, high performance, high security, high usability, and is suitable for a variety of scenarios.
As the saying goes, a good horse needs a good saddle. For such an excellent domestic database, it is necessary to have a visual client that can perfectly manage the Dameng database to better utilize the potential of the Dameng database. Let's list the functions we need:
- SQL Editing: The visual client needs to be able to conveniently edit and execute SQL, with syntax highlighting and auto-completion to improve efficiency; after SQL execution, the result set is presented in the form of a table, and visual editing operations can be performed on the result set.
- Prevent Direct Connection to the Database: There are many developers in the company, and direct connection to the database will bring fluctuations to the core business, and due to the problem of account sharing, there may be a situation where a change leads to data loss, and the responsible person cannot be found.
- Permission Control: It is convenient to configure corresponding permissions for each developer, or let developers actively apply for the required permissions, and easily reclaim permissions when personnel leave.
- Development Standards: It has editable development standards, allowing the client to automatically judge and intercept SQL that does not meet the standards based on the standards.
- Scheduled Execution: Set an execution task, and let the client automatically execute the target SQL at the configured time point.
- Approval Process: It has a complete process approval function, and all SQL that may affect the business need to be approved by various nodes before they can be executed in the target database.
- Data Import and Export: It can export data from the database into files, and import data from files into the database.
At first glance, it seems a bit demanding for a client to fully support all these functions, but in order to achieve safe production, each of the above functions is urgently needed by enterprises.
Does such a client exist?
I have been using NineData's database DevOps features to manage the company's database. This is an enterprise-level database management tool that supports mainstream databases on the market, including MySQL, SQL Server, PostgreSQL, Oracle, Db2, MongoDB, Redis, ClickHouse, Doris, SelectDB, etc. In terms of functionality, it not only includes all the above functions, but also has many additional powerful capabilities, such as:
- AI Capabilities: It includes a knowledge Q&A robot similar to ChatGPT, which has been trained with a large model specifically for the field of databases, and is more comprehensive than ChatGPT for database-related knowledge Q&A. At the same time, it supports optimization of SQL statements, and provides suggestions for indexes, SQL rewriting, etc. based on the best plan.
- Slow Query Analysis: Automatically collects and records all slow queries in the database, and provides optimization suggestions through performance diagnosis of each slow query, including adding or modifying indexes, adjusting table structures, etc. It can also configure SQL development standards according to the type of business, and after configuration, the system will diagnose slow SQL based on these standards.
- SQL Audit: For the stage before the application code is released, it supports auditing all SQL statements that need to be released. Based on intelligent algorithms and enterprise-configured SQL development standards, it automatically identifies and prevents problematic SQL. Only when the SQL audit passes can the application be released.
- DSQL: For cross-database queries of multiple homogeneous and heterogeneous database systems, it can access multiple databases in one query, obtain useful information scattered in various databases, and aggregate this information into a query result returned, easily achieving data queries across multiple databases, multiple data sources, and even multiple heterogeneous data sources.
In the latest iteration, NineData has supported the Dameng database. After a rough test, it has the SQL editing, scheduled execution, development standards, approval process, permission control, data import and export capabilities we mentioned above, and for preventing direct connection to the database, the NineData platform itself has this function.
A Simple Demonstration
Navigation Tree: An overview of the Schemas, tables, non-table objects, etc. in the database.
SQL Editing: Supports adding, deleting, modifying, and querying the database.
Result Set Editing: Supports visual editing of the result set, and at the same time, automatically generates change statements based on the modification results. The copied statements can be executed directly in other clients.
SQL Intelligent Optimization: Based on AI capabilities, it detects and optimizes query statements (SELECT).
Intercepting Non-standard Statements: Set SELECT statements to avoid using *, and if such SQL statements are detected, they will be automatically intercepted.
Scheduled Execution of SQL Statements: Submit SQL tasks, and in the execution phase after the audit is passed, you can choose to execute automatically at a certain time period.
Postscript
Today, the good news came that the Dameng database has been approved by the China Securities Regulatory Commission for listing on the Science and Technology Innovation Board, which makes people feel that the pace of domestic databases is so rapid!
Among the domestic database army, there are still quite a few outstanding ones, such as the top-ranking OceanBase, PolarDB, Huawei's GaussDB, etc. In the near future, these databases are all capable of shaking the position of the giants who have dominated the market for decades, let's wait and see.