New Features

Supports Global Secondary Indexes for Multidimensional Sharding

Oct 25 2019

Distributed Relational Database Service (DRDS) now supports global secondary indexes and global unique indexes to achieve multidimensional sharding.

Target customers: database and distributed database users, sharding users, developers, Internet companies, and the finance, insurance, and new retail sectors. Features released: * Added the CREATE * GLOBAL INDEX, CREATE UNIQUE GLOBAL INDEX, and SHOW GLOBAL INDEX statements. * Added the dynamic adjustment of the time zone used for DRDS connection. * Added the logical RENAME TABLE statement for higher performance. * Added the CREATE SHADOW TABLE statement to create and associate with end-to-end stress testing shadow tables. * Added DERIVED subqueries to the UPDATE and DELETE statements. * Added the CBO optimizer and the join and aggregate pushdown/exchanging capabilities. * Added the SHOW METADATA LOCK statement to check metadata lock information. * Added the PLAN MANAGEMENT instructions. * Added rollback for the CREATE TABLE WITH GLOBAL INDEX and CREATE GLOBAL INDEX statements. * Added the check for global secondary indexes when the CREATE TABLE and DROP TABLE statements are executed. * Added the SHOW DDL statements for a specified job. * Added the non-equivalent condition derivation. * Added parallel queries for more operators. Features optimized: * Optimized auto vacuum of rules. * Optimized the information_schema query performance. * Optimized the BKA join algorithm for cost estimation. * Optimized DDL statements to update statistics and baseline model. * Optimized the logic of two-phase aggregate functions that are combined with GROUP BY column statements. * Optimized the vacuum policy for DRDS transaction logs to ease the pressure on backend storage. * Optimized calculation accurate to the millisecond in the ADDTIME, SUBTIME, DATEADD, DATESUB, and INTERVAL functions. * Optimized SQL audit logs to reduce network jitter. * Supported the creation of double literals in the optimizer. * Optimized pushed-down GROUP BY queries to prevent subqueries. * Optimized the internal implementation of aggregate functions for less memory usage and better performance. * Optimized the selection rate estimation for constant expressions in the CBO. * Optimized DDL parsing to enhance troubleshooting. * Optimized the MySQL-compatible method for processing abnormal time in time expressions. Errors fixed: * Fixed RENAME TABLE errors caused by special characters in table names after blocked instances are enabled. * Fixed ABORT errors from the plan management thread pool. * Fixed hash code errors related to HashAggCursor for different types. * Fixed errors related to BETWEEN and NOT BETWEEN. * Fixed memory statistic errors related to HashAggExec. * Fixed function compute errors caused when you write data into broadcast tables. * Fixed errors caused when you connect to management ports by using JDBC drivers of higher versions. * Fixed errors caused by database names in the UPDATE or DELETE statements. * Fixed errors caused by the same column names in the SET clauses of UPDATE or DELETE statements. * Fixed sharding errors caused by LEFT JOIN and IS NULL. * Fixed errors caused by nonsupport for the INSERT SELECT statement. * Fixed errors caused by special characters in global secondary index table names, shard keys, and DDL rollback table names. * Fixed parsing errors caused by nested hints or comments in SQL. * Fixed parsing errors caused by COLLATE following DEFAULT in table creation statements. * Fixed parsing errors caused by invalid date and time formats. * Fixed code errors caused when you use the CONVERT function to convert hexadecimal values to characters. * Fixed errors caused when you use the SUBSTRING, SUBSTRINGINDEX, and JSONEXTRACT functions to pass NULL parameters. * Fixed inconsistencies between CONNECTION_ID() and SHOW PROCESSLIST. * Fixed errors caused by the same subquery table name as an external table name. * Fixed type errors of the CASE WHEN function during subquery conversions. * Fixed conversion errors caused by pushdown of multiple subqueries in a project. * Fixed errors caused by the same column names in the JOIN-included statements. * Fixed errors of prompting that a table is not found when a column is not found. * Fixed stack overflow errors caused by using nonexistent columns in ORDER BY statements. * Fixed pushdown errors caused when CASE WHEN is included in the WHERE clause and AND is included in the WHEN expression. * Fixed errors caused by JOIN_PROJECT_TRANSPOSE when a project that cannot be pushed down exists in the left or right join table. * Fixed shard routing errors caused by the time zone when TIMESTAMP is used as the shard key.

7th Gen ECS Is Now Available

Increase instance computing power by up to 40% and Fully equipped with TPM chips.
Powered by Third-generation Intel® Xeon® Scalable processors (Ice Lake).

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.