diff --git a/docs/ddm/umn/ALL_META.TXT.json b/docs/ddm/umn/ALL_META.TXT.json new file mode 100644 index 00000000..7eac736d --- /dev/null +++ b/docs/ddm/umn/ALL_META.TXT.json @@ -0,0 +1,3065 @@ +[ + { + "dockw":"User Guide" + }, + { + "uri":"ddm_01_0000.html", + "node_id":"ddm_01_0000.xml", + "product_code":"ddm", + "code":"1", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Service Overview", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Service Overview", + "githuburl":"" + }, + { + "uri":"ddm_01_0001.html", + "node_id":"ddm_01_0001.xml", + "product_code":"ddm", + "code":"2", + "des":"Distributed Database Middleware (DDM) is a MySQL-compatible, distributed middleware service designed for relational databases. It can resolve distributed scaling issues t", + "doc_type":"usermanual", + "kw":"Overview,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"ddm_01_0018.html", + "node_id":"ddm_01_0018.xml", + "product_code":"ddm", + "code":"3", + "des":"A data node is the minimum management unit of DDM. Each data node represents an independently running database, and it may be an RDS for MySQL or GaussDB(for MySQL) insta", + "doc_type":"usermanual", + "kw":"Basic Concepts,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Basic Concepts", + "githuburl":"" + }, + { + "uri":"ddm_01_0016.html", + "node_id":"ddm_01_0016.xml", + "product_code":"ddm", + "code":"4", + "des":"DDM supports a variety of functions, including horizontal sharding, shard configuration, highly compatible SQL syntax, read/write splitting, and global sequence.", + "doc_type":"usermanual", + "kw":"VPC,ECS,Relational Database Service (RDS),Core Functions,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Core Functions", + "githuburl":"" + }, + { + "uri":"ddm_01_0017.html", + "node_id":"ddm_01_0017.xml", + "product_code":"ddm", + "code":"5", + "des":"General-enhanced DDM instances use Intel® Xeon® Scalable processors. Working in high-performance networks, these DDM instances can offer high and stable computing perform", + "doc_type":"usermanual", + "kw":"Product Specifications,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Product Specifications", + "githuburl":"" + }, + { + "uri":"ddm-01-0003.html", + "node_id":"ddm-01-0003.xml", + "product_code":"ddm", + "code":"6", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Usage Constraints", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Usage Constraints", + "githuburl":"" + }, + { + "uri":"ddm-01-0004.html", + "node_id":"ddm-01-0004.xml", + "product_code":"ddm", + "code":"7", + "des":"Restrictions on network access are as follows:The data nodes and ECSs running your applications must be in the same VPC as your DDM instance.To access DDM from your compu", + "doc_type":"usermanual", + "kw":"Network Access,Usage Constraints,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Network Access", + "githuburl":"" + }, + { + "uri":"ddm_01_0005.html", + "node_id":"ddm_01_0005.xml", + "product_code":"ddm", + "code":"8", + "des":"Constraints on data nodes are as follows:Data nodes can be only RDS for MySQL and GaussDB(for MySQL) instances of versions 5.7 and 8.0.DDM cannot connect to MySQL instanc", + "doc_type":"usermanual", + "kw":"Data Nodes,Usage Constraints,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Data Nodes", + "githuburl":"" + }, + { + "uri":"ddm_01_0174.html", + "node_id":"ddm_01_0174.xml", + "product_code":"ddm", + "code":"9", + "des":"Stored proceduresTriggersViewsEventsUser-defined functionsForeign key reference and associationFull-text indexes and SPACE functionsTemporary tablesCompound statements su", + "doc_type":"usermanual", + "kw":"Unsupported Features and Limitations,Usage Constraints,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Unsupported Features and Limitations", + "githuburl":"" + }, + { + "uri":"ddm_01_0175.html", + "node_id":"ddm_01_0175.xml", + "product_code":"ddm", + "code":"10", + "des":"Pay attention to the following when you use DDM:Do not connect to any data node for data operations to avoid deleting by mistake system catalogs or metadata.Do not clear ", + "doc_type":"usermanual", + "kw":"High-risk Operations,Usage Constraints,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"High-risk Operations", + "githuburl":"" + }, + { + "uri":"ddm_01_0007.html", + "node_id":"ddm_01_0007.xml", + "product_code":"ddm", + "code":"11", + "des":"The combination of a region and an availability zone (AZ) identifies the location of a data center. You can create resources in a specific AZ in a region.A region is a ge", + "doc_type":"usermanual", + "kw":"Regions and AZs,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Regions and AZs", + "githuburl":"" + }, + { + "uri":"ddm-01-0002.html", + "node_id":"ddm-01-0002.xml", + "product_code":"ddm", + "code":"12", + "des":"As an OLTP-oriented service, DDM allows you to access distributed relational databases across a variety of industries.", + "doc_type":"usermanual", + "kw":"Application Scenarios,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Application Scenarios", + "githuburl":"" + }, + { + "uri":"ddm_02_0001.html", + "node_id":"ddm_02_0001.xml", + "product_code":"ddm", + "code":"13", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Getting Started", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Getting Started", + "githuburl":"" + }, + { + "uri":"ddm_01_0020.html", + "node_id":"ddm_01_0020.xml", + "product_code":"ddm", + "code":"14", + "des":"This section describes how to associate a DDM instance with a data node (RDS for MySQL instance).Step 1: Create a DDM Instance and an RDS for MySQL InstanceStep 2: Create", + "doc_type":"usermanual", + "kw":"Overview,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"ddm_06_0002.html", + "node_id":"ddm_06_0002.xml", + "product_code":"ddm", + "code":"15", + "des":"The default database port is 5066 and can be changed after a DDM instance is created.For details, see Changing a Database Port.For details about how to create an RDS for ", + "doc_type":"usermanual", + "kw":"Step 1: Create a DDM Instance and an RDS for MySQL Instance,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Step 1: Create a DDM Instance and an RDS for MySQL Instance", + "githuburl":"" + }, + { + "uri":"ddm_02_0013.html", + "node_id":"ddm_02_0013.xml", + "product_code":"ddm", + "code":"16", + "des":"Required permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECU", + "doc_type":"usermanual", + "kw":"Step 2: Create a Schema and Associate It with an RDS for MySQL Instance,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Step 2: Create a Schema and Associate It with an RDS for MySQL Instance", + "githuburl":"" + }, + { + "uri":"ddm_02_0000.html", + "node_id":"ddm_02_0000.xml", + "product_code":"ddm", + "code":"17", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Step 3: Create a DDM Account,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Step 3: Create a DDM Account", + "githuburl":"" + }, + { + "uri":"ddm_02_0005.html", + "node_id":"ddm_02_0005.xml", + "product_code":"ddm", + "code":"18", + "des":"After you create a DDM instance, you can log in to it using a client such as Navicat, or connect to the required schema in the instance using the CLI or JDBC driver.This ", + "doc_type":"usermanual", + "kw":"Step 4: Log In to the DDM Schema,Getting Started,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Step 4: Log In to the DDM Schema", + "githuburl":"" + }, + { + "uri":"ddm_03_0053.html", + "node_id":"ddm_03_0053.xml", + "product_code":"ddm", + "code":"19", + "des":"Distributed Database Middleware (DDM) is a MySQL-compatible, distributed middleware service designed for relational databases. It can resolve distributed scaling issues t", + "doc_type":"usermanual", + "kw":"Function Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Function Overview", + "githuburl":"" + }, + { + "uri":"ddm_05_0000.html", + "node_id":"ddm_05_0000.xml", + "product_code":"ddm", + "code":"20", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Permissions Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Permissions Management", + "githuburl":"" + }, + { + "uri":"ddm_05_0021.html", + "node_id":"ddm_05_0021.xml", + "product_code":"ddm", + "code":"21", + "des":"To create a schema, import schema information, or configure shards, you can use the administrator account of data nodes or create a database account with the following pe", + "doc_type":"usermanual", + "kw":"Database Accounts and Permissions,Permissions Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Database Accounts and Permissions", + "githuburl":"" + }, + { + "uri":"ddm_06_0001.html", + "node_id":"ddm_06_0001.xml", + "product_code":"ddm", + "code":"22", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Instance Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Instance Management", + "githuburl":"" + }, + { + "uri":"ddm_06_00017.html", + "node_id":"ddm_06_00017.xml", + "product_code":"ddm", + "code":"23", + "des":"You have logged in to the DDM console.", + "doc_type":"usermanual", + "kw":"Creating a DDM Instance,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Creating a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_06_0025.html", + "node_id":"ddm_06_0025.xml", + "product_code":"ddm", + "code":"24", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Splitting Read-only and Read-Write Services", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Splitting Read-only and Read-Write Services", + "githuburl":"" + }, + { + "uri":"ddm_06_0026.html", + "node_id":"ddm_06_0026.xml", + "product_code":"ddm", + "code":"25", + "des":"DDM provides read-only service isolation by grouping nodes of a DDM instance to provide physically separated compute and storage resources.DDM provides two types of node ", + "doc_type":"usermanual", + "kw":"What Is Read-only Service Isolation?,Splitting Read-only and Read-Write Services,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Is Read-only Service Isolation?", + "githuburl":"" + }, + { + "uri":"ddm_06_0027.html", + "node_id":"ddm_06_0027.xml", + "product_code":"ddm", + "code":"26", + "des":"One DDM instance supports multiple read-only groups. Each group contains at least 2 nodes, and each instance contains up to 32 nodes.One node belongs to only one group, a", + "doc_type":"usermanual", + "kw":"How Are Read-only Services Split from Read-Write Services,Splitting Read-only and Read-Write Service", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"How Are Read-only Services Split from Read-Write Services", + "githuburl":"" + }, + { + "uri":"ddm_06_0003.html", + "node_id":"ddm_06_0003.xml", + "product_code":"ddm", + "code":"27", + "des":"You have logged in to the DDM console.The DDM instance is in the Running state.Change node class during off-peak hours because services will be interrupted for a while du", + "doc_type":"usermanual", + "kw":"Changing Class of a DDM Node,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Changing Class of a DDM Node", + "githuburl":"" + }, + { + "uri":"ddm_06_0011.html", + "node_id":"ddm_06_0011.xml", + "product_code":"ddm", + "code":"28", + "des":"As service data increases, you can scale out a DDM instance by adding nodes to improve service stability.Scale out your DDM instance during off-peak hours.Make sure that ", + "doc_type":"usermanual", + "kw":"Scaling Out a DDM Instance,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Scaling Out a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_06_0014.html", + "node_id":"ddm_06_0014.xml", + "product_code":"ddm", + "code":"29", + "des":"This section describes how to scale in a DDM instance as service data volume decreases.Scale in your DDM instance during off-peak hours.Make sure that the associated data", + "doc_type":"usermanual", + "kw":"Scaling In a DDM Instance,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Scaling In a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_06_0004.html", + "node_id":"ddm_06_0004.xml", + "product_code":"ddm", + "code":"30", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Restarting a DDM Instance", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Restarting a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_06_0028.html", + "node_id":"ddm_06_0028.xml", + "product_code":"ddm", + "code":"31", + "des":"You may need to restart an instance to perform maintenance.The DDM instance is not available during restart, and the restart operation cannot be undone. Exercise caution ", + "doc_type":"usermanual", + "kw":"Restarting a DDM Instance,Restarting a DDM Instance,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Restarting a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_06_0029.html", + "node_id":"ddm_06_0029.xml", + "product_code":"ddm", + "code":"32", + "des":"You can restart a single node of your DDM instance.An instance is not available when one of its nodes is being restarted. The restart operation cannot be undone. Exercise", + "doc_type":"usermanual", + "kw":"Restarting a Node,Restarting a DDM Instance,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Restarting a Node", + "githuburl":"" + }, + { + "uri":"ddm_06_0005.html", + "node_id":"ddm_06_0005.xml", + "product_code":"ddm", + "code":"33", + "des":"You can delete instances that are no longer needed.Deleted instances cannot be recovered. Exercise caution when performing this operation.Deleting a DDM instance will not", + "doc_type":"usermanual", + "kw":"Deleting a DDM Instance,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Deleting a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_03_0058.html", + "node_id":"ddm_03_0058.xml", + "product_code":"ddm", + "code":"34", + "des":"Configure parameters of a DDM instance based on your needs to keep the instance running well.There is a DDM instance available and running normally.By default, DDM allows", + "doc_type":"usermanual", + "kw":"Modifying Parameters of a DDM Instance,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Modifying Parameters of a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_06_0020.html", + "node_id":"ddm_06_0020.xml", + "product_code":"ddm", + "code":"35", + "des":"You have logged in to the DDM console.The Change Parameter Template dialog box is displayed.", + "doc_type":"usermanual", + "kw":"Changing a Parameter Template,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Changing a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_06_0021.html", + "node_id":"ddm_06_0021.xml", + "product_code":"ddm", + "code":"36", + "des":"DDM allows you to create an administrator account for your instance. This account has the superuser permissions to modify permissions of accounts displayed on the Account", + "doc_type":"usermanual", + "kw":"Administrator Account,Instance Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Administrator Account", + "githuburl":"" + }, + { + "uri":"ddm_06_0040.html", + "node_id":"ddm_06_0040.xml", + "product_code":"ddm", + "code":"37", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Connection Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Connection Management", + "githuburl":"" + }, + { + "uri":"ddm_06_0035.html", + "node_id":"ddm_06_0035.xml", + "product_code":"ddm", + "code":"38", + "des":"DDM supports load balancing by default, but some regions may not support. If an application accesses DDM using a private IP address, there are no traffic restrictions. To", + "doc_type":"usermanual", + "kw":"Configuring Access Control,Connection Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Configuring Access Control", + "githuburl":"" + }, + { + "uri":"ddm_06_0036.html", + "node_id":"ddm_06_0036.xml", + "product_code":"ddm", + "code":"39", + "des":"DDM allows you to change the database port of a DDM instance. After the port is changed, the instance will restart.For DDM instances, the database port number ranges from", + "doc_type":"usermanual", + "kw":"Changing a Database Port,Connection Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Changing a Database Port", + "githuburl":"" + }, + { + "uri":"ddm_06_0039.html", + "node_id":"ddm_06_0039.xml", + "product_code":"ddm", + "code":"40", + "des":"DDM allows you to change the security group of a DDM instance.Changing the security group may disconnect the DDM instance from its associated data nodes.Specify a new sec", + "doc_type":"usermanual", + "kw":"Changing the Security Group of a DDM Instance,Connection Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Changing the Security Group of a DDM Instance", + "githuburl":"" + }, + { + "uri":"ddm_05_0005.html", + "node_id":"ddm_05_0005.xml", + "product_code":"ddm", + "code":"41", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Parameter Template Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Parameter Template Management", + "githuburl":"" + }, + { + "uri":"ddm_05_0006.html", + "node_id":"ddm_05_0006.xml", + "product_code":"ddm", + "code":"42", + "des":"A database parameter template acts as a container for parameter configurations that can be applied to one or more DDM instances. You can manage configurations of a DDM in", + "doc_type":"usermanual", + "kw":"Creating a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Creating a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_05_0007.html", + "node_id":"ddm_05_0007.xml", + "product_code":"ddm", + "code":"43", + "des":"To improve performance of a DDM instance, you can modify parameters in custom parameter templates based on service requirements.You cannot change parameter values in defa", + "doc_type":"usermanual", + "kw":"Editing a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Editing a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_05_0009.html", + "node_id":"ddm_05_0009.xml", + "product_code":"ddm", + "code":"44", + "des":"You can apply different parameter templates to the same DDM instance to view impacts on parameter settings of the instance.You can compare different custom parameter temp", + "doc_type":"usermanual", + "kw":"Comparing Two Parameter Templates,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Comparing Two Parameter Templates", + "githuburl":"" + }, + { + "uri":"ddm_05_0010.html", + "node_id":"ddm_05_0010.xml", + "product_code":"ddm", + "code":"45", + "des":"You can view parameters of a DDM instance and change history of custom templates.An exported or custom parameter template has initially a blank change history.You can vie", + "doc_type":"usermanual", + "kw":"Viewing Parameter Change History,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Viewing Parameter Change History", + "githuburl":"" + }, + { + "uri":"ddm_05_0011.html", + "node_id":"ddm_05_0011.xml", + "product_code":"ddm", + "code":"46", + "des":"You can replicate a parameter template you have created. When you have already created a parameter template and want to provide most of its custom parameters and values i", + "doc_type":"usermanual", + "kw":"Replicating a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Replicating a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_05_0013.html", + "node_id":"ddm_05_0013.xml", + "product_code":"ddm", + "code":"47", + "des":"After you create a parameter template and modify parameters in it based on service requirements, you can apply it to your DDM instances.To apply a default template, click", + "doc_type":"usermanual", + "kw":"Applying a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Applying a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_05_0014.html", + "node_id":"ddm_05_0014.xml", + "product_code":"ddm", + "code":"48", + "des":"After a parameter template is applied to DDM instances, you can view its application records.You can view the name or ID of the DDM instance to which the parameter templa", + "doc_type":"usermanual", + "kw":"Viewing Application Records of a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Viewing Application Records of a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_05_0015.html", + "node_id":"ddm_05_0015.xml", + "product_code":"ddm", + "code":"49", + "des":"You can modify the description of a parameter template that you have created.You cannot modify the description of any default parameter template.The description contains ", + "doc_type":"usermanual", + "kw":"Modifying the Description of a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Modifying the Description of a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_05_0016.html", + "node_id":"ddm_05_0016.xml", + "product_code":"ddm", + "code":"50", + "des":"You can delete custom parameter templates that will not be used any more.Deleted parameter templates cannot be recovered. Exercise caution when performing this operation.", + "doc_type":"usermanual", + "kw":"Deleting a Parameter Template,Parameter Template Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Deleting a Parameter Template", + "githuburl":"" + }, + { + "uri":"ddm_09_0002.html", + "node_id":"ddm_09_0002.xml", + "product_code":"ddm", + "code":"51", + "des":"You can view the progress and results of asynchronous tasks on the Task Center page.The following tasks can be viewed:Creating a DDM InstanceDeleting a DDM instanceChangi", + "doc_type":"usermanual", + "kw":"Task Center,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Task Center", + "githuburl":"" + }, + { + "uri":"ddm_03_0006.html", + "node_id":"ddm_03_0006.xml", + "product_code":"ddm", + "code":"52", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Schema Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Schema Management", + "githuburl":"" + }, + { + "uri":"ddm_06_0006.html", + "node_id":"ddm_06_0006.xml", + "product_code":"ddm", + "code":"53", + "des":"You have logged in to the DDM console.The DDM instance is in the Running state.Do not modify or delete the internal accounts (DDMRW*, DDMR*, and DDMREP*) created on data ", + "doc_type":"usermanual", + "kw":"Creating a Schema,Schema Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Creating a Schema", + "githuburl":"" + }, + { + "uri":"ddm_06_0015.html", + "node_id":"ddm_06_0015.xml", + "product_code":"ddm", + "code":"54", + "des":"When you deploy DR or migrate data across regions, you can export schema information from source DDM instances. The export information includes schema information and sha", + "doc_type":"usermanual", + "kw":"Exporting Schema Information,Schema Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Exporting Schema Information", + "githuburl":"" + }, + { + "uri":"ddm_06_0007.html", + "node_id":"ddm_06_0007.xml", + "product_code":"ddm", + "code":"55", + "des":"When you deploy DR or migrate data across regions, you can import schema information in destination DDM instances. The imported information includes schema information an", + "doc_type":"usermanual", + "kw":"Importing Schema Information,Schema Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Importing Schema Information", + "githuburl":"" + }, + { + "uri":"ddm_03_0008.html", + "node_id":"ddm_03_0008.xml", + "product_code":"ddm", + "code":"56", + "des":"You have logged in to the DDM console.You have created a schema.Deleted schemas cannot be recovered. Exercise caution when performing this operation.Deleted schemas canno", + "doc_type":"usermanual", + "kw":"Deleting a Schema,Schema Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Deleting a Schema", + "githuburl":"" + }, + { + "uri":"ddm_03_0100.html", + "node_id":"ddm_03_0100.xml", + "product_code":"ddm", + "code":"57", + "des":"Configure a blacklist and add those statements to it to prevent the system executing some SQL statements.You have logged in to the DDM console.A DDM instance is running p", + "doc_type":"usermanual", + "kw":"Configuring the SQL Blacklist,Schema Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Configuring the SQL Blacklist", + "githuburl":"" + }, + { + "uri":"ddm_03_0064.html", + "node_id":"ddm_03_0064.xml", + "product_code":"ddm", + "code":"58", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Shard Configuration", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Shard Configuration", + "githuburl":"" + }, + { + "uri":"ddm_03_0068.html", + "node_id":"ddm_03_0068.xml", + "product_code":"ddm", + "code":"59", + "des":"Shard configuration is a core function of DDM. With this function, you can increase data nodes or shards to improve database storage and concurrency as services grow. Sha", + "doc_type":"usermanual", + "kw":"Overview and Application Scenarios,Shard Configuration,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Overview and Application Scenarios", + "githuburl":"" + }, + { + "uri":"ddm_03_0069.html", + "node_id":"ddm_03_0069.xml", + "product_code":"ddm", + "code":"60", + "des":"Before changing shards, you need to carry out a preliminary evaluation and determine the number of new shards, whether to scale up the current DDM node class, and the num", + "doc_type":"usermanual", + "kw":"Assessment,Shard Configuration,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Assessment", + "githuburl":"" + }, + { + "uri":"ddm_03_0070.html", + "node_id":"ddm_03_0070.xml", + "product_code":"ddm", + "code":"61", + "des":"Check items in the table below one day before performing a shard configuration task.The shard configuration fails due to table structure inconsistency.Solution: Execute C", + "doc_type":"usermanual", + "kw":"Pre-check,Shard Configuration,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Pre-check", + "githuburl":"" + }, + { + "uri":"ddm_03_0071.html", + "node_id":"ddm_03_0071.xml", + "product_code":"ddm", + "code":"62", + "des":"This section uses an RDS for MySQL instance as an example to describe how to configure shards for a schema.There is a DDM instance with available schemas.There is an RDS ", + "doc_type":"usermanual", + "kw":"Operation Guide,Shard Configuration,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Operation Guide", + "githuburl":"" + }, + { + "uri":"ddm_10_1000.html", + "node_id":"ddm_10_1000.xml", + "product_code":"ddm", + "code":"63", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Data Node Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Data Node Management", + "githuburl":"" + }, + { + "uri":"ddm_10_1001.html", + "node_id":"ddm_10_1001.xml", + "product_code":"ddm", + "code":"64", + "des":"Managing data nodes is managing RDS for MySQL or GaussDB(for MySQL) instances that are associated with your DDM instance. You can view the instance status, storage, class", + "doc_type":"usermanual", + "kw":"Overview,Data Node Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"ddm_10_1003.html", + "node_id":"ddm_10_1003.xml", + "product_code":"ddm", + "code":"65", + "des":"You have logged in to the DDM console.After you change your data nodes, for example, adding or deleting a read replica, changing the connection address, port number, or s", + "doc_type":"usermanual", + "kw":"Synchronizing Data Node Information,Data Node Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Synchronizing Data Node Information", + "githuburl":"" + }, + { + "uri":"ddm_10_1002.html", + "node_id":"ddm_10_1002.xml", + "product_code":"ddm", + "code":"66", + "des":"If one DDM instance is associated with multiple data nodes, you can synchronize read weight settings of the first data node to other data nodes.You have logged in to the ", + "doc_type":"usermanual", + "kw":"Configuring Read Weights,Data Node Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Configuring Read Weights", + "githuburl":"" + }, + { + "uri":"ddm_06_0012.html", + "node_id":"ddm_06_0012.xml", + "product_code":"ddm", + "code":"67", + "des":"Read/write splitting offloads read requests from primary instances to read replicas on a data node at a ratio, improving processing of read/write transactions. This funct", + "doc_type":"usermanual", + "kw":"Splitting Read and Write Requests,Data Node Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Splitting Read and Write Requests", + "githuburl":"" + }, + { + "uri":"ddm_03_0059.html", + "node_id":"ddm_03_0059.xml", + "product_code":"ddm", + "code":"68", + "des":"You have logged in to the DDM console.If you want to deploy a DDM instance across regions for DR, use DRS to migrate service data and then reload table data after the mig", + "doc_type":"usermanual", + "kw":"Reloading Table Data,Data Node Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Reloading Table Data", + "githuburl":"" + }, + { + "uri":"ddm_05_0001.html", + "node_id":"ddm_05_0001.xml", + "product_code":"ddm", + "code":"69", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Account Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Account Management", + "githuburl":"" + }, + { + "uri":"ddm_05_0002.html", + "node_id":"ddm_05_0002.xml", + "product_code":"ddm", + "code":"70", + "des":"You have logged in to the DDM console.There are schemas available in the DDM instance that you want to create an account for.", + "doc_type":"usermanual", + "kw":"Creating an Account,Account Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Creating an Account", + "githuburl":"" + }, + { + "uri":"ddm_05_0003.html", + "node_id":"ddm_05_0003.xml", + "product_code":"ddm", + "code":"71", + "des":"You have logged in to the DDM console.", + "doc_type":"usermanual", + "kw":"Modifying an Account,Account Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Modifying an Account", + "githuburl":"" + }, + { + "uri":"ddm_05_0004.html", + "node_id":"ddm_05_0004.xml", + "product_code":"ddm", + "code":"72", + "des":"You have logged in to the DDM console.Deleted accounts cannot be recovered. Exercise caution when performing this operation.", + "doc_type":"usermanual", + "kw":"Deleting an Account,Account Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Deleting an Account", + "githuburl":"" + }, + { + "uri":"ddm_05_0008.html", + "node_id":"ddm_05_0008.xml", + "product_code":"ddm", + "code":"73", + "des":"You have logged in to the DDM console.Resetting the DDM account password is a high-risk operation. Ensure that you have the IAM permission to modify DDM accounts.", + "doc_type":"usermanual", + "kw":"Resetting the Password of an Account,Account Management,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Resetting the Password of an Account", + "githuburl":"" + }, + { + "uri":"ddm_03_0067.html", + "node_id":"ddm_03_0067.xml", + "product_code":"ddm", + "code":"74", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Backups and Restorations", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Backups and Restorations", + "githuburl":"" + }, + { + "uri":"ddm_0600016.html", + "node_id":"ddm_0600016.xml", + "product_code":"ddm", + "code":"75", + "des":"DDM allows you to restore data from the current instance to any point in time using an existing backup. This is a good choice for routine service backup and restoration.T", + "doc_type":"usermanual", + "kw":"Restoring Data to a New Instance,Backups and Restorations,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Restoring Data to a New Instance", + "githuburl":"" + }, + { + "uri":"ddm_0600017.html", + "node_id":"ddm_0600017.xml", + "product_code":"ddm", + "code":"76", + "des":"DDM automatically backs up DDM instance metadata at 02:00 UTC+00:00 every day and retains the backup data for 30 days. Metadata backup is also triggered by key operations", + "doc_type":"usermanual", + "kw":"Restoring Metadata,Backups and Restorations,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Restoring Metadata", + "githuburl":"" + }, + { + "uri":"ddm_13_0001.html", + "node_id":"ddm_13_0001.xml", + "product_code":"ddm", + "code":"77", + "des":"DDM provides a Slow Queries function that sorts out the same type of slow SQL statements within a specified period of time by SQL template. You can specify a time range, ", + "doc_type":"usermanual", + "kw":"Slow Queries,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Slow Queries", + "githuburl":"" + }, + { + "uri":"ddm_03_0050.html", + "node_id":"ddm_03_0050.xml", + "product_code":"ddm", + "code":"78", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Monitoring Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Monitoring Management", + "githuburl":"" + }, + { + "uri":"ddm_16_0001.html", + "node_id":"ddm_16_0001.xml", + "product_code":"ddm", + "code":"79", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Supported Metrics", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Supported Metrics", + "githuburl":"" + }, + { + "uri":"ddm_03_0051.html", + "node_id":"ddm_03_0051.xml", + "product_code":"ddm", + "code":"80", + "des":"This section describes metrics reported by DDM to Cloud Eye, metric namespaces, and dimensions. You can use APIs provided by Cloud Eye to query the metric information gen", + "doc_type":"usermanual", + "kw":"DDM Instance Metrics,Supported Metrics,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"DDM Instance Metrics", + "githuburl":"" + }, + { + "uri":"ddm_03_0054.html", + "node_id":"ddm_03_0054.xml", + "product_code":"ddm", + "code":"81", + "des":"If load balancing is enabled for your DDM instance, you can view network metrics in the following table. If load balancing is not enabled, you do not have the permissions", + "doc_type":"usermanual", + "kw":"Network Metrics,Supported Metrics,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Network Metrics", + "githuburl":"" + }, + { + "uri":"ddm_16_0002.html", + "node_id":"ddm_16_0002.xml", + "product_code":"ddm", + "code":"82", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Viewing Metrics", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Viewing Metrics", + "githuburl":"" + }, + { + "uri":"ddm_03_0052.html", + "node_id":"ddm_03_0052.xml", + "product_code":"ddm", + "code":"83", + "des":"Cloud Eye monitors the running status of DDM instances. You can view instance monitoring metrics on the DDM console.Monitored data requires a period of time for transmiss", + "doc_type":"usermanual", + "kw":"Viewing Instance Metrics,Viewing Metrics,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Viewing Instance Metrics", + "githuburl":"" + }, + { + "uri":"ddm_16_0003.html", + "node_id":"ddm_16_0003.xml", + "product_code":"ddm", + "code":"84", + "des":"The DDM console supports monitoring and management of network metrics.If load balancing is enabled for your DDM instance, you can view network metrics. If load balancing ", + "doc_type":"usermanual", + "kw":"Viewing Network Metrics,Viewing Metrics,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Viewing Network Metrics", + "githuburl":"" + }, + { + "uri":"ddm_06_1000.html", + "node_id":"ddm_06_1000.xml", + "product_code":"ddm", + "code":"85", + "des":"Tag Management Service (TMS) enables you to use tags on the console to manage resources. TMS works with other cloud services to manage tags. TMS manages tags globally. Ot", + "doc_type":"usermanual", + "kw":"Tag Management Service (TMS),Tags,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Tags", + "githuburl":"" + }, + { + "uri":"ddm_11_0001.html", + "node_id":"ddm_11_0001.xml", + "product_code":"ddm", + "code":"86", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Auditing", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Auditing", + "githuburl":"" + }, + { + "uri":"ddm_11_0002.html", + "node_id":"ddm_11_0002.xml", + "product_code":"ddm", + "code":"87", + "des":"Cloud Trace Service (CTS) records operations related to DDM for further query, audit, and backtrack.", + "doc_type":"usermanual", + "kw":"Cloud Trace Service (CTS),Key Operations Recorded by CTS,Auditing,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Key Operations Recorded by CTS", + "githuburl":"" + }, + { + "uri":"ddm_11_0003.html", + "node_id":"ddm_11_0003.xml", + "product_code":"ddm", + "code":"88", + "des":"After CTS is enabled, the tracker starts recording operations on cloud resources. Operation records for the last 7 days are stored on the CTS console.This section describ", + "doc_type":"usermanual", + "kw":"Querying Traces,Auditing,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Querying Traces", + "githuburl":"" + }, + { + "uri":"ddm-08-0001.html", + "node_id":"ddm-08-0001.xml", + "product_code":"ddm", + "code":"89", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"SQL Syntax", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SQL Syntax", + "githuburl":"" + }, + { + "uri":"ddm_03_0062.html", + "node_id":"ddm_03_0062.xml", + "product_code":"ddm", + "code":"90", + "des":"DDM is compatible with the MySQL license and syntax, but the use of SQL statements is limited due to differences between distributed databases and single-node databases.B", + "doc_type":"usermanual", + "kw":"Introduction,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Introduction", + "githuburl":"" + }, + { + "uri":"ddm-08-0003.html", + "node_id":"ddm-08-0003.xml", + "product_code":"ddm", + "code":"91", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"DDL", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"DDL", + "githuburl":"" + }, + { + "uri":"ddm_12_0006.html", + "node_id":"ddm_12_0006.xml", + "product_code":"ddm", + "code":"92", + "des":"DDM supports common DDL operations, such as creating databases, creating tables, and modifying table structure, but the implementation method is different from that in co", + "doc_type":"usermanual", + "kw":"Overview,DDL,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"ddm_08_0029.html", + "node_id":"ddm_08_0029.xml", + "product_code":"ddm", + "code":"93", + "des":"Do not create tables whose names start with _ddm. DDM manages such tables as internal tables by defaultSharded tables do not support globally unique indexes. If the uniqu", + "doc_type":"usermanual", + "kw":"Creating a Table,DDL,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Creating a Table", + "githuburl":"" + }, + { + "uri":"ddm_03_0038.html", + "node_id":"ddm_03_0038.xml", + "product_code":"ddm", + "code":"94", + "des":"DDM supports database sharding, table sharding, and a variety of sharding algorithms.Database and table sharding keys cannot be left blank.In DDM, sharding of a logical t", + "doc_type":"usermanual", + "kw":"Sharding Algorithm Overview,DDL,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Sharding Algorithm Overview", + "githuburl":"" + }, + { + "uri":"ddm_10_0018.html", + "node_id":"ddm_10_0018.xml", + "product_code":"ddm", + "code":"95", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Sharding Algorithms", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Sharding Algorithms", + "githuburl":"" + }, + { + "uri":"ddm_10_0002.html", + "node_id":"ddm_10_0002.xml", + "product_code":"ddm", + "code":"96", + "des":"This algorithm applies if you want to route data to different database shards by user ID or order ID.The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMI", + "doc_type":"usermanual", + "kw":"MOD_HASH,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"MOD_HASH", + "githuburl":"" + }, + { + "uri":"ddm_12_0007.html", + "node_id":"ddm_12_0007.xml", + "product_code":"ddm", + "code":"97", + "des":"This algorithm applies if you want to route data to different database shards by user ID or order ID.The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMI", + "doc_type":"usermanual", + "kw":"MOD_HASH_CI,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"MOD_HASH_CI", + "githuburl":"" + }, + { + "uri":"ddm_10_0004.html", + "node_id":"ddm_10_0004.xml", + "product_code":"ddm", + "code":"98", + "des":"This algorithm applies if a large difference appears in high-digit part but a small difference in low-digit part of sharding key values. Using this algorithm ensures unif", + "doc_type":"usermanual", + "kw":"RIGHT_SHIFT,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"RIGHT_SHIFT", + "githuburl":"" + }, + { + "uri":"ddm_10_0014.html", + "node_id":"ddm_10_0014.xml", + "product_code":"ddm", + "code":"99", + "des":"This algorithm applies if you want to shard data by month. One table shard for one month is recommended, and its name is the month number.The sharding key must be DATE, D", + "doc_type":"usermanual", + "kw":"MM,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"MM", + "githuburl":"" + }, + { + "uri":"ddm_10_0015.html", + "node_id":"ddm_10_0015.xml", + "product_code":"ddm", + "code":"100", + "des":"This algorithm applies if you want to shard data by date. One table shard for one day is recommended, and its name is the day number.The sharding key must be DATE, DATETI", + "doc_type":"usermanual", + "kw":"DD,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"DD", + "githuburl":"" + }, + { + "uri":"ddm_10_0017.html", + "node_id":"ddm_10_0017.xml", + "product_code":"ddm", + "code":"101", + "des":"This algorithm applies when you want to shard data by day in a week. One table shard for one weekday is recommended.The sharding key must be DATE, DATETIME, or TIMESTAMP.", + "doc_type":"usermanual", + "kw":"WEEK,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"WEEK", + "githuburl":"" + }, + { + "uri":"ddm_10_0016.html", + "node_id":"ddm_10_0016.xml", + "product_code":"ddm", + "code":"102", + "des":"This algorithm applies when you want to shard data by day in a year. One table shard for one day (at most 366 days in a year) is recommended.The sharding key must be DATE", + "doc_type":"usermanual", + "kw":"MMDD,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"MMDD", + "githuburl":"" + }, + { + "uri":"ddm_10_0006.html", + "node_id":"ddm_10_0006.xml", + "product_code":"ddm", + "code":"103", + "des":"This algorithm applies when data is routed to shards by year and month. You are advised to use this algorithm together with tbpartition YYYYMM(ShardKey).The sharding key ", + "doc_type":"usermanual", + "kw":"YYYYMM,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"YYYYMM", + "githuburl":"" + }, + { + "uri":"ddm_10_0007.html", + "node_id":"ddm_10_0007.xml", + "product_code":"ddm", + "code":"104", + "des":"This algorithm applies when data is routed to shards by year and day. You are advised to use this algorithm together with tbpartition YYYYDD(ShardKey).The sharding key mu", + "doc_type":"usermanual", + "kw":"YYYYDD,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"YYYYDD", + "githuburl":"" + }, + { + "uri":"ddm_10_0008.html", + "node_id":"ddm_10_0008.xml", + "product_code":"ddm", + "code":"105", + "des":"This algorithm applies when data is routed to shards by week. You are advised to use this algorithm together with tbpartition YYYYWEEK(ShardKey).The sharding key must be ", + "doc_type":"usermanual", + "kw":"YYYYWEEK,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"YYYYWEEK", + "githuburl":"" + }, + { + "uri":"ddm_10_0012.html", + "node_id":"ddm_10_0012.xml", + "product_code":"ddm", + "code":"106", + "des":"This algorithm features even distribution of data and sharding tables. Arithmetic operators such as equality (=) and IN operators are often used in SQL queries.The shardi", + "doc_type":"usermanual", + "kw":"HASH,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"HASH", + "githuburl":"" + }, + { + "uri":"ddm_10_0013.html", + "node_id":"ddm_10_0013.xml", + "product_code":"ddm", + "code":"107", + "des":"This algorithm applies to routing data in different ranges to different shards. Less-than signs (<), greater-than signs (>), and BETWEEN ... AND ... are frequently used i", + "doc_type":"usermanual", + "kw":"Range,Sharding Algorithms,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Range", + "githuburl":"" + }, + { + "uri":"ddm-08-0004.html", + "node_id":"ddm-08-0004.xml", + "product_code":"ddm", + "code":"108", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"DML", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"DML", + "githuburl":"" + }, + { + "uri":"ddm-08-0005.html", + "node_id":"ddm-08-0005.xml", + "product_code":"ddm", + "code":"109", + "des":"INSERT is used to insert data into database objects.INSERT DELAYED is not supported.Only INSERT statements that contain sharding fields are supported.PARTITION syntax is ", + "doc_type":"usermanual", + "kw":"INSERT,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"INSERT", + "githuburl":"" + }, + { + "uri":"ddm-08-0007.html", + "node_id":"ddm-08-0007.xml", + "product_code":"ddm", + "code":"110", + "des":"REPLACE is used to insert rows into or replace rows in a table.PARTITION syntax is not supported.If an auto-increment table has no ID, you can insert a data record with a", + "doc_type":"usermanual", + "kw":"REPLACE,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"REPLACE", + "githuburl":"" + }, + { + "uri":"ddm-08-0008.html", + "node_id":"ddm-08-0008.xml", + "product_code":"ddm", + "code":"111", + "des":"DELETE is used to delete rows that meet conditions from a table.The WHERE clause does not support subqueries, including correlated and non-correlated subqueries.Data in r", + "doc_type":"usermanual", + "kw":"DELETE,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"DELETE", + "githuburl":"" + }, + { + "uri":"ddm-08-0009.html", + "node_id":"ddm-08-0009.xml", + "product_code":"ddm", + "code":"112", + "des":"Subqueries are not supported, including correlated and non-correlated subqueries.Cross-shard subquery is not supported.The WHERE condition in the UPDATE statement does no", + "doc_type":"usermanual", + "kw":"UPDATE,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"UPDATE", + "githuburl":"" + }, + { + "uri":"ddm-08-0006.html", + "node_id":"ddm-08-0006.xml", + "product_code":"ddm", + "code":"113", + "des":"SELECT is generally used to query data in one or more tables.Supported syntaxSyntaxDescriptionselect_exprIndicates a column that you want to query.FROM table_referencesIn", + "doc_type":"usermanual", + "kw":"SELECT,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SELECT", + "githuburl":"" + }, + { + "uri":"ddm-08-0010.html", + "node_id":"ddm-08-0010.xml", + "product_code":"ddm", + "code":"114", + "des":"table_references:table_reference:table_factor:join_table:join_condition:SELECT STRAIGHT_JOIN and NATURAL JOIN are not supported.", + "doc_type":"usermanual", + "kw":"SELECT JOIN Syntax,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SELECT JOIN Syntax", + "githuburl":"" + }, + { + "uri":"ddm-08-0011.html", + "node_id":"ddm-08-0011.xml", + "product_code":"ddm", + "code":"115", + "des":"SELECT statements in UNION do not support duplicate column names.", + "doc_type":"usermanual", + "kw":"SELECT UNION Syntax,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SELECT UNION Syntax", + "githuburl":"" + }, + { + "uri":"ddm-08-0012.html", + "node_id":"ddm-08-0012.xml", + "product_code":"ddm", + "code":"116", + "des":"ExampleSyntaxExampleSyntaxExampleSyntaxExampleEach derived table must have an alias.A derived table cannot be a correlated subquery.In some cases, correct results cannot ", + "doc_type":"usermanual", + "kw":"SELECT Subquery Syntax,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SELECT Subquery Syntax", + "githuburl":"" + }, + { + "uri":"ddm_12_0100.html", + "node_id":"ddm_12_0100.xml", + "product_code":"ddm", + "code":"117", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Supported System Schema Queries,DML,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Supported System Schema Queries", + "githuburl":"" + }, + { + "uri":"ddm_03_0063.html", + "node_id":"ddm_03_0063.xml", + "product_code":"ddm", + "code":"118", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Functions,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Functions", + "githuburl":"" + }, + { + "uri":"ddm-08-0013.html", + "node_id":"ddm-08-0013.xml", + "product_code":"ddm", + "code":"119", + "des":"DDM is compatible with the MySQL license and syntax, but the use of SQL statements is limited due to differences between distributed databases and single-node databases.T", + "doc_type":"usermanual", + "kw":"Use Constraints,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Use Constraints", + "githuburl":"" + }, + { + "uri":"ddm-08-0002.html", + "node_id":"ddm-08-0002.xml", + "product_code":"ddm", + "code":"120", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Supported SQL Statements", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Supported SQL Statements", + "githuburl":"" + }, + { + "uri":"ddm-08-0014.html", + "node_id":"ddm-08-0014.xml", + "product_code":"ddm", + "code":"121", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"CHECK TABLE", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"CHECK TABLE", + "githuburl":"" + }, + { + "uri":"ddm-08-0021.html", + "node_id":"ddm-08-0021.xml", + "product_code":"ddm", + "code":"122", + "des":"Purpose: To check DDL consistency of all logical tables in one schemaCommand Format:Command Output:The following output is returned if DDL check results of all logical ta", + "doc_type":"usermanual", + "kw":"Checking DDL Consistency of Physical Tables in All Logical Tables,CHECK TABLE,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Checking DDL Consistency of Physical Tables in All Logical Tables", + "githuburl":"" + }, + { + "uri":"ddm-08-0022.html", + "node_id":"ddm-08-0022.xml", + "product_code":"ddm", + "code":"123", + "des":"Purpose: To check DDL consistency of physical tables in a specific logical tableCommand Format:Command Output:If the returned result set is empty, DDL results of physical", + "doc_type":"usermanual", + "kw":"Checking DDL Consistency of Physical Tables in One Logical Table,CHECK TABLE,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Checking DDL Consistency of Physical Tables in One Logical Table", + "githuburl":"" + }, + { + "uri":"ddm-08-0015.html", + "node_id":"ddm-08-0015.xml", + "product_code":"ddm", + "code":"124", + "des":"Command Format 1:show rule;It is used to view the sharding rule of each logical table in a certain schema.Command output:Command Format 2:show rule from;It is", + "doc_type":"usermanual", + "kw":"SHOW RULE,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SHOW RULE", + "githuburl":"" + }, + { + "uri":"ddm-08-0017.html", + "node_id":"ddm-08-0017.xml", + "product_code":"ddm", + "code":"125", + "des":"Command Format:show topology from;It is used to view physical tables corresponding to a specified logical table.Output Details:RDS_instance_id: indicates the ", + "doc_type":"usermanual", + "kw":"SHOW TOPOLOGY,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SHOW TOPOLOGY", + "githuburl":"" + }, + { + "uri":"ddm-08-0029.html", + "node_id":"ddm-08-0029.xml", + "product_code":"ddm", + "code":"126", + "des":"Command Format:show data node;It is used to view data about database shards in the RDS instance.Output Details:RDS_instance_id: indicates the ID of the RDS instance.PHYSI", + "doc_type":"usermanual", + "kw":"SHOW DATA NODE,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SHOW DATA NODE", + "githuburl":"" + }, + { + "uri":"ddm-08-0023.html", + "node_id":"ddm-08-0023.xml", + "product_code":"ddm", + "code":"127", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"TRUNCATE TABLE", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"TRUNCATE TABLE", + "githuburl":"" + }, + { + "uri":"ddm-08-0024.html", + "node_id":"ddm-08-0024.xml", + "product_code":"ddm", + "code":"128", + "des":"Command Format:/*+db=*/ TRUNCATE TABLEDescription:Deleting data in physical tables corresponding to in does ", + "doc_type":"usermanual", + "kw":"HINT-DB,TRUNCATE TABLE,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"HINT-DB", + "githuburl":"" + }, + { + "uri":"ddm-08-0025.html", + "node_id":"ddm-08-0025.xml", + "product_code":"ddm", + "code":"129", + "des":"HINTs are instructions within a SQL statement that tell the optimizer to execute the statement in a flexible way. This section describes how to use HINT syntax to delete ", + "doc_type":"usermanual", + "kw":"HINT-TABLE,TRUNCATE TABLE,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"HINT-TABLE", + "githuburl":"" + }, + { + "uri":"ddm-08-0026.html", + "node_id":"ddm-08-0026.xml", + "product_code":"ddm", + "code":"130", + "des":"Command Format:/*+db=,table=*/ TRUNCATE TABLEDescription:Deleting data in physical table in datab", + "doc_type":"usermanual", + "kw":"HINT-DB/TABLE,TRUNCATE TABLE,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"HINT-DB/TABLE", + "githuburl":"" + }, + { + "uri":"ddm-08-0027.html", + "node_id":"ddm-08-0027.xml", + "product_code":"ddm", + "code":"131", + "des":"Command Format:/*+ allow_alter_rerun=true*/Description:Using this hint ensures that commands can be repeatedly executed, and no error is reported. This hint ", + "doc_type":"usermanual", + "kw":"HINT- ALLOW_ALTER_RERUN,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"HINT- ALLOW_ALTER_RERUN", + "githuburl":"" + }, + { + "uri":"ddm_03_0031.html", + "node_id":"ddm_03_0031.xml", + "product_code":"ddm", + "code":"132", + "des":"LOAD DATA LOCAL INFILE '/data/data.txt' IGNORE INTO TABLE test CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\\n' (id, sid,", + "doc_type":"usermanual", + "kw":"LOAD DATA,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"LOAD DATA", + "githuburl":"" + }, + { + "uri":"ddm_08_0032.html", + "node_id":"ddm_08_0032.xml", + "product_code":"ddm", + "code":"133", + "des":"Command Format 1:show physical processlist;This command returns the processes that run on the associated RDS instance.Command Format 2:show physical processlist with in", + "doc_type":"usermanual", + "kw":"SHOW PHYSICAL PROCESSLIST,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SHOW PHYSICAL PROCESSLIST", + "githuburl":"" + }, + { + "uri":"ddm_03_0034.html", + "node_id":"ddm_03_0034.xml", + "product_code":"ddm", + "code":"134", + "des":"DDM allows you to customize a hint to specify whether SQL statements are executed on the primary instance or its read replicas.The following hint formats are supported:Fo", + "doc_type":"usermanual", + "kw":"Customized Hints for Read/Write Splitting,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Customized Hints for Read/Write Splitting", + "githuburl":"" + }, + { + "uri":"ddm_03_0039.html", + "node_id":"ddm_03_0039.xml", + "product_code":"ddm", + "code":"135", + "des":"DDM allows you to configure a hint to control whether each SELECT statement skips the cached execution plan.The hint is in the format of /*!GAUSS:skip_plancache=flag*/.fl", + "doc_type":"usermanual", + "kw":"Setting a Hint to Skip the Cached Execution Plan,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Setting a Hint to Skip the Cached Execution Plan", + "githuburl":"" + }, + { + "uri":"ddm_03_0040.html", + "node_id":"ddm_03_0040.xml", + "product_code":"ddm", + "code":"136", + "des":"Command Format:Description:Specify a shard by configuring and execute a SQL statement on the shard.Example:Restrictions:The hint is valid only for SELE", + "doc_type":"usermanual", + "kw":"Specifying a Shard Using a Hint When Executing a SQL Statement,Supported SQL Statements,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Specifying a Shard Using a Hint When Executing a SQL Statement", + "githuburl":"" + }, + { + "uri":"ddm_03_0030.html", + "node_id":"ddm_03_0030.xml", + "product_code":"ddm", + "code":"137", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Global Sequence", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Global Sequence", + "githuburl":"" + }, + { + "uri":"ddm_12_0010.html", + "node_id":"ddm_12_0010.xml", + "product_code":"ddm", + "code":"138", + "des":"Global sequences are mainly database-based global sequences.The start auto-increment SN can be modified.Global sequence provides sequence numbers that are globally unique", + "doc_type":"usermanual", + "kw":"Overview,Global Sequence,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"ddm_03_0036.html", + "node_id":"ddm_03_0036.xml", + "product_code":"ddm", + "code":"139", + "des":"NEXTVAL returns the next sequence number, and CURRVAL returns the current sequence number. nextval(n) returns n unique sequence numbers.nextval(n) can be used only in sel", + "doc_type":"usermanual", + "kw":"Using NEXTVAL or CURRVAL to Query Global Sequence Numbers,Global Sequence,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Using NEXTVAL or CURRVAL to Query Global Sequence Numbers", + "githuburl":"" + }, + { + "uri":"ddm_03_0037.html", + "node_id":"ddm_03_0037.xml", + "product_code":"ddm", + "code":"140", + "des":"You can use global sequences in INSERT or REPLACE statements to provide unique global sequence across schemas in a DDM instance. Generating sequence numbers with NEXTVAL ", + "doc_type":"usermanual", + "kw":"Using Global Sequences in INSERT or REPLACE Statements,Global Sequence,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Using Global Sequences in INSERT or REPLACE Statements", + "githuburl":"" + }, + { + "uri":"ddm_03_0032.html", + "node_id":"ddm_03_0032.xml", + "product_code":"ddm", + "code":"141", + "des":"SHOW SyntaxSHOW COLUMNS SyntaxSHOW CREATE TABLE SyntaxSHOW TABLE STATUS SyntaxSHOW TABLES SyntaxSHOW DATABASESIf the required database is not found, check fine-grained pe", + "doc_type":"usermanual", + "kw":"Database Management Syntax,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Database Management Syntax", + "githuburl":"" + }, + { + "uri":"ddm_03_0035.html", + "node_id":"ddm_03_0035.xml", + "product_code":"ddm", + "code":"142", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Advanced SQL Functions,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Advanced SQL Functions", + "githuburl":"" + }, + { + "uri":"ddm_04_0001.html", + "node_id":"ddm_04_0001.xml", + "product_code":"ddm", + "code":"143", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"FAQs", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"FAQs", + "githuburl":"" + }, + { + "uri":"ddm_04_0066.html", + "node_id":"ddm_04_0066.xml", + "product_code":"ddm", + "code":"144", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"General Questions", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"General Questions", + "githuburl":"" + }, + { + "uri":"ddm_04_0068.html", + "node_id":"ddm_04_0068.xml", + "product_code":"ddm", + "code":"145", + "des":"DDM instance faults do not affect data integrity.Service data is stored in shards of data nodes, but not on DDM.Configuration information of schemas and logical tables is", + "doc_type":"usermanual", + "kw":"What High-Reliability Mechanisms Does DDM Provide?,General Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What High-Reliability Mechanisms Does DDM Provide?", + "githuburl":"" + }, + { + "uri":"ddm_04_0067.html", + "node_id":"ddm_04_0067.xml", + "product_code":"ddm", + "code":"146", + "des":"DDM uses VPCs and security groups to ensure security of your instances. The following provides guidance for you on how to correctly configure a security group.Access to a", + "doc_type":"usermanual", + "kw":"How Do I Select and Configure a Security Group?,General Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"How Do I Select and Configure a Security Group?", + "githuburl":"" + }, + { + "uri":"ddm_12_0011.html", + "node_id":"ddm_12_0011.xml", + "product_code":"ddm", + "code":"147", + "des":"No. Different data nodes associated with a DDM instance are independent of each other and cannot share data.", + "doc_type":"usermanual", + "kw":"Can Data Nodes Associated with a DDM Instance Share Data?,General Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Can Data Nodes Associated with a DDM Instance Share Data?", + "githuburl":"" + }, + { + "uri":"ddm_12_0012.html", + "node_id":"ddm_12_0012.xml", + "product_code":"ddm", + "code":"148", + "des":"Any data nodes can be associated with a DDM instance as long as they are:Running normallyIn the same VPC as the DDM instanceNot in use by other DDM instances", + "doc_type":"usermanual", + "kw":"What Data Nodes Can Be Associated with a DDM Instance?,General Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Data Nodes Can Be Associated with a DDM Instance?", + "githuburl":"" + }, + { + "uri":"ddm_04_0004.html", + "node_id":"ddm_04_0004.xml", + "product_code":"ddm", + "code":"149", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"DDM Usage", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"DDM Usage", + "githuburl":"" + }, + { + "uri":"ddm_04_0008.html", + "node_id":"ddm_04_0008.xml", + "product_code":"ddm", + "code":"150", + "des":"When you access a DDM instance using the MySQL driver (JDBC) in load balancing mode, an infinite loop may occur during connection switchover, resulting in stack overflow.", + "doc_type":"usermanual", + "kw":"MySQL driver,load balancing,What Do I Do If I Fail to Connect to a DDM Instance Using the JDBC Drive", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Do I Do If I Fail to Connect to a DDM Instance Using the JDBC Driver?", + "githuburl":"" + }, + { + "uri":"ddm_04_0009.html", + "node_id":"ddm_04_0009.xml", + "product_code":"ddm", + "code":"151", + "des":"Currently, you cannot connect to DDM using JDBC driver 5.1.46. Versions 5.1.35 to 5.1.45 are recommended.JDBC driver download address: https://dev.mysql.com/doc/index-con", + "doc_type":"usermanual", + "kw":"JDBC driver,What Version and Parameters Should I Select?,DDM Usage,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Version and Parameters Should I Select?", + "githuburl":"" + }, + { + "uri":"ddm_04_0013.html", + "node_id":"ddm_04_0013.xml", + "product_code":"ddm", + "code":"152", + "des":"The version of the mysqldump client may be inconsistent with that of the supported MySQL server, so exporting data from MySQL is slow.Using the same version of the mysqld", + "doc_type":"usermanual", + "kw":"Why It Takes So Long Time to Export Data from MySQL Using mysqldump?,DDM Usage,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Why It Takes So Long Time to Export Data from MySQL Using mysqldump?", + "githuburl":"" + }, + { + "uri":"ddm_04_0014.html", + "node_id":"ddm_04_0014.xml", + "product_code":"ddm", + "code":"153", + "des":"When you create a table in DDM, set the start value for automatic increment and ensure that the start value is greater than the maximum auto-increment value of imported d", + "doc_type":"usermanual", + "kw":"What Do I Do If a Duplicate Primary Key Error Occurs When Data Is Imported into DDM?,DDM Usage,User ", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Do I Do If a Duplicate Primary Key Error Occurs When Data Is Imported into DDM?", + "githuburl":"" + }, + { + "uri":"ddm_04_0035.html", + "node_id":"ddm_04_0035.xml", + "product_code":"ddm", + "code":"154", + "des":"Execute the following SQL statement to modify the start value of the auto-increment primary key so that the value is greater than the maximum value of primary keys in exi", + "doc_type":"usermanual", + "kw":"What Should I Do If an Error Message Is Returned When I Specify an Auto-Increment Primary Key During", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Should I Do If an Error Message Is Returned When I Specify an Auto-Increment Primary Key During Migration?", + "githuburl":"" + }, + { + "uri":"ddm_04_0031.html", + "node_id":"ddm_04_0031.xml", + "product_code":"ddm", + "code":"155", + "des":"Adjust the SocketTimeOut value or leave this parameter blank. The default value is 0, indicating that the client is not disconnected.", + "doc_type":"usermanual", + "kw":"What Do I Do If an Error Is Reported When Parameter Configuration Does Not Time Out?,DDM Usage,User ", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Do I Do If an Error Is Reported When Parameter Configuration Does Not Time Out?", + "githuburl":"" + }, + { + "uri":"ddm_04_0050.html", + "node_id":"ddm_04_0050.xml", + "product_code":"ddm", + "code":"156", + "des":"After an RDS instance is associated with your schema, you cannot delete the instance directly. To delete it, you have to delete the schema first and then delete the insta", + "doc_type":"usermanual", + "kw":"Which Should I Delete First, a Schema or its Associated RDS Instances?,DDM Usage,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Which Should I Delete First, a Schema or its Associated RDS Instances?", + "githuburl":"" + }, + { + "uri":"ddm_04_0051.html", + "node_id":"ddm_04_0051.xml", + "product_code":"ddm", + "code":"157", + "des":"If you do not need to delete the databases or accounts, you can manually delete them to free up space.", + "doc_type":"usermanual", + "kw":"Can I Manually Delete Databases and Accounts Remained in Data Nodes After a Schema Is Deleted?,DDM U", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Can I Manually Delete Databases and Accounts Remained in Data Nodes After a Schema Is Deleted?", + "githuburl":"" + }, + { + "uri":"ddm_04_0046.html", + "node_id":"ddm_04_0046.xml", + "product_code":"ddm", + "code":"158", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"SQL Syntax", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"SQL Syntax", + "githuburl":"" + }, + { + "uri":"ddm_04_0015.html", + "node_id":"ddm_04_0015.xml", + "product_code":"ddm", + "code":"159", + "des":"Yes. DDM supports distributed JOINs.Redundant fields are added during table design.Cross-shard JOIN is implemented by using broadcast tables, ER shards, and ShareJoin.Cur", + "doc_type":"usermanual", + "kw":"distributed JOINs,Does DDM Support Distributed JOINs?,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Does DDM Support Distributed JOINs?", + "githuburl":"" + }, + { + "uri":"ddm_04_0016.html", + "node_id":"ddm_04_0016.xml", + "product_code":"ddm", + "code":"160", + "des":"You are advised to use INNER instead of LEFT JOIN or RIGHT JOIN.When LEFT JOIN or RIGHT JOIN is used, ON is preferentially executed, and WHERE is executed at the end. The", + "doc_type":"usermanual", + "kw":"INNER,LEFT JOIN,RIGHT JOIN,How Do I Optimize SQL Statements?,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"How Do I Optimize SQL Statements?", + "githuburl":"" + }, + { + "uri":"ddm_04_0019.html", + "node_id":"ddm_04_0019.xml", + "product_code":"ddm", + "code":"161", + "des":"Data type conversion is an advanced function. DDM will be gradually upgraded to be compatible with more SQL syntax. If necessary, submit a service ticket for processing.", + "doc_type":"usermanual", + "kw":"Does DDM Support Forced Conversion of Data Types?,SQL Syntax,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Does DDM Support Forced Conversion of Data Types?", + "githuburl":"" + }, + { + "uri":"ddm_04_0036.html", + "node_id":"ddm_04_0036.xml", + "product_code":"ddm", + "code":"162", + "des":"Split an INSERT statement into multiple small statements.", + "doc_type":"usermanual", + "kw":"What Should I Do If an Error Is Reported When Multiple Data Records Are Inserted into Batches Using ", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Should I Do If an Error Is Reported When Multiple Data Records Are Inserted into Batches Using the INSERT Statement?", + "githuburl":"" + }, + { + "uri":"ddm_04_0047.html", + "node_id":"ddm_04_0047.xml", + "product_code":"ddm", + "code":"163", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"RDS-related Questions", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"RDS-related Questions", + "githuburl":"" + }, + { + "uri":"ddm_04_0048.html", + "node_id":"ddm_04_0048.xml", + "product_code":"ddm", + "code":"164", + "des":"DDM is case-insensitive to database names, table names, and column names by default.", + "doc_type":"usermanual", + "kw":"Is the Name of a Database Table Case-Sensitive?,RDS-related Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Is the Name of a Database Table Case-Sensitive?", + "githuburl":"" + }, + { + "uri":"ddm_04_0025.html", + "node_id":"ddm_04_0025.xml", + "product_code":"ddm", + "code":"165", + "des":"Table 1 lists risky operations on RDS for MySQL.", + "doc_type":"usermanual", + "kw":"What Risky Operations on RDS for MySQL Will Affect DDM?,RDS-related Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"What Risky Operations on RDS for MySQL Will Affect DDM?", + "githuburl":"" + }, + { + "uri":"ddm_04_0028.html", + "node_id":"ddm_04_0028.xml", + "product_code":"ddm", + "code":"166", + "des":"If there is already a primary key whose data type is a boundary value, in your DDM instance, duplicate primary keys will be reported when you insert a data record that is", + "doc_type":"usermanual", + "kw":"How Do I Handle Data with Duplicate Primary Keys in a Table?,RDS-related Questions,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"How Do I Handle Data with Duplicate Primary Keys in a Table?", + "githuburl":"" + }, + { + "uri":"ddm_04_0029.html", + "node_id":"ddm_04_0029.xml", + "product_code":"ddm", + "code":"167", + "des":"After you connect to a DDM instance through the MySQL client, you can run command show full innodb status to query information about the associated RDS for MySQL instance", + "doc_type":"usermanual", + "kw":"How Can I Query RDS for MySQL Information by Running Command show full innodb status?,RDS-related Qu", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"How Can I Query RDS for MySQL Information by Running Command show full innodb status?", + "githuburl":"" + }, + { + "uri":"ddm_04_0097.html", + "node_id":"ddm_04_0097.xml", + "product_code":"ddm", + "code":"168", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Connection Management", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Connection Management", + "githuburl":"" + }, + { + "uri":"ddm_04_0006.html", + "node_id":"ddm_04_0006.xml", + "product_code":"ddm", + "code":"169", + "des":"If the MySQL connection code is inconsistent with the actual one, garbled characters may be displayed during parsing on DDM.In this case, configure default-character-set=", + "doc_type":"usermanual", + "kw":"MySQL connection,How Can I Handle Garbled Characters Generated When I Connect a MySQL Instance to a ", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"How Can I Handle Garbled Characters Generated When I Connect a MySQL Instance to a DDM Instance?", + "githuburl":"" + }, + { + "uri":"ddm_histroy_0003.html", + "node_id":"ddm_histroy_0003.xml", + "product_code":"ddm", + "code":"170", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Change History,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"ddm", + "documenttype":"usermanual" + } + ], + "title":"Change History", + "githuburl":"" + } +] \ No newline at end of file diff --git a/docs/ddm/umn/CLASS.TXT.json b/docs/ddm/umn/CLASS.TXT.json new file mode 100644 index 00000000..c75d604a --- /dev/null +++ b/docs/ddm/umn/CLASS.TXT.json @@ -0,0 +1,1532 @@ +[ + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Service Overview", + "uri":"ddm_01_0000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"1" + }, + { + "desc":"Distributed Database Middleware (DDM) is a MySQL-compatible, distributed middleware service designed for relational databases. It can resolve distributed scaling issues t", + "product_code":"ddm", + "title":"Overview", + "uri":"ddm_01_0001.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"2" + }, + { + "desc":"A data node is the minimum management unit of DDM. Each data node represents an independently running database, and it may be an RDS for MySQL or GaussDB(for MySQL) insta", + "product_code":"ddm", + "title":"Basic Concepts", + "uri":"ddm_01_0018.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"3" + }, + { + "desc":"DDM supports a variety of functions, including horizontal sharding, shard configuration, highly compatible SQL syntax, read/write splitting, and global sequence.", + "product_code":"ddm", + "title":"Core Functions", + "uri":"ddm_01_0016.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"4" + }, + { + "desc":"General-enhanced DDM instances use Intel® Xeon® Scalable processors. Working in high-performance networks, these DDM instances can offer high and stable computing perform", + "product_code":"ddm", + "title":"Product Specifications", + "uri":"ddm_01_0017.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"5" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Usage Constraints", + "uri":"ddm-01-0003.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"6" + }, + { + "desc":"Restrictions on network access are as follows:The data nodes and ECSs running your applications must be in the same VPC as your DDM instance.To access DDM from your compu", + "product_code":"ddm", + "title":"Network Access", + "uri":"ddm-01-0004.html", + "doc_type":"usermanual", + "p_code":"6", + "code":"7" + }, + { + "desc":"Constraints on data nodes are as follows:Data nodes can be only RDS for MySQL and GaussDB(for MySQL) instances of versions 5.7 and 8.0.DDM cannot connect to MySQL instanc", + "product_code":"ddm", + "title":"Data Nodes", + "uri":"ddm_01_0005.html", + "doc_type":"usermanual", + "p_code":"6", + "code":"8" + }, + { + "desc":"Stored proceduresTriggersViewsEventsUser-defined functionsForeign key reference and associationFull-text indexes and SPACE functionsTemporary tablesCompound statements su", + "product_code":"ddm", + "title":"Unsupported Features and Limitations", + "uri":"ddm_01_0174.html", + "doc_type":"usermanual", + "p_code":"6", + "code":"9" + }, + { + "desc":"Pay attention to the following when you use DDM:Do not connect to any data node for data operations to avoid deleting by mistake system catalogs or metadata.Do not clear ", + "product_code":"ddm", + "title":"High-risk Operations", + "uri":"ddm_01_0175.html", + "doc_type":"usermanual", + "p_code":"6", + "code":"10" + }, + { + "desc":"The combination of a region and an availability zone (AZ) identifies the location of a data center. You can create resources in a specific AZ in a region.A region is a ge", + "product_code":"ddm", + "title":"Regions and AZs", + "uri":"ddm_01_0007.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"11" + }, + { + "desc":"As an OLTP-oriented service, DDM allows you to access distributed relational databases across a variety of industries.", + "product_code":"ddm", + "title":"Application Scenarios", + "uri":"ddm-01-0002.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"12" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Getting Started", + "uri":"ddm_02_0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"13" + }, + { + "desc":"This section describes how to associate a DDM instance with a data node (RDS for MySQL instance).Step 1: Create a DDM Instance and an RDS for MySQL InstanceStep 2: Create", + "product_code":"ddm", + "title":"Overview", + "uri":"ddm_01_0020.html", + "doc_type":"usermanual", + "p_code":"13", + "code":"14" + }, + { + "desc":"The default database port is 5066 and can be changed after a DDM instance is created.For details, see Changing a Database Port.For details about how to create an RDS for ", + "product_code":"ddm", + "title":"Step 1: Create a DDM Instance and an RDS for MySQL Instance", + "uri":"ddm_06_0002.html", + "doc_type":"usermanual", + "p_code":"13", + "code":"15" + }, + { + "desc":"Required permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECU", + "product_code":"ddm", + "title":"Step 2: Create a Schema and Associate It with an RDS for MySQL Instance", + "uri":"ddm_02_0013.html", + "doc_type":"usermanual", + "p_code":"13", + "code":"16" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Step 3: Create a DDM Account", + "uri":"ddm_02_0000.html", + "doc_type":"usermanual", + "p_code":"13", + "code":"17" + }, + { + "desc":"After you create a DDM instance, you can log in to it using a client such as Navicat, or connect to the required schema in the instance using the CLI or JDBC driver.This ", + "product_code":"ddm", + "title":"Step 4: Log In to the DDM Schema", + "uri":"ddm_02_0005.html", + "doc_type":"usermanual", + "p_code":"13", + "code":"18" + }, + { + "desc":"Distributed Database Middleware (DDM) is a MySQL-compatible, distributed middleware service designed for relational databases. It can resolve distributed scaling issues t", + "product_code":"ddm", + "title":"Function Overview", + "uri":"ddm_03_0053.html", + "doc_type":"usermanual", + "p_code":"", + "code":"19" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Permissions Management", + "uri":"ddm_05_0000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"20" + }, + { + "desc":"To create a schema, import schema information, or configure shards, you can use the administrator account of data nodes or create a database account with the following pe", + "product_code":"ddm", + "title":"Database Accounts and Permissions", + "uri":"ddm_05_0021.html", + "doc_type":"usermanual", + "p_code":"20", + "code":"21" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Instance Management", + "uri":"ddm_06_0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"22" + }, + { + "desc":"You have logged in to the DDM console.", + "product_code":"ddm", + "title":"Creating a DDM Instance", + "uri":"ddm_06_00017.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"23" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Splitting Read-only and Read-Write Services", + "uri":"ddm_06_0025.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"24" + }, + { + "desc":"DDM provides read-only service isolation by grouping nodes of a DDM instance to provide physically separated compute and storage resources.DDM provides two types of node ", + "product_code":"ddm", + "title":"What Is Read-only Service Isolation?", + "uri":"ddm_06_0026.html", + "doc_type":"usermanual", + "p_code":"24", + "code":"25" + }, + { + "desc":"One DDM instance supports multiple read-only groups. Each group contains at least 2 nodes, and each instance contains up to 32 nodes.One node belongs to only one group, a", + "product_code":"ddm", + "title":"How Are Read-only Services Split from Read-Write Services", + "uri":"ddm_06_0027.html", + "doc_type":"usermanual", + "p_code":"24", + "code":"26" + }, + { + "desc":"You have logged in to the DDM console.The DDM instance is in the Running state.Change node class during off-peak hours because services will be interrupted for a while du", + "product_code":"ddm", + "title":"Changing Class of a DDM Node", + "uri":"ddm_06_0003.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"27" + }, + { + "desc":"As service data increases, you can scale out a DDM instance by adding nodes to improve service stability.Scale out your DDM instance during off-peak hours.Make sure that ", + "product_code":"ddm", + "title":"Scaling Out a DDM Instance", + "uri":"ddm_06_0011.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"28" + }, + { + "desc":"This section describes how to scale in a DDM instance as service data volume decreases.Scale in your DDM instance during off-peak hours.Make sure that the associated data", + "product_code":"ddm", + "title":"Scaling In a DDM Instance", + "uri":"ddm_06_0014.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"29" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Restarting a DDM Instance", + "uri":"ddm_06_0004.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"30" + }, + { + "desc":"You may need to restart an instance to perform maintenance.The DDM instance is not available during restart, and the restart operation cannot be undone. Exercise caution ", + "product_code":"ddm", + "title":"Restarting a DDM Instance", + "uri":"ddm_06_0028.html", + "doc_type":"usermanual", + "p_code":"30", + "code":"31" + }, + { + "desc":"You can restart a single node of your DDM instance.An instance is not available when one of its nodes is being restarted. The restart operation cannot be undone. Exercise", + "product_code":"ddm", + "title":"Restarting a Node", + "uri":"ddm_06_0029.html", + "doc_type":"usermanual", + "p_code":"30", + "code":"32" + }, + { + "desc":"You can delete instances that are no longer needed.Deleted instances cannot be recovered. Exercise caution when performing this operation.Deleting a DDM instance will not", + "product_code":"ddm", + "title":"Deleting a DDM Instance", + "uri":"ddm_06_0005.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"33" + }, + { + "desc":"Configure parameters of a DDM instance based on your needs to keep the instance running well.There is a DDM instance available and running normally.By default, DDM allows", + "product_code":"ddm", + "title":"Modifying Parameters of a DDM Instance", + "uri":"ddm_03_0058.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"34" + }, + { + "desc":"You have logged in to the DDM console.The Change Parameter Template dialog box is displayed.", + "product_code":"ddm", + "title":"Changing a Parameter Template", + "uri":"ddm_06_0020.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"35" + }, + { + "desc":"DDM allows you to create an administrator account for your instance. This account has the superuser permissions to modify permissions of accounts displayed on the Account", + "product_code":"ddm", + "title":"Administrator Account", + "uri":"ddm_06_0021.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"36" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Connection Management", + "uri":"ddm_06_0040.html", + "doc_type":"usermanual", + "p_code":"", + "code":"37" + }, + { + "desc":"DDM supports load balancing by default, but some regions may not support. If an application accesses DDM using a private IP address, there are no traffic restrictions. To", + "product_code":"ddm", + "title":"Configuring Access Control", + "uri":"ddm_06_0035.html", + "doc_type":"usermanual", + "p_code":"37", + "code":"38" + }, + { + "desc":"DDM allows you to change the database port of a DDM instance. After the port is changed, the instance will restart.For DDM instances, the database port number ranges from", + "product_code":"ddm", + "title":"Changing a Database Port", + "uri":"ddm_06_0036.html", + "doc_type":"usermanual", + "p_code":"37", + "code":"39" + }, + { + "desc":"DDM allows you to change the security group of a DDM instance.Changing the security group may disconnect the DDM instance from its associated data nodes.Specify a new sec", + "product_code":"ddm", + "title":"Changing the Security Group of a DDM Instance", + "uri":"ddm_06_0039.html", + "doc_type":"usermanual", + "p_code":"37", + "code":"40" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Parameter Template Management", + "uri":"ddm_05_0005.html", + "doc_type":"usermanual", + "p_code":"", + "code":"41" + }, + { + "desc":"A database parameter template acts as a container for parameter configurations that can be applied to one or more DDM instances. You can manage configurations of a DDM in", + "product_code":"ddm", + "title":"Creating a Parameter Template", + "uri":"ddm_05_0006.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"42" + }, + { + "desc":"To improve performance of a DDM instance, you can modify parameters in custom parameter templates based on service requirements.You cannot change parameter values in defa", + "product_code":"ddm", + "title":"Editing a Parameter Template", + "uri":"ddm_05_0007.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"43" + }, + { + "desc":"You can apply different parameter templates to the same DDM instance to view impacts on parameter settings of the instance.You can compare different custom parameter temp", + "product_code":"ddm", + "title":"Comparing Two Parameter Templates", + "uri":"ddm_05_0009.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"44" + }, + { + "desc":"You can view parameters of a DDM instance and change history of custom templates.An exported or custom parameter template has initially a blank change history.You can vie", + "product_code":"ddm", + "title":"Viewing Parameter Change History", + "uri":"ddm_05_0010.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"45" + }, + { + "desc":"You can replicate a parameter template you have created. When you have already created a parameter template and want to provide most of its custom parameters and values i", + "product_code":"ddm", + "title":"Replicating a Parameter Template", + "uri":"ddm_05_0011.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"46" + }, + { + "desc":"After you create a parameter template and modify parameters in it based on service requirements, you can apply it to your DDM instances.To apply a default template, click", + "product_code":"ddm", + "title":"Applying a Parameter Template", + "uri":"ddm_05_0013.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"47" + }, + { + "desc":"After a parameter template is applied to DDM instances, you can view its application records.You can view the name or ID of the DDM instance to which the parameter templa", + "product_code":"ddm", + "title":"Viewing Application Records of a Parameter Template", + "uri":"ddm_05_0014.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"48" + }, + { + "desc":"You can modify the description of a parameter template that you have created.You cannot modify the description of any default parameter template.The description contains ", + "product_code":"ddm", + "title":"Modifying the Description of a Parameter Template", + "uri":"ddm_05_0015.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"49" + }, + { + "desc":"You can delete custom parameter templates that will not be used any more.Deleted parameter templates cannot be recovered. Exercise caution when performing this operation.", + "product_code":"ddm", + "title":"Deleting a Parameter Template", + "uri":"ddm_05_0016.html", + "doc_type":"usermanual", + "p_code":"41", + "code":"50" + }, + { + "desc":"You can view the progress and results of asynchronous tasks on the Task Center page.The following tasks can be viewed:Creating a DDM InstanceDeleting a DDM instanceChangi", + "product_code":"ddm", + "title":"Task Center", + "uri":"ddm_09_0002.html", + "doc_type":"usermanual", + "p_code":"", + "code":"51" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Schema Management", + "uri":"ddm_03_0006.html", + "doc_type":"usermanual", + "p_code":"", + "code":"52" + }, + { + "desc":"You have logged in to the DDM console.The DDM instance is in the Running state.Do not modify or delete the internal accounts (DDMRW*, DDMR*, and DDMREP*) created on data ", + "product_code":"ddm", + "title":"Creating a Schema", + "uri":"ddm_06_0006.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"53" + }, + { + "desc":"When you deploy DR or migrate data across regions, you can export schema information from source DDM instances. The export information includes schema information and sha", + "product_code":"ddm", + "title":"Exporting Schema Information", + "uri":"ddm_06_0015.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"54" + }, + { + "desc":"When you deploy DR or migrate data across regions, you can import schema information in destination DDM instances. The imported information includes schema information an", + "product_code":"ddm", + "title":"Importing Schema Information", + "uri":"ddm_06_0007.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"55" + }, + { + "desc":"You have logged in to the DDM console.You have created a schema.Deleted schemas cannot be recovered. Exercise caution when performing this operation.Deleted schemas canno", + "product_code":"ddm", + "title":"Deleting a Schema", + "uri":"ddm_03_0008.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"56" + }, + { + "desc":"Configure a blacklist and add those statements to it to prevent the system executing some SQL statements.You have logged in to the DDM console.A DDM instance is running p", + "product_code":"ddm", + "title":"Configuring the SQL Blacklist", + "uri":"ddm_03_0100.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"57" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Shard Configuration", + "uri":"ddm_03_0064.html", + "doc_type":"usermanual", + "p_code":"", + "code":"58" + }, + { + "desc":"Shard configuration is a core function of DDM. With this function, you can increase data nodes or shards to improve database storage and concurrency as services grow. Sha", + "product_code":"ddm", + "title":"Overview and Application Scenarios", + "uri":"ddm_03_0068.html", + "doc_type":"usermanual", + "p_code":"58", + "code":"59" + }, + { + "desc":"Before changing shards, you need to carry out a preliminary evaluation and determine the number of new shards, whether to scale up the current DDM node class, and the num", + "product_code":"ddm", + "title":"Assessment", + "uri":"ddm_03_0069.html", + "doc_type":"usermanual", + "p_code":"58", + "code":"60" + }, + { + "desc":"Check items in the table below one day before performing a shard configuration task.The shard configuration fails due to table structure inconsistency.Solution: Execute C", + "product_code":"ddm", + "title":"Pre-check", + "uri":"ddm_03_0070.html", + "doc_type":"usermanual", + "p_code":"58", + "code":"61" + }, + { + "desc":"This section uses an RDS for MySQL instance as an example to describe how to configure shards for a schema.There is a DDM instance with available schemas.There is an RDS ", + "product_code":"ddm", + "title":"Operation Guide", + "uri":"ddm_03_0071.html", + "doc_type":"usermanual", + "p_code":"58", + "code":"62" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Data Node Management", + "uri":"ddm_10_1000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"63" + }, + { + "desc":"Managing data nodes is managing RDS for MySQL or GaussDB(for MySQL) instances that are associated with your DDM instance. You can view the instance status, storage, class", + "product_code":"ddm", + "title":"Overview", + "uri":"ddm_10_1001.html", + "doc_type":"usermanual", + "p_code":"63", + "code":"64" + }, + { + "desc":"You have logged in to the DDM console.After you change your data nodes, for example, adding or deleting a read replica, changing the connection address, port number, or s", + "product_code":"ddm", + "title":"Synchronizing Data Node Information", + "uri":"ddm_10_1003.html", + "doc_type":"usermanual", + "p_code":"63", + "code":"65" + }, + { + "desc":"If one DDM instance is associated with multiple data nodes, you can synchronize read weight settings of the first data node to other data nodes.You have logged in to the ", + "product_code":"ddm", + "title":"Configuring Read Weights", + "uri":"ddm_10_1002.html", + "doc_type":"usermanual", + "p_code":"63", + "code":"66" + }, + { + "desc":"Read/write splitting offloads read requests from primary instances to read replicas on a data node at a ratio, improving processing of read/write transactions. This funct", + "product_code":"ddm", + "title":"Splitting Read and Write Requests", + "uri":"ddm_06_0012.html", + "doc_type":"usermanual", + "p_code":"63", + "code":"67" + }, + { + "desc":"You have logged in to the DDM console.If you want to deploy a DDM instance across regions for DR, use DRS to migrate service data and then reload table data after the mig", + "product_code":"ddm", + "title":"Reloading Table Data", + "uri":"ddm_03_0059.html", + "doc_type":"usermanual", + "p_code":"63", + "code":"68" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Account Management", + "uri":"ddm_05_0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"69" + }, + { + "desc":"You have logged in to the DDM console.There are schemas available in the DDM instance that you want to create an account for.", + "product_code":"ddm", + "title":"Creating an Account", + "uri":"ddm_05_0002.html", + "doc_type":"usermanual", + "p_code":"69", + "code":"70" + }, + { + "desc":"You have logged in to the DDM console.", + "product_code":"ddm", + "title":"Modifying an Account", + "uri":"ddm_05_0003.html", + "doc_type":"usermanual", + "p_code":"69", + "code":"71" + }, + { + "desc":"You have logged in to the DDM console.Deleted accounts cannot be recovered. Exercise caution when performing this operation.", + "product_code":"ddm", + "title":"Deleting an Account", + "uri":"ddm_05_0004.html", + "doc_type":"usermanual", + "p_code":"69", + "code":"72" + }, + { + "desc":"You have logged in to the DDM console.Resetting the DDM account password is a high-risk operation. Ensure that you have the IAM permission to modify DDM accounts.", + "product_code":"ddm", + "title":"Resetting the Password of an Account", + "uri":"ddm_05_0008.html", + "doc_type":"usermanual", + "p_code":"69", + "code":"73" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Backups and Restorations", + "uri":"ddm_03_0067.html", + "doc_type":"usermanual", + "p_code":"", + "code":"74" + }, + { + "desc":"DDM allows you to restore data from the current instance to any point in time using an existing backup. This is a good choice for routine service backup and restoration.T", + "product_code":"ddm", + "title":"Restoring Data to a New Instance", + "uri":"ddm_0600016.html", + "doc_type":"usermanual", + "p_code":"74", + "code":"75" + }, + { + "desc":"DDM automatically backs up DDM instance metadata at 02:00 UTC+00:00 every day and retains the backup data for 30 days. Metadata backup is also triggered by key operations", + "product_code":"ddm", + "title":"Restoring Metadata", + "uri":"ddm_0600017.html", + "doc_type":"usermanual", + "p_code":"74", + "code":"76" + }, + { + "desc":"DDM provides a Slow Queries function that sorts out the same type of slow SQL statements within a specified period of time by SQL template. You can specify a time range, ", + "product_code":"ddm", + "title":"Slow Queries", + "uri":"ddm_13_0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"77" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Monitoring Management", + "uri":"ddm_03_0050.html", + "doc_type":"usermanual", + "p_code":"", + "code":"78" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Supported Metrics", + "uri":"ddm_16_0001.html", + "doc_type":"usermanual", + "p_code":"78", + "code":"79" + }, + { + "desc":"This section describes metrics reported by DDM to Cloud Eye, metric namespaces, and dimensions. You can use APIs provided by Cloud Eye to query the metric information gen", + "product_code":"ddm", + "title":"DDM Instance Metrics", + "uri":"ddm_03_0051.html", + "doc_type":"usermanual", + "p_code":"79", + "code":"80" + }, + { + "desc":"If load balancing is enabled for your DDM instance, you can view network metrics in the following table. If load balancing is not enabled, you do not have the permissions", + "product_code":"ddm", + "title":"Network Metrics", + "uri":"ddm_03_0054.html", + "doc_type":"usermanual", + "p_code":"79", + "code":"81" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Viewing Metrics", + "uri":"ddm_16_0002.html", + "doc_type":"usermanual", + "p_code":"78", + "code":"82" + }, + { + "desc":"Cloud Eye monitors the running status of DDM instances. You can view instance monitoring metrics on the DDM console.Monitored data requires a period of time for transmiss", + "product_code":"ddm", + "title":"Viewing Instance Metrics", + "uri":"ddm_03_0052.html", + "doc_type":"usermanual", + "p_code":"82", + "code":"83" + }, + { + "desc":"The DDM console supports monitoring and management of network metrics.If load balancing is enabled for your DDM instance, you can view network metrics. If load balancing ", + "product_code":"ddm", + "title":"Viewing Network Metrics", + "uri":"ddm_16_0003.html", + "doc_type":"usermanual", + "p_code":"82", + "code":"84" + }, + { + "desc":"Tag Management Service (TMS) enables you to use tags on the console to manage resources. TMS works with other cloud services to manage tags. TMS manages tags globally. Ot", + "product_code":"ddm", + "title":"Tags", + "uri":"ddm_06_1000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"85" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Auditing", + "uri":"ddm_11_0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"86" + }, + { + "desc":"Cloud Trace Service (CTS) records operations related to DDM for further query, audit, and backtrack.", + "product_code":"ddm", + "title":"Key Operations Recorded by CTS", + "uri":"ddm_11_0002.html", + "doc_type":"usermanual", + "p_code":"86", + "code":"87" + }, + { + "desc":"After CTS is enabled, the tracker starts recording operations on cloud resources. Operation records for the last 7 days are stored on the CTS console.This section describ", + "product_code":"ddm", + "title":"Querying Traces", + "uri":"ddm_11_0003.html", + "doc_type":"usermanual", + "p_code":"86", + "code":"88" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"SQL Syntax", + "uri":"ddm-08-0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"89" + }, + { + "desc":"DDM is compatible with the MySQL license and syntax, but the use of SQL statements is limited due to differences between distributed databases and single-node databases.B", + "product_code":"ddm", + "title":"Introduction", + "uri":"ddm_03_0062.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"90" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"DDL", + "uri":"ddm-08-0003.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"91" + }, + { + "desc":"DDM supports common DDL operations, such as creating databases, creating tables, and modifying table structure, but the implementation method is different from that in co", + "product_code":"ddm", + "title":"Overview", + "uri":"ddm_12_0006.html", + "doc_type":"usermanual", + "p_code":"91", + "code":"92" + }, + { + "desc":"Do not create tables whose names start with _ddm. DDM manages such tables as internal tables by defaultSharded tables do not support globally unique indexes. If the uniqu", + "product_code":"ddm", + "title":"Creating a Table", + "uri":"ddm_08_0029.html", + "doc_type":"usermanual", + "p_code":"91", + "code":"93" + }, + { + "desc":"DDM supports database sharding, table sharding, and a variety of sharding algorithms.Database and table sharding keys cannot be left blank.In DDM, sharding of a logical t", + "product_code":"ddm", + "title":"Sharding Algorithm Overview", + "uri":"ddm_03_0038.html", + "doc_type":"usermanual", + "p_code":"91", + "code":"94" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Sharding Algorithms", + "uri":"ddm_10_0018.html", + "doc_type":"usermanual", + "p_code":"91", + "code":"95" + }, + { + "desc":"This algorithm applies if you want to route data to different database shards by user ID or order ID.The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMI", + "product_code":"ddm", + "title":"MOD_HASH", + "uri":"ddm_10_0002.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"96" + }, + { + "desc":"This algorithm applies if you want to route data to different database shards by user ID or order ID.The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMI", + "product_code":"ddm", + "title":"MOD_HASH_CI", + "uri":"ddm_12_0007.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"97" + }, + { + "desc":"This algorithm applies if a large difference appears in high-digit part but a small difference in low-digit part of sharding key values. Using this algorithm ensures unif", + "product_code":"ddm", + "title":"RIGHT_SHIFT", + "uri":"ddm_10_0004.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"98" + }, + { + "desc":"This algorithm applies if you want to shard data by month. One table shard for one month is recommended, and its name is the month number.The sharding key must be DATE, D", + "product_code":"ddm", + "title":"MM", + "uri":"ddm_10_0014.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"99" + }, + { + "desc":"This algorithm applies if you want to shard data by date. One table shard for one day is recommended, and its name is the day number.The sharding key must be DATE, DATETI", + "product_code":"ddm", + "title":"DD", + "uri":"ddm_10_0015.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"100" + }, + { + "desc":"This algorithm applies when you want to shard data by day in a week. One table shard for one weekday is recommended.The sharding key must be DATE, DATETIME, or TIMESTAMP.", + "product_code":"ddm", + "title":"WEEK", + "uri":"ddm_10_0017.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"101" + }, + { + "desc":"This algorithm applies when you want to shard data by day in a year. One table shard for one day (at most 366 days in a year) is recommended.The sharding key must be DATE", + "product_code":"ddm", + "title":"MMDD", + "uri":"ddm_10_0016.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"102" + }, + { + "desc":"This algorithm applies when data is routed to shards by year and month. You are advised to use this algorithm together with tbpartition YYYYMM(ShardKey).The sharding key ", + "product_code":"ddm", + "title":"YYYYMM", + "uri":"ddm_10_0006.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"103" + }, + { + "desc":"This algorithm applies when data is routed to shards by year and day. You are advised to use this algorithm together with tbpartition YYYYDD(ShardKey).The sharding key mu", + "product_code":"ddm", + "title":"YYYYDD", + "uri":"ddm_10_0007.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"104" + }, + { + "desc":"This algorithm applies when data is routed to shards by week. You are advised to use this algorithm together with tbpartition YYYYWEEK(ShardKey).The sharding key must be ", + "product_code":"ddm", + "title":"YYYYWEEK", + "uri":"ddm_10_0008.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"105" + }, + { + "desc":"This algorithm features even distribution of data and sharding tables. Arithmetic operators such as equality (=) and IN operators are often used in SQL queries.The shardi", + "product_code":"ddm", + "title":"HASH", + "uri":"ddm_10_0012.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"106" + }, + { + "desc":"This algorithm applies to routing data in different ranges to different shards. Less-than signs (<), greater-than signs (>), and BETWEEN ... AND ... are frequently used i", + "product_code":"ddm", + "title":"Range", + "uri":"ddm_10_0013.html", + "doc_type":"usermanual", + "p_code":"95", + "code":"107" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"DML", + "uri":"ddm-08-0004.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"108" + }, + { + "desc":"INSERT is used to insert data into database objects.INSERT DELAYED is not supported.Only INSERT statements that contain sharding fields are supported.PARTITION syntax is ", + "product_code":"ddm", + "title":"INSERT", + "uri":"ddm-08-0005.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"109" + }, + { + "desc":"REPLACE is used to insert rows into or replace rows in a table.PARTITION syntax is not supported.If an auto-increment table has no ID, you can insert a data record with a", + "product_code":"ddm", + "title":"REPLACE", + "uri":"ddm-08-0007.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"110" + }, + { + "desc":"DELETE is used to delete rows that meet conditions from a table.The WHERE clause does not support subqueries, including correlated and non-correlated subqueries.Data in r", + "product_code":"ddm", + "title":"DELETE", + "uri":"ddm-08-0008.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"111" + }, + { + "desc":"Subqueries are not supported, including correlated and non-correlated subqueries.Cross-shard subquery is not supported.The WHERE condition in the UPDATE statement does no", + "product_code":"ddm", + "title":"UPDATE", + "uri":"ddm-08-0009.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"112" + }, + { + "desc":"SELECT is generally used to query data in one or more tables.Supported syntaxSyntaxDescriptionselect_exprIndicates a column that you want to query.FROM table_referencesIn", + "product_code":"ddm", + "title":"SELECT", + "uri":"ddm-08-0006.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"113" + }, + { + "desc":"table_references:table_reference:table_factor:join_table:join_condition:SELECT STRAIGHT_JOIN and NATURAL JOIN are not supported.", + "product_code":"ddm", + "title":"SELECT JOIN Syntax", + "uri":"ddm-08-0010.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"114" + }, + { + "desc":"SELECT statements in UNION do not support duplicate column names.", + "product_code":"ddm", + "title":"SELECT UNION Syntax", + "uri":"ddm-08-0011.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"115" + }, + { + "desc":"ExampleSyntaxExampleSyntaxExampleSyntaxExampleEach derived table must have an alias.A derived table cannot be a correlated subquery.In some cases, correct results cannot ", + "product_code":"ddm", + "title":"SELECT Subquery Syntax", + "uri":"ddm-08-0012.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"116" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Supported System Schema Queries", + "uri":"ddm_12_0100.html", + "doc_type":"usermanual", + "p_code":"108", + "code":"117" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Functions", + "uri":"ddm_03_0063.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"118" + }, + { + "desc":"DDM is compatible with the MySQL license and syntax, but the use of SQL statements is limited due to differences between distributed databases and single-node databases.T", + "product_code":"ddm", + "title":"Use Constraints", + "uri":"ddm-08-0013.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"119" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Supported SQL Statements", + "uri":"ddm-08-0002.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"120" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"CHECK TABLE", + "uri":"ddm-08-0014.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"121" + }, + { + "desc":"Purpose: To check DDL consistency of all logical tables in one schemaCommand Format:Command Output:The following output is returned if DDL check results of all logical ta", + "product_code":"ddm", + "title":"Checking DDL Consistency of Physical Tables in All Logical Tables", + "uri":"ddm-08-0021.html", + "doc_type":"usermanual", + "p_code":"121", + "code":"122" + }, + { + "desc":"Purpose: To check DDL consistency of physical tables in a specific logical tableCommand Format:Command Output:If the returned result set is empty, DDL results of physical", + "product_code":"ddm", + "title":"Checking DDL Consistency of Physical Tables in One Logical Table", + "uri":"ddm-08-0022.html", + "doc_type":"usermanual", + "p_code":"121", + "code":"123" + }, + { + "desc":"Command Format 1:show rule;It is used to view the sharding rule of each logical table in a certain schema.Command output:Command Format 2:show rule from;It is", + "product_code":"ddm", + "title":"SHOW RULE", + "uri":"ddm-08-0015.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"124" + }, + { + "desc":"Command Format:show topology from;It is used to view physical tables corresponding to a specified logical table.Output Details:RDS_instance_id: indicates the ", + "product_code":"ddm", + "title":"SHOW TOPOLOGY", + "uri":"ddm-08-0017.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"125" + }, + { + "desc":"Command Format:show data node;It is used to view data about database shards in the RDS instance.Output Details:RDS_instance_id: indicates the ID of the RDS instance.PHYSI", + "product_code":"ddm", + "title":"SHOW DATA NODE", + "uri":"ddm-08-0029.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"126" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"TRUNCATE TABLE", + "uri":"ddm-08-0023.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"127" + }, + { + "desc":"Command Format:/*+db=*/ TRUNCATE TABLEDescription:Deleting data in physical tables corresponding to in does ", + "product_code":"ddm", + "title":"HINT-DB", + "uri":"ddm-08-0024.html", + "doc_type":"usermanual", + "p_code":"127", + "code":"128" + }, + { + "desc":"HINTs are instructions within a SQL statement that tell the optimizer to execute the statement in a flexible way. This section describes how to use HINT syntax to delete ", + "product_code":"ddm", + "title":"HINT-TABLE", + "uri":"ddm-08-0025.html", + "doc_type":"usermanual", + "p_code":"127", + "code":"129" + }, + { + "desc":"Command Format:/*+db=,table=*/ TRUNCATE TABLEDescription:Deleting data in physical table in datab", + "product_code":"ddm", + "title":"HINT-DB/TABLE", + "uri":"ddm-08-0026.html", + "doc_type":"usermanual", + "p_code":"127", + "code":"130" + }, + { + "desc":"Command Format:/*+ allow_alter_rerun=true*/Description:Using this hint ensures that commands can be repeatedly executed, and no error is reported. This hint ", + "product_code":"ddm", + "title":"HINT- ALLOW_ALTER_RERUN", + "uri":"ddm-08-0027.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"131" + }, + { + "desc":"LOAD DATA LOCAL INFILE '/data/data.txt' IGNORE INTO TABLE test CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\\n' (id, sid,", + "product_code":"ddm", + "title":"LOAD DATA", + "uri":"ddm_03_0031.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"132" + }, + { + "desc":"Command Format 1:show physical processlist;This command returns the processes that run on the associated RDS instance.Command Format 2:show physical processlist with in", + "product_code":"ddm", + "title":"SHOW PHYSICAL PROCESSLIST", + "uri":"ddm_08_0032.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"133" + }, + { + "desc":"DDM allows you to customize a hint to specify whether SQL statements are executed on the primary instance or its read replicas.The following hint formats are supported:Fo", + "product_code":"ddm", + "title":"Customized Hints for Read/Write Splitting", + "uri":"ddm_03_0034.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"134" + }, + { + "desc":"DDM allows you to configure a hint to control whether each SELECT statement skips the cached execution plan.The hint is in the format of /*!GAUSS:skip_plancache=flag*/.fl", + "product_code":"ddm", + "title":"Setting a Hint to Skip the Cached Execution Plan", + "uri":"ddm_03_0039.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"135" + }, + { + "desc":"Command Format:Description:Specify a shard by configuring and execute a SQL statement on the shard.Example:Restrictions:The hint is valid only for SELE", + "product_code":"ddm", + "title":"Specifying a Shard Using a Hint When Executing a SQL Statement", + "uri":"ddm_03_0040.html", + "doc_type":"usermanual", + "p_code":"120", + "code":"136" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Global Sequence", + "uri":"ddm_03_0030.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"137" + }, + { + "desc":"Global sequences are mainly database-based global sequences.The start auto-increment SN can be modified.Global sequence provides sequence numbers that are globally unique", + "product_code":"ddm", + "title":"Overview", + "uri":"ddm_12_0010.html", + "doc_type":"usermanual", + "p_code":"137", + "code":"138" + }, + { + "desc":"NEXTVAL returns the next sequence number, and CURRVAL returns the current sequence number. nextval(n) returns n unique sequence numbers.nextval(n) can be used only in sel", + "product_code":"ddm", + "title":"Using NEXTVAL or CURRVAL to Query Global Sequence Numbers", + "uri":"ddm_03_0036.html", + "doc_type":"usermanual", + "p_code":"137", + "code":"139" + }, + { + "desc":"You can use global sequences in INSERT or REPLACE statements to provide unique global sequence across schemas in a DDM instance. Generating sequence numbers with NEXTVAL ", + "product_code":"ddm", + "title":"Using Global Sequences in INSERT or REPLACE Statements", + "uri":"ddm_03_0037.html", + "doc_type":"usermanual", + "p_code":"137", + "code":"140" + }, + { + "desc":"SHOW SyntaxSHOW COLUMNS SyntaxSHOW CREATE TABLE SyntaxSHOW TABLE STATUS SyntaxSHOW TABLES SyntaxSHOW DATABASESIf the required database is not found, check fine-grained pe", + "product_code":"ddm", + "title":"Database Management Syntax", + "uri":"ddm_03_0032.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"141" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Advanced SQL Functions", + "uri":"ddm_03_0035.html", + "doc_type":"usermanual", + "p_code":"89", + "code":"142" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"FAQs", + "uri":"ddm_04_0001.html", + "doc_type":"usermanual", + "p_code":"", + "code":"143" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"General Questions", + "uri":"ddm_04_0066.html", + "doc_type":"usermanual", + "p_code":"143", + "code":"144" + }, + { + "desc":"DDM instance faults do not affect data integrity.Service data is stored in shards of data nodes, but not on DDM.Configuration information of schemas and logical tables is", + "product_code":"ddm", + "title":"What High-Reliability Mechanisms Does DDM Provide?", + "uri":"ddm_04_0068.html", + "doc_type":"usermanual", + "p_code":"144", + "code":"145" + }, + { + "desc":"DDM uses VPCs and security groups to ensure security of your instances. The following provides guidance for you on how to correctly configure a security group.Access to a", + "product_code":"ddm", + "title":"How Do I Select and Configure a Security Group?", + "uri":"ddm_04_0067.html", + "doc_type":"usermanual", + "p_code":"144", + "code":"146" + }, + { + "desc":"No. Different data nodes associated with a DDM instance are independent of each other and cannot share data.", + "product_code":"ddm", + "title":"Can Data Nodes Associated with a DDM Instance Share Data?", + "uri":"ddm_12_0011.html", + "doc_type":"usermanual", + "p_code":"144", + "code":"147" + }, + { + "desc":"Any data nodes can be associated with a DDM instance as long as they are:Running normallyIn the same VPC as the DDM instanceNot in use by other DDM instances", + "product_code":"ddm", + "title":"What Data Nodes Can Be Associated with a DDM Instance?", + "uri":"ddm_12_0012.html", + "doc_type":"usermanual", + "p_code":"144", + "code":"148" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"DDM Usage", + "uri":"ddm_04_0004.html", + "doc_type":"usermanual", + "p_code":"143", + "code":"149" + }, + { + "desc":"When you access a DDM instance using the MySQL driver (JDBC) in load balancing mode, an infinite loop may occur during connection switchover, resulting in stack overflow.", + "product_code":"ddm", + "title":"What Do I Do If I Fail to Connect to a DDM Instance Using the JDBC Driver?", + "uri":"ddm_04_0008.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"150" + }, + { + "desc":"Currently, you cannot connect to DDM using JDBC driver 5.1.46. Versions 5.1.35 to 5.1.45 are recommended.JDBC driver download address: https://dev.mysql.com/doc/index-con", + "product_code":"ddm", + "title":"What Version and Parameters Should I Select?", + "uri":"ddm_04_0009.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"151" + }, + { + "desc":"The version of the mysqldump client may be inconsistent with that of the supported MySQL server, so exporting data from MySQL is slow.Using the same version of the mysqld", + "product_code":"ddm", + "title":"Why It Takes So Long Time to Export Data from MySQL Using mysqldump?", + "uri":"ddm_04_0013.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"152" + }, + { + "desc":"When you create a table in DDM, set the start value for automatic increment and ensure that the start value is greater than the maximum auto-increment value of imported d", + "product_code":"ddm", + "title":"What Do I Do If a Duplicate Primary Key Error Occurs When Data Is Imported into DDM?", + "uri":"ddm_04_0014.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"153" + }, + { + "desc":"Execute the following SQL statement to modify the start value of the auto-increment primary key so that the value is greater than the maximum value of primary keys in exi", + "product_code":"ddm", + "title":"What Should I Do If an Error Message Is Returned When I Specify an Auto-Increment Primary Key During Migration?", + "uri":"ddm_04_0035.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"154" + }, + { + "desc":"Adjust the SocketTimeOut value or leave this parameter blank. The default value is 0, indicating that the client is not disconnected.", + "product_code":"ddm", + "title":"What Do I Do If an Error Is Reported When Parameter Configuration Does Not Time Out?", + "uri":"ddm_04_0031.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"155" + }, + { + "desc":"After an RDS instance is associated with your schema, you cannot delete the instance directly. To delete it, you have to delete the schema first and then delete the insta", + "product_code":"ddm", + "title":"Which Should I Delete First, a Schema or its Associated RDS Instances?", + "uri":"ddm_04_0050.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"156" + }, + { + "desc":"If you do not need to delete the databases or accounts, you can manually delete them to free up space.", + "product_code":"ddm", + "title":"Can I Manually Delete Databases and Accounts Remained in Data Nodes After a Schema Is Deleted?", + "uri":"ddm_04_0051.html", + "doc_type":"usermanual", + "p_code":"149", + "code":"157" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"SQL Syntax", + "uri":"ddm_04_0046.html", + "doc_type":"usermanual", + "p_code":"143", + "code":"158" + }, + { + "desc":"Yes. DDM supports distributed JOINs.Redundant fields are added during table design.Cross-shard JOIN is implemented by using broadcast tables, ER shards, and ShareJoin.Cur", + "product_code":"ddm", + "title":"Does DDM Support Distributed JOINs?", + "uri":"ddm_04_0015.html", + "doc_type":"usermanual", + "p_code":"158", + "code":"159" + }, + { + "desc":"You are advised to use INNER instead of LEFT JOIN or RIGHT JOIN.When LEFT JOIN or RIGHT JOIN is used, ON is preferentially executed, and WHERE is executed at the end. The", + "product_code":"ddm", + "title":"How Do I Optimize SQL Statements?", + "uri":"ddm_04_0016.html", + "doc_type":"usermanual", + "p_code":"158", + "code":"160" + }, + { + "desc":"Data type conversion is an advanced function. DDM will be gradually upgraded to be compatible with more SQL syntax. If necessary, submit a service ticket for processing.", + "product_code":"ddm", + "title":"Does DDM Support Forced Conversion of Data Types?", + "uri":"ddm_04_0019.html", + "doc_type":"usermanual", + "p_code":"158", + "code":"161" + }, + { + "desc":"Split an INSERT statement into multiple small statements.", + "product_code":"ddm", + "title":"What Should I Do If an Error Is Reported When Multiple Data Records Are Inserted into Batches Using the INSERT Statement?", + "uri":"ddm_04_0036.html", + "doc_type":"usermanual", + "p_code":"158", + "code":"162" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"RDS-related Questions", + "uri":"ddm_04_0047.html", + "doc_type":"usermanual", + "p_code":"143", + "code":"163" + }, + { + "desc":"DDM is case-insensitive to database names, table names, and column names by default.", + "product_code":"ddm", + "title":"Is the Name of a Database Table Case-Sensitive?", + "uri":"ddm_04_0048.html", + "doc_type":"usermanual", + "p_code":"163", + "code":"164" + }, + { + "desc":"Table 1 lists risky operations on RDS for MySQL.", + "product_code":"ddm", + "title":"What Risky Operations on RDS for MySQL Will Affect DDM?", + "uri":"ddm_04_0025.html", + "doc_type":"usermanual", + "p_code":"163", + "code":"165" + }, + { + "desc":"If there is already a primary key whose data type is a boundary value, in your DDM instance, duplicate primary keys will be reported when you insert a data record that is", + "product_code":"ddm", + "title":"How Do I Handle Data with Duplicate Primary Keys in a Table?", + "uri":"ddm_04_0028.html", + "doc_type":"usermanual", + "p_code":"163", + "code":"166" + }, + { + "desc":"After you connect to a DDM instance through the MySQL client, you can run command show full innodb status to query information about the associated RDS for MySQL instance", + "product_code":"ddm", + "title":"How Can I Query RDS for MySQL Information by Running Command show full innodb status?", + "uri":"ddm_04_0029.html", + "doc_type":"usermanual", + "p_code":"163", + "code":"167" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Connection Management", + "uri":"ddm_04_0097.html", + "doc_type":"usermanual", + "p_code":"143", + "code":"168" + }, + { + "desc":"If the MySQL connection code is inconsistent with the actual one, garbled characters may be displayed during parsing on DDM.In this case, configure default-character-set=", + "product_code":"ddm", + "title":"How Can I Handle Garbled Characters Generated When I Connect a MySQL Instance to a DDM Instance?", + "uri":"ddm_04_0006.html", + "doc_type":"usermanual", + "p_code":"168", + "code":"169" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"ddm", + "title":"Change History", + "uri":"ddm_histroy_0003.html", + "doc_type":"usermanual", + "p_code":"", + "code":"170" + } +] \ No newline at end of file diff --git a/docs/ddm/umn/PARAMETERS.txt b/docs/ddm/umn/PARAMETERS.txt new file mode 100644 index 00000000..6da8d5f0 --- /dev/null +++ b/docs/ddm/umn/PARAMETERS.txt @@ -0,0 +1,3 @@ +version="" +language="en-us" +type="" \ No newline at end of file diff --git a/docs/ddm/umn/ddm-01-0002.html b/docs/ddm/umn/ddm-01-0002.html new file mode 100644 index 00000000..588badc1 --- /dev/null +++ b/docs/ddm/umn/ddm-01-0002.html @@ -0,0 +1,15 @@ + + +

Application Scenarios

+

It is especially suitable for applications requiring high-concurrency access to large volumes of data. Typical application scenarios are as follows:

+
  • Internet

    E-commerce, finance, O2O, retail, and social networking applications usually face challenges such as large user base, frequent marketing events, and slow response of core transactional systems. DDM can scale compute and storage resources to improve database processing of high-concurrency transactions and ensure fast access to data.

    +
  • IoT

    In industrial monitoring, remote control, smart city extension, smart home, and Internet of Vehicles (IoV) scenarios, a large number of sensors and monitoring devices frequently collect data and generate huge amounts of data, which may exceed the storage capability of single-node databases. DDM provides horizontal expansion to help you store massive data at low costs.

    +
  • Traditional sectors

    Government agencies, large-sized enterprises, banks, and the like usually use commercial solutions to support high-concurrency access to large volumes of data. These solutions are expensive because they need to rely on mid-range computers and high-end storage devices. DDM, deployed in clusters with common ECSs, provides cost-efficient database solutions with the same or even higher performance than traditional commercial database solutions.

    +
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-01-0003.html b/docs/ddm/umn/ddm-01-0003.html new file mode 100644 index 00000000..197225e2 --- /dev/null +++ b/docs/ddm/umn/ddm-01-0003.html @@ -0,0 +1,21 @@ + + +

Usage Constraints

+
+ + diff --git a/docs/ddm/umn/ddm-01-0004.html b/docs/ddm/umn/ddm-01-0004.html new file mode 100644 index 00000000..6f0896c8 --- /dev/null +++ b/docs/ddm/umn/ddm-01-0004.html @@ -0,0 +1,12 @@ + + +

Network Access

+

Restrictions on network access are as follows:

+
  • The data nodes and ECSs running your applications must be in the same VPC as your DDM instance.
  • To access DDM from your computer, you need to bind an EIP to your DDM instance and then use the EIP to access the DDM instance.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0001.html b/docs/ddm/umn/ddm-08-0001.html new file mode 100644 index 00000000..cf6f493f --- /dev/null +++ b/docs/ddm/umn/ddm-08-0001.html @@ -0,0 +1,27 @@ + + +

SQL Syntax

+
+ + diff --git a/docs/ddm/umn/ddm-08-0002.html b/docs/ddm/umn/ddm-08-0002.html new file mode 100644 index 00000000..3a060980 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0002.html @@ -0,0 +1,35 @@ + + +

Supported SQL Statements

+
+ + diff --git a/docs/ddm/umn/ddm-08-0003.html b/docs/ddm/umn/ddm-08-0003.html new file mode 100644 index 00000000..9ec12dd3 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0003.html @@ -0,0 +1,21 @@ + + +

DDL

+
+ + diff --git a/docs/ddm/umn/ddm-08-0004.html b/docs/ddm/umn/ddm-08-0004.html new file mode 100644 index 00000000..5f67dfa3 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0004.html @@ -0,0 +1,31 @@ + + +

DML

+
+ + diff --git a/docs/ddm/umn/ddm-08-0005.html b/docs/ddm/umn/ddm-08-0005.html new file mode 100644 index 00000000..e9574137 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0005.html @@ -0,0 +1,27 @@ + + +

INSERT

+

INSERT is used to insert data into database objects.

+

Common Syntax

INSERT [INTO] tbl_name
+[(col_name,...)]
+{VALUES | VALUE} ({expr },...),(...),...
+[ ON DUPLICATE KEY UPDATE
+col_name=expr
+[, col_name=expr] ... ]
+OR
+INSERT [INTO] tbl_name
+SET col_name={expr | DEFAULT}, ...
+[ ON DUPLICATE KEY UPDATE
+col_name=expr [, col_name=expr] ... ]
+
+

Syntax Restrictions

  • INSERT DELAYED is not supported.
  • Only INSERT statements that contain sharding fields are supported.
  • PARTITION syntax is not supported. Partitioned tables are not recommended.
  • Setting datetime to 1582 or any value smaller in INSERT statements is not supported.
  • INSERT cannot be used to insert sharding key value DEFAULT.
  • If you specify an auto-increment key value in an INSERT statement and execute it on a sharded table, the auto-increment key value of the inserted data entry changes. Auto-increment key values of data entries inserted subsequently will increase based on the first inserted data entry unless you specify a new auto-increment key value.
  • Referencing a table column in function REPEAT of the VALUES statement is not supported, for example, INSERT INTO T(NAME) VALUES(REPEAT(ID,3)).
+
+

Use Constraints

  • If the sharding key value in the INSERT statement is invalid, data is routed to database shard 0 or table shard 0 by default.
  • Do not use functions VERSION, DATABASE, or USER in the INSERT statement. When you execute such as functions, you may not obtain the expected results because its results depend on whether it pushed to data nodes for execution.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0006.html b/docs/ddm/umn/ddm-08-0006.html new file mode 100644 index 00000000..40d9fcbe --- /dev/null +++ b/docs/ddm/umn/ddm-08-0006.html @@ -0,0 +1,64 @@ + + +

SELECT

+

SELECT is generally used to query data in one or more tables.

+

Common Syntax

SELECT
+[ALL | DISTINCT | DISTINCTROW ]
+select_expr
+[, select_expr ...]
+[FROM table_references [WHERE where_condition]
+[GROUP BY {col_name | expr | position} [ASC | DESC], ...]
+[HAVING where_condition] [ORDER BY {col_name | expr | position} [ASC | DESC], ...]
+[LIMIT {[offset,] row_count | row_count OFFSET offset}]
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + +
Table 1 Supported syntax

Syntax

+

Description

+

select_expr

+

Indicates a column that you want to query.

+

FROM table_references

+

Indicates the tables that you want to query.

+

WHERE

+

Followed by an expression to filter for rows that meet certain criteria.

+

GROUP BY

+

Groups the clauses used in SQL in sequence. GROUP BY indicates relationships between statements and supports column names. For example, the HAVING clause must be after the GROUP BY clause and before the ORDER BY clause.

+

ORDER BY

+

Indicates relationships between statements. Sorting by column name or by a specified order such as ASC and DESC is supported.

+

LIMIT/OFFSET

+

Restrains the offset and size of output result sets, for example, one or two values can be input after LIMIT.

+
+
+
+

Syntax Description

  • An empty string cannot be used as an alias.
  • SELECT ... GROUP BY ... WITH ROLLUP is not supported.
  • Neither STRAIGHT_JOIN nor NATURAL JOIN is supported.
  • The SELECT FOR UPDATE statement supports only simple queries and does not support JOIN, GROUP BY, ORDER BY, or LIMIT.
  • Each SELECT statement in UNION does not support multiple columns with the same name, for example,

    SELECT id, id, name FROM t1 UNION SELECT pk, pk, name FROM t2 is not supported because this statement has duplicate column names.

    +
  • User-defined sequencing similar to ORDER BY FIELD(id,1,2,3) is not supported.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0007.html b/docs/ddm/umn/ddm-08-0007.html new file mode 100644 index 00000000..075d3ea2 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0007.html @@ -0,0 +1,18 @@ + + +

REPLACE

+

REPLACE is used to insert rows into or replace rows in a table.

+

Common Syntax

replace into table(col1,col2,col3)
+values(value1,value2,value3)
+
+

Syntax Constraints

  • PARTITION syntax is not supported.
  • If an auto-increment table has no ID, you can insert a data record with a specified ID using REPLACE, but no ID is generated.
+
+

Use Constraints

  • If the sharding key value in the REPLACE statement is invalid, data is routed to database shard 0 or table shard 0 by default.
  • Do not use functions VERSION, DATABASE, or USER in the REPLACE statement. When you execute such as functions, you may not obtain the expected results because its results depend on whether it pushed to data nodes for execution.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0008.html b/docs/ddm/umn/ddm-08-0008.html new file mode 100644 index 00000000..f978704b --- /dev/null +++ b/docs/ddm/umn/ddm-08-0008.html @@ -0,0 +1,16 @@ + + +

DELETE

+

DELETE is used to delete rows that meet conditions from a table.

+

Common Syntax

DELETE [IGNORE]
+FROM tbl_name [WHERE where_condition]
+
+

Syntax Restrictions

  • The WHERE clause does not support subqueries, including correlated and non-correlated subqueries.
  • Data in reference tables cannot be deleted when multiple tables are deleted at a time.
  • PARTITION clauses are not supported.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0009.html b/docs/ddm/umn/ddm-08-0009.html new file mode 100644 index 00000000..c7d8fb8f --- /dev/null +++ b/docs/ddm/umn/ddm-08-0009.html @@ -0,0 +1,17 @@ + + +

UPDATE

+

Common Syntax

UPDATE table_reference
+SET col_name1={expr1} [, col_name2={expr2}] ...
+[WHERE where_condition]
+
+

Syntax Restrictions

  • Subqueries are not supported, including correlated and non-correlated subqueries.
  • Cross-shard subquery is not supported.
  • The WHERE condition in the UPDATE statement does not support arithmetic expressions and their subqueries.
  • Modifying broadcast tables is not supported during an update of multiple tables. (Data in columns of a broadcast table cannot be on the left of SET assignment statements).
  • Updating the sharding key field of a logical table is not supported because this operation may cause data redistribution.
  • Setting datetime to 1582 or any value smaller in UPDATE statements is not supported.
  • UPDATE cannot be used to update sharding key value DEFAULT.
  • Repeatedly updating the same field in an UPDATE statement is not supported.
  • Updating a sharding key using UPDATE JOIN syntax is not supported.
  • UPDATE cannot be used to update self-joins.
  • Referencing other object columns in assignment statements or expressions may cause unexpected update results. Example:

    update tbl_1 a,tbl_2 b set a.name=concat(b.name,'aaaa'),b.name=concat(a.name,'bbbb') on a.id=b.id

    +
  • UPDATE JOIN supports only joins with WHERE conditions.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0010.html b/docs/ddm/umn/ddm-08-0010.html new file mode 100644 index 00000000..c8310be3 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0010.html @@ -0,0 +1,36 @@ + + +

SELECT JOIN Syntax

+

Common Syntax

table_references:

+
table_reference [, table_reference] ...
+

table_reference:

+
table_factor | join_table
+

table_factor:

+
tbl_name [[AS] alias]
+| table_subquery [AS] alias
+| ( table_references )
+

join_table:

+
table_reference [INNER | CROSS] JOIN table_factor [join_condition]
+| table_reference {LEFT|RIGHT} [OUTER] JOIN table_reference join_condition
+| table_reference [{LEFT|RIGHT} [OUTER]] JOIN table_factor
+

join_condition:

+
ON conditional_expr
+| USING (column_list)
+
+

Syntax Restrictions

SELECT STRAIGHT_JOIN and NATURAL JOIN are not supported.

+
+

Example

select id,name from test1 where id=1;
+select distinct id,name from test1 where id>=1;
+select id,name from test1 order by id limit 2 offset 2;
+select id,name from test1 order by id limit 2,2;
+select  1+1,'test',id,id*1.1,now() from test1 limit 3;
+select  current_date,current_timestamp;
+select abs(sum(id)) from test1;
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0011.html b/docs/ddm/umn/ddm-08-0011.html new file mode 100644 index 00000000..5a46c885 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0011.html @@ -0,0 +1,18 @@ + + +

SELECT UNION Syntax

+

Common Syntax

SELECT ...UNION [ALL | DISTINCT] 
+SELECT ...[UNION [ALL | DISTINCT] SELECT ...]
+
+

Example

select userid from user union select orderid from ordertbl order by userid;
+select userid from user union (select orderid from ordertbl group by orderid) order by userid;
+
+

Syntax Restrictions

SELECT statements in UNION do not support duplicate column names.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0012.html b/docs/ddm/umn/ddm-08-0012.html new file mode 100644 index 00000000..af471a47 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0012.html @@ -0,0 +1,48 @@ + + +

SELECT Subquery Syntax

+

Subquery as Scalar Operand

Example

+
SELECT (SELECT id FROM test1 where id=1);         
+SELECT (SELECT id FROM test2 where id=1)FROM test1;              
+SELECT UPPER((SELECT name FROM test1 limit 1)) FROM test2;
+
+

Comparisons Using Subqueries

Syntax

+
non_subquery_operand comparison_operator (subquery)
+comparison_operator: = > < >= <= <> != <=> like
+
+

Example

+
select name from test1 where id > (select id from test2 where id=1);
+select name from test1 where id = (select id from test2 where id=1);
+select id from test1 where name like (select name from test2 where id=1);
+

Subqueries with ANY, IN, NOT IN, SOME,ALL,Exists,NOT Exists

Syntax

+
operand comparison_operator SOME (subquery)
+operand comparison_operator ALL (subquery)
+operand comparison_operator ANY (subquery) 
+operand IN (subquery) 
+operand not IN (subquery)
+operand exists (subquery)
+operand not exists (subquery)
+
+

Example

+
select id from test1 where id > any (select id from test2);
+select id from test1 where id > some (select id from test2);
+select id from test1 where id > all (select id from test2);
+select id from test1 where id in (select id from test2);
+select id from test1 where id not in (select id from test2);
+select id from test1 where exists (select id from test2 where id=1);
+select id from test1 where not exists (select id from test2 where id=1);
+

Derived Tables (Subqueries in the FROM Clause)

Syntax

+
SELECT ... FROM (subquery) [AS] tbl_name ...
+

Example

+
select id from (select id,name from test2 where id>1) a  order by a.id;
+
+

Syntax Restrictions

  • Each derived table must have an alias.
  • A derived table cannot be a correlated subquery.
  • In some cases, correct results cannot be obtained using a scalar subquery. Using JOIN instead is recommended to improve query performance.
  • Using subqueries in the HAVING clause and the JOIN ON condition is not supported.
+
  • Row subqueries are not supported.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0013.html b/docs/ddm/umn/ddm-08-0013.html new file mode 100644 index 00000000..ccd9ead0 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0013.html @@ -0,0 +1,16 @@ + + +

Use Constraints

+

DDM is compatible with the MySQL license and syntax, but the use of SQL statements is limited due to differences between distributed databases and single-node databases.

+

Unsupported SQL Statements

  • Triggers
  • Temporary tables
  • DO statement
  • Association with foreign keys
  • RESET statement
  • FLUSH statement
  • BINLOG statement
  • HANDLER statement
  • SHOW WARNINGS statement
  • Assignment operator :=
  • Operators less than (<), assignment (=), and more than (>)
  • Expression IS UNKNOWN
  • INSTALL and UNINSTALL PLUGIN statements
  • Cross-shard stored procedures and custom functions
  • Statements for modifying database names, table names, and sharding field names and types
  • Most of SHOW statements such as SHOW PROFILES and SHOW ERRORS
  • Table maintenance statements, including ANALYZE, CHECK, CHECKSUM, OPTIMIZE, and REPAIR TABLE
  • Statements for assigning a value to or querying variable session, for example, set @rowid=0;select @rowid:=@rowid+1,id from user
  • SQL statements that use -- or /*...*/ to comment out a single line or multiple lines of code
  • The result of the REPEAT function contains a maximum of 1,000,000 characters (in version 3.0.9 or later).
+
+

Permission Levels

Permission levels supported by DDM are as follows:

+
  • Global level (not supported)
  • Database level (supported)
  • Table level (supported)
  • Column level (not supported)
  • Subprogram level (not supported)
  • User level (supported)
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0014.html b/docs/ddm/umn/ddm-08-0014.html new file mode 100644 index 00000000..4f4224f9 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0014.html @@ -0,0 +1,17 @@ + + +

CHECK TABLE

+
+ + diff --git a/docs/ddm/umn/ddm-08-0015.html b/docs/ddm/umn/ddm-08-0015.html new file mode 100644 index 00000000..3e563e29 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0015.html @@ -0,0 +1,32 @@ + + +

SHOW RULE

+

Command Format 1:

+

show rule;

+

It is used to view the sharding rule of each logical table in a certain schema.

+

Command output:

+

+

Command Format 2:

+

show rule from <table_name>;

+

It is used to view the sharding rule of a specific logical table in a certain schema.

+

Command output:

+

+

Output Details:

+

TABLE_NAME: indicates the name of the logical table.

+

BROADCAST: specifies whether the table is a broadcast table. 0 indicates that the table is not a broadcast table. 1 indicates the table is a broadcast table.

+

DB_PARTITION_KEY: indicates the database sharding key. Leave this field blank if database sharding is not required.

+

DB_PARTITION_POLICY: indicates the database sharding algorithm. The value can be HASH, YYYYMM, YYYYDD, and YYYYWEEK.

+

DB_PARTITION_COUNT: indicates the number of database shards.

+

DB_PARTITION_OFFSET: indicates where a new database shard starts from.

+

PARTITION_RANGE: indicates the sharding range when the database sharding algorithm is range.

+

TB_PARTITION_KEY: indicates the table sharding key. Leave this field blank if table sharding is not required.

+

TB_PARTITION_POLICY: indicates the table sharding algorithm. The value can be HASH, MM, DD, MMDD, or WEEK.

+

TB_PARTITION_COUNT: indicates the number of physical tables in each database shard.

+

TB_PARTITION_OFFSET: indicates where a new physical table starts from.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0017.html b/docs/ddm/umn/ddm-08-0017.html new file mode 100644 index 00000000..67b58d8d --- /dev/null +++ b/docs/ddm/umn/ddm-08-0017.html @@ -0,0 +1,20 @@ + + +

SHOW TOPOLOGY

+

Command Format:

+

show topology from <table_name>;

+

It is used to view physical tables corresponding to a specified logical table.

+

Output Details:

+

RDS_instance_id: indicates the ID of the RDS instance.

+

HOST: indicates the IP address of the RDS instance.

+

PORT: indicates the port number of the RDS instance.

+

DATABASE: indicates the physical database in the RDS instance.

+

TABLE: indicates the physical table.

+

ROW_COUNT: indicates the estimated number of data entries in each physical table. The value is obtained from information_schema.TABLES.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0021.html b/docs/ddm/umn/ddm-08-0021.html new file mode 100644 index 00000000..76ba520f --- /dev/null +++ b/docs/ddm/umn/ddm-08-0021.html @@ -0,0 +1,22 @@ + + +

Checking DDL Consistency of Physical Tables in All Logical Tables

+

Purpose: To check DDL consistency of all logical tables in one schema

+

Command Format:

+
 check table
+

Command Output:

+

The following output is returned if DDL check results of all logical tables are consistent.

+

+

The following output is returned if there are logical tables with inconsistent DDL check results.

+

+

Output Details:

+

Each row contains the check result of a logical table.

+
  • DATABASE_NAME: indicates the schema name.
  • TABLE_NAME: indicates the logical table name.
  • TABLE_TYPE: indicates the logical table type.
    • SINGLE: indicates that the logical table is unsharded.
    • BROADCAST: indicates that the table is a broadcast table.
    • SHARDING: indicates that the table is sharded.
    +
  • DDL_CONSISTENCY: indicates whether DDL results of all physical tables corresponding to the logical table are consistent.
  • TOTAL_COUNT: indicates the number of physical tables in the logical table.
  • INCONSISTENT_COUNT: indicates the number of physical tables with inconsistent DDL results.
  • DETAILS: indicates names of the physical tables with inconsistent DDL check results.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0022.html b/docs/ddm/umn/ddm-08-0022.html new file mode 100644 index 00000000..6f1f7523 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0022.html @@ -0,0 +1,21 @@ + + +

Checking DDL Consistency of Physical Tables in One Logical Table

+

Purpose: To check DDL consistency of physical tables in a specific logical table

+

Command Format:

+
check table <table_name>
+

Command Output:

+

If the returned result set is empty, DDL results of physical tables in this logical table are consistent.

+

+

If the returned result set is not empty, there are physical tables with inconsistent DDL results.

+

+

Output Details:

+

Each row displays details of a physical table with inconsistent DDL results.

+
  • DATABASE_NAME: indicates the database shard containing the physical table.
  • TABLE_NAME: indicates the name of the physical table.
  • TABLE_TYPE: indicates the type of the logical table that the physical table belongs to.
  • EXTRA_COLUMNS: indicates extra columns in the physical table.
  • MISSING_COLUMNS: indicates missing columns in the physical table.
  • DIFFERENT_COLUMNS: indicates name and type columns whose attributes are inconsistent in the physical table.
  • KEY_DIFF: indicates inconsistent indexes in the physical table.
  • ENGINE_DIFF: indicates inconsistent engines in the physical table.
  • CHARSET_DIFF: indicates inconsistent character sets in the physical table.
  • COLLATE_DIFF: indicates inconsistent collations in the physical table.
  • EXTRA_PARTITIONS: indicates extra partitions in the physical table. This field is only available to partitioned tables.
  • MISSING_PARTITIONS: indicates missing partitions in the physical table. This field is only available to partitioned tables.
  • DIFFERENT_PARTITIONS: indicates partitions with inconsistent attributes in the physical table. This field is only available to partitioned tables.
  • EXTRA_INFO: indicates other information such as missing physical tables.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0023.html b/docs/ddm/umn/ddm-08-0023.html new file mode 100644 index 00000000..1881dac7 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0023.html @@ -0,0 +1,19 @@ + + +

TRUNCATE TABLE

+
+
+ + + +
+ diff --git a/docs/ddm/umn/ddm-08-0024.html b/docs/ddm/umn/ddm-08-0024.html new file mode 100644 index 00000000..c103ece0 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0024.html @@ -0,0 +1,16 @@ + + +

HINT-DB

+

Command Format:

+

/*+db=<physical_db_name>*/ TRUNCATE TABLE <table_name>

+

Description:

+

Deleting data in physical tables corresponding to <table_name> in <physical_db_name> does not affect physical tables in other database shards.

+

HINTs are instructions within a SQL statement that tell the optimizer to execute the statement in a flexible way.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0025.html b/docs/ddm/umn/ddm-08-0025.html new file mode 100644 index 00000000..209456eb --- /dev/null +++ b/docs/ddm/umn/ddm-08-0025.html @@ -0,0 +1,21 @@ + + +

HINT-TABLE

+

HINTs are instructions within a SQL statement that tell the optimizer to execute the statement in a flexible way. This section describes how to use HINT syntax to delete data from a table.

+

Command Format:

+

/*+table=<physical_table_name>*/ TRUNCATE TABLE <table_name>

+

Description:

+

Deleting data in physical table <physical_table_name> in the current database shard does not affect other physical tables.

+

Example output before the table is deleted:

+

+

Example output after the table is deleted:

+

+

Hints are valid only for sharded tables.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0026.html b/docs/ddm/umn/ddm-08-0026.html new file mode 100644 index 00000000..264e57eb --- /dev/null +++ b/docs/ddm/umn/ddm-08-0026.html @@ -0,0 +1,16 @@ + + +

HINT-DB/TABLE

+

Command Format:

+

/*+db=<physical_db_name>,table=<physical_table_name>*/ TRUNCATE TABLE <table_name>

+

Description:

+

Deleting data in physical table <physical_table_name> in database shard <physical_db_name> does not affect other physical tables.

+

Hints are valid only for sharded tables.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0027.html b/docs/ddm/umn/ddm-08-0027.html new file mode 100644 index 00000000..4202eb90 --- /dev/null +++ b/docs/ddm/umn/ddm-08-0027.html @@ -0,0 +1,16 @@ + + +

HINT- ALLOW_ALTER_RERUN

+

Command Format:

+

/*+ allow_alter_rerun=true*/<ALTER TABLE>

+

Description:

+

Using this hint ensures that commands can be repeatedly executed, and no error is reported. This hint supports the following ALTER TABLE statements: ADD COLUMN, MODIFY COLUMN, DROP COLUMN, ADD INDEX, DROP INDEX, CHANGE COLUMN, ADD PARTITION, and DROP PARTITION.

+

Example:

+

/*+ allow_alter_rerun=true*/ALTER TABLE aaa_tb ADD schoolroll varchar(128) not null comment 'Enrollment data'

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm-08-0029.html b/docs/ddm/umn/ddm-08-0029.html new file mode 100644 index 00000000..b61f180f --- /dev/null +++ b/docs/ddm/umn/ddm-08-0029.html @@ -0,0 +1,18 @@ + + +

SHOW DATA NODE

+

Command Format:

+

show data node;

+

It is used to view data about database shards in the RDS instance.

+

Output Details:

+

RDS_instance_id: indicates the ID of the RDS instance.

+

PHYSICAL_NODE: used to view physical databases in the RDS instance.

+

HOST: indicates the IP address of the RDS instance.

+

PORT: indicates the port number of the RDS instance.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0000.html b/docs/ddm/umn/ddm_01_0000.html new file mode 100644 index 00000000..fa31387c --- /dev/null +++ b/docs/ddm/umn/ddm_01_0000.html @@ -0,0 +1,23 @@ + + +

Service Overview

+
+ + diff --git a/docs/ddm/umn/ddm_01_0001.html b/docs/ddm/umn/ddm_01_0001.html new file mode 100644 index 00000000..95703ad4 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0001.html @@ -0,0 +1,24 @@ + + +

Overview

+

Definition

Distributed Database Middleware (DDM) is a MySQL-compatible, distributed middleware service designed for relational databases. It can resolve distributed scaling issues to break through capacity and performance bottlenecks of databases, helping handle highly concurrent access to massive volumes of data.

+

DDM uses a decoupled compute and storage architecture and provides functions such as database and table sharding, read/write splitting, elastic scaling, and sustainable O&M. Management of instance nodes has no impacts on your workloads. You can perform O&M on your databases and read and write data from and to them on the DDM console, just like as operating a single-node MySQL database.

+
+

Advantages

  • Automatic Database and Table Sharding

    MySQL databases are usually deployed on single nodes. Once a fault occurs, all data may be lost, and your workloads are 100% affected.

    +

    DDM supports automatic database and table sharding to distribute data across multiple data nodes, so impacts on your services are greatly reduced once a fault occurs. It also supports explosive growth of services.

    +
  • Read/Write Splitting

    DDM can leverage data nodes. If there is still great query pressure after horizontal sharding, you can enable read/write splitting to speed up database processing and access, without the need to reconstruct your service system.

    +
  • Elastic Scaling

    MySQL databases can support only medium- and small-scale service systems because their CPU, memory, and network processing are limited by server configurations and their storage depends on the size of SSD or EVS disks.

    +

    DDM supports both compute and storage scaling. You can add nodes to a DDM instance or scale up its node class. Alternatively, increase shards or data nodes to distribute data from one large table to multiple tables or scale out storage resources as services grow, without worrying about O&M.

    +
+
+

Service Architecture

Figure 1 DDM service architecture
+
+

How DDM Works

Figure 2 DDM working diagram
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0005.html b/docs/ddm/umn/ddm_01_0005.html new file mode 100644 index 00000000..07e6ca30 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0005.html @@ -0,0 +1,14 @@ + + +

Data Nodes

+

Constraints on data nodes are as follows:

+
  • Data nodes can be only RDS for MySQL and GaussDB(for MySQL) instances of versions 5.7 and 8.0.
  • DDM cannot connect to MySQL instances using SSL connections.
  • Case sensitivity support cannot be enabled for MySQL instances.
    • If you are using MySQL 5.7, select Case insensitive for Table Name when you create a MySQL instance, or set lower_case_table_names to 1 on the Parameters page after you complete the creation.
    • If you are using MySQL 8.0, select Case insensitive for Table Name when you create a MySQL instance.
    +
    +
  • Modifying configurations of a data node may result in an exception in using your DDM instance. After the modification, click Synchronize Data Node Information on the Data Nodes page to synchronize changes from the data node to DDM.
  • DDM data nodes do not support GBK character sets.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0007.html b/docs/ddm/umn/ddm_01_0007.html new file mode 100644 index 00000000..0124e4b4 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0007.html @@ -0,0 +1,22 @@ + + +

Regions and AZs

+

Concepts

The combination of a region and an availability zone (AZ) identifies the location of a data center. You can create resources in a specific AZ in a region.

+
  • A region is a geographic area where physical data centers are located. Each region is completely independent, improving fault tolerance and stability. After a resource is created, its region cannot be changed.
  • An AZ is a physical location using independent power supplies and networks. Faults in an AZ do not affect other AZs. A region can contain multiple AZs, which are physically isolated but interconnected through internal networks. This ensures the independence of AZs and provides low-cost and low-latency network connections.
+ +

Figure 1 shows the relationship between regions and AZs.

+
Figure 1 Regions and AZs
+

+
+

Selecting a Region

You are advised to select a region close to you or your target users. This reduces network latency and improves access rate.

+
+

Selecting an AZ

When determining whether to deploy resources in the same AZ, consider your applications' requirements on disaster recovery (DR) and network latency.

+
  • For high DR capability, deploy resources in different AZs in the same region.
  • For low network latency, deploy resources in the same AZ.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0016.html b/docs/ddm/umn/ddm_01_0016.html new file mode 100644 index 00000000..dbc18201 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0016.html @@ -0,0 +1,66 @@ + + +

Core Functions

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 DDM main functions

Function

+

Description

+

Horizontal sharding

+

Select a sharding key when creating a logical table. DDM will generate a sharding rule and horizontally shard data.

+

Flexible shard configuration

+

DDM supports both compute and storage scaling. You can add nodes to a DDM instance or scale up its node class. Alternatively, increase shards or data nodes to distribute data from one large table to multiple tables or scale out storage resources. Compute scaling is undetectable to your applications. Storage scaling minimizes service interruption to seconds.

+

Distributed transactions

+

DDM processes three types of transactions, including single-shard, FREE, and Extended Architecture (XA).

+
  • Single-shard: Transactions cannot be committed across shards.
  • FREE: Transactions are committed across shards. A transaction is not rolled back when it fails to be executed by any shard, causing data inconsistency.
  • XA: Transactions are committed in two phases. If a transaction fails to be executed by any shard, all work done will be rolled back to ensure data consistency.
+

Highly compatible SQL syntax

+

DDM is highly compatible with the MySQL licenses and syntax.

+

Read and write splitting

+

Read and write requests can be split without modifying the application code, and this is totally transparent to applications. You only need to create read replicas for a MySQL instance associated with your DDM instance and configure a read policy, and a large number of concurrent requests can read data from those read replicas.

+

Global sequence

+

DDM allows you to use globally unique, distributed, and ascending SNs as primary or unique keys or to meet your requirements in specific scenarios.

+

DDM console

+

The DDM console enables you to manage and maintain DDM instances, schemas, and accounts.

+
+
+

Related Services

  • VPC

    DDM instances are deployed in an isolated VPC and you can configure IP addresses and bandwidth for accessing these DDM instances and use a security group to control access to them.

    +
  • ECS

    You can access your DDM instance through an ECS.

    +
  • Relational Database Service (RDS)

    After you create a DDM instance, you can associate it with RDS for MySQL instances in the same VPC to obtain separated storage resources.

    +
  • GaussDB(for MySQL)

    After you create a DDM instance, you can associate it with GaussDB(for MySQL) instances in the same VPC to obtain separated storage resources.

    +
  • Cloud Trace Service (CTS)

    CTS records operations on your DDM resources for later query, audit, and backtrack.

    +
  • Elastic Load Balance (ELB)

    ELB distributes incoming traffic to multiple backend servers based on the forwarding policy to balance workloads. So, it can expand external service capabilities of DDM and eliminate single points of failure (SPOFs) to improve service availability.

    +
+
Figure 1 Relationship among DDM, VPC, ECS, and data nodes
+

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0017.html b/docs/ddm/umn/ddm_01_0017.html new file mode 100644 index 00000000..4ed50df9 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0017.html @@ -0,0 +1,48 @@ + + +

Product Specifications

+

General-enhanced DDM instances use Intel® Xeon® Scalable processors. Working in high-performance networks, these DDM instances can offer high and stable computing performance, meeting enterprise-class application requirements.

+ +
+ + + + + + + + + + + + + + + + + +
Table 1 Supported specifications

Specification

+

Architecture

+

vCPUs

+

Memory (GB)

+

General-enhanced

+

+

+

x86

+

+

+

8

+

16

+

16

+

32

+

32

+

64

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0018.html b/docs/ddm/umn/ddm_01_0018.html new file mode 100644 index 00000000..e57d9200 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0018.html @@ -0,0 +1,27 @@ + + +

Basic Concepts

+

Data Node

A data node is the minimum management unit of DDM. Each data node represents an independently running database, and it may be an RDS for MySQL or GaussDB(for MySQL) instance that is associated with your DDM instance. You can create multiple schemas in a DDM instance to manage data nodes and access each data node independently.

+

DDM instances do not store service-related data, which is stored in shards of data nodes.

+
+
+

VPC

A Virtual Private Cloud (VPC) is a private and isolated virtual network. You can configure IP address ranges, subnets, and security groups, assign EIPs, and allocate bandwidth for DDM instances.

+
+

Subnet

A subnet is a range of IP addresses, a logical subdivision of an IP network. Subnets are created for a VPC where you will place your DDM instances. Every subnet is defined by a unique CIDR block which cannot be modified once the subnet is created.

+
+

Security Group

A security group is a collection of rules for ECSs that have the same security protection requirements and are mutually trusted. After a security group is created, you can add different access rules to the security group, and these rules will apply to all ECSs added to this security group.

+

Your account automatically comes with a security group by default. The default security group allows all outbound traffic and denies all inbound traffic. Your ECSs in this security group can communicate with each other without the need to add rules.

+
+

Parameter Template

A parameter template acts as a container for configuration values that can be applied to one or more DDM instances. If you want to use your own parameter template, you only need to create a custom parameter template and select it when creating a DDM instance. You can also apply the parameter template to an existing DDM instance.

+
+

EIP

The Elastic IP (EIP) service provides independent public IP addresses and bandwidth for Internet access. EIPs can be bound to and unbound from DDM instances.

+
+

Region and Endpoint

Before using an API to call resources, you need to specify its region and endpoint. For more details, see Regions and Endpoints.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0020.html b/docs/ddm/umn/ddm_01_0020.html new file mode 100644 index 00000000..edf73273 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0020.html @@ -0,0 +1,19 @@ + + +

Overview

+

Scenarios

This section describes how to associate a DDM instance with a data node (RDS for MySQL instance).

+
+ +
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0174.html b/docs/ddm/umn/ddm_01_0174.html new file mode 100644 index 00000000..5bbe6db2 --- /dev/null +++ b/docs/ddm/umn/ddm_01_0174.html @@ -0,0 +1,75 @@ + + +

Unsupported Features and Limitations

+

Unsupported Features

  • Stored procedures
  • Triggers
  • Views
  • Events
  • User-defined functions
  • Foreign key reference and association
+
  • Full-text indexes and SPACE functions
  • Temporary tables
  • Compound statements such as BEGIN...END, LOOP...END LOOP, REPEAT...UNTIL...END REPEAT, and WHILE...DO...END WHILE
+
  • Process control statements such as IF and WHILE
  • RESET and FLUSH statements
+
  • BINLOG statement
  • HANDLER statement
+
  • INSTALL and UNINSTALL PLUGIN statements
  • Character sets other than ASCII, Latin1, binary, utf8, and utf8mb4
+
  • SYS schema
+
  • Optimizer Trace
  • X-Protocol
+
  • CHECKSUM TABLE syntax
  • Table maintenance statements, including ANALYZE, CHECK, CHECKSUM, OPTIMIZE, and REPAIR TABLE
+
  • Statements for assigning a value to or querying variable session

    For example:

    +
    set @rowid=0;select @rowid:=@rowid+1,id from user;
    +
  • SQL statements that use -- or /.../ to comment out a single line or multiple lines of code
+
  • DDM provides incomplete support for system variable queries. The returned values are variable values of RDS instances, instead of DDM kernel variable values. For example, the returned values of SELECT @@autocommit do not indicate the current transaction status.
  • Executing SET syntax to modify global variables
+
  • PARTITION syntax. Partitioned tables are not recommended.
  • LOAD XML statement
+
+

Unsupported Operators

  • Assignment operator (:=) is not supported.
  • Operator (->) is not supported. This operator can be executed successfully in a single table. An error is reported when this operator is executed in other types of tables.
  • Operator (->>) is not supported. This operator can be executed successfully in a single table. An error is reported when this operator is executed in other types of tables.
  • Expression IS UNKNOWN
+
+

Unsupported Functions

The compute layer of DDM does not support the following functions:

+
  • XML functions
  • Function ANY_VALUE()
  • Function ROW_COUNT()
  • Function COMPRESS()
  • Function SHA()
  • Function SHA1()
  • Function MD5()
  • Function AES_ENCRYPT()
  • Function AES_DECRYPT()
  • Aggregate function JSON_OBJECTAGG()
  • Aggregate function JSON_ARRAYAGG()
  • Aggregate function STD()
  • Aggregate function STDDEV()
  • Aggregate function STDDEV_POP()
  • Aggregate function STDDEV_SAMP()
  • Aggregate function VAR_POP()
  • Aggregate function VAR_SAMP()
  • Aggregate function VARIANCE()
+
+

SQL Syntax

SELECT

+
  • DISTINCTROW
  • Configuring options [HIGH_PRIORITY], [STRAIGHT_JOIN], [SQL_SMALL_RESULT], [SQL_BIG_RESULT], [SQL_BUFFER_RESULT], and [SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] in SELECT statements on DDM instances
  • SELECT ... GROUP BY ... WITH ROLLUP
  • SELECT ... ORDER BY ... WITH ROLLUP
  • WITH
  • Window functions
  • SELECT FOR UPDATE supports only simple queries and does not support statements such as JOIN, GROUP BY, ORDER BY, and LIMIT. Option [NOWAIT | SKIP LOCKED] for modifying FOR UPDATE is invalid for DDM.
  • DDM does not support multiple columns with the same name for each SELECT statement in UNION. Duplicate column names are used in the following SELECT statement:
    SELECT id, id, name FROM t1 UNION SELECT pk, pk, name FROM t2;
    +
+

SORT and LIMIT

+
  • LIMIT/OFFSET, value range: 0–2147483647
+

Aggregation

+
Function asc or desc cannot be used in the GROUP BY statement to sort out results.
  • DDM automatically ignores keyword asc or desc after GROUP BY.
  • In MySQL versions earlier than 8.0.13, function asc or desc can be used in the GROUP BY statement to sort out results. In MySQL 8.0.13 or later, a syntax error is reported if you use function asc or desc this way. ORDER BY is recommended for sorting.
+
+
+

Subqueries

+
  • Subqueries that join grandparent queries are not supported.
  • Using subqueries in the HAVING clause and the JOIN ON condition is not supported.
  • Each derived table must have an alias.
  • A derived table cannot be a correlated subquery.
+

LOAD DATA

+
  • LOW_PRIORITY is not supported.
  • CONCURRENT is not supported.
  • PARTITION (partition_name [, partition_name] ...) is not supported.
  • LINES STARTING BY 'string' is not supported.
  • User-defined variables are not supported.
  • ESCAPED BY supports only '\\'.
  • If you have not specified a value for your auto-increment key when you insert a data record, DDM will not fill a value for the key. The auto-increment keys of data nodes of a DDM instance all take effect, so the auto-increment key values may be duplicate.
  • If the primary key or unique index is not routed to the same physical table, REPLACE does not take effect.
  • If the primary key or unique index is not routed to the same physical table, IGNORE does not take effect.
+

INSERT and REPLACE

+
  • INSERT DELAYED is not supported.
  • Only INSERT statements that contain sharding fields are supported.
  • PARTITION syntax is not supported. Partitioned tables are not recommended.
  • Setting YYYY of datetime (in the format of YYYY-MM-DD HH:MM:SS) to 1582 or any value smaller in INSERT statements is not supported.
  • Nesting a subquery in ON DUPLICATE KEY UPDATE of an INSERT statement is not supported. The following is an example:
    INSERT INTO t1(a, b)
    +SELECT * FROM(SELECT c, d FROM t2 UNION SELECT e, f FROM t3) AS dt
    +ON DUPLICATE KEY UPDATE b = b + c;
    +

    Subquery c is used in the ON DUPLICATE KEY UPDATE clause.

    +
  • The sharding key values in INSERT and REPLACE statements cannot be DEFAULT.
+

UPDATE and DELETE

+
  • Updating a sharding key value to DEFAULT is not supported.
  • Repeatedly updating the same field in one SQL statement is not supported.
  • Updating a sharding key using UPDATE JOIN is not supported. The following is an example:
    UPDATE tbl_1 a, tbl_2 b set a.name=b.name where a.id=b.id;
    +

    name indicates the sharding key of table tbl_1.

    +
  • Updating a sharding key by executing INSERT ON DUPLICATE KEY UPDATE is not supported.
  • Updating self-joins is not supported.
    UPDATE tbl_1 a, tbl_1 b set a.tinyblob_col=concat(b.tinyblob_col, 'aaabbb');
    +
  • UPDATE JOIN supports only joins with WHERE conditions.
    The following is an example:
    UPDATE tbl_3, tbl_4 SET tbl_3.varchar_col='dsgfdg';
    +
    +
  • Referencing other object columns in assignment statements or expressions is not supported when UPDATE JOIN syntax is used. The following is an example:
    UPDATE tbl_1 a, tbl_2 b SET a.name=concat(b.name, 'aaaa'),b.name=concat(a.name, 'bbbb') ON a.id=b.id;
    +
  • You can update a sharding field by two steps: delete the original sharding field and then insert a new field. During this process, the results of querying the sharding fields involved in the target table may be inconsistent.
+
+

DDL

+
  • SQL statements for modifying database names and sharding field names and types
  • SQL statements for creating and deleting schemas
  • Index FULL_TEXT
  • AS SELECT clause of the CREATE TABLE statement
  • CREATE TABLE ... LIKE statement
  • Dropping multiple tables with one SQL statement
  • Executing multiple SQL statements at the same time
  • Creating foreign keys for broadcast and sharded tables
  • Creating tables whose names are prefixed by _ddm
  • Creating temporary sharded or broadcast tables
  • Specifying globally unique keys in the CREATE TABLE statement
+

Indexes

  • Global secondary indexes
  • Global unique indexes. Unique keys and primary keys may not be globally unique.
+
+

Table Recycle Bins

  • Hints
  • Deleting tables by schema
  • Deleting tables by logical table
  • After a table is recovered, its globally unique sequence increases automatically but may not follow the last sequence value.
  • Shard configuration
  • Retaining copies with no time limit
  • Recovering data to a table with any name
  • Unlimited copies
+
+

Transactions

  • Savepoints
  • XA syntax. DDM has implemented distributed transactions through XA, so the user layer does not need to process the syntax.
  • Customizing the isolation level of a transaction. Currently, DDM supports only the READ COMMITTED isolation level. In consideration of compatibility, DDM does not report errors for any SQL statement (such as SET GLOBAL TRANSACTION ISOLATION LEVEL REPEATABLE READ) to set the database isolation level, but will ignore the modifications to the transaction isolation level.
  • Setting a transaction to read-only (START TRANSACTION READ ONLY). DDM can enable read/write of a transaction, instead of enabling read-only, to ensure compatibility.
+
+

Permissions

  • Column-level permissions
  • Subprogram-level permissions
+
+

Database Management Statements

  • SHOW TRIGGERS
  • Most of SHOW statements such as SHOW PROFILES, SHOW ERRORS, and SHOW WARNINGS
  • The following SHOW statements are randomly sent to a database shard. If database shards are on different RDS for MySQL instances, the returned variables or table information may be different.
    • SHOW TABLE STATUS;
    • SHOW VARIABLES Syntax;
    • SHOW WARNINGS Syntax does not support the combination of LIMIT and COUNT.
    • SHOW ERRORS Syntax does not support the combination of LIMIT and COUNT.
    +
+
+

INFORMATION_SCHEMA

  • Only simple queries of SCHEMATA, TABLES, COLUMNS, STATISTICS, and PARTITIONS are supported. No subqueries, JOINs, aggregate functions, ORDER BY, and LIMIT are allowed.
+
+

Broadcast Tables

If a broadcast table is used, do not use any function that has different results returned each time it is executed. Otherwise, data inconsistency will occur between different shards. If such functions are indeed required, calculate their results, write the results to your SQL statements, and then execute the SQL statements on the broadcast table. Functions of this type include but are not limited to the following:

+
  • CONNECTION_ID()
  • CURDATE()
  • CURRENT_DATE()
  • CURRENT_TIME()
  • CURRENT_TIMESTAMP()
  • CURTIME()
  • LAST_INSERT_ID()
  • LOCALTIME()
  • LOCALTIMESTAMP()
  • NOW()
  • UNIX_TIMESTAMP()
  • UTC_DATE()
  • UTC_TIME()
  • UTC_TIMESTAMP()
  • CURRENT_ROLE()
  • CURRENT_USER()
  • FOUND_ROWS()
  • GET_LOCK()
  • IS_FREE_LOCK()
  • IS_USED_LOCK()
  • JSON_TABLE()
  • LOAD_FILE()
  • MASTER_POS_WAIT()
  • RAND()
  • RELEASE_ALL_LOCKS()
  • RELEASE_LOCK()
  • ROW_COUNT()
  • SESSION_USER()
  • SLEEP()
  • SYSDATE()
  • SYSTEM_USER()
  • USER()
  • UUID()
  • UUID_SHORT()
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_01_0175.html b/docs/ddm/umn/ddm_01_0175.html new file mode 100644 index 00000000..1d44b7df --- /dev/null +++ b/docs/ddm/umn/ddm_01_0175.html @@ -0,0 +1,12 @@ + + +

High-risk Operations

+

Pay attention to the following when you use DDM:

+
  • Do not connect to any data node for data operations to avoid deleting by mistake system catalogs or metadata.
  • Do not clear system tables TBL_DRDS_TABLE and MYCAT_SEQUENCE to prevent metadata loss.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_02_0000.html b/docs/ddm/umn/ddm_02_0000.html new file mode 100644 index 00000000..5e6167cb --- /dev/null +++ b/docs/ddm/umn/ddm_02_0000.html @@ -0,0 +1,55 @@ + + +

Step 3: Create a DDM Account

+

Procedure

  1. Log in to the DDM console, in the instance list, locate the required DDM instance and click its name.
  2. In the navigation pane, choose Accounts.
  3. On the displayed page, click Create Account and configure required parameters.

    +

    + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Required parameters

    Parameter

    +

    Description

    +

    Username

    +

    Username of the account.

    +

    The username can include 1 to 32 characters and must start with a letter. Only letters, digits, and underscores (_) are allowed.

    +

    Password

    +

    Password of the account. The password:

    +
    • Can include 8 to 32 characters.
    • Must contain at least three of the following character types: letters, digits, and special characters ~!@#%^*-_=+?
    • Cannot be a weak password. It cannot be overly simple and easily guessed.
    +

    Confirm Password

    +

    The confirm password must be the same as the entered password.

    +

    Schema

    +

    Schema to be associated with the DDM account. You can select an existing schema from the drop-down list.

    +

    Only the associated schemas can be accessed using the account.

    +

    Permissions

    +

    Options: CREATE, DROP, ALTER, INDEX, INSERT, DELETE, UPDATE, and SELECT. You can select any or a combination of them.

    +

    Description

    +

    Description of the account, which cannot exceed 256 characters.

    +
    +
    +

  4. Click OK.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_02_0001.html b/docs/ddm/umn/ddm_02_0001.html new file mode 100644 index 00000000..5edd807d --- /dev/null +++ b/docs/ddm/umn/ddm_02_0001.html @@ -0,0 +1,19 @@ + + +

Getting Started

+
+ + diff --git a/docs/ddm/umn/ddm_02_0005.html b/docs/ddm/umn/ddm_02_0005.html new file mode 100644 index 00000000..3e3e3f51 --- /dev/null +++ b/docs/ddm/umn/ddm_02_0005.html @@ -0,0 +1,124 @@ + + +

Step 4: Log In to the DDM Schema

+

After you create a DDM instance, you can log in to it using a client such as Navicat, or connect to the required schema in the instance using the CLI or JDBC driver.

+

This section describes how to log in to a DDM instance or a schema.

+

Preparations

Before you log in to your DDM instance or schema, you have to obtain its connection address.

+
+

Obtaining the Schema Connection Address

  1. Log in to the DDM console.
  2. Hover on the left menu to display Service List and choose Databases > Distributed Database Middleware.
  3. In the navigation pane, choose Instances. In the instance list, locate the required DDM instance and click its name.
  4. In the navigation pane, choose Schemas.
  5. In the schema list, locate the required schema and click its name.
  6. In the Connection Address area, view CLI and JDBC connection addresses.

    • If load balancing is enabled, one floating IP address will be assigned to a DDM instance even if it has multiple nodes. You can use this address to connect to the DDM instance for load balancing.
    • There are some historical instances that do not support load balancing, so they have multiple IP addresses. For load balancing, you can use JDBC connection strings to connect to them.
    • If read-only groups are created, each group will be assigned a load balancing address for service isolation.
    +
    +

+
+

Connection Methods

For details about method 1, see Using Navicat to Log In to a DDM Instance.

+

For details about method 2, see Using the MySQL CLI to Log In to a Schema.

+

For details about method 3, see Using a JDBC Driver to Log In to a Schema.

+
+
  1. For security purposes, select an ECS in the same VPC as your DDM instance.
  2. Ensure that a MySQL client has been installed on the required ECS or the MySQL connection driver has been configured.
  3. Before you log in to a DDM instance, configure its information on the client or connection driver.
+
+

Using Navicat to Log In to a DDM Instance

  1. Log in to the DDM console, locate the required DDM instance, and click its name.
  2. Ask technical support to add an EIP to the feature whitelist. In the Instance Information area, click Bind. In the displayed dialog box, select the EIP and click OK. Bind the EIP with your DDM instance.
  3. In the navigation pane on the left, click the VPC icon and choose Access Control > Security Groups.
  4. On the Security Groups page, locate the required security group and click Manage Rule in the Operation column. On the displayed page, click Add Rule. Configure the security group rule as needed and click OK.

    After binding an EIP to your DDM instance, set strict inbound and outbound rules for the security group to enhance database security.

    +
    +

  5. Open Navicat and click Connection. In the displayed dialog box, enter the host IP address (EIP), username, and password (DDM account).

    Navicat12 is recommended for Navicat clients.

    +
    +

  6. Click Test Connection. If a message is returned indicating that the connection is successful, click OK. The connection will succeed 1 to 2 minutes later. If the connection fails, the failure cause is displayed. Modify the required information and try again.
+

Using Navicat to access a DDM instance is similar to using other visualized MySQL tools such as MySQL Workbench. Therefore, the procedure of using other visualized MySQL tools to connect to a DDM instance has been omitted.

+
+
+

Using the MySQL CLI to Log In to a Schema

  1. Log in to the required ECS, open the CLI, and run the following command:

    mysql -h ${DDM_SERVER_ADDRESS} -P ${DDM_SERVER_PORT} -u ${DDM_USER} -p [-D ${DDM_DBNAME}] [--default -character -set=utf8][--default_auth=mysql_native_password]
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Example Value

    +

    DDM_SERVER_ADDRESS

    +

    IP address of the DDM instance

    +

    192.168.0.200

    +

    DDM_SERVER_PORT

    +

    Connection port of the DDM instance

    +

    5066

    +

    DDM_USER

    +

    Account of the DDM instance

    +

    dbuser01

    +

    DDM_DBNAME

    +

    (Optional) Name of the target schema in the DDM instance

    +

    -

    +

    default-character-set=utf8

    +

    (Optional) Select character set UTF-8 for encoding.

    +

    Configure this parameter if garbled characters are displayed during parsing due to inconsistency between MySQL connection code and actually used code.

    +

    -

    +

    default_auth=mysql_native_password

    +

    (Optional) The password authentication plug-in is used by default.

    +

    If you use the MySQL 8.0 client, this parameter is required.

    +

    -

    +
    +
    +

  2. View the command output. The following is an example output of running a MySQL command in the Windows CLI.

    C:\Users\testDDM>mysql -h 192.168.0.200 -P 5066 -D db_5133 -u dbuser01 -p
    +Enter password:
    +Reading table information for completion of table and column names
    +You can turn off this feature to get a quicker startup with -A
    + 
    +Welcome to the MySQL monitor.  Commands end with ;or \g.
    +Your MySQL connection id is 5
    +Server version: 5.6.29
    + 
    +Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
    + 
    +Oracle is a registered trademark of Oracle Corporation and/or its
    +affiliates. Other names may be trademarks of their respective
    +owners.
    + 
    +Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    + 
    +mysql>
    +

+
+

Using a JDBC Driver to Log In to a Schema

  1. Load the required JDBC driver.

    Class.forname(com.mysql.jdbc.Driver);
    +

    JDBC drivers 5.1.49 or later are recommended.

    +
    +

  2. Create a database connection.

    String username = "dbuser01" ;
    +String password = "xxxxxx" ; 
    +String url = "jdbc:mysql://192.168.0.200:5066/db_5133";
    +Connection con = DriverManager.getConnection(url , username , password);
    +

  3. Create a Statement object.

    Statement stmt = con.createStatement();
    +

  4. Execute the required SQL statement.

    ResultSet rs = stmt.executeQuery("select now() as Systemtime");
    +con.close();
    +

  5. (Optional) Optimize code as needed.

    loadBalanceAutoCommitStatementThreshold=5&loadBalanceHostRemovalGracePeriod=15000&loadBalanceBlacklistTimeout=60000&loadBalancePingTimeout=5000&retriesAllDown=10&connectTimeout=10000
    +
    • Parameters loadBalanceAutoCommitStatementThreshold and retriesAllDown must be configured based on the example in 5. Otherwise, an infinite loop may occur during the connection switchover, resulting in stack overflow.
    • loadBalanceAutoCommitStatementThreshold: defines the number of matching statements which will trigger the driver to potentially swap physical server connections.
    • loadBalanceHostRemovalGracePeriod: indicates the grace period to wait for a host being removed from a load-balanced connection, to be released when it is the active host.
    • loadBalanceBlacklistTimeout: indicates the time in milliseconds between checks of servers which are unavailable, by controlling how long a server lives in the global blacklist.
    • loadBalancePingTimeout: indicates the time in milliseconds that the connection will wait for a response to a ping operation when you set loadBalanceValidateConnectionOnSwapServer to true.
    • retriesAllDown: indicates the maximum number of connection attempts before an exception is thrown when a valid host is searched. SQLException will be returned if the threshold of retries is reached with no valid connections obtained.
    • connectTimeout: indicates the maximum amount of time in milliseconds that the JDBC driver is willing to wait to set up a socket connection. 0 indicates that the connection does not time out. This parameter is available to JDK-1.4 or later versions. The default value is 0.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_02_0013.html b/docs/ddm/umn/ddm_02_0013.html new file mode 100644 index 00000000..2192b0a5 --- /dev/null +++ b/docs/ddm/umn/ddm_02_0013.html @@ -0,0 +1,50 @@ + + +

Step 2: Create a Schema and Associate It with an RDS for MySQL Instance

+

Procedure

  1. Log in to the DDM console, and in the navigation pane, choose Instances. In the instance list, locate the required DDM instance and click Create Schema in the Operation column.
  2. On the displayed page, specify a sharding mode, enter a schema name, set the number of shards, select the required DDM accounts, and click Next.

    +

    + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Sharding

    +
    • Sharded: indicates that one schema can be associated with multiple data nodes, and all shards will be evenly distributed across the nodes.
    • Unsharded: indicates that one schema can be associated with only one data node, and only one shard can be created on the data node.
    +

    Schema

    +

    The name contains 2 to 48 characters and must start with a lowercase letter. Only lowercase letters, digits, and underscores (_) are allowed.

    +

    Account

    +

    The DDM account that needs to be associated with the schema.

    +

    Data Nodes

    +

    Select only the data nodes that are in the same VPC as your DDM instance and not in use by other data nodes. DDM will create databases on the selected data nodes without affecting their existing databases and tables.

    +

    Shards

    +

    The total shards are the shards on all data nodes. There cannot be more data nodes than there are shards in the schema. Each data node must have at least one shard assigned. Recommended shards per data node: 8 to 64.

    +
    +
    +

  3. On the DB Instance Connection page, enter a database account with the required permissions and click Test Connection.

    Required permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER WITH GRANT OPTION

    +

    You can create a database account for the RDS for MySQL instance and assign it the above permissions in advance.

    +
    +

  4. After the test becomes successful, click Finish.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0006.html b/docs/ddm/umn/ddm_03_0006.html new file mode 100644 index 00000000..76a22e3a --- /dev/null +++ b/docs/ddm/umn/ddm_03_0006.html @@ -0,0 +1,19 @@ + + +

Schema Management

+
+ + diff --git a/docs/ddm/umn/ddm_03_0008.html b/docs/ddm/umn/ddm_03_0008.html new file mode 100644 index 00000000..dac5908b --- /dev/null +++ b/docs/ddm/umn/ddm_03_0008.html @@ -0,0 +1,18 @@ + + +

Deleting a Schema

+

Prerequisites

  • You have logged in to the DDM console.
  • You have created a schema.

    Deleted schemas cannot be recovered. Exercise caution when performing this operation.

    +
    +
+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to delete and click its name.
  2. On the displayed page, in the navigation pane, choose Schemas.
  3. In the schema list, locate the schema that you want to delete and click Delete in the Operation column.
  4. In the displayed dialog box, click Yes.

    • Your schema will become faulty if you delete its associated data nodes by clicking the Delete button in the schema list.
    • To delete data stored on the associated data nodes, select Delete data on data nodes in the displayed dialog box.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0030.html b/docs/ddm/umn/ddm_03_0030.html new file mode 100644 index 00000000..116b0d6c --- /dev/null +++ b/docs/ddm/umn/ddm_03_0030.html @@ -0,0 +1,19 @@ + + +

Global Sequence

+
+ + diff --git a/docs/ddm/umn/ddm_03_0031.html b/docs/ddm/umn/ddm_03_0031.html new file mode 100644 index 00000000..5cb8bdcf --- /dev/null +++ b/docs/ddm/umn/ddm_03_0031.html @@ -0,0 +1,30 @@ + + +

LOAD DATA

+

Standard Example

LOAD DATA LOCAL INFILE '/data/data.txt' IGNORE INTO TABLE test CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' (id, sid, asf);

+
+

If a data field contains special characters like separators and escapes, execute OPTIONALLY ENCLOSED BY '"' to enclose the field with double quotation marks ("").

+

Example:

+

The following data field contains separators (,) and is enclosed with quotation marks:

+

"aab,,,bba,ddd"

+

If a data field contains quotation marks, the preceding method may not work. You can add a backslash (\) before each quotation mark (") in the field, for example, "aab,,,bba,ddd\"ddd\"bb,ae".

+
+
  • If keyword LOCAL is specified, the file is read from the client host. If keyword LOCAL is not specified, this function is not supported for security purposes.
  • You can use FIELDS TERMINATED BY to specify a separator between characters. The default value is \t.
  • You can use OPTIONALLY ENCLOSED BY to ignore symbols in the data source fields.
  • You can use LINES TERMINATED BY to specify a newline character between lines. The default value is \n.

    On some hosts running the Windows OS, the newline character of text files may be \r\n. The newline character is invisible, so you may need to check whether it is there.

    +
    +
  • You can use CHARACTER SET to specify a file code that should be the same as the code used by physical databases in the target RDS for MySQL instance, to avoid garbled characters. The character set code shall be enclosed in quotation marks to avoid parsing errors.
  • You can use IGNORE or REPLACE to specify whether repeated records are replaced or ignored.
  • Currently, the column name must be specified, and the sharding field must be included. Otherwise, the route cannot be determined.
  • For other parameters, see the LOAD DATA INFILE Syntax on the MySQL official website. The sequence of other parameters must be correct. For more information, visit the MySQL official website.
+
  1. Importing data affects performance of DDM instances and RDS for MySQL instances. Import data during off-peak hours.
  2. Do not to send multiple LOAD DATA requests at the same time. If you do so, SQL transactions may time out due to highly concurrent data write operations, table locking, and system I/O occupation, resulting in failure of all LOAD DATA requests.
  3. Manually submit transactions when using LOAD DATA to import data so that data records are modified correctly.

    For example, configure your client as follows:

    +

    mysql> set autocommit=0;

    +

    mysql> LOAD DATA LOCAL INFILE '/data/data.txt' IGNORE INTO TABLE test CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' (id, sid, asf);

    +

    mysql> commit;

    +
+
+

Use Constraints

There are the following constraints on LOAD DATA syntax.

+
  • LOW_PRIORITY is not supported.
  • CONCURRENT is not supported.
  • PARTITION (partition_name [, partition_name] ...) is not supported.
  • LINES STARTING BY 'string' is not supported.
  • User-defined variables are not supported.
  • ESCAPED BY supports only '\\'.
  • If you have not specified a value for your auto-increment key when you insert a data record, DDM will not fill a value for the key. The auto-increment keys of data nodes of a DDM instance all take effect, so the auto-increment key values may be duplicate.
  • If the primary key or unique index is not routed to the same physical table, REPLACE does not take effect.
  • If the primary key or unique index is not routed to the same physical table, IGNORE does not take effect.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0032.html b/docs/ddm/umn/ddm_03_0032.html new file mode 100644 index 00000000..31c42a43 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0032.html @@ -0,0 +1,34 @@ + + +

Database Management Syntax

+

Supported Database Management Syntax

  • SHOW Syntax
  • SHOW COLUMNS Syntax
  • SHOW CREATE TABLE Syntax
  • SHOW TABLE STATUS Syntax
  • SHOW TABLES Syntax
  • SHOW DATABASES

    If the required database is not found, check fine-grained permissions of your account.

    +
  • SHOW INDEX FROM
  • SHOW VARIABLES Syntax
+
+

Supported Database Tool Commands

  • DESC Syntax
  • USE Syntax
  • EXPLAIN Syntax

    Unlike EXPLAIN in MySQL, the output of DDM EXPLAIN describes the nodes that the current SQL statement is routed to.

    +
+
+

Unsupported Database Management Syntax

+
+ + + + + + + +
Table 1 Restrictions on database management statements

Item

+

Restriction

+

Database management statements

+
  • Executing SET Syntax to modify global variables is not supported.
  • SHOW TRIGGERS is not supported.
+

The following SHOW statements are randomly sent to a database shard. If database shards are on different RDS for MySQL instances, the returned variables or table information may be different.

+
  • SHOW TABLE STATUS
  • SHOW VARIABLES Syntax
  • CHECK TABLE does not support sharding tables by hash or sharding key.
  • SHOW WARNINGS Syntax does not support the combination of LIMIT and COUNT.
  • SHOW ERRORS Syntax does not support the combination of LIMIT and COUNT.
+
+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0034.html b/docs/ddm/umn/ddm_03_0034.html new file mode 100644 index 00000000..ccf84c5c --- /dev/null +++ b/docs/ddm/umn/ddm_03_0034.html @@ -0,0 +1,20 @@ + + +

Customized Hints for Read/Write Splitting

+

DDM allows you to customize a hint to specify whether SQL statements are executed on the primary instance or its read replicas.

+

The following hint formats are supported:

+

Format 1

+
/*!mycat:db_type=host*/
+

Format 2

+
/*+ db_type=host */
+

host can be master or slave. master indicates a primary instance, and slave indicates a read replica.

+
Currently, this function only applies to SELECT statements.

After read/write splitting is enabled, write operations are performed only on the primary instance, and read operations are performed only on its read replicas. To read from the primary instance, you can customize a hint to forcibly perform read operations on the primary instance. This method is only suitable for queries.

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0035.html b/docs/ddm/umn/ddm_03_0035.html new file mode 100644 index 00000000..d24ddcf9 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0035.html @@ -0,0 +1,27 @@ + + +

Advanced SQL Functions

+
+
+ + + + + + + +
Table 1 Restrictions on advanced SQL functions

Item

+

Restriction

+

SQL functions

+
  • PREPARE and EXECUTE syntax is not supported.
  • Customized data types and functions are not supported.
  • Views, stored procedures, triggers, and cursors are not supported.
  • Compound statements such as BEGIN...END, LOOP...END LOOP, REPEAT...UNTIL...END REPEAT, and WHILE...DO...END WHILE are not supported.
  • Process control statements such as IF and WHILE are not supported.
  • The following prepared statements are not supported:

    PREPARE Syntax

    +

    EXECUTE Syntax

    +
  • Comments for indexes are not supported in table creation statements.
+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0036.html b/docs/ddm/umn/ddm_03_0036.html new file mode 100644 index 00000000..d2a060cf --- /dev/null +++ b/docs/ddm/umn/ddm_03_0036.html @@ -0,0 +1,23 @@ + + +

Using NEXTVAL or CURRVAL to Query Global Sequence Numbers

+
  • NEXTVAL returns the next sequence number, and CURRVAL returns the current sequence number. nextval(n) returns n unique sequence numbers.
  • nextval(n) can be used only in select sequence.nextval(n) and does not support cross-schema operations.
  • currval(n) is not supported.
+

Procedure

  1. Log in to the required DDM instance using a client.
  2. Open the required schema.
  3. Run the following command to create a global sequence:

    create sequence seq_test;

    +

    +

  4. Run the following command to obtain the next sequence number:

    select seq_test.nextval;

    +

    +

  5. Run the following command to obtain the current sequence number:

    select seq_test.currval;

    +

    +

  6. Run the following command to obtain sequence numbers in batches:

    select seq_test.nextval(n);

    +

    +
    • Cross-schema operations are not supported when sequence numbers are obtained in batches.
    • If no global sequence is used, CURRVAL returns 0.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0037.html b/docs/ddm/umn/ddm_03_0037.html new file mode 100644 index 00000000..949b0f80 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0037.html @@ -0,0 +1,29 @@ + + +

Using Global Sequences in INSERT or REPLACE Statements

+

You can use global sequences in INSERT or REPLACE statements to provide unique global sequence across schemas in a DDM instance. Generating sequence numbers with NEXTVAL and CURRVAL is supported in INSERT or REPLACE statements. For example, you can execute schema.seq.nextval and schema.seq.currval to obtain global sequence numbers. CURRVAL returns the current sequence number, and NEXTVAL returns the next one. If no schema is specified, use the global sequence of the currently connected schema.

+

Concurrently executing schema.seq.nextval in multiple sessions is supported to obtain unique global sequence numbers.

+

Prerequisites

  • There are two schemas dml_test_1 and dml_test_2.
  • Both of them have table test_seq.

    Run the following command to create a table:

    +

    create table test_seq(col1 bigint,col2 bigint) dbpartition by hash(col1);

    +
+
+

Procedure

  1. Log in to the required DDM instance using a client.
  2. Click the dml_test_1 schema and run the following commands to create a global sequence:

    use dml_test_1;

    +

    create sequence seq_test;

    +

    +

  3. Run the following command to use the global sequence in an INSERT or REPLACE statement:

    insert into test_seq(col1,col2)values(seq_test.nextval,seq_test.currval);

    +

    +

  4. Click the dml_test_2 schema, run the following commands to use the global sequence in an INSERT or REPLACE statement:

    use dml_test_2;

    +

    insert into test_seq(col1,col2)values(dml_test_1.seq_test.nextval,dml_test_1.seq_test.currval);

    +

    +

    The global sequence is created in schema dml_test_1. To use the global sequence in schema dml_test_2, you need to specify a schema name, for example, dml_test_1.seq_test.nextval or dml_test_1.seq_test.currval.

    +
    • Using global sequences in INSERT and REPLACE statements is supported only in sharded tables, but not in broadcast or unsharded tables.
    • NEXTVAL and CURRVAL are executed from left to right in INSERT and REPLACE statements. If NEXTVAL is referenced more than once in a single statement, the sequence number is incremented for each reference.
    • Each global sequence belongs to a schema. When you delete a schema, the global sequence of the schema is also deleted.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0038.html b/docs/ddm/umn/ddm_03_0038.html new file mode 100644 index 00000000..21564502 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0038.html @@ -0,0 +1,509 @@ + + +

Sharding Algorithm Overview

+

Supported Sharding Algorithms

DDM supports database sharding, table sharding, and a variety of sharding algorithms.

+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Sharding algorithms

Algorithm

+

Description

+

Database Sharding Supported

+

Table Sharding Supported

+

MOD_HASH

+

Performing a simple modulo operation

+

Yes

+

Yes

+

MOD_HASH_CI

+

Performing a simple modulo operation (case-insensitive)

+

Yes

+

Yes

+

HASH

+

Performing a simple modulo operation

+

Yes

+

Yes

+

RANGE

+

Performing a RANGE-based operation

+

Yes

+

No

+

RIGHT_SHIFT

+

Arithmetic right shifting of a sharding key value and then performing a modulo operation

+

Yes

+

Yes

+

YYYYMM

+

Getting a hash code for a YearMonth object and then performing a modulo operation

+

Yes

+

Yes

+

YYYYDD

+

Getting a hash code for a YearDay object and then performing a modulo operation

+

Yes

+

Yes

+

YYYYWEEK

+

Getting a hash code for a YearWeek object and then performing a modulo operation

+

Yes

+

Yes

+

MM

+

Getting a hash code for a MONTH object and then performing a modulo operation

+

No

+

Yes

+

DD

+

Getting a hash code for a DAY object and then performing a modulo operation

+

No

+

Yes

+

MMDD

+

Getting a hash code for a MonthDay object and then performing a modulo operation

+

No

+

Yes

+

WEEK

+

Getting a hash code for a WEEK object and then performing a modulo operation

+

No

+

Yes

+
+
+
  • Database and table sharding keys cannot be left blank.
  • In DDM, sharding of a logical table is defined by the sharding function (number of shards and routing algorithm) and the sharding key (MySQL data type).
  • If a logical table uses different database and table sharding algorithms, DDM will perform full-shard or full-table scanning when you do not specify database and table conditions in SQL queries.
+
+

Data Type of Sharding Algorithms

Different sharding algorithms support different data types. The following table lists supported data types.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 2 Supported data types

Sharding Algorithm

+

TINYINT

+

SMALLINT

+

MEDIUMINT

+

INTEGER

+

INT

+

BIGINT

+

CHAR

+

VARCHAR

+

DATE

+

DATETIME

+

TIMESTAMP

+

Others

+

MOD_HASH

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

N

+

N

+

N

+

N

+

MOD_HASH_CI

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

N

+

N

+

N

+

N

+

HASH

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

N

+

N

+

N

+

N

+

RANGE

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

N

+

N

+

N

+

N

+

N

+

N

+

RIGHT_SHIFT

+

Y

+

Y

+

Y

+

Y

+

Y

+

Y

+

N

+

N

+

N

+

N

+

N

+

N

+

YYYYMM

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+

YYYYDD

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+

YYYYWEEK

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+

MM

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+

DD

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+

MMDD

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+

WEEK

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

N

+

Y

+

Y

+

Y

+

N

+
+
+

Y indicates that the data type is supported, and N indicates that the data type is not supported.

+
+
+

Table Creation Syntax of Sharding Algorithms

DDM is compatible with table creation syntax of MySQL databases and adds keyword partition_options for databases and tables sharding.

+
CREATE TABLE [IF NOT EXISTS] tbl_name
+(create_definition,...)
+[table_options]
+[partition_options]
+ partition_options:
+  DBPARTITION BY
+       {{RANGE|HASH|MOD_HASH|RIGHT_SHIFT|YYYYMM|YYYYWEEK|YYYYDD}([column])}
+      [TBPARTITION BY
+{{HASH|MOD_HASH|UNI_HASH|RIGHT_SHIFT|YYYYMM|YYYYWEEK|YYYYDD}(column)}
+          [TBPARTITIONS num]
+      ]
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0039.html b/docs/ddm/umn/ddm_03_0039.html new file mode 100644 index 00000000..aa22e6b9 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0039.html @@ -0,0 +1,14 @@ + + +

Setting a Hint to Skip the Cached Execution Plan

+

DDM allows you to configure a hint to control whether each SELECT statement skips the cached execution plan.

+

The hint is in the format of /*!GAUSS:skip_plancache=flag*/.

+

flag can be set to true or false. true indicates that the statement skips the cached execution plan. false indicates that the statement does not skip the cached execution plan.

+

Currently, this function only applies to SELECT statements.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0040.html b/docs/ddm/umn/ddm_03_0040.html new file mode 100644 index 00000000..a462c4ac --- /dev/null +++ b/docs/ddm/umn/ddm_03_0040.html @@ -0,0 +1,18 @@ + + +

Specifying a Shard Using a Hint When Executing a SQL Statement

+

Command Format:

+
/*+db=<physical_db_name>*/ <your query>;
+

Description:

+

Specify a shard by configuring <physical_db_name> and execute a SQL statement on the shard.

+

Example:

+
/*+db=test_0000*/ select * from t1;
+

Restrictions:

+
  • The hint is valid only for SELECT, DML, and TRUNCATE statements.
  • The hint works only under the text protocol, rather than the Prepare protocol.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0050.html b/docs/ddm/umn/ddm_03_0050.html new file mode 100644 index 00000000..633bfa0b --- /dev/null +++ b/docs/ddm/umn/ddm_03_0050.html @@ -0,0 +1,13 @@ + + +

Monitoring Management

+
+ + diff --git a/docs/ddm/umn/ddm_03_0051.html b/docs/ddm/umn/ddm_03_0051.html new file mode 100644 index 00000000..864a81d5 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0051.html @@ -0,0 +1,237 @@ + + +

DDM Instance Metrics

+

Description

This section describes metrics reported by DDM to Cloud Eye, metric namespaces, and dimensions. You can use APIs provided by Cloud Eye to query the metric information generated for DDM.

+
+

Namespace

SYS.DDMS

+

SYS.DDM is the namespace of DDM 1.0.

+

SYS.DDMS is the namespace of DDM 2.0.

+

DDM has been upgraded to version 2.0. The namespace is still SYS.DDM for existing users of DDM1.0.

+
+
+

Metrics

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 DDM metrics

Metric ID

+

Metric Name

+

Description

+

Value Range

+

Monitored Object

+

Monitoring Interval (Raw Data)

+

ddm_cpu_util

+

CPU Usage

+

CPU usage of the DDM instance node

+

0—100

+

DDM nodes

+

1 minute

+

ddm_mem_util

+

Memory Usage

+

Memory usage of the DDM instance node.

+

0—100

+

DDM nodes

+

1 minute

+

ddm_bytes_in

+

Network Input Throughput

+

Incoming traffic per second of the DDM instance node

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_bytes_out

+

Network Output Throughput

+

Outgoing traffic per second of the DDM instance node

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_qps

+

QPS

+

Requests per second of the DDM instance node

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_read_count

+

Reads

+

Read operations of the DDM instance node within each monitoring period

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_write_count

+

Writes

+

Write operations of the DDM instance node within a monitoring period

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_slow_log

+

Slow SQL Logs

+

Slow SQL logs of DDM-Core

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_rt_avg

+

Average Response Latency

+

Average response latency of DDM-Core

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_connections

+

Connections

+

Connections of DDM-Core

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_backend_connection_ratio

+

Percentage of Active Connections

+

Percentage of active connections (from a DDM node to the target RDS instance)

+

0—100

+

DDM nodes

+

1 minute

+

active_connections

+

Active connections

+

Active connections of each DDM instance node

+

≥ 0

+

DDM nodes

+

1 minute

+

ddm_connection_util

+

Connection Usage

+

Percentage of active connections to each DDM instance node

+

0—100

+

DDM nodes

+

1 minute

+

ddm_node_status_alarm_code

+

DDM Node Connectivity

+

Whether each DDM instance node is unavailable. The value can be 0 and 1. 0 indicates that the node is available, and 1 indicates that the node is unavailable.

+

0 or 1

+

DDM nodes

+

1 minute

+
+
+
+

Dimensions

+
+ + + + + + + +

Key

+

Value

+

node_id

+

DDM nodes

+
+
+

DDM supports dimension node_id, but not instance_id. You can obtain the ID of a node by the corresponding instance ID.

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0052.html b/docs/ddm/umn/ddm_03_0052.html new file mode 100644 index 00000000..9608d3fb --- /dev/null +++ b/docs/ddm/umn/ddm_03_0052.html @@ -0,0 +1,20 @@ + + +

Viewing Instance Metrics

+

Cloud Eye monitors the running status of DDM instances. You can view instance monitoring metrics on the DDM console.

+

Monitored data requires a period of time for transmission and display. The status of the monitored object displayed on the Cloud Eye page is the status obtained 5 to 10 minutes before. If you have created a DDM instance, wait for 5 to 10 minutes to view its monitored data on Cloud Eye.

+

Prerequisites

  • The DDM instance is running normally.

    Monitored data of faulty or deleted DDM instances are not displayed on Cloud Eye.

    +
  • The DDM instance has been normally running for about 10 minutes.

    It takes a while to view the monitoring data and graphics of a newly created DDM instance.

    +
+
+

Procedure

  1. Log in to the DDM console.
  2. On the Instances page, locate the required instance and click More > View Metric in the Operation column.

    Alternatively, click the instance name, on the displayed page, click View Metric in the upper right corner.

    +

  3. In the instance list, click in the front of the target instance. Locate a node and click View Metric in the Operation column.

    You can view instance metrics, including CPU usage, memory usage, network input throughput, network output throughput, QPS, and slow query logs. For details, see DDM Instance Metrics.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0053.html b/docs/ddm/umn/ddm_03_0053.html new file mode 100644 index 00000000..0cf7c662 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0053.html @@ -0,0 +1,62 @@ + + +

Function Overview

+

Distributed Database Middleware (DDM) is a MySQL-compatible, distributed middleware service designed for relational databases. It can resolve distributed scaling issues to break through capacity and performance bottlenecks of MySQL databases, helping handle highly concurrent access to massive volumes of data.

+

Table 1 lists the functions supported by DDM.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 DDM functions

Category

+

Function

+

Instances

+

Creating, deleting, renewing, unsubscribing from, and restarting a DDM instance, and changing class of a DDM instance. For details, see Instance Management.

+

Backups

+

Restoring data to a new DDM instance and restoring metadata. For details, see Backups and Restorations.

+

Parameter templates

+

Creating, editing, replicating, and applying a parameter template, and comparing two parameter templates. For details, see Parameter Template Management.

+

Task center

+

Enabling you to view progress and statuses of asynchronous tasks submitted on the console. For details, see Task Center.

+

Schemas

+

Creating, exporting, importing, and deleting schemas. For details, see Schema Management.

+

Flexible shards configuration for a schema

+

You can increase shards or data nodes to scale out storage. For details, see Shard Configuration.

+

Accounts

+

Creating, modifying, and deleting a DDM account, and resetting its password. For details, see Account Management.

+

Monitoring

+

Providing metrics and methods of viewing metrics. For details, see Monitoring Management.

+

SQL syntax

+

Describing DDL, DML, global sequence, SQL statements, and sharding algorithms. For details, see SQL Syntax.

+
+
+
+ diff --git a/docs/ddm/umn/ddm_03_0054.html b/docs/ddm/umn/ddm_03_0054.html new file mode 100644 index 00000000..2c5ffcb6 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0054.html @@ -0,0 +1,115 @@ + + +

Network Metrics

+

If load balancing is enabled for your DDM instance, you can view network metrics in the following table. If load balancing is not enabled, you do not have the permissions to view them.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Load balancing metrics

Metric ID

+

Metric Name

+

Description

+

Value Range

+

Monitored Object

+

Monitoring Interval (Raw Data)

+

m7_in_Bps

+

Inbound Rate

+

Traffic used for accessing the monitored object from the Internet per second

+

Unit: byte/s

+

≥ 0

+

Dedicated load balancer

+

1 minute

+

m8_out_Bps

+

Outbound Rate

+

Traffic used by the monitored object to access the Internet per second

+

Unit: byte/s

+

≥ 0

+

Dedicated load balancer

+

1 minute

+

m9_abnormal_servers

+

Unhealthy Servers

+

Number of unhealthy backend servers associated with the monitored object

+

Unit: count

+

≥ 0

+

Dedicated load balancer

+

1 minute

+

ma_normal_servers

+

Healthy Servers

+

Number of healthy backend servers associated with the monitored object

+

Unit: count

+

≥ 0

+

Dedicated load balancer

+

1 minute

+

l4_in_bps_usage

+

+

Layer-4 Inbound Bandwidth Usage

+

+

Percentage of inbound TCP/UDP bandwidth from the monitored object to the client

+

0–100

+

Dedicated load balancer

+

1 minute

+

l4_out_bps_usage

+

+

Layer-4 Outbound Bandwidth Usage

+

+

Percentage of outbound TCP/UDP bandwidth from the monitored object to the client

+

0–100

+

Dedicated load balancer

+

1 minute

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0058.html b/docs/ddm/umn/ddm_03_0058.html new file mode 100644 index 00000000..f122d5a8 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0058.html @@ -0,0 +1,230 @@ + + +

Modifying Parameters of a DDM Instance

+

Scenarios

Configure parameters of a DDM instance based on your needs to keep the instance running well.

+
+

Prerequisites

There is a DDM instance available and running normally.

+
+

Procedure

  1. Log in to the DDM console.
  2. In the navigation pane, choose Instances.
  3. In the instance list, locate the DDM instance whose parameters you want to configure and click its name.
  4. In the left pane, click Parameters and modify parameter values as needed.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameters of a DDM instance

    Parameter

    +

    Description

    +

    Value Range

    +

    Default Value

    +

    bind_table

    +

    Data association among multiple sharded tables. The optimizer processes JOIN operations at the MySQL layer based on these associations. For details about parameter examples, see the description below the table.

    +

    The value should be in format [{<table1>.<column1>,<table2>.<column2>},{<table1>.<column2>,<table3>.<column1>},...]. <table1>.<column1>,<table2>.<column2> indicates a table name.column name pair, and the value may contain multiple pairs.

    +

    The version should be:

    +

    DDM 2.3.2.7 or later.

    +

    -

    +

    character_set_server

    +

    DDM server's character set. To store emoticons, set both this parameter and the character set on RDS to utf8mb4.

    +

    For a DDM instance 3.0.9 or later, you can execute show variables like '%char%' to query its character set. You will find that character_set_client, character_set_results, and character_set_connection in the command output all have a fixed value, utf8mb4.

    +

    gbk, utf8, utf8mb4

    +

    utf8mb4

    +

    collation_server

    +

    Collation on the DDM server.

    +

    utf8mb4_unicode_ci, utf8mb4_bin, utf8mb4_general_ci

    +

    utf8mb4_unicode_ci

    +

    concurrent_execution_level

    +

    Concurrency level of scanning table shards in a logical table. DATA_NODE: indicates that database shards are scanned in parallel and table shards in each database shard are scanned in serial. RDS_INSTANCE: indicates that RDS instances are scanned in parallel and shards in each instance are scanned in serial. PHY_TABLE: indicates that all table shards are scanned in parallel.

    +

    RDS_INSTANCE, DATA_NODE, PHY_TABLE

    +

    DATA_NODE

    +

    connection_idle_timeout

    +

    Number of seconds the server waits for activity on a connection before closing it. The default value is 28800, indicating that the server waits for 28,800 seconds before closing a connection.

    +

    60–86400

    +

    28800

    +

    contains_shard_key

    +

    Whether the SELECT, UPDATE, and DELETE statements must contain sharding keys in filter conditions.

    +

    OFF or ON

    +

    OFF

    +

    ddl_precheck_mdl_threshold_time

    +

    Threshold of the MDL duration in DDL pre-check. The unit is second. The default value is 120.

    +

    1–3600

    +

    120

    +

    enable_table_recycle

    +

    ON: indicates that the table recycle bin is enabled.

    +

    OFF: indicates that the table recycle bin is disabled.

    +

    After the table recycle bin is enabled, deleted tables are moved to the recycle bin and can be recovered by running the RESTORE command within seven days.

    +

    OFF or ON

    +

    OFF

    +

    long_query_time

    +

    Minimum duration of a query to be logged as slow, in seconds. The default value is 1, indicating that the query is considered as a slow query if its execution duration is greater than or equal to 1 second.

    +

    0.01–10

    +

    1

    +

    max_allowed_packet

    +

    Maximum size of one packet or any generated intermediate string. The packet message buffer is initialized to net_buffer_length bytes, but can grow up to max_allowed_packet bytes when needed. This value is small by default, to catch large (and possibly incorrect) packets. The value must be a multiple of 1024.

    +

    1024–1073741824

    +

    1073741824

    +

    max_backend_connections

    +

    Maximum of concurrent client connections allowed per DDM instance.

    +

    The default value is 0.

    +

    Actual value: (Maximum connections of RDS - 20)/DDM nodes

    +

    This parameter does not take effect only after maximum connections are set on RDS.

    +

    0–10000000

    +

    0

    +

    max_connections

    +

    Minimum concurrent connections from a DDM instance node to the client.

    +

    This value depends on specifications and processing capabilities of the target data node. Too many connections may cause connection waiting, affecting performance. The consumption of DDM connections varies with the number of shards and SQL design.

    +

    For example, If a SQL statement contains a sharding key, each DDM connection consumes one data node connection. If the SQL statement contains no sharding keys and the number of shards is N, N data node connections are consumed.

    +

    If SQL design is appropriate and processing capabilities of DDM and its data nodes are good enough, you can set this parameter to a value slightly smaller than the product of backend data nodes x maximum connections supported by each data node.

    +

    Carry out pressure tests on your services and then select a proper value.

    +

    10–40000

    +

    20000

    +

    min_backend_connections

    +

    Minimum concurrent connections from a DDM node to an RDS instance. The default value is 10.

    +

    0–10000000

    +

    10

    +

    seconds_behind_master

    +

    Threshold in seconds of the replication lag between a primary RDS instance to its read replica. The default value is 30, indicating that the time for data replication between the primary RDS instance and its read replicas cannot exceed 30 seconds. If the time exceeds 30 seconds, the data read requests are no longer forwarded to the read replicas.

    +

    0–7200

    +

    30

    +

    sql_execute_timeout

    +

    Number of seconds to wait for a SQL statement to execute before it times out. The default value is 28800, indicating that the SQL statement times out if its execution time is greater than or equal to 28800 seconds.

    +

    For data nodes, ensure that net_write_timeout has a greater value than sql_execute_timeout.

    +

    100–28800

    +

    28800

    +

    temp_table_size_limit

    +

    Size of a temporary table.

    +

    500000–2000000000

    +

    1000000

    +

    transaction_policy

    +

    Transactions supported by DDM. XA transaction, which attempts to ensure atomicity and isolation. FREE transaction, which is a best-effort commit transaction that allows data to be written to multiple shards, without impacting performance. FREE transactions do not ensure atomicity. NO_DTX transaction, which is a single-shard transaction.

    +

    XA, FREE, NO_DTX

    +

    XA

    +

    transfer_hash_to_mod_hash

    +

    Whether the hash algorithm must be converted into mod_hash during table creation.

    +

    OFF or ON

    +

    OFF

    +

    ultimate_optimize

    +

    Whether the SQL execution plan is optimized based on parameter values.

    +

    OFF or ON

    +

    ON

    +

    force_read_master_in_transaction

    +

    Whether SQL statements involved in each transaction are read from the master node.

    +

    Note: This parameter is available in version 3.0.9 or later. If this feature is enabled in version 3.0.9 but the version is downgraded to 3.0.9 below, the feature keeps enabled when the version returns to 3.0.9 or later.

    +

    OFF or ON

    +

    OFF

    +
    +
    +

    By default, DDM allows you to modify only the preceding instance parameters. If you need to modify other parameters in some special scenarios such as data migration, contact technical support.

    +
    Parameter configuration examples:
    Figure 1 Result if bind_table is not used
    +
    +
    Figure 2 Result if bind_table is used
    +

  5. Click Save in the upper left corner and then Yes in the displayed dialog box.

    • Modifying parameters may affect access to the DDM instance. Exercise caution when performing this operation.
    • It takes 20s to 60s to have the modifications to take effect.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0059.html b/docs/ddm/umn/ddm_03_0059.html new file mode 100644 index 00000000..4b4c5c64 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0059.html @@ -0,0 +1,16 @@ + + +

Reloading Table Data

+

Prerequisites

You have logged in to the DDM console.

+
+

Scenarios

If you want to deploy a DDM instance across regions for DR, use DRS to migrate service data and then reload table data after the migration is complete so that DDM can detect where logical table information is stored.

+
+

Procedure

  1. Choose Instances on the left navigation pane, in the instance list, locate the instance whose information is changed and click the instance name.
  2. Choose More > Reload Table Data in the Operation column.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0062.html b/docs/ddm/umn/ddm_03_0062.html new file mode 100644 index 00000000..46dba35f --- /dev/null +++ b/docs/ddm/umn/ddm_03_0062.html @@ -0,0 +1,79 @@ + + +

Introduction

+

DDM is compatible with the MySQL license and syntax, but the use of SQL statements is limited due to differences between distributed databases and single-node databases.

+

Before selecting a DDM solution, evaluate the SQL syntax compatibility between your application and DDM.

+

MySQL EXPLAIN

If you add EXPLAIN before a SQL statement, you will see a specific execution plan when you execute the statement. You can analyze the time required based on the plan and modify the SQL statement for optimization.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Description of the EXPLAIN column

Column Name

+

Description

+

table

+

Table that the row of data belongs to

+

type

+

Type of the connection. Connection types from the best to the worst are const, eq_reg, ref, range, index, and ALL.

+

possible_keys

+

Index that may be applied to the table

+

key

+

Index that is actually used. If the value is NULL, no index is used. In some cases, MySQL may choose to optimize indexes, for example, force MySQL to use an index by adding USE INDEX(indexname) to a SELECT statement or to ignore an index by adding IGNORE INDEX(indexname).

+

key_len

+

Length of the used index. The shorter the length is, the better the index is if accuracy is not affected.

+

ref

+

Column where the index is used. The value is generally a constant.

+

rows

+

Rows of the data returned by MySQL

+

Extra

+

Additional information about how MySQL parses queries

+
+
+
+

SQL Restrictions

  • Temporary tables are not supported.
+
+
  • Foreign keys, views, cursors, triggers, and stored procedures are not supported.
  • Customized data types and functions are not supported.
  • Process control statements such as IF and WHILE are not supported.
  • Compound statements such as BEGIN...END, LOOP...END LOOP, REPEAT...UNTIL...END REPEAT, and WHILE...DO...END WHILE are not supported.
+

DDL Syntax

  • Sharded and broadcast tables do not support foreign keys.
  • Modifying sharding keys is not supported.
  • ALTER DATABASE Syntax is not supported.
  • Creating sharded or broadcast tables from another table is not supported.
  • The CREATE TABLE statement does not support GENERATED COLUMN.
  • Modifying sharding keys or global sequence fields using the ALTER command is not supported.
  • Creating TEMPORARY sharded or broadcast tables is not supported.
  • The logical table name contains only letters, digits, and underscores (_).
  • CREATE TABLE tbl_name LIKE old_tbl_name is not supported.
  • The CREATE TABLE tbl_name SELECT statement is not supported.
  • Updating the sharding key by executing INSERT INTO ON DUPLICATE KEY UPDATE is not supported.
  • Cross-schema DDL is not supported, for example, CREATE TABLE db_name.tbl_name (... )
  • Reverse quotation marks are required to quote identifiers such as table names, column names, and index names that are MySQL key words or reserved words.
+
+

DML Syntax

  • PARTITION clauses are not supported.
  • Nesting a subquery in an UPDATE statement is not supported.
  • INSERT DELAYED Syntax is not supported.
  • STRAIGHT_JOIN and NATURAL JOIN are not supported.
  • Multiple-table UPDATE is supported if all tables joined across shards have primary keys.
  • Multiple-table DELETE is supported if all tables joined across shards have primary keys.
+
  • Using or manipulating variables in SQL statements is not supported, for example, SET @c=1, @d=@c+1; SELECT @c, @d.
  • Inserting keyword DEFAULT or updating a sharding key value to DEFAULT is not supported.
  • Repeatedly updating the same field in an UPDATE statement is not supported.
  • Updating a sharding key using UPDATE JOIN syntax is not supported.
  • UPDATE cannot be used to update self-joins.
  • Referencing other object columns in assignment statements or expressions may cause unexpected update results. Example:

    update tbl_1 a,tbl_2 b set a.name=concat(b.name,'aaaa'),b.name=concat(a.name,'bbbb') on a.id=b.id

    +
  • If a text protocol is used, BINARY, VARBINARY, TINYBLOB, BLOB, MEDIUMBLOB, and LONGBLOB data must be converted into hexadecimal data.
  • DDM processes invalid data based on sql_mode settings of associated MySQL instances.
  • UPDATE JOIN supports only joins with WHERE conditions.
  • The expression in a SQL statement has a maximum of 1000 factors.
+
+

Unsupported Functions

  • XML functions
  • GTID functions
  • Full-text search functions
  • Enterprise encryption functions
  • Function row_count()
+
+

Subqueries

Using subqueries in the HAVING clause and the JOIN ON condition is not supported.

+
+

Data Types

Spatial data types are not supported.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0063.html b/docs/ddm/umn/ddm_03_0063.html new file mode 100644 index 00000000..e6d938c7 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0063.html @@ -0,0 +1,208 @@ + + +

Functions

+

Supported Functions

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Operator functions

Expression

+

Example

+

IN

+

SELECT * FROM Products WHERE vendor_id IN ( 'V000001', 'V000010' ) ORDER BY product_price

+

NOT IN

+

SELECT product_id, product_name FROM Products WHERE vendor_id NOT IN ('V000001', 'V000002') ORDER BY product_id

+

BETWEEN

+

SELECT id, product_id, product_name, product_price FROM Products WHERE id BETWEEN 000005 AND 000034 ORDER BY id

+

NOT...BETWEEN

+

SELECT product_id, product_name FROM Products WHERE NOT vendor_id BETWEEN 'V000002' and 'V000005' ORDER BY product_id

+

IS NULL

+

SELECT product_name FROM Products WHERE product_price IS NULL

+

IS NOT NULL

+

SELECT id, product_name FROM Products WHERE product_price IS NOT NULL ORDER BY id

+

AND

+

SELECT * FROM Products WHERE vendor_id = 'V000001' AND product_price <= 4000 ORDER BY product_price

+

OR

+

SELECT * FROM Products WHERE vendor_id = 'V000001' OR vendor_id = 'V000009'

+

NOT

+

SELECT product_id, product_name FROM Products WHERE NOT vendor_id = 'V000002'

+

LIKE

+

SELECT * FROM Products WHERE product_name LIKE 'NAME%' ORDER BY product_name

+

NOT LIKE

+

SELECT * FROM Products WHERE product_name NOT LIKE 'NAME%' ORDER BY product_name

+

CONCAT

+

SELECT product_id, product_name, CONCAT( product_id , '(', product_name ,')' ) AS product_test FROM Products ORDER BY product_id

+

+

SELECT 3 * 2+5-100/50

+

-

+

SELECT 3 * 2+5-100/50

+

*

+

SELECT order_num, product_id, quantity, item_price, quantity*item_price AS expanded_price FROM OrderItems WHERE order_num BETWEEN 000009 AND 000028 ORDER BY order_num

+

/

+

SELECT 3 * 2+5-100/50

+

UPPER

+

SELECT id, product_id, UPPER(product_name) FROM Products WHERE id > 10 ORDER BY product_id

+

LOWER

+

SELECT id, product_id, LOWER(product_name) FROM Products WHERE id <= 10 ORDER BY product_id

+

SOUNDEX

+

SELECT * FROM Vendors WHERE SOUNDEX(vendor_name) = SOUNDEX('test') ORDER BY vendor_name

+

IFNULL

+

SELECT IFNULL(product_id, 0) FROM Products;

+
+
+ +
+ + + + + + + + + + + + + +
Table 2 Time and date functions

Expression

+

Example

+

DAY()

+

SELECT * FROM TAB_DATE WHERE DAY(date)=21

+

SELECT * FROM TAB_DATE WHERE date='2018-12-21'

+

INSERT INTO TAB_DATE(id,date) VALUES(1,'2018-05-22')

+

MONTH()

+

SELECT * FROM TAB_DATE WHERE MONTH(date)=12

+

SELECT * FROM TAB_DATE WHERE date='2018-12-21'

+

INSERT INTO TAB_DATE(id,date) VALUES(1,'2018-05-22')

+

YEAR()

+

SELECT * FROM TAB_DATE WHERE YEAR(date)=2018

+

SELECT * FROM TAB_DATE WHERE date='2018-12-21'

+

INSERT INTO TAB_DATE(id,date) VALUES(1,'2018-05-22')

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + +
Table 3 Mathematical functions

Expression

+

Example

+

SQRT()

+

SELECT id, product_price, SQRT(product_price) AS price_sqrt FROM Products WHERE product_price < 4000 ORDER BY product_price

+

AVG()

+

SELECT AVG(product_price) AS avg_product FROM Products

+

COUNT()

+

SELECT COUNT(*) AS num_product FROM Products

+

MAX()

+

SELECT id, product_id, product_name, MAX(product_price) AS max_price FROM Products ORDER BY id

+

MIN()

+

SELECT id, product_id, product_name, MIN(product_price) AS min_price FROM Products ORDER BY id

+

SUM()

+

SELECT SUM(product_price) AS sum_product FROM Products

+
+
+
+

Unsupported Functions

+
+ + + + + + + +
Table 4 Function restrictions

Item

+

Restriction

+

ROW_COUNT()

+

Function ROW_COUNT() is not supported.

+
+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0064.html b/docs/ddm/umn/ddm_03_0064.html new file mode 100644 index 00000000..70c71305 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0064.html @@ -0,0 +1,17 @@ + + +

Shard Configuration

+
+ + diff --git a/docs/ddm/umn/ddm_03_0067.html b/docs/ddm/umn/ddm_03_0067.html new file mode 100644 index 00000000..e414d54d --- /dev/null +++ b/docs/ddm/umn/ddm_03_0067.html @@ -0,0 +1,13 @@ + + +

Backups and Restorations

+
+ + diff --git a/docs/ddm/umn/ddm_03_0068.html b/docs/ddm/umn/ddm_03_0068.html new file mode 100644 index 00000000..7ad1bbf9 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0068.html @@ -0,0 +1,26 @@ + + +

Overview and Application Scenarios

+

Overview

Shard configuration is a core function of DDM. With this function, you can increase data nodes or shards to improve database storage and concurrency as services grow. Shard configuration has little impacts on your services, so you do not need to worry about database scaling and subsequent O&M as your services are burst.

+
+

Application Scenarios

DDM provides the following methods of configuring shards to meet different service needs.

+

Method 1: Keep shards unchanged and increase data nodes

+

This method does not change the number of shards and only increases the number of data nodes. Some shards are migrated from original data nodes to new data nodes. The shard data is not redistributed, so this method is the fastest one among all three methods and is recommended.

+

This method underpins rapid service growth after horizontal sharding and can reduce costs at the early stage of services. It is also suitable if RDS for MySQL instances cannot meet storage space and read/write performance requirements.

+
Figure 1 Adding RDS for MySQL instances with shards unchanged
+

Method 2: Add shards with data nodes unchanged

+

This method adds shards, but not data nodes. It changes total shards, total table shards, and table sharding rules. Data is redistributed to all shards. Old tables in original shards will be deleted, and broadcast tables are increased.

+

This method is suitable if the associated RDS for MySQL instance has sufficient storage space but one of its tables contains a large amount of data, with query performance limited.

+
Figure 2 Adding shards with RDS for MySQL instances unchanged
+

Method 3: Add both shards and data nodes

+

This method increases both shards and data nodes. It changes total shards, total table shards, and table sharding rules. Data is redistributed to all shards. Old tables in original shards will be deleted, and broadcast tables are increased.

+

This method is suitable if RDS for MySQL instances cannot meet storage space and read/write requirements and there is a physical table containing a large amount of data with query performance limited.

+
Figure 3 Adding shards and RDS for MySQL instances
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0069.html b/docs/ddm/umn/ddm_03_0069.html new file mode 100644 index 00000000..bdabdd90 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0069.html @@ -0,0 +1,12 @@ + + +

Assessment

+

Before changing shards, you need to carry out a preliminary evaluation and determine the number of new shards, whether to scale up the current DDM node class, and the number of required data nodes and their specifications.

+
  • Data volume: Run show db status to query the volume of data involved.
  • DDM node class: Determine nodes of the DDM instance and vCPUs and memory size of each node.
  • Data node class: Determine the number of data nodes and vCPUs and memory size of each node.
  • Business scale: Analyze current service scale and growth trend.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0070.html b/docs/ddm/umn/ddm_03_0070.html new file mode 100644 index 00000000..7baf87c8 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0070.html @@ -0,0 +1,110 @@ + + +

Pre-check

+

Check items in the table below one day before performing a shard configuration task.

+

Pre-check Items

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Pre-check items involved

Item

+

Purpose

+

Solution to Check Failure

+

Binlog backup time of the DB instance

+

Whether your full backups are retained for a time period long enough

+

Increase the retention period for full backups on the data node console.

+

Binlog enabled on data nodes

+

Whether binlog is enabled to support online shard configuration

+

If your data node is an RDS instance, no further action is required. If your data node is a GaussDB(for MySQL) instance, set log_bin to true on the GaussDB(for MySQL) console.

+

Retention period of binlogs on data nodes

+

The retention period of binlogs on data nodes must be long enough.

+

If your data node is an RDS instance, no further action is required. If your data node is a GaussDB(for MySQL) instance, set binlog_expire_logs_seconds to 604800 or a larger value.

+

Broadcast table consistency

+

Ensure broadcast table consistency before performing a shard configuration task.

+

Contact DDM O&M personnel.

+

Character set and collation of source shards

+

Ensure that character set and collation are consistent before and after the shard configuration.

+

Contact DDM O&M personnel.

+

SQL statements for creating physical stables.

+

Ensure that table structure on physical shards is consistent.

+

Execute CHECK TABLE to check for table structure inconsistencies and execute ALTER to rectify the inconsistencies.

+

Primary keys

+

All tables in the source database have primary keys, and the sharding key is a part of the primary keys to ensure data consistency after shards are changed.

+

Add primary keys for tables using ALTER if the tables have no primary keys.

+

Access to DB instances

+

Check whether data nodes can be connected.

+

Check security group configurations.

+

DB instance parameters

+

The source data nodes have the same DB parameter settings as the destination data nodes.

+

Modify parameter configurations on the data node console.

+

DB instance storage space

+

The disk space of data nodes is sufficient during shard configuration.

+

Scale up storage space of data nodes.

+
CAUTION:

This check item is based on the estimated value that may be different from the actual value.

+
+

DB instance time zone

+

The source data nodes have the same time zone requirements as the destination data nodes.

+

Modify the time zone on the Parameters page of the data node console.

+
+
+
+

Common Issues and Solutions

  • The shard configuration fails due to table structure inconsistency.

    Solution: Execute CHECK TABLE to query table structure inconsistencies and execute ALTER to rectify the inconsistencies. Contact O&M personnel if the inconsistencies cannot be rectified using DDL, for example, the primary or unique keys cannot be modified for data reasons.

    +
  • Tables without primary keys cannot be migrated. If a table has no primary keys, it cannot be correctly located and recorded. After a retry is performed during shard configuration, duplicate data may be generated.

    Solution: Add keys to the tables.

    +
  • If the sharding key is not part of a primary key, there may be data records (in different physical tables) with duplicate primary key values in a logical table. When these data records are redistributed, they will be routed to the same physical table, and only one record is retained because they have the same primary keys. As a result, data becomes inconsistent before and after the migration, causing the shard configuration failure.
    • This error does not occur when the primary key is a globally unique sequence and the number of shards does not change.
    +
    +

    Solution: Rectify the data and check again.

    +
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0071.html b/docs/ddm/umn/ddm_03_0071.html new file mode 100644 index 00000000..e56dfc80 --- /dev/null +++ b/docs/ddm/umn/ddm_03_0071.html @@ -0,0 +1,39 @@ + + +

Operation Guide

+

This section uses an RDS for MySQL instance as an example to describe how to configure shards for a schema.

+

Prerequisites

  • There is a DDM instance with available schemas.
  • There is an RDS for MySQL instance in the same VPC as the DDM instance, and is not associated with any other DDM instances. If adding data nodes is required, ensure that the new data nodes are in the same VPC as the DDM instance.
  • The kernel version of the DDM instance must be 3.0.8.3 or later. The latest kernel version is recommended.
  • Ensure that the instances to be associated with your schema cannot be in read-only states.
+
+

Procedure

  1. Log in to the DDM console. In the instance list, locate the instance that you want to configure shards for and click its name.
  2. On the displayed page, choose Schemas to view schemas of the DDM instance.
  3. In the schema list, locate the schema that you want to configure shards for and click Configure Shards in the Operation column.
  4. On the Configure Shards page, configure the required parameters and click Test Availability.

    • Tables without primary keys do not support shard configuration.
    • Total Shards After Configuration defaults to the total number of existing shards in the schema. If you want to increase shards, change the default value to the new total number of shards, and DDM will distribute all shards evenly to all data nodes.
    • You can increase data nodes or shards. Data will be redistributed across all shards if one or more shards are added.
    • Existing instances are selected by default in the data node list, but you still need to input the required password for testing connections.
    • The number of physical shards per data node in the schema cannot exceed 64. If more than 64 shards are required, contact DDM technical support.
    • Required permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER WITH GRANT OPTION
    +
    +

  5. After the test is successful, click Next to go to the Precheck page.

    • Precheck is not the start of shard configuration. The configuration task does not start until you click OK.
    • Handle risks first if any. You can also ignore the risks if you ensure that they do not affect your services.
    +
    +

  6. After all check items are complete, click Configure shards.
  7. View progress at the Task Center or run command show migrate status on your SQL client to view progress. A shard configuration task consists of two phases: full migration and incremental migration.

    Figure 1 Run the required command to view task progress
    +

    The number of returned records corresponds to the number of source RDS instances.

    +

    SOURCE_RDS: indicates the source RDS instance.

    +

    MIGRATE_ID: indicates the scale-out task ID.

    +

    SUCCEED_TABLE_STRUCTURE: indicates the number of physical tables whose structure data has been migrated.

    +

    TOTAL_TABLE_STRUCTURE: indicates the total number of physical tables whose structure data is to be migrated.

    +

    SUCCEED_TABLE_DATA: indicates the number of physical tables whose data records have been migrated.

    +

    TOTAL_TABLE_DATA: indicates the number of physical tables whose data records are to be migrated.

    +

    SUCCEED_INDEX_DATA: indicates the number of physical tables whose indexes have been migrated.

    +

    TOTAL_INDEX_DATA: indicates the number of physical tables whose data records are to be migrated.

    +

    FULL_SUCCEED_COUNT: indicates the objects that have finished a full migration in the current scale-out subtask.

    +

    FULL_TOTAL_COUNT: indicates all objects that need to be migrated by a full migration in the current scale-out subtask.

    +

    FULL_PERCENTAGE: indicates the percentage of migrated objects in the full migration in the current scale-out subtask.

    +

    Aggregate total objects to be migrated in a full migration and migrated objects in each scale-out subtask. The total objects to be migrated and migrated in all subtasks are displayed in the progress bar at Task Center.

    +
    +

  8. At the Task Center, click View Log to view task logs.
  9. If you select Manual for route switchover, click Switch Route at Task Center after data is completely migrated. If you select Automatic, the route is automatically switched over within the specified time.

    • Switching route is critical for a shard configuration task. Before the route is switched, you can cancel a shard configuration task, and data in original databases is not affected.
    • If new RDS for MySQL instances are added, write operations will be disabled during route switchover. If the number of shards is increased, read and write operations are both disabled during route switchover.
    • Switching route during off-peak hours is recommended. This is because data validation is required during this process, increasing the switchover time. How long route switchover requires depends on the volume of the data involved.
    +
    +
    +

  10. Click Clear in the Operation column to delete the data migrated from original RDS for MySQL instances.
  11. Carefully read information in the dialog box, confirm that the task is correct, and click Yes.
  12. Wait till the source data is cleared.
  13. Run the following commands after the shard configuration is complete:

    show data node: used to view the relationship between new data nodes and shards

    +

    show db status: used to view the estimated usage of schema disks.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_03_0100.html b/docs/ddm/umn/ddm_03_0100.html new file mode 100644 index 00000000..78064e5a --- /dev/null +++ b/docs/ddm/umn/ddm_03_0100.html @@ -0,0 +1,18 @@ + + +

Configuring the SQL Blacklist

+

Overview

Configure a blacklist and add those statements to it to prevent the system executing some SQL statements.

+
+

Prerequisites

  • You have logged in to the DDM console.
  • A DDM instance is running properly and has available schemas.
+
+

Procedure

  1. In the instance list, locate the instance that contains schemas you require and click the instance name.
  2. On the displayed page, choose Schemas.
  3. In the schema list, locate the schema that you want to configure a blacklist for and click Configure SQL Blacklist in the Operation column.
  4. In the displayed dialog box, click Edit, enter the required SQL statements or regular expressions in prefix match, full-text, and regular expression match boxes, and click OK.

    • Prefix Match: Enter SQL statements that contain keywords such as DROP or DELETE and are not allowed by the current schema.
    • Full-text Match: Enter full-text SQL statements that are not allowed by the current schema. Multiple spaces and line breaks will not be treated as if they were replaced or truncated as a single space.
    • Regular Expression Match: Enter specific regular expressions that are not allowed by the current schema.
    • Separate SQL statements in the blacklist with semicolons (;). The size of SQL statements for prefix match, full-text match, and regular expression match cannot exceed 1 KB, respectively.
    • If you want to clear all the SQL statements in prefix match and full-text match areas, clear them separately and click OK.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0001.html b/docs/ddm/umn/ddm_04_0001.html new file mode 100644 index 00000000..ed27e65e --- /dev/null +++ b/docs/ddm/umn/ddm_04_0001.html @@ -0,0 +1,19 @@ + + +

FAQs

+
+ + diff --git a/docs/ddm/umn/ddm_04_0004.html b/docs/ddm/umn/ddm_04_0004.html new file mode 100644 index 00000000..d9dea47b --- /dev/null +++ b/docs/ddm/umn/ddm_04_0004.html @@ -0,0 +1,29 @@ + + +

DDM Usage

+
+ + diff --git a/docs/ddm/umn/ddm_04_0006.html b/docs/ddm/umn/ddm_04_0006.html new file mode 100644 index 00000000..3279c5ff --- /dev/null +++ b/docs/ddm/umn/ddm_04_0006.html @@ -0,0 +1,14 @@ + + +

How Can I Handle Garbled Characters Generated When I Connect a MySQL Instance to a DDM Instance?

+

If the MySQL connection code is inconsistent with the actual one, garbled characters may be displayed during parsing on DDM.

+

In this case, configure default-character-set=utf8 to specify the encoding system.

+

Example:

+
mysql -h 127.0.0.1 -P 5066 -D database --default-character-set=utf8 -u ddmuser
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0008.html b/docs/ddm/umn/ddm_04_0008.html new file mode 100644 index 00000000..ce76a40e --- /dev/null +++ b/docs/ddm/umn/ddm_04_0008.html @@ -0,0 +1,44 @@ + + +

What Do I Do If I Fail to Connect to a DDM Instance Using the JDBC Driver?

+

When you access a DDM instance using the MySQL driver (JDBC) in load balancing mode, an infinite loop may occur during connection switchover, resulting in stack overflow.

+

Fault Locating

  1. Query the application logs and locate the fault cause.
    For example, the following logs show that the fault is caused by stack overflow.
    Caused by: java.lang.StackOverflowError
    +     at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
    +     at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
    +     at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:795)
    +     at java.nio.charset.Charset.encode(Charset.java:843)
    +     at com.mysql.jdbc.StringUtils.getBytes(StringUtils.java:2362)
    +     at com.mysql.jdbc.StringUtils.getBytes(StringUtils.java:2344)
    +     at com.mysql.jdbc.StringUtils.getBytes(StringUtils.java:568)
    +     at com.mysql.jdbc.StringUtils.getBytes(StringUtils.java:626)
    +     at com.mysql.jdbc.Buffer.writeStringNoNull(Buffer.java:670)
    +     at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2636)
    +
    +
  2. Analyze the overflow source.
    For example, the following logs show that the overflow results from an infinite loop inside the driver.
    at com.mysql.jdbc.LoadBalancedConnectionProxy.pickNewConnection(LoadBalancedConnectionProxy.java:344)
    +at com.mysql.jdbc.LoadBalancedAutoCommitInterceptor.postProcess(LoadBalancedAutoCommitInterceptor.java:104)
    +at com.mysql.jdbc.MysqlIO.invokeStatementInterceptorsPost(MysqlIO.java:2885)
    +at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2808)
    +at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2483)
    +at com.mysql.jdbc.ConnectionImpl.setReadOnlyInternal(ConnectionImpl.java:4961)
    +at com.mysql.jdbc.ConnectionImpl.setReadOnly(ConnectionImpl.java:4954)
    +at com.mysql.jdbc.MultiHostConnectionProxy.syncSessionState(MultiHostConnectionProxy.java:381)
    +at com.mysql.jdbc.MultiHostConnectionProxy.syncSessionState(MultiHostConnectionProxy.java:366)
    +at com.mysql.jdbc.LoadBalancedConnectionProxy.pickNewConnection(LoadBalancedConnectionProxy.java:344)
    +
    +
  3. Query the MySQL version, which is 5.1.44.

    According to the source code of the version, when a connection is obtained, LoadBalance updates the connection based on the load balancing policy and copies the configurations of the old connection to the new connection. If AutoCommit is true for the new connection, parameters of the new connection are inconsistent with those of the old connection, and loadBalanceAutoCommitStatementThreshold is not configured, an infinite loop occurs. The connection update function calls the parameter synchronization function, and the parameter synchronization function calls the connection update function at the same time, resulting in stack overflow.

    +
+
+

Solution

Add the loadBalanceAutoCommitStatementThreshold=5&retriesAllDown=10 parameter to the URL for connecting to the DDM instance.

+
//Connection example when load balancing is used
+//jdbc:mysql:loadbalance://ip1:port1,ip2:port2..ipN:portN/{db_name}
+String url = "jdbc:mysql:loadbalance://192.168.0.200:5066,192.168.0.201:5066/db_5133?loadBalanceAutoCommitStatementThreshold=5&retriesAllDown=10";
+
  • loadBalanceAutoCommitStatementThreshold indicates the number of statements executed before a reconnection.

    If loadBalanceAutoCommitStatementThreshold is set to 5, a reconnection is initiated after five SQL statements (queries or updates) are executed. A value of 0 indicates a sticky connection, and no reconnection is required. When automatic submission is disabled (autocommit is set to false), the system waits for the transaction to complete and then determines whether to initiate a reconnection.

    +
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0009.html b/docs/ddm/umn/ddm_04_0009.html new file mode 100644 index 00000000..b8f6384c --- /dev/null +++ b/docs/ddm/umn/ddm_04_0009.html @@ -0,0 +1,93 @@ + + +

What Version and Parameters Should I Select?

+

Currently, you cannot connect to DDM using JDBC driver 5.1.46. Versions 5.1.35 to 5.1.45 are recommended.

+

JDBC driver download address: https://dev.mysql.com/doc/index-connectors.html

+

Table 1 describes the recommended parameters for the JDBC URL.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Parameters

Parameter

+

Description

+

Recommended Value

+

ip:port

+

Indicates the connection address and port number for connecting to the DDM instance.

+

Query the connection address on the DDM instance details page.

+

db_name

+

Indicates the name of a schema.

+

Query the schema name on the Schemas page of the DDM instance details page.

+

loadBalanceAutoCommitStatementThreshold

+

Indicates the number of statements executed before a reconnection.

+
  • If the parameter value is set to 5, after five SQL statements (queries or updates) are executed, a reconnection is initiated.
  • A value of 0 indicates a sticky connection, and no reconnection is required.
+

When automatic submission is disabled (autocommit is set to false), the system waits for the transaction to complete and then determines whether to initiate a reconnection.

+

5

+

loadBalanceHostRemovalGracePeriod

+

Sets the grace period for removing a host from the load balancing connection.

+

15000

+

loadBalanceBlacklistTimeout

+

Sets the time for retaining a service in the global blacklist.

+

60000

+

loadBalancePingTimeout

+

Indicates the time (unit: ms) for waiting for the ping response of each load balancing connection.

+

5000

+

retriesAllDown

+

Indicates the maximum number of polling retries when all connection addresses fail.

+

If the threshold for retries has been reached but no valid address can be obtained, "SQLException" will be displayed.

+

10

+

connectTimeout

+

Specifies the timeout interval for establishing a socket connection with a database server.

+

Unit: ms. A value of 0 indicates that connection establishment never times out. This parameter setting is used for JDK 1.4 or later versions.

+

10000

+

socketTimeout

+

Specifies the timeout interval for a socket operation (read and write).

+

Unit: ms. A value of 0 indicates that a socket operation never times out.

+

Set this parameter based on your service requirements.

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0013.html b/docs/ddm/umn/ddm_04_0013.html new file mode 100644 index 00000000..ba316641 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0013.html @@ -0,0 +1,12 @@ + + +

Why It Takes So Long Time to Export Data from MySQL Using mysqldump?

+

The version of the mysqldump client may be inconsistent with that of the supported MySQL server, so exporting data from MySQL is slow.

+

Using the same version of the mysqldump client and MySQL server is recommended.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0014.html b/docs/ddm/umn/ddm_04_0014.html new file mode 100644 index 00000000..3b51b1ad --- /dev/null +++ b/docs/ddm/umn/ddm_04_0014.html @@ -0,0 +1,11 @@ + + +

What Do I Do If a Duplicate Primary Key Error Occurs When Data Is Imported into DDM?

+

When you create a table in DDM, set the start value for automatic increment and ensure that the start value is greater than the maximum auto-increment value of imported data.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0015.html b/docs/ddm/umn/ddm_04_0015.html new file mode 100644 index 00000000..b9c636bf --- /dev/null +++ b/docs/ddm/umn/ddm_04_0015.html @@ -0,0 +1,12 @@ + + +

Does DDM Support Distributed JOINs?

+

Yes. DDM supports distributed JOINs.

+
  • Redundant fields are added during table design.
  • Cross-shard JOIN is implemented by using broadcast tables, ER shards, and ShareJoin.
  • Currently, DDM does not allow cross-schema update or deletion of multiple tables.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0016.html b/docs/ddm/umn/ddm_04_0016.html new file mode 100644 index 00000000..36bdcd3c --- /dev/null +++ b/docs/ddm/umn/ddm_04_0016.html @@ -0,0 +1,11 @@ + + +

How Do I Optimize SQL Statements?

+
  • You are advised to use INNER instead of LEFT JOIN or RIGHT JOIN.
  • When LEFT JOIN or RIGHT JOIN is used, ON is preferentially executed, and WHERE is executed at the end. Therefore, when using LEFT JOIN or RIGHT JOIN, ensure that the conditions are judged in the ON statement to reduce the execution of WHERE.
  • When possible, use JOIN instead of subqueries to avoid full scanning of large tables.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0019.html b/docs/ddm/umn/ddm_04_0019.html new file mode 100644 index 00000000..95cbb5ca --- /dev/null +++ b/docs/ddm/umn/ddm_04_0019.html @@ -0,0 +1,11 @@ + + +

Does DDM Support Forced Conversion of Data Types?

+

Data type conversion is an advanced function. DDM will be gradually upgraded to be compatible with more SQL syntax. If necessary, submit a service ticket for processing.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0025.html b/docs/ddm/umn/ddm_04_0025.html new file mode 100644 index 00000000..7686eb27 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0025.html @@ -0,0 +1,104 @@ + + +

What Risky Operations on RDS for MySQL Will Affect DDM?

+

Table 1 lists risky operations on RDS for MySQL.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Risky operations on RDS for MySQL

Operation Type

+

Operation

+

Impact of the Operation

+

Operations on the RDS for MySQL console

+

Deleting an RDS for MySQL instance

+

After an RDS for MySQL instance is deleted, all schemas and logical tables of the DDM instance associated with the RDS instance become unavailable.

+

Stopping an RDS for MySQL instance

+

After an RDS for MySQL instance is stopped, all schemas and logical tables of the DDM instance associated with the RDS instance become unavailable.

+

Performing the primary/standby switchover of an RDS for MySQL instance

+

RDS for MySQL may be intermittently interrupted during the primary/standby switchover. In addition, a small amount of data may be lost in case of long delay in primary/standby synchronization.

+
  • Creating schemas or logical tables is not allowed on DDM during the primary/standby switchover of the RDS for MySQL instance.
  • After a primary/standby switchover of an RDS for MySQL instance, the RDS instance ID remains unchanged in DDM.
+

Restarting an RDS for MySQL instance

+

The restart of an RDS for MySQL instance makes itself unavailable and will also affect the associated DDM instance.

+

Resetting a password

+

After the password of an RDS for MySQL instance is reset, enter the new password on the DB Instance Connection page when creating a DDM schema.

+

Modifying a parameter template

+

The following parameters are set to fixed values. If their values are modified, DDM will not function properly.

+
  • lower_case_table_names: Set this parameter to 1, indicating that data table names and sequence names are case-insensitive.
  • local_infile: Set this parameter to ON in scale-out scenarios.
+

Modifying a security group

+

Your DDM instance cannot connect to associated RDS for MySQL instances.

+

Modifying a VPC

+

The DDM instance and RDS for MySQL instance cannot communicate with each other if they are in different VPCs.

+

Restoring data

+

Restoring data may damage data integrity.

+

Operations through an RDS for MySQL client

+

Deleting a physical database created on DDM

+

After a physical database is deleted, the original data will be lost and new data cannot be written into the database.

+

Deleting an account created on DDM

+

After an account is deleted, logical tables cannot be created on DDM.

+

Deleting a physical table created on DDM

+

After a physical table is deleted, data stored on DDM will be lost. The corresponding logical table becomes unavailable on DDM.

+

Modifying the name of a physical table created on DDM

+

DDM cannot obtain data of the corresponding logical table, and the logical table becomes unavailable on DDM.

+

Changing a record

+

Changing a record in a broadcast table will affect the data consistency of shards.

+

Modifying a whitelist

+

A DDM instance cannot access the RDS for MySQL instance if it is not in the RDS instance whitelist.

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0028.html b/docs/ddm/umn/ddm_04_0028.html new file mode 100644 index 00000000..87addd57 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0028.html @@ -0,0 +1,19 @@ + + +

How Do I Handle Data with Duplicate Primary Keys in a Table?

+

Scenario

If there is already a primary key whose data type is a boundary value, in your DDM instance, duplicate primary keys will be reported when you insert a data record that is beyond the data range of the primary key.

+
+

Procedure

  1. Log in to the RDS console.
  2. On the Instances page, locate the RDS for MySQL instance associated with your DDM instance and click the name of the RDS instance.
  3. On the Basic Information page, choose Parameters in the left pane.
  4. Click the Parameters tab and enter sql_mode in the text box. Then click the expanding button in the Value column, select STRICT_ALL_TABLES or STRICT_TRANS_TABLES, and click Save.

    STRICT_ALL_TABLES and STRICT_TRANS_TABLES are both strict modes. The strict mode controls how MySQL handles invalid or missing values.

    +
    • An invalid value might have the wrong data type for the column, or might be out of range.
    • A value is missing when a new row to be inserted does not contain a value for a non-NULL column that has no explicit DEFAULT clause in its definition.
    • If the DDM instance version is earlier than 2.4.1.3, do not set sql_mode to ANSI_QUOTES. If you set it to ANSI_QUOTES, double quotation marks used for each string will be translated into an identifier during SQL statement execution, making the string invalid.

      For example, logic in select * from test where tb = "logic" cannot be parsed correctly.

      +
    +

    For more information about SQL modes, see Server SQL Modes.

    +
    +

  5. On the Instances page, restart the DDM instance.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0029.html b/docs/ddm/umn/ddm_04_0029.html new file mode 100644 index 00000000..45ff577b --- /dev/null +++ b/docs/ddm/umn/ddm_04_0029.html @@ -0,0 +1,12 @@ + + +

How Can I Query RDS for MySQL Information by Running Command show full innodb status?

+

After you connect to a DDM instance through the MySQL client, you can run command show full innodb status to query information about the associated RDS for MySQL instances. The following information can be queried:

+
  • Current time and duration since the last output.
  • Status of the master thread.
  • SEMAPHORES including event counts and available waiting threads when there is high-concurrency workload. You can use the information to locate performance bottlenecks if any.
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0031.html b/docs/ddm/umn/ddm_04_0031.html new file mode 100644 index 00000000..06ccc0b0 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0031.html @@ -0,0 +1,11 @@ + + +

What Do I Do If an Error Is Reported When Parameter Configuration Does Not Time Out?

+

Adjust the SocketTimeOut value or leave this parameter blank. The default value is 0, indicating that the client is not disconnected.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0035.html b/docs/ddm/umn/ddm_04_0035.html new file mode 100644 index 00000000..2a40d043 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0035.html @@ -0,0 +1,12 @@ + + +

What Should I Do If an Error Message Is Returned When I Specify an Auto-Increment Primary Key During Migration?

+

Execute the following SQL statement to modify the start value of the auto-increment primary key so that the value is greater than the maximum value of primary keys in existing tables:

+
ALTER SEQUENCE <Database_name>.<SEQ_name> START WITH <New_start_value>
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0036.html b/docs/ddm/umn/ddm_04_0036.html new file mode 100644 index 00000000..6f2b3309 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0036.html @@ -0,0 +1,12 @@ + + +

What Should I Do If an Error Is Reported When Multiple Data Records Are Inserted into Batches Using the INSERT Statement?

+

Solution

Split an INSERT statement into multiple small statements.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0046.html b/docs/ddm/umn/ddm_04_0046.html new file mode 100644 index 00000000..ad48d3ce --- /dev/null +++ b/docs/ddm/umn/ddm_04_0046.html @@ -0,0 +1,21 @@ + + +

SQL Syntax

+
+ + diff --git a/docs/ddm/umn/ddm_04_0047.html b/docs/ddm/umn/ddm_04_0047.html new file mode 100644 index 00000000..11ec6b04 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0047.html @@ -0,0 +1,21 @@ + + +

RDS-related Questions

+
+ + diff --git a/docs/ddm/umn/ddm_04_0048.html b/docs/ddm/umn/ddm_04_0048.html new file mode 100644 index 00000000..4ce5aa74 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0048.html @@ -0,0 +1,11 @@ + + +

Is the Name of a Database Table Case-Sensitive?

+

DDM is case-insensitive to database names, table names, and column names by default.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0050.html b/docs/ddm/umn/ddm_04_0050.html new file mode 100644 index 00000000..55062cad --- /dev/null +++ b/docs/ddm/umn/ddm_04_0050.html @@ -0,0 +1,11 @@ + + +

Which Should I Delete First, a Schema or its Associated RDS Instances?

+

After an RDS instance is associated with your schema, you cannot delete the instance directly. To delete it, you have to delete the schema first and then delete the instance.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0051.html b/docs/ddm/umn/ddm_04_0051.html new file mode 100644 index 00000000..87c5a179 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0051.html @@ -0,0 +1,11 @@ + + +

Can I Manually Delete Databases and Accounts Remained in Data Nodes After a Schema Is Deleted?

+

If you do not need to delete the databases or accounts, you can manually delete them to free up space.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0066.html b/docs/ddm/umn/ddm_04_0066.html new file mode 100644 index 00000000..b8852f94 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0066.html @@ -0,0 +1,21 @@ + + +

General Questions

+
+ + diff --git a/docs/ddm/umn/ddm_04_0067.html b/docs/ddm/umn/ddm_04_0067.html new file mode 100644 index 00000000..6ced515e --- /dev/null +++ b/docs/ddm/umn/ddm_04_0067.html @@ -0,0 +1,24 @@ + + +

How Do I Select and Configure a Security Group?

+

DDM uses VPCs and security groups to ensure security of your instances. The following provides guidance for you on how to correctly configure a security group.

+

Intra-VPC Access to DDM Instances

Access to a DDM instance includes access to the DDM instance from the ECS where a client is located and access to its associated data nodes.

+

The ECS, DDM instance, and data nodes must be in the same VPC. In addition, correct rules should be configured for their security groups to allow network access.

+
  1. Using the same security group is recommended for the ECS, DDM instance, and data nodes. After a security group is created, network access in the group is not restricted by default.
  2. If different security groups are configured, you may need to refer to the following configurations:
    • Assume that the ECS, DDM instance, and RDS for MySQL instance are configured with security groups sg-ECS, sg-DDM, and sg-RDS, respectively.
    • Assume that the service port of the DDM instance is 5066 and that of the RDS for MySQL instance is 3306.
    • The remote end should be a security group or an IP address.
    +
    +

    Add the rules described in Figure 1 to the security group of the ECS to ensure that your client can access the DDM instance.

    +
    Figure 1 ECS security group rules
    +

    Add the rules in Figure 2 and Figure 3 to the security group of the ECS where your DDM instance is located so that your DDM instance can access associated data nodes and can be accessed by your client.

    +
    Figure 2 Configuring security group inbound rules for your DDM instance
    +
    Figure 3 Configuring security group outbound rules for your DDM instance
    +

    Add the rules in Figure 4 to the security group of the ECS where the data node is located so that your DDM instance can access the node.

    +
    Figure 4 Configuring security group rules of the RDS instance
    +
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0068.html b/docs/ddm/umn/ddm_04_0068.html new file mode 100644 index 00000000..cce1a8e6 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0068.html @@ -0,0 +1,16 @@ + + +

What High-Reliability Mechanisms Does DDM Provide?

+

Protection of Data Integrity

DDM instance faults do not affect data integrity.

+
  • Service data is stored in shards of data nodes, but not on DDM.
  • Configuration information of schemas and logical tables is stored in DDM databases. Primary and standby DDM databases are highly available.
+
+

High Availability

DDM is deployed using multiple stateless nodes in cluster mode and provides services through the IP address bound to your load balancer.

+
  • If one DDM node becomes faulty, an error is returned for connections established on the node, without affecting the DDM cluster. The faulty node is generally deleted from the cluster within 5 seconds.
  • If a data node becomes faulty, services can be restored within 30 seconds after the data node is recovered.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_04_0097.html b/docs/ddm/umn/ddm_04_0097.html new file mode 100644 index 00000000..9461c081 --- /dev/null +++ b/docs/ddm/umn/ddm_04_0097.html @@ -0,0 +1,15 @@ + + +

Connection Management

+
+ + diff --git a/docs/ddm/umn/ddm_05_0000.html b/docs/ddm/umn/ddm_05_0000.html new file mode 100644 index 00000000..7d09cd11 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0000.html @@ -0,0 +1,11 @@ + + +

Permissions Management

+
+ + diff --git a/docs/ddm/umn/ddm_05_0001.html b/docs/ddm/umn/ddm_05_0001.html new file mode 100644 index 00000000..5ad59b10 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0001.html @@ -0,0 +1,17 @@ + + +

Account Management

+
+ + diff --git a/docs/ddm/umn/ddm_05_0002.html b/docs/ddm/umn/ddm_05_0002.html new file mode 100644 index 00000000..ea3826a5 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0002.html @@ -0,0 +1,58 @@ + + +

Creating an Account

+

Prerequisites

  • You have logged in to the DDM console.
  • There are schemas available in the DDM instance that you want to create an account for.
+
+

Procedure

  1. In the instance list, locate the required DDM instance and click its name.
  2. In the navigation pane, choose Accounts.
  3. On the displayed page, click Create Account and configure the required parameters.

    + +
    + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Required parameters

    Parameter

    +

    Description

    +

    Username

    +

    Username of the account.

    +

    The username can consist of 1 to 32 characters and must start with a letter. Only letters, digits, and underscores (_) are allowed.

    +

    Password

    +

    Password of the account. The password:

    +
    • Must be case-sensitive.
    • Can include 8 to 32 characters.
    • Must contain at least three of the following character types: letters, digits, and special characters ~!@#%^*-_=+?
    • Do not use weak or easy-to-guess passwords.
    +

    Confirm Password

    +

    The confirm password must be the same as the entered password.

    +

    Schema

    +

    Schema to be associated with the account. You can select an existing schema from the drop-down list.

    +

    The account can be used to access only the associated schemas.

    +

    Permissions

    +

    Options: CREATE, DROP, ALTER, INDEX, INSERT, DELETE, UPDATE, and SELECT. You can select any or a combination of them.

    +

    Description

    +

    Description of the account, which cannot exceed 256 characters.

    +
    +
    +

  4. Confirm the settings and click OK.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0003.html b/docs/ddm/umn/ddm_05_0003.html new file mode 100644 index 00000000..72b1216b --- /dev/null +++ b/docs/ddm/umn/ddm_05_0003.html @@ -0,0 +1,15 @@ + + +

Modifying an Account

+

Prerequisites

You have logged in to the DDM console.

+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to modify and click its name.
  2. In the navigation pane, choose Accounts.
  3. In the account list, locate the required account and click Modify in the Operation column.
  4. In the displayed dialog box, modify the associated schemas, permissions, and description.

    +

  5. Click OK.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0004.html b/docs/ddm/umn/ddm_05_0004.html new file mode 100644 index 00000000..7b0eca94 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0004.html @@ -0,0 +1,16 @@ + + +

Deleting an Account

+

Prerequisites

You have logged in to the DDM console.

+

Deleted accounts cannot be recovered. Exercise caution when performing this operation.

+
+
+

Procedure

  1. In the instance list, locate the DDM instance with the account that you want to delete and click its name.
  2. In the navigation pane, choose Accounts.
  3. In the account list, locate the account that you want to delete and choose More > Delete in the Operation column.
  4. In the displayed dialog box, click Yes.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0005.html b/docs/ddm/umn/ddm_05_0005.html new file mode 100644 index 00000000..bd117a16 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0005.html @@ -0,0 +1,27 @@ + + +

Parameter Template Management

+
+ + diff --git a/docs/ddm/umn/ddm_05_0006.html b/docs/ddm/umn/ddm_05_0006.html new file mode 100644 index 00000000..e748eed5 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0006.html @@ -0,0 +1,21 @@ + + +

Creating a Parameter Template

+

A database parameter template acts as a container for parameter configurations that can be applied to one or more DDM instances. You can manage configurations of a DDM instance by managing parameters in the parameter template applied to the instance.

+

If you do not specify a parameter template when creating a DDM instance, the system uses the default parameter template for your instance. The default parameter template contains multiple default values, which are determined based on the computing level and the storage space allocated to the instance. You cannot modify parameter settings of a default parameter template. You must create your own parameter template to change parameter settings.

+

If you want to use your custom parameter template, you simply create a parameter template and select it when you create a DDM instance or apply it to an existing DDM instance following the instructions provided in Applying a Parameter Template.

+

When you have already created a parameter template and want to provide most of its custom parameters and values in a new parameter template, you can replicate the template you created following the instructions provided in Replicating a Parameter Template.

+

The following are the key points you should know when using parameters from a parameter template:

+
  • Changing a parameter value in a parameter template does not change any parameter in a DDM instance where it has been applied before.
  • When you change a parameter value in a parameter template and save the change, the change will take effect only after you apply the parameter template to a DDM instance and manually restart the instance.
  • Improper parameter settings may have unintended adverse effects, including degraded performance and system instability. Exercise caution when modifying parameters and you need to back up data before modifying parameters in a parameter template. Before applying parameter template changes to a production DDM instance, you should try out these changes on a test DDM instance.
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates and click Create Parameter Template.
  5. In the displayed dialog box, enter a template name and description and click OK.

    • The template name is case-sensitive and consists of 1 to 64 characters. It can contain only letters, digits, hyphens (-), underscores (_), and periods (.).
    • The template description consists of a maximum of 256 characters and cannot include carriage return characters and the following special characters: >!<"&'=
      • Each user can create up to 100 parameter templates.
      • The parameter template quota is shared by all DDM instances in a project.
      +
      +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0007.html b/docs/ddm/umn/ddm_05_0007.html new file mode 100644 index 00000000..865b2d0a --- /dev/null +++ b/docs/ddm/umn/ddm_05_0007.html @@ -0,0 +1,20 @@ + + +

Editing a Parameter Template

+

To improve performance of a DDM instance, you can modify parameters in custom parameter templates based on service requirements.

+

You cannot change parameter values in default parameter templates.

+

The following are the key points you should know when using parameters from a parameter template:

+
  • When you modify a custom parameter template, the modifications take effect only after you apply the parameter template to DDM instances. For details, see Applying a Parameter Template.
  • The time when the modification takes effect is determined by the type of the parameter.
  • Parameters in default parameter templates cannot be modified. You can view these parameters by clicking template names. If a custom parameter template is set incorrectly and causes an instance restart to fail, you can re-configure the custom parameter template according to configurations of the default parameter template.
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates, click the Custom Templates tab, locate the required parameter template, and click its name.
  5. On the Parameter Details page, modify parameters as needed.

    Available operations are as follows:

    +
    • To save the modifications, click Save.
    • To cancel the modifications, click Cancel.
    +

  6. After the parameter values are modified, click Template History to view details.

    • The modifications take effect only after you apply the parameter template to DDM instances. For details, see Applying a Parameter Template.
    • The instance restart caused by node class changes will not put parameter modifications into effect.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0008.html b/docs/ddm/umn/ddm_05_0008.html new file mode 100644 index 00000000..7555cbfc --- /dev/null +++ b/docs/ddm/umn/ddm_05_0008.html @@ -0,0 +1,14 @@ + + +

Resetting the Password of an Account

+

Prerequisites

  • You have logged in to the DDM console.
  • Resetting the DDM account password is a high-risk operation. Ensure that you have the IAM permission to modify DDM accounts.
+
+

Procedure

  1. In the instance list, locate the DDM instance with the account whose password you want to reset and click its name.
  2. In the navigation pane, choose Accounts.
  3. In the account list, locate the required account and choose More > Reset Password in the Operation column.
  4. In the displayed dialog box, enter the new password, confirm the new password, and click OK.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0009.html b/docs/ddm/umn/ddm_05_0009.html new file mode 100644 index 00000000..7bf4f117 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0009.html @@ -0,0 +1,16 @@ + + +

Comparing Two Parameter Templates

+

Scenarios

You can apply different parameter templates to the same DDM instance to view impacts on parameter settings of the instance.

+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. On the Parameter Templates page, locate the required parameter template and click Compare in the Operation column.
  5. In the displayed dialog box, select a parameter template and click OK.

    You can compare different custom parameter templates, or a default parameter template with a custom parameter template.
    • If their settings are different, the parameter names and values of both parameter templates are displayed.
    • If their settings are the same, no data is displayed.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0010.html b/docs/ddm/umn/ddm_05_0010.html new file mode 100644 index 00000000..bc6d139c --- /dev/null +++ b/docs/ddm/umn/ddm_05_0010.html @@ -0,0 +1,17 @@ + + +

Viewing Parameter Change History

+

Scenarios

You can view parameters of a DDM instance and change history of custom templates.

+

An exported or custom parameter template has initially a blank change history.

+
+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates, click the Customer Templates tab, locate the required parameter template, and choose More > View Change History.

    You can view the name, original parameter value, new parameter value, modification status, and modification time of each parameter.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0011.html b/docs/ddm/umn/ddm_05_0011.html new file mode 100644 index 00000000..149a0e25 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0011.html @@ -0,0 +1,17 @@ + + +

Replicating a Parameter Template

+

Scenarios

You can replicate a parameter template you have created. When you have already created a parameter template and want to provide most of its custom parameters and values in a new parameter template, you can replicate the template you created.

+

Default parameter templates cannot be replicated. You can create parameter templates based on the default ones.

+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates, click the Custom Templates tab, locate the required parameter template, and click Replicate in the Operation column.
  5. In the displayed dialog box, configure required details and click OK.

    • The template name is case-sensitive and consists of 1 to 64 characters. It can contain only letters, digits, hyphens (-), underscores (_), and periods (.).
    • The template description consists of a maximum of 256 characters and cannot include carriage return characters and special characters >!<"&'=
    +

    After the parameter template is replicated, a new template is generated in the list.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0013.html b/docs/ddm/umn/ddm_05_0013.html new file mode 100644 index 00000000..19d5d529 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0013.html @@ -0,0 +1,17 @@ + + +

Applying a Parameter Template

+

Scenarios

After you create a parameter template and modify parameters in it based on service requirements, you can apply it to your DDM instances.

+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates in the left navigation pane and proceed with subsequent operations based on the type of the required parameter template.

    • To apply a default template, click the Default Templates tab, locate the required parameter template, and click Apply in the Operation column.
    • To apply a custom template, click the Custom Templates tab, locate the required parameter template, and choose More > Apply in the Operation column.
    +

    A parameter template can be applied to one or more DDM instances.

    +

  5. In the displayed dialog box, select one or more DDM instances that you want to apply the parameter template to and click OK.

    After the parameter template is applied to DDM instances successfully, you can view its application history by referring to Viewing Application Records of a Parameter Template.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0014.html b/docs/ddm/umn/ddm_05_0014.html new file mode 100644 index 00000000..bb0e4f56 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0014.html @@ -0,0 +1,15 @@ + + +

Viewing Application Records of a Parameter Template

+

Scenarios

After a parameter template is applied to DDM instances, you can view its application records.

+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates in the navigation pane on the left.
  5. On the Default Templates page, locate the target parameter template and click View Application Record in the Operation column. Alternatively, on the Custom Templates page, choose More > View Application Record in the Operation column.

    You can view the name or ID of the DDM instance to which the parameter template is applied, as well as the application status, application time, and failure cause.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0015.html b/docs/ddm/umn/ddm_05_0015.html new file mode 100644 index 00000000..40e59ba2 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0015.html @@ -0,0 +1,17 @@ + + +

Modifying the Description of a Parameter Template

+

Scenarios

You can modify the description of a parameter template that you have created.

+

You cannot modify the description of any default parameter template.

+
+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates, click the Custom Templates tab, locate the parameter template whose description you want to modify, and click in the Description column.
  5. Enter a new description. You can click to submit or to cancel the modification.

    • The description contains up to 256 characters but cannot contain special characters >!<"&'=
    • After the modification is successful, you can view the new description in the Description column.
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0016.html b/docs/ddm/umn/ddm_05_0016.html new file mode 100644 index 00000000..4a607aa2 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0016.html @@ -0,0 +1,16 @@ + + +

Deleting a Parameter Template

+

Scenarios

You can delete custom parameter templates that will not be used any more.

+
+
  • Deleted parameter templates cannot be recovered. Exercise caution when performing this operation.
  • Default parameter templates cannot be deleted.
+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Parameter Templates, click the Custom Templates tab, locate the template that you want to delete, and click Delete in the Operation column.
  5. In the displayed dialog box, click Yes.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_05_0021.html b/docs/ddm/umn/ddm_05_0021.html new file mode 100644 index 00000000..003f7608 --- /dev/null +++ b/docs/ddm/umn/ddm_05_0021.html @@ -0,0 +1,12 @@ + + +

Database Accounts and Permissions

+

To create a schema, import schema information, or configure shards, you can use the administrator account of data nodes or create a database account with the following permissions:

+

SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, and TRIGGER WITH GRANT OPTION

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_0600016.html b/docs/ddm/umn/ddm_0600016.html new file mode 100644 index 00000000..f2891bec --- /dev/null +++ b/docs/ddm/umn/ddm_0600016.html @@ -0,0 +1,52 @@ + + +

Restoring Data to a New Instance

+

DDM allows you to restore data from the current instance to any point in time using an existing backup. This is a good choice for routine service backup and restoration.

+

This section uses an RDS for MySQL instance as an example to describe how to restore data to a new DDM instance.

+

Precautions

  • Restoring data to a new instance restores your DDM instance and its data nodes (RDS for MySQL instances). Before the restoration, you need to prepare a new DDM instance and as many new RDS for MySQL instances as there are data nodes.
+
+
  • Restoring data to a new DDM instance will overwrite data on it and cause the instance to be unavailable during restoration.
  • The new RDS for MySQL instances must have the same or later versions and as much as or more storage space than the original ones.
  • Restoration is not supported if the destination DDM instance is in the primary network and its associated RDS for MySQL instance is in the extended network.
  • The source DDM instance must be of the version 2.3.2.11 or later, and the destination DDM instance must be of the version 3.0.8 or later.
  • Time points that data can be restored to depend on the backup policy set on original data nodes.
+

Procedure

  1. Log in to the DDM console.
  2. Create a new DDM instance in the region where the source DDM instance is located or select an existing DDM instance that meets the requirements.

    Ensure that the new DDM instance or the selected existing DDM instance is not associated with any RDS for MySQL instance and has no schemas or accounts.

    +
    +

  3. On the RDS console, create as many RDS for MySQL instances as there are in the source DDM instance.

    • Ensure that the new RDS instances have the same or later versions than RDS instances associated with the source DDM instance.
    • Ensure that each new RDS for MySQL instance has the same or larger storage space than each source RDS instance.
    +
    +

  4. Switch back to the DDM console, in the instance list, locate the DDM instance whose data you want to restore, and click its name.
  5. In the navigation pane on the left, choose Backups & Restorations.
  6. Click Restore to New Instance.
  7. On the displayed Restore to New Instance page, specify a time range and a point in time, and select destination DDM instance and associated data nodes.

    +

    + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Time Range

    +

    Select a time range.

    +

    Time Point

    +

    Select a time point.

    +

    DDM checks whether the associated data nodes have available backups at the selected point in time.

    +

    Destination DDM Instance

    +

    Select the DDM instance created in 2 as the destination instance.

    +

    Associated Data Nodes

    +

    Select the RDS for MySQL instances created in 3 as the destination data nodes.

    +
    +
    +

  8. Confirm the information and click OK. Wait for 1 to 3 minutes for the data restoration to complete.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_0600017.html b/docs/ddm/umn/ddm_0600017.html new file mode 100644 index 00000000..d257fd23 --- /dev/null +++ b/docs/ddm/umn/ddm_0600017.html @@ -0,0 +1,72 @@ + + +

Restoring Metadata

+

DDM automatically backs up DDM instance metadata at 02:00 UTC+00:00 every day and retains the backup data for 30 days. Metadata backup is also triggered by key operations that affect metadata, such as deleting a schema, deleting data after shard configuration, and deleting instances.

+

When you delete a schema by mistake or your RDS for MySQL instances become abnormal, metadata restoration allows you to restore your DDM instance metadata and match the metadata with the RDS instance that has completed PITR to re-establish the relationship between your DDM instance and RDS instance. Metadata restoration supports only RDS for MySQL.

+

To restore metadata of a DDM instance, you can specify a point in time by referring to Restoring Metadata to a Point in Time, or using an available backup by referring to Restoring Metadata Using an Available Backup.

+

Precautions

  • Metadata restoration mainly restores the metadata of your DDM instance to a new DDM instance. It starts after a point-in-time recovery (PITR) for the associated data nodes is complete.

    PITR indicates that a data node has been restored to a specified point in time.

    +
    +
  • The destination DDM instance is not associated with any RDS for MySQL instance and has no schemas or accounts.
  • Ensure that the selected RDS for MySQL instance has completed PITR.
  • Restoration is not supported if the destination DDM instance is in the primary network and its associated RDS for MySQL instance is in the extended network.
  • The source DDM instance must be of the version 2.3.2.11 or later, and the destination DDM instance must be of the version 3.0.8 or later.
  • Time points that data can be restored to depend on the backup policy set on original data nodes.
+
+

Restoring Metadata to a Point in Time

  1. Log in to the DDM console.
  2. Create a new DDM instance.
  3. In the DDM instance list, locate the newly-created instance and click its name.
  4. In the navigation pane on the left, choose Backups & Restorations.
  5. Click Restore Metadata.
  6. On the displayed page, specify a time point. DDM will select an appropriate DDM metadata backup closest to the time point.

    +

    + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Restore To

    +

    Specify a point in time. DDM will restore metadata to this point in time using the most recent backup.

    +

    Destination DDM Instance

    +

    Select the DDM instance created in 2 as the destination instance.

    +

    Destination Data Nodes

    +

    Select the RDS for MySQL instances that have completed PITR. DDM will match the selected data nodes with shard information in the selected metadata backup.

    +
    +
    +

  7. Click OK. If a message is displayed indicating that the metadata is restored successfully, the restoration is complete.
+
+

Restoring Metadata Using an Available Backup

  1. Log in to the DDM console.
  2. Create a new DDM instance.
  3. In the navigation pane on the left, choose Backups.
  4. Locate the required backup based on the instance name and backup time and click Restore in the Operation column.

    +

  5. On the displayed page, configure required parameters.

    +

    + + + + + + + + + + + + + +
    Table 2 Parameter description

    Parameter

    +

    Description

    +

    Backup Name

    +

    Name of the backup to be restored.

    +

    Destination DDM Instance

    +

    Select the DDM instance created in 2 as the destination instance.

    +

    Destination Data Nodes

    +

    Select the RDS for MySQL instances that have completed PITR. DDM will match the selected data nodes with shard information in the selected metadata backup.

    +
    +
    +

  6. Click OK. If a message is displayed indicating that the metadata is restored successfully, the restoration is complete.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0001.html b/docs/ddm/umn/ddm_06_0001.html new file mode 100644 index 00000000..f01d7200 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0001.html @@ -0,0 +1,29 @@ + + +

Instance Management

+
+ + diff --git a/docs/ddm/umn/ddm_06_00017.html b/docs/ddm/umn/ddm_06_00017.html new file mode 100644 index 00000000..a17e9b36 --- /dev/null +++ b/docs/ddm/umn/ddm_06_00017.html @@ -0,0 +1,94 @@ + + +

Creating a DDM Instance

+

Prerequisites

You have logged in to the DDM console.

+
+

Procedure

  1. On the displayed page, in the upper right corner, click Create DDM Instance.
  2. On the displayed page, configure the required parameters.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Region

    +

    Region where the DDM instance is located. Select the required region.

    +

    AZ

    +

    Availability zone where the DDM instance is deployed.

    +

    Nodes in a DDM instance can be deployed on different physical servers in the same AZ to keep services always available even if one physical server becomes faulty.

    +

    A DDM instance can be deployed across AZs to provide cross-AZ DR.

    +

    If necessary, you can select multiple AZs when you create a DDM instance. Then nodes of the instance will be deployed in multiple different AZs.

    +
    NOTE:

    Deploy your application, DDM instance, and required RDS instances in the same AZ to reduce network latency. Cross-AZ deployment may increase network latency.

    +
    +

    Instance Name

    +

    Name of the DDM instance, which:

    +
    • Cannot be left blank.
    • Must start with a letter.
    • Must be 4 to 64 characters long.
    • Can contain only letters, digits, and hyphens (-).
    +

    Node Class

    +

    Class of the DDM instance node. You can select General-enhanced or Kunpeng general computing-plus and then specify a node class.

    +
    NOTE:

    Estimate compute and storage requirements of your applications based on your service type and scale before you create a DDM instance, and then select an appropriate node class so that the CPU and memory specifications of your DDM instance can better meet your needs.

    +
    +

    Instance Nodes

    +

    Number of nodes in a DDM instance. Up to 32 nodes are supported.

    +
    NOTE:

    At least 2 nodes are recommended because using a single node cannot guarantee high availability.

    +
    +

    VPC

    +

    VPC that the DDM instance belongs to. This VPC isolates networks for different services. It allows you to manage and configure private networks, simplifying network management.

    +

    Click View VPC to show more details and security group rules.

    +
    NOTE:

    The DDM instance should be in the same VPC as the required RDS for MySQL instance.

    +

    To ensure network connectivity, the DDM instance you purchased must be in the same VPC as your applications and RDS for MySQL instances.

    +
    +

    Subnet

    +

    Name and IP address range of the subnet

    +

    Security Group

    +

    Select an existing security group.

    +

    You are advised to select the same security group for your DDM instance, application, and RDS for MySQL instances so that they can communicate with each other. If different security groups are selected, add security group rules to enable network access.

    +

    Parameter Template

    +

    Select an existing parameter template. You can also click View Parameter Template to set parameters on the displayed page.

    +

    Tags

    +

    (Optional) Adding tags helps you better identify and manage your DDM resources.

    +

    You can add tags to your instance. Each instance can have a maximum of 20 tags.

    +

    Tag key: This parameter is mandatory and cannot be null.

    +
    • Must be unique for each instance.
    • Can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@).
    • Can include 1 to 36 characters.
    • Cannot be an empty string or start with _sys_.
    +
    Tag value: This parameter is mandatory.
    • Is an empty string by default.
    • Can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@).
    • Can contain 0 to 43 characters.
    +
    +
    +
    +

  3. After the configuration is complete, click Create Now at the bottom of the page.
  4. Confirm the configurations and click Submit.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0002.html b/docs/ddm/umn/ddm_06_0002.html new file mode 100644 index 00000000..e74e5f15 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0002.html @@ -0,0 +1,97 @@ + + +

Step 1: Create a DDM Instance and an RDS for MySQL Instance

+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select the required region.
  3. Click Service List and choose Databases > Distributed Database Middleware.
  4. On the Instances page, in the upper right corner, click Create DDM Instance.
  5. On the displayed page, configure the required parameters.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Region

    +

    Region where the DDM instance is located. Select the required region.

    +

    AZ

    +

    Availability zone where the DDM instance is deployed.

    +

    Nodes in a DDM instance can be deployed on different physical servers in the same AZ to keep services always available even if one physical server becomes faulty.

    +

    A DDM instance can be deployed across AZs to provide cross-AZ DR.

    +

    If necessary, you can select multiple AZs when you create a DDM instance. Then nodes of the instance will be deployed in multiple different AZs.

    +
    NOTE:

    Deploy your application, DDM instance, and required RDS instances in the same AZ to reduce network latency. Cross-AZ deployment may increase network latency.

    +
    +

    Instance Name

    +

    Name of the DDM instance, which:

    +
    • Cannot be left blank.
    • Must start with a letter.
    • Must be 4 to 64 characters long.
    • Can contain only letters, digits, and hyphens (-).
    +

    Node Class

    +

    Class of the DDM instance node. You can select General-enhanced or Kunpeng general computing-plus and then specify a node class.

    +
    NOTE:

    Estimate compute and storage requirements of your applications based on your service type and scale before you create a DDM instance, and then select an appropriate node class so that the CPU and memory specifications of your DDM instance can better meet your needs.

    +
    +

    Instance Nodes

    +

    Number of nodes in a DDM instance. Up to 32 nodes are supported.

    +
    NOTE:

    At least 2 nodes are recommended because using a single node cannot guarantee high availability.

    +
    +

    VPC

    +

    VPC that the DDM instance belongs to. This VPC isolates networks for different services. It allows you to manage and configure private networks, simplifying network management.

    +

    Click View VPC to show more details and security group rules.

    +
    NOTE:

    The DDM instance should be in the same VPC as the required RDS for MySQL instance.

    +

    To ensure network connectivity, the DDM instance you purchased must be in the same VPC as your applications and RDS for MySQL instances.

    +
    +

    Subnet

    +

    Name and IP address range of the subnet

    +

    Security Group

    +

    Select an existing security group.

    +

    You are advised to select the same security group for your DDM instance, application, and RDS for MySQL instances so that they can communicate with each other. If different security groups are selected, add security group rules to enable network access.

    +

    Parameter Template

    +

    Select an existing parameter template. You can also click View Parameter Template to set parameters on the displayed page.

    +

    Tags

    +

    (Optional) Adding tags helps you better identify and manage your DDM resources.

    +

    You can add tags to your instance. Each instance can have a maximum of 20 tags.

    +

    Tag key: This parameter is mandatory and cannot be null.

    +
    • Must be unique for each instance.
    • Can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@).
    • Can include 1 to 36 characters.
    • Cannot be an empty string or start with _sys_.
    +
    Tag value: This parameter is mandatory.
    • Is an empty string by default.
    • Can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@).
    • Can contain 0 to 43 characters.
    +
    +
    +
    +

  6. After the configuration is complete, click Next at the bottom of the page.
  7. Confirm the configurations and click Submit.
  8. To view and manage the instance, go to the Instances page.

    The default database port is 5066 and can be changed after a DDM instance is created.

    +

    For details, see Changing a Database Port.

    +

  9. Switch to the RDS console, click Create DB Instance in the upper right corner, specify the required information, and click Next.

    For details about how to create an RDS for MySQL instance, see Create a DB Instance.

    The RDS for MySQL instance must be in the same VPC and subnet as your DDM instance. If they are not in the same subnet, configure routes to ensure network connectivity.

    +
    +
    +

  10. After confirming the settings, click Submit. Wait 1 to 3 minutes till the instance is created.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0003.html b/docs/ddm/umn/ddm_06_0003.html new file mode 100644 index 00000000..9ec8be73 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0003.html @@ -0,0 +1,20 @@ + + +

Changing Class of a DDM Node

+

Prerequisites

  • You have logged in to the DDM console.
  • The DDM instance is in the Running state.
+

Change node class during off-peak hours because services will be interrupted for a while during class changing.

+
+
+

Procedure

After a read-only group is created, the entry for changing node class will be moved to the operation column of the group.

+
+
  1. In the instance list, locate the DDM instance whose node class you want to change and click its name. Click Change.
  2. On the displayed page, select the required class.
  3. Confirm the configurations and click Submit.
  4. Switch back to the instance list and check whether the status of the instance changes to Changing class. You can also view the change task at Task Center.

    • Once the change operation is performed, it cannot be undone. To change the class again, submit another request after the class change is complete.
    • Node class can be upgraded or downgraded.
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0004.html b/docs/ddm/umn/ddm_06_0004.html new file mode 100644 index 00000000..1d9a4ba5 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0004.html @@ -0,0 +1,17 @@ + + +

Restarting a DDM Instance

+
+ + diff --git a/docs/ddm/umn/ddm_06_0005.html b/docs/ddm/umn/ddm_06_0005.html new file mode 100644 index 00000000..68a18b54 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0005.html @@ -0,0 +1,16 @@ + + +

Deleting a DDM Instance

+

You can delete instances that are no longer needed.

+

Precautions

  • Deleted instances cannot be recovered. Exercise caution when performing this operation.
  • Deleting a DDM instance will not affect its associated RDS instances.
  • Deleting a DDM instance involves deleting its associated schemas and DDM accounts.
  • If you need to delete data stored on the associated data nodes when deleting a DDM instance, select Delete data on data nodes.
+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to delete and choose More > Delete in the Operation column.
  2. In the displayed dialog box, click Yes.

    To delete data stored on the associated data nodes, select Delete data on data nodes.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0006.html b/docs/ddm/umn/ddm_06_0006.html new file mode 100644 index 00000000..095093a5 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0006.html @@ -0,0 +1,55 @@ + + +

Creating a Schema

+

Prerequisites

  • You have logged in to the DDM console.
  • The DDM instance is in the Running state.
  • Do not modify or delete the internal accounts (DDMRW*, DDMR*, and DDMREP*) created on data nodes. Otherwise, services will be affected.
    • The internal account name is in the format: Fixed prefix (such as DDMRW, DDMR, or DDMREP) + Hash value of the data node ID.
    • A random password is generated, which contains 16 to 32 characters.
    • All instances associated with one schema must have the same major MySQL version.
    • Multiple schemas can be created in a DDM instance and associated with the same data node. One DDM instance can be associated with either RDS for MySQL or GaussDB(for MySQL) instances, but not both.
    • One data node cannot be associated with schemas in different DDM instances.
    • If you create a sharded schema, more than one shard will be generated in the schema. Shard names follow the rule: <schemaname>_<number>. <number> here indicates a four-digit number starting from 0000. This number will be incremented by one. For example, if a schema name is db_cbb5 and there are 2 shards, the shard names are db_cbb5_0000 and db_cbb5_0001.
    • Read-only instances cannot be associated with the schema as data nodes.
    +
    +
+
+

Procedure

  1. In the navigation pane, choose Instances. In the instance list, locate the DDM instance that you want to create a schema for and click Create Schema in the Operation column.
  2. On the Create Schema page, set required parameters by referring to Table 1, and click Next.

    + +
    + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Parameter

    +

    Description

    +

    Sharding

    +
    • Sharded: indicates that one schema can be associated with multiple data nodes, and all shards will be evenly distributed across the nodes.
    • Unsharded: indicates that one schema can be associated with only one data node, and only one shard can be created on the RDS instance.
    +

    Schema

    +

    The name contains 2 to 48 characters and must start with a lowercase letter. Only lowercase letters, digits, and underscores (_) are allowed.

    +

    Account

    +

    The DDM account that needs to be associated with the schema.

    +

    Data Nodes

    +

    Select only the data nodes that are in the same VPC as your DDM instance and not in use by other DDM instances. DDM will create databases on the selected data nodes without affecting their existing databases and tables.

    +

    Shards

    +

    The total shards are the shards on all data nodes. There cannot be more data nodes than there are shards in the schema. Each data node has to have at least one shard assigned. Recommended shards per data node: 8 to 64.

    +
    +
    +

  3. Enter a database account with the required permissions and click Test Connection.

    Required permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER WITH GRANT OPTION

    +

    You can create a database account for the RDS for MySQL instance and assign it the above permissions in advance.

    +
    +

  4. After the test becomes successful, click Finish.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0007.html b/docs/ddm/umn/ddm_06_0007.html new file mode 100644 index 00000000..409bba73 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0007.html @@ -0,0 +1,19 @@ + + +

Importing Schema Information

+

Scenarios

When you deploy DR or migrate data across regions, you can import schema information in destination DDM instances. The imported information includes schema information and shard information, excluding service data and index data.

+
+

Precautions

The destination DDM instance has no schemas with the same name.

+
+

Procedure

  1. Log in to the DDM console, in the instance list, locate the DDM instance that you want to import schema information into and click its name.
  2. On the displayed page, in the navigation pane, choose Schemas.
  3. On the displayed page, click Import Schema Information.
  4. On the displayed page, click Select File to select the required JSON file which has been exported in Exporting Schema Information.
  5. Select the required data nodes, enter a database account with required permissions, and click Finish.

    • The number of selected data nodes is the same as the number of data nodes imported into the DDM instance.
    • Required permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER WITH GRANT OPTION

      You can create a database account for the RDS for MySQL instance and assign it the above permissions in advance.

      +
    +
    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0011.html b/docs/ddm/umn/ddm_06_0011.html new file mode 100644 index 00000000..d5e6b4b8 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0011.html @@ -0,0 +1,16 @@ + + +

Scaling Out a DDM Instance

+

Scenarios

As service data increases, you can scale out a DDM instance by adding nodes to improve service stability.

+
  • Scale out your DDM instance during off-peak hours.
  • Make sure that the associated data nodes are normal and not undergoing other operations.
  • Each DDM instance supports up to 32 nodes.
  • After a read-only group is created, the entry for adding nodes will be moved to the operation column of the group.
+
+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to scale out and click its name. Click Scale Out.
  2. On the displayed page, view the current instance configuration, select the required AZ, and specify the number of new nodes.
  3. Click Next.
  4. On the displayed page, click Submit if all configurations are correct.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0012.html b/docs/ddm/umn/ddm_06_0012.html new file mode 100644 index 00000000..20a55f3b --- /dev/null +++ b/docs/ddm/umn/ddm_06_0012.html @@ -0,0 +1,21 @@ + + +

Splitting Read and Write Requests

+

Read/write splitting offloads read requests from primary instances to read replicas on a data node at a ratio, improving processing of read/write transactions. This function is transparent to applications, and you do not need to modify service code. Configure read weights of primary instances and their read replicas on the DDM console, and read traffic will be distributed at the preset ratio and write traffic will be forwarded to the primary instances by default. The ratio is generally based on service requirements and loads of associated data nodes.

+

Data is asynchronously replicated from the primary instance to read replicas, and there is a delay between them in milliseconds. Set weights of the primary instance and its read replicas to 0 and 100, respectively, that is, distribute all read requests to read replicas if sub-second latency is allowed for read requests and these requests require high query costs that may impact read/write transactions. In other scenarios, adjust the ratio based on service requirements.

+

Precautions

  • The SELECT statements that contain hints or modify data in transactions are all executed by the primary instances.
  • If the associated primary instance becomes faulty and parameter Seconds_Behind_Master on its read replicas is set to NULL, read-only requests are still forwarded to the primary instance. Recover the faulty instance as soon as possible.
+
+

Prerequisites

  • You have created a DDM instance and a data node with read replicas.
  • You have created a schema.
+
+

Procedure

  1. On the Instances page, locate the required DDM instance and click its name.
  2. In the navigation pane, choose Data Nodes.
  3. On the displayed page, locate the target instance and click Configure Read Weight in the Operation column. The read weight can be 0 to 100.

    • If you create a read replica for the associated instance, the read replica will handle all separated read requests by default. To re-assign read/write requests, you can configure read weights of the associated instance and its read replica.
    • After the read weights are configured, the primary instance and its read replica will handle read requests according to the following formulas:
      • Primary instance: Read weight of primary instance/Total read weights of primary instance and read replica
      • Read replica: Read weight of read replica/Total read weights of primary instance and read replica
      +

      For example: If an RDS for MySQL instance contains one primary instance and one read replica and read weights of the primary instance and its read replica are 20 and 80 respectively, they will process read requests in the ratio of 1:4. In other words, the primary instance processes 1/4 of read requests and read replica processes 3/4. Write requests are automatically routed to the primary instance.

      +
    +

  4. After the read weights are configured successfully, you can view the weights on the Data Nodes page.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0014.html b/docs/ddm/umn/ddm_06_0014.html new file mode 100644 index 00000000..66b2096f --- /dev/null +++ b/docs/ddm/umn/ddm_06_0014.html @@ -0,0 +1,16 @@ + + +

Scaling In a DDM Instance

+

Scenarios

This section describes how to scale in a DDM instance as service data volume decreases.

+
+
  • Scale in your DDM instance during off-peak hours.
  • Make sure that the associated data nodes are normal and not undergoing other operations.
  • At least one node should be left for a DDM instance.
+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to scale in and click its name. Click Scale In.
  2. On the displayed page, view the current instance configuration and specify the number of nodes to be removed.
  3. Click Next.
  4. On the displayed page, click Submit if all configurations are correct.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0015.html b/docs/ddm/umn/ddm_06_0015.html new file mode 100644 index 00000000..fa311cb6 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0015.html @@ -0,0 +1,16 @@ + + +

Exporting Schema Information

+

Scenarios

When you deploy DR or migrate data across regions, you can export schema information from source DDM instances. The export information includes schema information and shard information, excluding service data and index data.

+
+

Prerequisites

There are schemas available in the DDM instance that you want to export schema information from.

+
+

Procedure

  1. Log in to the DDM console; in the instance list, locate the required DDM instance and click its name.
  2. On the displayed page, in the navigation pane, choose Schemas.
  3. On the displayed page, click Export Schema Information. All schema information of the current DDM instance is exported as a JSON file.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0020.html b/docs/ddm/umn/ddm_06_0020.html new file mode 100644 index 00000000..7aff3dfa --- /dev/null +++ b/docs/ddm/umn/ddm_06_0020.html @@ -0,0 +1,15 @@ + + +

Changing a Parameter Template

+

Prerequisites

You have logged in to the DDM console.

+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to change a parameter template for and choose More > Change Parameter Template in the Operation column.

    The Change Parameter Template dialog box is displayed.

    +

  2. Select the required parameter template and click OK.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0021.html b/docs/ddm/umn/ddm_06_0021.html new file mode 100644 index 00000000..6136362d --- /dev/null +++ b/docs/ddm/umn/ddm_06_0021.html @@ -0,0 +1,23 @@ + + +

Administrator Account

+

Overview

DDM allows you to create an administrator account for your instance. This account has the superuser permissions to modify permissions of accounts displayed on the Accounts page. The administrator account has read/write permissions for all schemas and tables by default, including schemas being created. Once an administrator account is created, it cannot be deleted.

+

You can configure an administrator account when you create an instance, or create one on the instance details page after your instance has been created.

+
+

Prerequisites

The kernel version of DDM instances must be 3.0.9 or later.

+
+

Precautions

  • After an administrator account is created, its username cannot be modified.
  • The administrator account cannot be duplicated with any DDM account on the Accounts page.
  • If the administrator account is modified on the management control plane, all its original permissions are cleared, and the new permissions assigned take effect.
+
+

Scenarios

+
+

Resetting the Administrator Password

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. In the instance list, locate the DDM instance whose administrator password you want to reset and click its name. Click Reset Password.
  5. In the displayed dialog, enter a new password and confirm the password. Click Yes.
  6. Wait the request is submitted.
+
+

Creating an Administrator Account

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. In the instance list, locate the DDM instance that you want to create an administrator account for and click its name. Click Create Administrator.
  5. In the displayed dialog box, enter an administrator, password, and confirm password. Click Yes.
  6. Wait the request is submitted.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0025.html b/docs/ddm/umn/ddm_06_0025.html new file mode 100644 index 00000000..a2df65a2 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0025.html @@ -0,0 +1,17 @@ + + +

Splitting Read-only and Read-Write Services

+
+ + diff --git a/docs/ddm/umn/ddm_06_0026.html b/docs/ddm/umn/ddm_06_0026.html new file mode 100644 index 00000000..7e0a5471 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0026.html @@ -0,0 +1,16 @@ + + +

What Is Read-only Service Isolation?

+

Overview

DDM provides read-only service isolation by grouping nodes of a DDM instance to provide physically separated compute and storage resources.

+

DDM provides two types of node groups, read-only and read/write, which handle read-only and read/write requests, respectively. By default, read-only groups handle read requests sent to read replicas at the storage layer, relieving the read pressure of core workloads in the DDM cluster. Read-only and read/write groups use the same data. When there are a large number of concurrent requests, read-only groups handle complex queries or extract data offline from read replicas of data nodes to reduce query response time and provide faster access. It is easy to use node groups without the need of establishing complex links or synchronizing data.

+
If you want read-only groups to handle SQL queries, make sure that the associated data node has available read replicas. If there are no available read replicas, the following error messages may be returned:
  • backend database connection error;
  • query has been canceled
  • execute error: No read-only node
+
+
+
+
+ + diff --git a/docs/ddm/umn/ddm_06_0027.html b/docs/ddm/umn/ddm_06_0027.html new file mode 100644 index 00000000..637605c3 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0027.html @@ -0,0 +1,15 @@ + + +

How Are Read-only Services Split from Read-Write Services

+

Procedure

  1. Log in to the DDM console and choose Instances in the navigation pane. In the instance list, locate the required instance and click its name.
  2. Choose Basic Information in the navigation pane to view node information.
  3. In the Node Information area, click Create Group. After a group is created, existing nodes are included into another read/write group by default, responsible for handling read/write requests to core services.

    • One DDM instance supports multiple read-only groups. Each group contains at least 2 nodes, and each instance contains up to 32 nodes.
    • One node belongs to only one group, and its group cannot be changed once determined. Nodes in the same group must be of the same node class.
    +
    +

  4. On the Create Group page, select the required role, VPC, and node class, specify the quantity of new nodes, and click Next.
  5. Confirm the information and click Next and then Submit.
  6. After the creation is complete, check whether the original Node Information area becomes the Group Information area. Then you can manage nodes in the group.

    To delete a group of a DDM instance, locate the group that you want to delete and click Delete. The corresponding floating IP address becomes invalid once the group is deleted. This may affect your services. Retain at least one read/write group.

    +

+
+
+ + diff --git a/docs/ddm/umn/ddm_06_0028.html b/docs/ddm/umn/ddm_06_0028.html new file mode 100644 index 00000000..079a2a12 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0028.html @@ -0,0 +1,17 @@ + + +

Restarting a DDM Instance

+

You may need to restart an instance to perform maintenance.

+

The DDM instance is not available during restart, and the restart operation cannot be undone. Exercise caution when performing this operation.

+

Prerequisites

  • You have logged in to the DDM console.
  • The instance is in the Available status.
+
+

Procedure

  1. In the instance list, locate the DDM instance that you want to restart and choose More > Restart in the Operation column.
  2. In the displayed dialog box, click Yes.
  3. Wait until the instance is restarted.
+
+

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0029.html b/docs/ddm/umn/ddm_06_0029.html new file mode 100644 index 00000000..6e7f1fd6 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0029.html @@ -0,0 +1,18 @@ + + +

Restarting a Node

+

You can restart a single node of your DDM instance.

+

An instance is not available when one of its nodes is being restarted. The restart operation cannot be undone. Exercise caution when you restart an instance node.

+

Prerequisites

  • You have logged in to the DDM console.
  • There is a DDM instance available, and its nodes are normal.
+
+

Procedure

  1. In the instance list, locate the DDM instance whose node you want to restart and click its name.
  2. In the Node Information area, locate the target node and click Restart in the Operation column.
  3. In the displayed dialog box, click Yes.
  4. Wait until the node is restarted.
+
+

+

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0035.html b/docs/ddm/umn/ddm_06_0035.html new file mode 100644 index 00000000..4961a41e --- /dev/null +++ b/docs/ddm/umn/ddm_06_0035.html @@ -0,0 +1,17 @@ + + +

Configuring Access Control

+

Scenarios

DDM supports load balancing by default, but some regions may not support. If an application accesses DDM using a private IP address, there are no traffic restrictions. To control access, you need to configure access control for your DDM instance. The security group is still valid for access requests directly sent to DDM nodes.

+
+

Procedure

  1. Log in to the DDM console.
  2. On the Instances page, locate the required instance and click its name.
  3. On the displayed page, toggle on Access Control.

    • If the DDM instance has only one group, in the Network Information area, click on the right of button Access Control.
      Figure 1 Enabling access control for a single group
      +
    • If the DDM instance has multiple groups, the access control button is moved to the group information list. On the Basic Information page, in the group list, click in the Access Control column.
      Figure 2 Enabling access control for multiple groups
      +
    +

  4. Click Configure on the right of Access Control. In the Configure Access Control dialog box, specify Access Policy, enter the required IP addresses, and click OK.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0036.html b/docs/ddm/umn/ddm_06_0036.html new file mode 100644 index 00000000..f0c695f3 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0036.html @@ -0,0 +1,17 @@ + + +

Changing a Database Port

+

Scenarios

DDM allows you to change the database port of a DDM instance. After the port is changed, the instance will restart.

+
+

Procedure

  1. Log in to the DDM console, choose Instances in the navigation pane, locate the instance whose database port you want to change, and click its name.
  2. In the Connection Information area on the Basic Information page, click besides Database Port.

    For DDM instances, the database port number ranges from 1025 to 65534 except for ports 1033, 7009, 8888, and 12017 because they are in use by DDM. The default value is 5066.

    +
    • Click .

      Changing the database port requires a restart of the DDM instance. To continue the change, click Yes in the displayed dialog box. To cancel the change, click No.

      +
    • To cancel the change, click .
    +

  3. View the results on the Basic Information page.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0039.html b/docs/ddm/umn/ddm_06_0039.html new file mode 100644 index 00000000..0b99ed37 --- /dev/null +++ b/docs/ddm/umn/ddm_06_0039.html @@ -0,0 +1,17 @@ + + +

Changing the Security Group of a DDM Instance

+

Scenarios

DDM allows you to change the security group of a DDM instance.

+

Changing the security group may disconnect the DDM instance from its associated data nodes.

+
+
+

Procedure

  1. Log in to the DDM console, choose Instances in the navigation pane, locate the instance whose security group you want to change, and click its name.
  2. In the Network Information area on the Basic Information page, click beside field Security Group.

    • Specify a new security group and click .
    • To cancel the change, click .
    +

  3. View the results on the Basic Information page.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_06_0040.html b/docs/ddm/umn/ddm_06_0040.html new file mode 100644 index 00000000..dc72df3a --- /dev/null +++ b/docs/ddm/umn/ddm_06_0040.html @@ -0,0 +1,19 @@ + + + +

Connection Management

+ +

+
+ + + diff --git a/docs/ddm/umn/ddm_06_1000.html b/docs/ddm/umn/ddm_06_1000.html new file mode 100644 index 00000000..4507c195 --- /dev/null +++ b/docs/ddm/umn/ddm_06_1000.html @@ -0,0 +1,42 @@ + + +

Tags

+

Tag Management Service (TMS) enables you to use tags on the console to manage resources. TMS works with other cloud services to manage tags. TMS manages tags globally. Other cloud services manage only their own tags.

+

Precautions

  • A tag consists of a key and value. You can add only one value for each key.
  • Each instance can have up to 20 tags.
+
+

Adding a tag

  1. Log in to the DDM console.
  2. On the Instances page, locate the required instance and click its name.
  3. In the navigation pane on the left, click Tags.
  4. Click Add Tag.
  5. In the displayed dialog box, enter a tag key and value and click OK.

    +

    The tag key and value must comply with the following rules.

    + +
    + + + + + + + + + + +
    Table 1 Parameter description

    Item

    +

    Description

    +

    Tag key

    +

    This parameter is mandatory and cannot be null. The key:

    +
    • Must be unique for each instance.
    • Can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@).
    • Can include 1 to 36 characters.
    • Cannot be an empty string or start with _sys_.
    +

    Tag value

    +
    This parameter is mandatory. The value:
    • Is an empty string by default.
    • Can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@).
    • Can contain 0 to 43 characters.
    +
    +
    +
    +

  6. View and manage the tag on the Tags page.
+
+

Editing a Tag

  1. Log in to the DDM console.
  2. On the Instances page, locate the required instance and click its name.
  3. On the Tags page, locate the tag that you want to edit and click Edit in the Operation column. In the displayed dialog box, change the tag value and click OK.

    Only the tag value can be edited.

    +

  4. View and manage the tag on the Tags page.
+
+

Deleting Tags

  1. Log in to the DDM console.
  2. On the Instances page, locate the required instance and click its name.
  3. In the navigation pane, choose Tags. On the displayed page, locate the tag that you want to delete and click Delete in the Operation column. In the displayed dialog box, click Yes.
  4. Check that the tag is no longer displayed on the Tags page.
+
+

Searching for Instances by Tag

After tags are added, you can search for instances by tag to quickly find specific types of instances.

+
  1. Log in to the DDM console.
  2. On the Instances page, click Search by Tag in the upper right corner of the instance list.
  3. Enter a tag key and a tag value and click Search.
  4. View the instance found.
+
+
+ diff --git a/docs/ddm/umn/ddm_08_0029.html b/docs/ddm/umn/ddm_08_0029.html new file mode 100644 index 00000000..f08c72f0 --- /dev/null +++ b/docs/ddm/umn/ddm_08_0029.html @@ -0,0 +1,45 @@ + + +

Creating a Table

+
  • Do not create tables whose names start with _ddm. DDM manages such tables as internal tables by default
  • Sharded tables do not support globally unique indexes. If the unique key is different from the sharding key, data uniqueness cannot be ensured.
  • The auto-increment key should be a BIGINT value. To avoid duplicate values, do not use TINYINT, SMALLINT, MEDIUMINT, INTEGER, or INT as the auto-increment key.
+
+

Database and Table Sharding

The following is an example statement when HASH is used for database sharding and MOD_HASH for table sharding:

+
CREATE TABLE tbpartition_tb1 (
+id bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary key id',
+name varchar(128),
+PRIMARY KEY(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+DBPARTITION BY HASH(id)
+TBPARTITION BY MOD_HASH(name) tbpartitions 8;
+
+

Database Sharding

The following is an example statement when HASH is used:

+
CREATE TABLE dbpartition_tb1 (
+id bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary key id',
+name varchar(128),
+PRIMARY KEY(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+DBPARTITION BY HASH(id);
+
+

Creating a Broadcast Table

The following is an example statement:

+
CREATE TABLE broadcast_tb1 (
+id bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary key id',
+name varchar(128),
+PRIMARY KEY(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+BROADCAST;
+
+

Creating a Table When Sharding Is not Used

A global sequence can also be specified for an unsharded table, but this function is always ignored. An unsharded table provides auto-increment using auto-increment values of corresponding physical tables.

+

The following is an example statement:

+
CREATE TABLE single_tb1 (
+id bigint NOT NULL AUTO_INCREMENT COMMENT 'Primary key id',
+name varchar(128),
+PRIMARY KEY(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_08_0032.html b/docs/ddm/umn/ddm_08_0032.html new file mode 100644 index 00000000..2b1d27a2 --- /dev/null +++ b/docs/ddm/umn/ddm_08_0032.html @@ -0,0 +1,32 @@ + + +

SHOW PHYSICAL PROCESSLIST

+

Command Format 1:

+

show physical processlist;

+

This command returns the processes that run on the associated RDS instance.

+

Command Format 2:

+

show physical processlist with info;

+

This commands filters out the data records whose info is empty from result sets of command 1 and returns only the data records whose info is not empty.

+

Command Output

+
Figure 1 Command execution effect
+

Output Details:

+

Ip: indicates the IP address of the associated RDS instance.

+

Port: indicates the port number of the associated RDS instance.

+

Instance_id: indicates the ID of the associated RDS instance.

+

Type: master indicates that the associated instance is a primary instance, and readreplica indicates that the associated instance is a read replica.

+

Columns after column Type indicate the information about processes running on the associated RDS instance. Such information is the same as the output of command show processlist executed on the associated RDS instance.

+

Command Format 3:

+

Run the following statement to kill the execution thread on the associated RDS instance:

+

kill physical <physical_thread_id>@<rds_ip>:<rds_port>;

+

physical_thread_id: indicates the ID of the execution thread on the associated RDS instance. You can obtain it from the result set in command 2.

+

rds_ip: indicates the IP address of the associated RDS instance. You can obtain it from the result set in command 2.

+

rds_port: indicates the port number of the associated RDS instance. You can obtain it from the result set in command 2.

+
  • SHOW PHYSICAL PROCESSLIST is available only in kernel 3.0.1 or later.
  • You need to log in to the target DDM instance and execute the preceding commands on it.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_09_0002.html b/docs/ddm/umn/ddm_09_0002.html new file mode 100644 index 00000000..fd93674d --- /dev/null +++ b/docs/ddm/umn/ddm_09_0002.html @@ -0,0 +1,14 @@ + + +

Task Center

+

You can view the progress and results of asynchronous tasks on the Task Center page.

+

The following tasks can be viewed:

+
  • Creating a DDM Instance
  • Deleting a DDM instance
  • Changing node class
  • Scaling out a DDM instance
  • Scaling in a DDM instance
  • Restarting a DDM instance
  • Binding an EIP
  • Unbinding an EIP
  • Restoring a DDM instance
  • Importing schema information
  • Configuring shards
  • Retrying shards configuration
  • Deleting a backup
  • Creating a group
  • Deleting a group
  • Restarting the node
+
+

Procedure

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page and choose Databases > Distributed Database Middleware.
  4. Choose Task Center in the left navigation pane, locate the required task, and view its details.

    • You can locate a task by name, order ID, or instance name/ID, or search for the required task by entering a task name in the search box in the upper right corner.
    • You can click in the upper right corner to search for tasks executed within a specific period. The default time range is seven days.

      All tasks in the list can be retained for up to one month.

      +
    • You can view the tasks that are in the following statuses:
      • Running
      • Completed
      • Failed
      +
    • You can view the task creation and completion time.
    +

+
+
+ diff --git a/docs/ddm/umn/ddm_10_0002.html b/docs/ddm/umn/ddm_10_0002.html new file mode 100644 index 00000000..efde5e97 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0002.html @@ -0,0 +1,106 @@ + + +

MOD_HASH

+

Application Scenarios

This algorithm applies if you want to route data to different database shards by user ID or order ID.

+
+

Instructions

The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMINT, SMALLINT, TINYINT, or DECIMAL (the precision can be 0).

+
+

Data Routing

The data route depends on the remainder of the sharding key value divided by database or table shards. If the value is a string, convert the string into a hashed value and calculate the data route based on the value.

+

For example, if the sharding key value is 8, MOD_HASH('8') is equivalent to 8 % D. D is the number of database or table shards.

+
+

Calculation Method

Method 1: Use an Integer as the Sharding Key

+ +
+ + + + + + + + + + + + + +
Table 1 Required calculation methods when the sharding key is the integer data type

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Database routing result = Database sharding key value % Database shards

+

Table routing result = Table sharding key value % Table shards

+

Database shard: 16 % 8 = 0

+

Table shard: 16 % 3 = 1

+

Database sharding key = Table sharding key

+

Table routing result = Sharding key value % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

Table shard: 16 % (8 x 3) = 16

+

Database shard: 16/3 = 5

+
+
+

Method 2: Use a String as the Sharding Key

+ +
+ + + + + + + + + + + + + +
Table 2 Required calculation methods when the sharding key is the string data type

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Database routing result = hash(Database sharding key value) % Database shards

+

Table routing result = hash(Table sharding key value) % Table shards

+

+

hash('abc') = 'abc'.hashCode()=96354

+

Database shard: 96354 % 8 = 2;

+

Table shard: 96354 % 3 = 0;

+

Database sharding key = Table sharding key

+

Table routing result = hash(Sharding key value) % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

+

hash('abc') = 'abc'.hashCode()=96354

+

Table shard: 96354 % (8 x 3) = 18

+

Database shard: 18/3 = 6

+
+
+
+

Syntax for Creating Tables

  • Assume that you use field ID as the sharding key to shard databases based on MOD_HASH:
    create table mod_hash_tb(
    +	id int,
    +	name varchar(30) DEFAULT NULL,
    +	create_time datetime DEFAULT NULL,
    +	primary key(id)
    +) ENGINE = InnoDB DEFAULT CHARSET = utf8 dbpartition by mod_hash(ID);
    +
+
  • Assume that you use field ID as the sharding key to shard databases and tables based on MOD_HASH:
    create table mod_hash_tb(
    +	id int,
    +	name varchar(30) DEFAULT NULL,
    +	create_time datetime DEFAULT NULL,
    +	primary key(id)
    +) ENGINE = InnoDB DEFAULT CHARSET = utf8
    +dbpartition by mod_hash(ID) tbpartition by mod_hash(ID) tbpartitions 4;
    +
+
+

Precautions

The MOD_HASH algorithm is a simple way to find the remainder of the sharding key value divided by shards. This algorithm features even distribution of sharding key values to ensure even results.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0004.html b/docs/ddm/umn/ddm_10_0004.html new file mode 100644 index 00000000..d159c123 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0004.html @@ -0,0 +1,58 @@ + + +

RIGHT_SHIFT

+

Application Scenarios

This algorithm applies if a large difference appears in high-digit part but a small difference in low-digit part of sharding key values. Using this algorithm ensures uniform distribution of remainders calculated from sharding key values. Therefore, data is evenly routed to different shards.

+
+

Instructions

The sharding key value is an integer.

+
+

Data Routing

The data route depends on the remainder of the new sharding key value divided by the number of database or table shards. To change the sharding key value, you need to convert the value into a binary number and right shift its bits to gain a new binary number. The number of moved bits is specified in DDL statements. Then, convert the new binary number into a decimal number. This decimal number is the changed sharding key value.

+
+

Calculation Method

+
+ + + + + + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Database routing result = Database sharding key value % Database shards

+

Table routing result = Table sharding key value % Table shards

+

Database shard: (123456 >> 4) % 8 = 4

+

Table shard: (123456 >> 4) % 3 = 0

+

Database sharding key = Table sharding key

+

Database routing result = Sharding key value % Database shards

+

Table routing result = (Sharding key value % Database shards) x Table shards + (Sharding key value / Database shards) % Table shards

+

Database shard: (123456 >> 4) % 8 = 4

+

Table table: ((123456 >> 4) % 8) x 3 + ((123456 >> 4) / 8) % 3 = 13

+
+
+
+

Syntax for Creating Tables

create table RIGHT_SHIFT(
+	id int,
+	name varchar(30) DEFAULT NULL,
+	create_time datetime DEFAULT NULL,
+	primary key(id)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8
+dbpartition by RIGHT_SHIFT(id, 4)
+tbpartition by RIGHT_SHIFT(id, 4) tbpartitions 2;
+
+

Precautions

  • The number of shifts cannot exceed the number of bits occupied by the integer type.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0006.html b/docs/ddm/umn/ddm_10_0006.html new file mode 100644 index 00000000..bb671485 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0006.html @@ -0,0 +1,75 @@ + + +

YYYYMM

+

Application Scenarios

This algorithm applies when data is routed to shards by year and month. You are advised to use this algorithm together with tbpartition YYYYMM(ShardKey).

+
+

Instructions

The sharding key must be DATE, DATETIME, or TIMESTAMP.

+
+

Data Routing

The data route depends on the remainder of the sharding key hash value divided by database shards. Enter the year and month into the hash function to obtain the hash value.

+

For example, YYYYMM ('2012-12-31 12:12:12') is equivalent to (2012 x 12 + 12) % D. D is the number of database or table shards.

+
+

Calculation Method

+
+ + + + + + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Sharding key: yyyy-MM-dd

+

Database routing result = (yyyy x 12 + MM) % Database shards

+

Table routing result = (yyyy x 12 + MM) % Table shards

+

Sharding key: 2012-11-20

+

Database shard: (2012 x 12 + 11) % 8 = 3

+

Table shard: (2012 x 12 + 11) % 3 = 2

+

Database sharding key = Table sharding key

+

Sharding key: yyyy-MM-dd

+

Table routing result = (yyyy x 12 + MM) % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

Sharding key: 2012-11-20

+

Table shard: (2012 x 12 + 11) % (8 x 3) = 11

+

Database shard: 11 % 3 = 3

+
+
+
+

Syntax for Creating Tables

Assume that there are already 8 physical databases in your database instance. Now you want to shard data by year and month and require that data of the same month be stored in one table and each month within two years should correspond to an independent table, so that you can query data from a physical table in a physical database by the sharding key.

+

In this scenario, you can select the YYYYMM algorithm. Then create 24 physical tables for 24 months of the two years, each month corresponding to one table. Since you already have 8 physical databases, three physical tables should be created in each of them. The following is an example SQL statement for creating a table:

+
create table test_yyyymm_tb(
+	id int,
+	name varchar(30) DEFAULT NULL,
+	create_time datetime DEFAULT NULL,
+	primary key(id)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8
+dbpartition by YYYYMM(create_time)
+tbpartition by YYYYMM(create_time) tbpartitions 3;
+

Syntax for creating tables when only database sharding is required:

+
create table YYYYMM(
+	id int,
+	name varchar(30) DEFAULT NULL,
+	create_time datetime DEFAULT NULL,
+	primary key(id)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8
+dbpartition by YYYYMM(create_time);
+
+

Precautions

  • This YYYYMM algorithm does not apply if each month of a year corresponds to one database shard. The number of tables must be fixed if database and table sharding is both required.
  • Data of the same month in different years may be routed to the same database or table. The result depends on the number of tables.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0007.html b/docs/ddm/umn/ddm_10_0007.html new file mode 100644 index 00000000..6fb83312 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0007.html @@ -0,0 +1,77 @@ + + +

YYYYDD

+

Application Scenarios

This algorithm applies when data is routed to shards by year and day. You are advised to use this algorithm together with tbpartition YYYYDD(ShardKey).

+
+

Instructions

The sharding key must be DATE, DATETIME, or TIMESTAMP.

+
+

Data Routing

Use the hash function and enter the year and the day of the year specified in the sharding key value to calculate the hash value. The data route depends on the remainder of the hash value divided by the number of database or table shards.

+

For example, YYYYDD('2012-12-31 12:12:12') is equivalent to (2012 x 366 + 366) % D. D is the number of database or table shards.

+

2012-12-31 is the 366th day of 2012, so the calculation is 2012 x 366 + 366.

+
+
+

Calculation Method

+
+ + + + + + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Sharding key: yyyy-MM-dd

+

Database routing result = (yyyy x 366 + Day of the current year) % Database shards

+

Table routing result = (yyyy x 366 + Day of the current year) % Table shards

+

Sharding key: 2012-12-31

+

Database shard: (2012 x 366 + 366) % 8 = 6

+

Table shard: (2012 x 366 + 366) % 3 = 0

+

Database sharding key = Table sharding key

+

Sharding key: yyyy-MM-dd

+

Table routing result = (yyyy x 366 + Day of the current year) % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

Sharding key: 2012-12-31

+

Database shard: (2012 x 366 + 366) % (8 x 3) = 6

+

Database shard: 6/3 = 2

+
+
+
+

Syntax for Creating Tables

Assume that there are already 8 physical databases in your database instance. Now you want to shard data by year and day and require that data of the same day be stored in one table and each day within two years should correspond to an independent table, so that you can query data from a physical table in a physical database by the sharding key.

+

In this scenario, you can select the YYYYDD algorithm. Then create at least 732 physical tables for 732 days of the two years (366 days for one year), each day corresponding to one table. Since you already have 8 physical databases, 92 (732/8 = 91.5, rounded up to 92) physical tables should be created in each of them. The number of tables should be an integral multiple of databases. The following is an example SQL statement for creating a table:

+
create table test_yyyydd_tb (    
+        id int, 
+        name varchar(30) DEFAULT NULL,  
+        create_time datetime DEFAULT NULL,
+        primary key(id)
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 
+    dbpartition by YYYYDD(create_time) 
+    tbpartition by YYYYDD(create_time) tbpartitions 92;
+

Syntax for creating tables when only database sharding is required:

+
create table YYYYDD(
+	id int,
+	name varchar(30) DEFAULT NULL,
+	create_time datetime DEFAULT NULL,
+	primary key(id)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8
+dbpartition by YYYYDD(create_time);
+
+

Precautions

  • This YYYYDD algorithm does not apply if each day of a year corresponds to one database shard. The number of tables must be fixed if database and table sharding is both required.
  • Data of the same day in different years may be routed to the same shard. The result depends on the number of tables.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0008.html b/docs/ddm/umn/ddm_10_0008.html new file mode 100644 index 00000000..41f8a9ab --- /dev/null +++ b/docs/ddm/umn/ddm_10_0008.html @@ -0,0 +1,77 @@ + + +

YYYYWEEK

+

Application Scenarios

This algorithm applies when data is routed to shards by week. You are advised to use this algorithm together with tbpartition YYYYWEEK(ShardKey).

+
+

Instructions

The sharding key must be DATE, DATETIME, or TIMESTAMP.

+
+

Data Routing

Use the hash function and enter the year and the week of the year specified in the sharding key value to calculate the hash value. The data route depends on the remainder of the hash value divided by the number of database or table shards.

+

For example, YYYYWEEK('2012-12-31 12:12:12') is equivalent to (2013 x 54 + 1) % D. D is the number of database or table shards.

+
  • 2012-12-31 is the first week of 2013, so the calculation is 2013 x 54 + 1.
  • For details on how to use YYYYWEEK, see YEARWEEK Function.
+
+
+

Calculation Method

+
+ + + + + + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Sharding key: yyyy-MM-dd

+

Database routing result = (yyyy x 54 + Week of the current year) % Database shards

+

Table routing result = (yyyy x 54 + Week of the current year) % Table shards

+

Sharding key: 2012-12-31

+

Database shard: (2013 x 54 + 1) % 8 = 7

+

Table shard: (2013 x 54 + 1) % 3 = 1

+

Database sharding key = Table sharding key

+

Sharding key: yyyy-MM-dd

+

Table routing result = (yyyy x 54 + Week of the current year) % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

Sharding key: 2012-12-31

+

Database shard: (2013 x 54 + 1) % (8 x 3) = 7

+

Database shard: 7/3 = 2

+
+
+
+

Syntax for Creating Tables

Assume that there are already 8 physical databases in your database instance. Now you want to shard data by week and require that data of the same week be stored in one table and each week within two years should correspond to an independent table, so that you can query data from a physical table in a physical database by the sharding key.

+

In this scenario, you can select the YYYYWEEK algorithm. Then create at least 106 physical tables for 53 (rounded off) weeks of the two years, each week corresponding to one table. Since you already have 8 physical databases, 14 (14 x 8 = 112 > 106) physical tables should be created in each of them. The number of tables should be an integral multiple of databases. The following is an example SQL statement for creating a table:

+
create table test_yyyymm_tb(
+	id int,
+	name varchar(30) DEFAULT NULL,
+	create_time datetime DEFAULT NULL,
+	primary key(id)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8
+dbpartition by YYYYWEEK(create_time)
+tbpartition by YYYYWEEK(create_time) tbpartitions 14;
+

Syntax for creating tables when only database sharding is required:

+
create table YYYYWEEK(
+	id int,
+	name varchar(30) DEFAULT NULL,
+	create_time datetime DEFAULT NULL,
+	primary key(id)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8
+dbpartition by YYYYWEEK(create_time);
+
+

Precautions

  • This YYYYWEEK algorithm does not apply if each week of a year corresponds to one database shard. The number of tables must be fixed if database and table sharding is both required.
  • Data of the same week in different years may be routed to the same shard.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0012.html b/docs/ddm/umn/ddm_10_0012.html new file mode 100644 index 00000000..0e604e93 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0012.html @@ -0,0 +1,121 @@ + + +

HASH

+

Application Scenarios

This algorithm features even distribution of data and sharding tables. Arithmetic operators such as equality (=) and IN operators are often used in SQL queries.

+
+

Instructions

The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMINT, SMALLINT, TINYINT, or DECIMAL (the precision can be 0). The sharding key must be DATE, DATETIME, or TIMESTAMP if you use HASH together with date functions.

+
+

Data Routing

Determine the range of each database or table shard using 102400.

+

For example, if there are 8 shards in each schema, use formula 102400/8 = 12800 to calculate the range of each shard as follows: 0=[0,12799], 1=[12800,25599], 2=[25600,38399], 3=[38400,51199], 4=[51200,63999], 5=[64000,76799], 6=[76800,89599], and 7=[89600,102399].

+

To determine the route, calculate CRC32 value based on the sharding key value and divide the CRC value by 102400. Then check which range the remainder belongs to.

+
+

Calculation Method

Method 1: Use a Non-date Sharding Key

+ +
+ + + + + + + + + +
Table 1 Required calculation methods when the sharding key is not the DATE type

Condition

+

Calculation Method

+

Example

+

Non-date sharding key

+

Database routing result = crc32(Database sharding key) % 102400

+

Table routing result = crc32(Table sharding key) % 102400

+

Database/Table shard: crc32(16) % 102400 = 49364;

+

49364 belongs to range 3=38400-51199, so data is routed to shard 3.

+
+
+

Method 2: Use a Date Sharding Key

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 2 Supported date functions

Date Function

+

Calculation Method

+

Example

+

year()

+

year(yyyy-MM-dd)=yyyy

+

year('2019-10-11')=2019

+

month()

+

month(yyyy-MM-dd)=MM

+

month('2019-10-11')=10

+

weekofyear()

+

weekofyear(yyyy-MM-dd)=Week number of the current year

+

weekofyear ('2019-10-11')=41

+

day()

+

day(yyyy-MM-dd)=dd

+

day ('2019-10-11')=11

+
+
+ +
+ + + + + + + + + +
Table 3 Required calculation methods when the sharding key is the DATE type

Condition

+

Calculation Method

+

Example

+

Date sharding key

+

Database routing result = crc32(Date function(Database sharding key)) % 102400

+

Table routing result = crc32(Date function(Database sharding key)) % 102400

+

Database/Table shard: crc32(year('2019-10-11')) % 102400 = 5404;

+

5404 belongs to range 0=0-12799, so data is routed to shard 0.

+
+
+
+

Syntax for Creating Tables

  • Assume that you use field ID as the sharding key and the HASH algorithm to shard databases:
    create table hash_tb (
    +    id int,
    +    name varchar(30) DEFAULT NULL,  
    +    create_time datetime DEFAULT NULL,
    +    primary key(id)
    +) ENGINE=InnoDB DEFAULT CHARSET=utf8 dbpartition by hash (ID);
    +
  • Assume that you use field ID as the sharding key and the hash algorithm to shard databases and tables:
    create table mod_hash_tb (
    +    id int,
    +    name varchar(30) DEFAULT NULL,  
    +    create_time datetime DEFAULT NULL,
    +    primary key(id)
    +) ENGINE=InnoDB DEFAULT CHARSET=utf8 
    +dbpartition by hash (ID)
    +tbpartition by hash (ID) tbpartitions 4;
    +
+
+

Precautions

None

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0013.html b/docs/ddm/umn/ddm_10_0013.html new file mode 100644 index 00000000..47312558 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0013.html @@ -0,0 +1,120 @@ + + +

Range

+

Application Scenarios

This algorithm applies to routing data in different ranges to different shards. Less-than signs (<), greater-than signs (>), and BETWEEN ... AND ... are frequently used in SQL queries.

+
+

Instructions

The sharding key can only be an integer, a date, or used in combination with a date function. If a date function is used, the sharding key must be DATE, DATETIME, or TIMESTAMP.

+
+

Data Routing

Data is routed to different shards by the sharding key value based on algorithm metadata rules.

+

Metadata needs to be set when a table is created. For example, if there are eight shards in one schema, the metadata range can be [1-2]=0, [3-4]=1, [5-6]=2, [7-8]=3, [9-10]=4, [11-12]=5, [13-14]=6, and default=7. Data is routed to shards by the sharding key value based on the range.

+
+

Calculation Method

Method 1: Use an Integer as the Sharding Key

+ +
+ + + + + + + + + +
Table 1 Required calculation methods when the sharding key is the integer data type

Condition

+

Calculation Method

+

Example

+

Integer sharding keys

+

Database routing result: Data is routed to different shards based on the sharding key and the preset metadata range.

+

Data is routed to shard1 if the sharding key value is 3 and the preset metadata range is [3-4].

+
+
+

Method 2: Use a Date as the Sharding Key

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 2 Supported date functions

Date Function

+

Calculation Method

+

Example

+

year()

+

year(yyyy-MM-dd)=yyyy

+

year('2019-10-11')=2019

+

month()

+

month(yyyy-MM-dd)=MM

+

month('2019-10-11')=10

+

weekofyear()

+

weekofyear(yyyy-MM-dd)=Week number of the current year

+
NOTE:

The Weekofyear() function is used to return the week number of a specific date represented by the date parameter in a year. For details, see WEEK.

+
+

weekofyear ('2019-10-11')=41

+

day()

+

day(yyyy-MM-dd)=dd

+

day ('2019-10-11')=11

+
+
+ +
+ + + + + + + + + +
Table 3 Calculation methods

Condition

+

Calculation Method

+

Example

+

Date sharding key

+

Database routing: Data is routed to different database shards based on the date function (database sharding key value) and the preset metadata range.

+

Data is routed to shard 4 based on the metadata range 9–10 when the sharding key value is 10: month(2019-10-11)=10 belongs to [9–10]=4.

+
+
+
+

Syntax for Creating Tables

create table range_tb(
+    id int,
+    name varchar(30) DEFAULT NULL,
+    create_time datetime DEFAULT NULL,
+    primary key(id)
+    )
+dbpartition by range(id)
+{     
+    1-2=0,
+    3-4=1, 
+    5-6=2, 
+    7-8=3, 
+    9-10=4, 
+    11-12=5,
+    13-14=6,
+    default=7 
+};
+
+

Precautions

None

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0014.html b/docs/ddm/umn/ddm_10_0014.html new file mode 100644 index 00000000..5aed75c9 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0014.html @@ -0,0 +1,49 @@ + + +

MM

+

Application Scenarios

This algorithm applies if you want to shard data by month. One table shard for one month is recommended, and its name is the month number.

+
+

Instructions

  • The sharding key must be DATE, DATETIME, or TIMESTAMP.
  • This algorithm can be used only for table sharding. It cannot be used for database sharding.
+
+

Data Routing

Use the month number in the sharding key value to find the remainder. This remainder determines which table shard your data is routed to and serves as the name suffix of each table shard.

+

For example, if the sharding key value is 2019-01-15, the calculation of the table shard is: Month mod Shards or 1 mod 12 = 1.

+
+

Calculation Method

+
+ + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

None

+

Table routing result = Table sharding key value % Table shards

+

Sharding key value: 2019-01-15

+

Table shard: 1 mod 12 = 1

+
+
+
+

Syntax for Creating Tables

create table test_mm_tb (    
+    id int, 
+    name varchar(30) DEFAULT NULL,  
+    create_time datetime DEFAULT NULL,
+    primary key(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 
+dbpartition by MOD_HASH(id) 
+tbpartition by MM(create_time) tbpartitions 12;
+
+

Precautions

Table shards in each database shard cannot exceed 12 because there are only 12 months a year.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0015.html b/docs/ddm/umn/ddm_10_0015.html new file mode 100644 index 00000000..68a43bb8 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0015.html @@ -0,0 +1,49 @@ + + +

DD

+

Application Scenarios

This algorithm applies if you want to shard data by date. One table shard for one day is recommended, and its name is the day number.

+
+

Instructions

  • The sharding key must be DATE, DATETIME, or TIMESTAMP.
  • This algorithm can be used only for table sharding. It cannot be used for database sharding.
+
+

Data Routing

Use the day number in the sharding key value to find the remainder. This remainder determines which table shard your data is routed to and serves as the name suffix of the table shard.

+

For example, if the sharding key value is 2019-01-15, the calculation of the table shard is: Day number in a month mod Table shards, that is, 15 mod 31 = 15.

+
+

Calculation Method

+
+ + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

None

+

Table routing result = Table sharding key value % Table shards

+

Sharding key value: 2019-01-15

+

Table shard: 15 mod 31 = 15

+
+
+
+

Syntax for Creating Tables

create table test_dd_tb (    
+    id int, 
+    name varchar(30) DEFAULT NULL,  
+    create_time datetime DEFAULT NULL,
+    primary key(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 
+dbpartition by MOD_HASH(id) 
+tbpartition by DD(create_time) tbpartitions 31;
+
+

Precautions

Table shards in each database shard cannot exceed 31 because there are at most 31 days in a month.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0016.html b/docs/ddm/umn/ddm_10_0016.html new file mode 100644 index 00000000..c1865568 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0016.html @@ -0,0 +1,49 @@ + + +

MMDD

+

Application Scenarios

This algorithm applies when you want to shard data by day in a year. One table shard for one day (at most 366 days in a year) is recommended.

+
+

Instructions

  • The sharding key must be DATE, DATETIME, or TIMESTAMP.
  • This algorithm can be used only for table sharding. It cannot be used for database sharding.
+
+

Data Routing

Use the day number of a year in the sharding key value to find the remainder. This remainder determines which table shard your data is routed to and serves as the name suffix of each table shard.

+

For example, if the sharding key value is 2019-01-15, the calculation of the table shard is: Day number in a year mod Table shards, that is, 15 mod 366 = 15.

+
+

Calculation Method

+
+ + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

None

+

Table routing result = Table sharding key value % Table shards

+

Sharding key value: 2019-01-15

+

Table shard: 15 % 366= 15

+
+
+
+

Syntax for Creating Tables

create table test_mmdd_tb (    
+    id int, 
+    name varchar(30) DEFAULT NULL,  
+    create_time datetime DEFAULT NULL,
+    primary key(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 
+dbpartition by MOD_HASH(name) 
+tbpartition by MMDD(create_time) tbpartitions 366;
+
+

Precautions

Table shards in each database shard cannot exceed 366 because there are at most 366 days in a year.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0017.html b/docs/ddm/umn/ddm_10_0017.html new file mode 100644 index 00000000..d4dd9309 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0017.html @@ -0,0 +1,55 @@ + + +

WEEK

+

Application Scenarios

This algorithm applies when you want to shard data by day in a week. One table shard for one weekday is recommended.

+
+

Instructions

  • The sharding key must be DATE, DATETIME, or TIMESTAMP.
  • This algorithm can be used only for table sharding. It cannot be used for database sharding.
+
+

Data Routing

Use the day number of a week in the sharding key value to find the remainder. This remainder determines which table shard your data is routed to and serves as the name suffix of each table shard.

+

For example, if the sharding key value is 2019-01-15, the calculation of the table shard is: Day number in a week mod Table shards, that is, 3 mod 7 = 3.

+

For details on how to calculate a weekday for any particular date, see WEEKDAY(date).

+

Run the following SQL statement to query the WEEKDAY value for a specified date:

+
mysql> SELECT WEEKDAY('2019-01-15'); 
+              -> 1
+

If the value returned from the above SQL statement is 1, the weekday for date 2019-01-15 is Tuesday. Sunday is the first day of the week, so Tuesday is the third day of the week.

+
+
+

Calculation Method

+
+ + + + + + + + + +
Table 1 Required calculation methods

Condition

+

Calculation Method

+

Example

+

None

+

Table routing result = Table sharding key value % Table shards

+

Sharding key value: 2019-01-15

+

Table shard: 3 mod 7= 3

+
+
+
+

Syntax for Creating Tables

create table test_week_tb (    
+    id int, 
+    name varchar(30) DEFAULT NULL,  
+    create_time datetime DEFAULT NULL,
+    primary key(id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 
+dbpartition by HASH(name) 
+tbpartition by WEEK(create_time) tbpartitions 7;
+
+

Precautions

Table shards in each database shard cannot exceed 7 because there are 7 days in a week.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_0018.html b/docs/ddm/umn/ddm_10_0018.html new file mode 100644 index 00000000..de90de32 --- /dev/null +++ b/docs/ddm/umn/ddm_10_0018.html @@ -0,0 +1,37 @@ + + +

Sharding Algorithms

+
+
+ + + +
+ diff --git a/docs/ddm/umn/ddm_10_1000.html b/docs/ddm/umn/ddm_10_1000.html new file mode 100644 index 00000000..1285d6fb --- /dev/null +++ b/docs/ddm/umn/ddm_10_1000.html @@ -0,0 +1,19 @@ + + +

Data Node Management

+
+ + diff --git a/docs/ddm/umn/ddm_10_1001.html b/docs/ddm/umn/ddm_10_1001.html new file mode 100644 index 00000000..fe6371d8 --- /dev/null +++ b/docs/ddm/umn/ddm_10_1001.html @@ -0,0 +1,13 @@ + + +

Overview

+

Managing data nodes is managing RDS for MySQL or GaussDB(for MySQL) instances that are associated with your DDM instance. You can view the instance status, storage, class, and read weight, configure read weights, and create read replicas on the data node management page.

+

You can set read weights for multiple data nodes in the list at the same time. If a data node has no read replicas, you cannot set read weights for its primary RDS instance.

+

Synchronize data node changes to your DDM instance after you make changes like adding or deleting a read replica, or changing the connection address, port number, or security group.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_1002.html b/docs/ddm/umn/ddm_10_1002.html new file mode 100644 index 00000000..e8aeab69 --- /dev/null +++ b/docs/ddm/umn/ddm_10_1002.html @@ -0,0 +1,21 @@ + + +

Configuring Read Weights

+

If one DDM instance is associated with multiple data nodes, you can synchronize read weight settings of the first data node to other data nodes.

+

Prerequisites

You have logged in to the DDM console.

+
+

Precautions

The read weight can be 0 to 100.

+
+

Procedure

  1. In the instance list, locate the DDM instance whose data nodes you want to configure read weights for.
  2. Click the instance name to enter the Basic Information page.
  3. In the navigation pane, choose Data Nodes.
  4. Set read weights for associated instances.

    • Set read weights for multiple instances.

      If you want to set read weights for multiple instances at a time, click Configure Read Weight on the Data Nodes page.

      +

      In the displayed dialog box, click Synchronize to apply the read weight of the first instance to other instances. This operation requires that read weights of all instances should be the same. Otherwise, you need to manually configure a read weight for each instance.

      +
    • Set a read weight for an instance.

      If you want to set the read weight of an instance, locate the target instance and click Configure Read Weight in the Operation column.

      +
    +

  5. Click Yes.
  6. After the read weight is configured successfully, you can view the updated read weight on the Data Nodes page.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_10_1003.html b/docs/ddm/umn/ddm_10_1003.html new file mode 100644 index 00000000..3975bd1b --- /dev/null +++ b/docs/ddm/umn/ddm_10_1003.html @@ -0,0 +1,16 @@ + + +

Synchronizing Data Node Information

+

Prerequisites

You have logged in to the DDM console.

+
+

Scenarios

After you change your data nodes, for example, adding or deleting a read replica, changing the connection address, port number, or security group, you need to click Synchronize Data Node Information to synchronize the change to your DDM instance.

+
+

Procedure

  1. In the instance list, locate the DDM instance whose data node changes you want to synchronize.
  2. Choose Data Nodes in the left navigation pane and click Synchronize Data Node Information.
  3. Wait till a message is returned, indicating that the request to synchronize data node information is submitted.
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_11_0001.html b/docs/ddm/umn/ddm_11_0001.html new file mode 100644 index 00000000..7f6cd610 --- /dev/null +++ b/docs/ddm/umn/ddm_11_0001.html @@ -0,0 +1,13 @@ + + +

Auditing

+
+ + diff --git a/docs/ddm/umn/ddm_11_0002.html b/docs/ddm/umn/ddm_11_0002.html new file mode 100644 index 00000000..08f9d0d5 --- /dev/null +++ b/docs/ddm/umn/ddm_11_0002.html @@ -0,0 +1,261 @@ + + +

Key Operations Recorded by CTS

+

Cloud Trace Service (CTS) records operations related to DDM for further query, audit, and backtrack.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 DDM operations that can be recorded by CTS

Operation

+

Resource Type

+

Trace Name

+

Applying a parameter template

+

parameterGroup

+

applyParameterGroup

+

Clearing metadata after a schema is scaled out

+

logicDB

+

cleanMigrateLogicDB

+

Clearing user resources

+

all

+

cleanupUserAllResources

+

Replicating a parameter template

+

parameterGroup

+

copyParameterGroup

+

Creating a DDM instance

+

instance

+

createInstance

+

Creating a schema

+

logicDB

+

createLogicDB

+

Creating a parameter template

+

parameterGroup

+

createParameterGroup

+

Creating an account

+

user

+

createUser

+

Deleting a DDM instance

+

instance

+

deleteInstance

+

Deleting a schema

+

logicDB

+

deleteLogicDB

+

Deleting a parameter template

+

parameterGroup

+

deleteParameterGroup

+

Deleting an account

+

user

+

deleteUser

+

Scaling out a DDM instance

+

instance

+

enlargeNode

+

Restarting a DDM instance

+

instance

+

instanceRestart

+

Importing schema information

+

instance

+

loadMetadata

+

Switching the route during scaling

+

logicDB

+

manualSwitchRoute

+

Scaling out a schema

+

logicDB

+

migrateLogicDB

+

Modifying a parameter template

+

parameterGroup

+

modifyParameterGroup

+

Changing the route switching time

+

logicDB

+

modifyRouteSwitchTime

+

Modifying an account

+

user

+

modifyUser

+

Scaling in a DDM instance

+

instance

+

reduceNode

+

Resetting a parameter template

+

parameterGroup

+

resetParameterGroup

+

Resetting the password of an account

+

user

+

resetUserPassword

+

Changing node class

+

instance

+

resizeFlavor

+

Restoring DB instance data

+

instance

+

restoreInstance

+

Retrying to scale out a schema

+

logicDB

+

retryMigrateLogicDB

+

Rolling back the version upgrade of a DDM instance

+

instance

+

rollback

+

Rolling back a schema scaling task

+

logicDB

+

rollbackMigrateLogicDB

+

Configuring access control

+

instance

+

switchIpGroup

+

Synchronizing data node information

+

instance

+

synRdsinfo

+

Upgrading the version of a DDM Instance

+

instance

+

upgrade

+

Creating a node group

+

group

+

createGroup

+

Modifying the floating IP address

+

instance

+

modifyIp

+

Modifying the name of an instance

+

instance

+

modifyName

+
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_11_0003.html b/docs/ddm/umn/ddm_11_0003.html new file mode 100644 index 00000000..0d380c67 --- /dev/null +++ b/docs/ddm/umn/ddm_11_0003.html @@ -0,0 +1,18 @@ + + +

Querying Traces

+

Scenarios

After CTS is enabled, the tracker starts recording operations on cloud resources. Operation records for the last 7 days are stored on the CTS console.

+

This section describes how to query operation records for the last 7 days on the CTS console.

+
+

Procedure

  1. Log in to the management console.
  2. Under Management & Governance, click Cloud Trace Service.
  3. Choose Trace List in the navigation pane on the left.
  4. Specify filter criteria to search for the required traces. The following filters are available:

    • Trace Source, Resource Type, and Search By: Select a filter from the drop-down list.

      When you select Resource ID for Search By, you also need to select or enter a resource ID.

      +
    • Operator: Select a specific operator from the drop-down list.
    • Trace Status: Available options include All trace statuses, Normal, Warning, and Incident. You can only select one of them.
    • In the upper right corner of the page, you can specify a time range for querying traces.
    +

  5. Click Query.
  6. Locate the required trace and click on the left of the trace to view details.
  7. Click View Trace in the Operation column. On the displayed dialog box, the trace structure details are displayed.
  8. Click Export on the right. CTS exports traces collected in the past seven days to a CSV file. The CSV file contains all information related to traces on the management console.

    For details about key fields in the trace structure, see sections "Trace Structure" and "Trace Examples" in the Cloud Trace Service User Guide.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_12_0006.html b/docs/ddm/umn/ddm_12_0006.html new file mode 100644 index 00000000..92438925 --- /dev/null +++ b/docs/ddm/umn/ddm_12_0006.html @@ -0,0 +1,28 @@ + + +

Overview

+

DDM supports common DDL operations, such as creating databases, creating tables, and modifying table structure, but the implementation method is different from that in common MySQL databases.

+

DDL Statements that Can Be Executed on a MySQL Client

  • TRUNCATE

    Example:

    +
    TRUNCATE TABLE t1
    +

    Deletes all data from table t1.

    +

    TRUNCATE TABLE deletes all data from a table and has the DROP permission. In logic, TRUNCATE TABLE is similar to the DELETE statement for deleting all rows from a table.

    +
  • ALTER TABLE

    Example:

    +
    ALTER TABLE t2 DROP COLUMN c, DROP COLUMN d;
    +

    Deletes columns c and d fom table t2.

    +

    ALTER can add or delete a column, create or drop an index, change the type of an existing column, rename columns or tables, or change the storage engine or comments of a table.

    +
  • DROP INDEX

    Example:

    +
    DROP INDEX `PRIMARY` ON t;
    +

    Deletes primary key from table t.

    +
  • CREATE INDEX

    Example:

    +
    CREATE INDEX part_of_name ON customer (name(10));
    +

    Creates an index using the first 10 characters in column name (assuming that there are non-binary character strings in column name).

    +

    CREATE INDEX can add an index to an existing table.

    +
+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_12_0007.html b/docs/ddm/umn/ddm_12_0007.html new file mode 100644 index 00000000..6216ddfa --- /dev/null +++ b/docs/ddm/umn/ddm_12_0007.html @@ -0,0 +1,106 @@ + + +

MOD_HASH_CI

+

Application Scenarios

This algorithm applies if you want to route data to different database shards by user ID or order ID.

+
+

Instructions

The sharding key must be CHAR, VARCHAR, INT, INTEGER, BIGINT, MEDIUMINT, SMALLINT, TINYINT, or DECIMAL (the precision can be 0).

+
+

Data Routing

The data route depends on the remainder of the sharding key value divided by database or table shards. MOD_HASH is case-sensitive, but MOD_HASH_CI is not.

+
+

Calculation Method

Method 1: Use an Integer as the Sharding Key

+ +
+ + + + + + + + + + + + + +
Table 1 Required calculation methods when the sharding key is the integer data type

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Database routing result = Database sharding key value % Database shards

+

Table routing result = Table sharding key value % Table shards

+

Database shard: 16 % 8 = 0

+

Table shard: 16 % 3 = 1

+

Database sharding key = Table sharding key

+

Table routing result = Sharding key value % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

Table shard: 16 % (8 x 3) = 16

+

Database shard: 16/3 = 5

+
+
+

Method 2: Use a String as the Sharding Key

+ +
+ + + + + + + + + + + + + +
Table 2 Required calculation methods when the sharding key is the string data type

Condition

+

Calculation Method

+

Example

+

Database sharding key ≠ Table sharding key

+

Database routing result = hash(Database sharding key value) % Database shards

+

Table routing result = hash(Table sharding key value) % Table shards

+

+

+

hash('abc') = 'abc'.toUpperCase().hashCode()=64578

+

Database shard: 64578 % 8 = 2;

+

Table shard: 64578 % 3 = 0;

+

Database sharding key = Table sharding key

+

Table routing result = hash(Sharding key value) % (Database shards x Table shards)

+

Database routing result = Table routing result/Table shards

+
NOTE:

Database routing result is rounded off to the nearest integer.

+
+

+

hash('abc') = 'abc'.toUpperCase().hashCode()=64578

+

Table shard: 64578 % (8 x 3) = 18

+

Database shard: 18/3 = 6

+
+
+
+

Syntax for Creating Tables

  • Assume that you use field ID as the sharding key to shard databases based on MOD_HASH_CI:
    create table mod_hash_ci_tb(
    +	id int,
    +	name varchar(30) DEFAULT NULL,
    +	create_time datetime DEFAULT NULL,
    +	primary key(id)
    +) ENGINE = InnoDB DEFAULT CHARSET = utf8 dbpartition by mod_hash_ci(id);
    +
  • Assume that you use field ID as the sharding key to shard databases and tables based on MOD_HASH_CI:
    create table mod_hash_ci_tb(
    +	id int,
    +	name varchar(30) DEFAULT NULL,
    +	create_time datetime DEFAULT NULL,
    +	primary key(id)
    +) ENGINE = InnoDB DEFAULT CHARSET = utf8
    +dbpartition by mod_hash_ci(id)
    +tbpartition by mod_hash_ci(id) tbpartitions 4;
    +
+
+

Precautions

The MOD_HASH_CI algorithm is a simple way to find the remainder of the sharding key value divided by shards. This algorithm features even distribution of sharding key values to ensure even results.

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_12_0010.html b/docs/ddm/umn/ddm_12_0010.html new file mode 100644 index 00000000..a9517b2e --- /dev/null +++ b/docs/ddm/umn/ddm_12_0010.html @@ -0,0 +1,66 @@ + + +

Overview

+

Global sequences are mainly database-based global sequences.

+
  • The start auto-increment SN can be modified.
  • Global sequence provides sequence numbers that are globally unique but may not increase continuously.
+
+ +
+ + + + + + + + + + + +
Table 1 Table types supported by global sequence

Table Type

+

Sharded

+

Broadcast

+

Unsharded

+

DB-based

+

Supported

+

Supported

+

Not supported

+
+
+

Creating an Auto-Increment Sequence

  1. Log in to the required DDM instance using a client.
  2. Open the required schema.
  3. Run the following command to create an auto-increment sequence:

    create sequence <seq_name>;

    +
    • <seq_name> indicates the sequence name.
    • The auto-increment key should be a BIGINT value. To avoid duplicate values, do not use TINYINT, SMALLINT, MEDIUMINT, INTEGER, or INT as the auto-increment key.
    • Run show sequences to view the usage of the auto-increment sequence. If the usage reaches 100%, do not insert data anymore.
    +
    +

+
+

Dropping an Auto-Increment Sequence

  1. Log in to the required DDM instance using a client.
  2. Open the required schema.
  3. Run show sequences to view all global sequences.
  4. Run the following command to drop an auto-increment sequence:

    drop sequence <seq_name> ;

    +

    drop sequence DB.<seq_name>;

    +
    • The sequence name is case-insensitive.
    • If an auto-increment sequence is inherent to a table, the sequence cannot be deleted.
    +
    +

+
+

Modifying the Start Value of an Auto-Increment Sequence

  1. Log in to the required DDM instance using a client.
  2. Open the required schema.
  3. Run show sequences to view all global sequences.
  4. Run the command to change the start value:

    alter sequence <seq_name> START WITH <start_value>;

    +
    • <seq_name> indicates the sequence name.
    • <start_value> indicates the start value of the target sequence.
    +
    +

+
+

Querying an Auto-Increment Sequence

  1. Log in to the required DDM instance using a client.
  2. Open the required schema.
  3. Run show sequences to view all global sequences.

    show sequences;

    +

    +

+

+
+

Modifying the Auto-Increment Cache Value

This feature is only available in kernel 3.0.3 and later versions.

+
+
  1. Log in to the required DDM instance using a client.
  2. Open the required schema.
  3. Run command alter sequence test cache 5000 to modify the global sequence cache value of table test.
  4. Run command show sequences to view the cache value (INCREMENT value) of table test.
+
+

Updating Auto-Increment Sequences of All Tables

This feature is available only in kernel 3.0.4.1 or later.

+
+
  1. Log in to the required DDM instance using a client.
  2. Run command fresh all sequence start value to change sequences of all schemas.
+
+

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_12_0011.html b/docs/ddm/umn/ddm_12_0011.html new file mode 100644 index 00000000..063e0fe0 --- /dev/null +++ b/docs/ddm/umn/ddm_12_0011.html @@ -0,0 +1,11 @@ + + +

Can Data Nodes Associated with a DDM Instance Share Data?

+

No. Different data nodes associated with a DDM instance are independent of each other and cannot share data.

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_12_0012.html b/docs/ddm/umn/ddm_12_0012.html new file mode 100644 index 00000000..4db8abcd --- /dev/null +++ b/docs/ddm/umn/ddm_12_0012.html @@ -0,0 +1,12 @@ + + +

What Data Nodes Can Be Associated with a DDM Instance?

+

Any data nodes can be associated with a DDM instance as long as they are:

+
  • Running normally
  • In the same VPC as the DDM instance
  • Not in use by other DDM instances
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_12_0100.html b/docs/ddm/umn/ddm_12_0100.html new file mode 100644 index 00000000..9f20acf1 --- /dev/null +++ b/docs/ddm/umn/ddm_12_0100.html @@ -0,0 +1,30 @@ + + +

Supported System Schema Queries

+
+
+ + + + + + + +
Table 1 Supported system schema queries

DML Syntax

+

Restriction

+

System schema queries

+

The following system schema queries are supported:

+
  • Version query: SELECT version()
    • information_schema.SCHEMA_PRIVILEGES
    • information_schema.TABLE_PRIVILEGES
    • information_schema.USER_PRIVILEGES
    • information_schema.SCHEMATA
    • information_schema.tables
    • information_schema.columns
    +
  • Index query: SHOW KEYS FROM <table> FROM <database>
+
NOTE:
  • Supported operators include =, IN, and LIKE. These operators can be associated using AND.
  • Complex queries, such as subquery, JOIN, sorting, aggregate query, and LIMIT, are not supported.
  • information_schema.tables and information_schema.columns support operators < and >.
+
+
+
+

+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_13_0001.html b/docs/ddm/umn/ddm_13_0001.html new file mode 100644 index 00000000..ea82264c --- /dev/null +++ b/docs/ddm/umn/ddm_13_0001.html @@ -0,0 +1,9 @@ + + +

Slow Queries

+

Scenarios

DDM provides a Slow Queries function that sorts out the same type of slow SQL statements within a specified period of time by SQL template. You can specify a time range, search for all types of slow SQL statements within the time range, and then optimize them.

+
+

Procedure

  1. In the instance list, locate the DDM instance whose slow queries you want to view and click its name.
  2. In the navigation pane, choose Slow Queries.
  3. On the Slow Queries page, specify a time range and view SQL statements executed within this time range.
+
+
+ diff --git a/docs/ddm/umn/ddm_16_0001.html b/docs/ddm/umn/ddm_16_0001.html new file mode 100644 index 00000000..047a6fcf --- /dev/null +++ b/docs/ddm/umn/ddm_16_0001.html @@ -0,0 +1,18 @@ + + +

Supported Metrics

+

+
+ + diff --git a/docs/ddm/umn/ddm_16_0002.html b/docs/ddm/umn/ddm_16_0002.html new file mode 100644 index 00000000..315e9461 --- /dev/null +++ b/docs/ddm/umn/ddm_16_0002.html @@ -0,0 +1,18 @@ + + +

Viewing Metrics

+

+
+ + diff --git a/docs/ddm/umn/ddm_16_0003.html b/docs/ddm/umn/ddm_16_0003.html new file mode 100644 index 00000000..a3959c89 --- /dev/null +++ b/docs/ddm/umn/ddm_16_0003.html @@ -0,0 +1,16 @@ + + +

Viewing Network Metrics

+

The DDM console supports monitoring and management of network metrics.

+

Prerequisites

If load balancing is enabled for your DDM instance, you can view network metrics. If load balancing is not enabled, you do not have the permissions to view them.

+
+

Procedure

  1. Log in to the DDM console.
  2. In the instance list, locate the required DDM instance and click its name.
  3. In the navigation pane on the left, choose Monitoring.
  4. Click Network.

    You can select a time range and view metrics such as inbound rate, outbound rate, unhealthy servers, and healthy servers. For details, see Network Metrics.

    +

+
+
+
+ +
+ diff --git a/docs/ddm/umn/ddm_histroy_0003.html b/docs/ddm/umn/ddm_histroy_0003.html new file mode 100644 index 00000000..d110e1d0 --- /dev/null +++ b/docs/ddm/umn/ddm_histroy_0003.html @@ -0,0 +1,34 @@ + + +

Change History

+
+
+ + + + + + + + + + + + + +

Released On

+

Description

+

2023-12-15

+

Optimized the description of tags in Tags.

+

2023-10-20

+

Modified the following content:

+

Optimized the directory for monitoring management and the procedure for viewing monitoring information in Monitoring Management.

+

Added parameter description in Restoring Metadata.

+

Added the description of tags in Creating a DDM Instance.

+

Added Tags.

+

2023-01-30

+

This is the first official release.

+
+
+
+ diff --git a/docs/ddm/umn/en-us_image_0000001620873737.png b/docs/ddm/umn/en-us_image_0000001620873737.png new file mode 100644 index 00000000..11866477 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001620873737.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147446.png b/docs/ddm/umn/en-us_image_0000001685147446.png new file mode 100644 index 00000000..ba47a092 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147446.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147450.png b/docs/ddm/umn/en-us_image_0000001685147450.png new file mode 100644 index 00000000..70a7eda6 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147450.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147478.png b/docs/ddm/umn/en-us_image_0000001685147478.png new file mode 100644 index 00000000..96eba12c Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147478.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147494.png b/docs/ddm/umn/en-us_image_0000001685147494.png new file mode 100644 index 00000000..2d708453 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147494.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147562.png b/docs/ddm/umn/en-us_image_0000001685147562.png new file mode 100644 index 00000000..4b159e16 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147562.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147566.png b/docs/ddm/umn/en-us_image_0000001685147566.png new file mode 100644 index 00000000..cb923619 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147566.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147570.png b/docs/ddm/umn/en-us_image_0000001685147570.png new file mode 100644 index 00000000..d57ae90e Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147570.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147590.png b/docs/ddm/umn/en-us_image_0000001685147590.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147590.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147602.png b/docs/ddm/umn/en-us_image_0000001685147602.png new file mode 100644 index 00000000..f119df0f Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147602.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147610.png b/docs/ddm/umn/en-us_image_0000001685147610.png new file mode 100644 index 00000000..f6ebadcd Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147610.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147638.png b/docs/ddm/umn/en-us_image_0000001685147638.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147638.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147654.png b/docs/ddm/umn/en-us_image_0000001685147654.png new file mode 100644 index 00000000..fac45f54 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147654.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147662.png b/docs/ddm/umn/en-us_image_0000001685147662.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147662.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147678.png b/docs/ddm/umn/en-us_image_0000001685147678.png new file mode 100644 index 00000000..8106e7af Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147678.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685147682.png b/docs/ddm/umn/en-us_image_0000001685147682.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685147682.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307194.png b/docs/ddm/umn/en-us_image_0000001685307194.png new file mode 100644 index 00000000..28d08d9c Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307194.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307202.png b/docs/ddm/umn/en-us_image_0000001685307202.png new file mode 100644 index 00000000..1267615e Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307202.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307210.png b/docs/ddm/umn/en-us_image_0000001685307210.png new file mode 100644 index 00000000..dd36d9b4 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307210.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307214.png b/docs/ddm/umn/en-us_image_0000001685307214.png new file mode 100644 index 00000000..4b159e16 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307214.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307262.png b/docs/ddm/umn/en-us_image_0000001685307262.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307262.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307302.png b/docs/ddm/umn/en-us_image_0000001685307302.png new file mode 100644 index 00000000..62ddb8e0 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307302.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307306.jpg b/docs/ddm/umn/en-us_image_0000001685307306.jpg new file mode 100644 index 00000000..5d08e15a Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307306.jpg differ diff --git a/docs/ddm/umn/en-us_image_0000001685307310.png b/docs/ddm/umn/en-us_image_0000001685307310.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307310.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307318.png b/docs/ddm/umn/en-us_image_0000001685307318.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307318.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307326.png b/docs/ddm/umn/en-us_image_0000001685307326.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307326.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307342.png b/docs/ddm/umn/en-us_image_0000001685307342.png new file mode 100644 index 00000000..65cb357e Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307342.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307354.png b/docs/ddm/umn/en-us_image_0000001685307354.png new file mode 100644 index 00000000..c3676d69 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307354.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307362.png b/docs/ddm/umn/en-us_image_0000001685307362.png new file mode 100644 index 00000000..c9b040a4 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307362.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307386.png b/docs/ddm/umn/en-us_image_0000001685307386.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307386.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307394.png b/docs/ddm/umn/en-us_image_0000001685307394.png new file mode 100644 index 00000000..72f92417 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307394.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307398.png b/docs/ddm/umn/en-us_image_0000001685307398.png new file mode 100644 index 00000000..2dc8c357 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307398.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307406.png b/docs/ddm/umn/en-us_image_0000001685307406.png new file mode 100644 index 00000000..c8d49ac8 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307406.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307410.png b/docs/ddm/umn/en-us_image_0000001685307410.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307410.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307426.png b/docs/ddm/umn/en-us_image_0000001685307426.png new file mode 100644 index 00000000..fc7bf2d8 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307426.png differ diff --git a/docs/ddm/umn/en-us_image_0000001685307430.png b/docs/ddm/umn/en-us_image_0000001685307430.png new file mode 100644 index 00000000..17774fb6 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001685307430.png differ diff --git a/docs/ddm/umn/en-us_image_0000001700277302.png b/docs/ddm/umn/en-us_image_0000001700277302.png new file mode 100644 index 00000000..f287a554 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001700277302.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146257.png b/docs/ddm/umn/en-us_image_0000001733146257.png new file mode 100644 index 00000000..8b00a599 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146257.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146261.png b/docs/ddm/umn/en-us_image_0000001733146261.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146261.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146273.png b/docs/ddm/umn/en-us_image_0000001733146273.png new file mode 100644 index 00000000..4b159e16 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146273.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146277.png b/docs/ddm/umn/en-us_image_0000001733146277.png new file mode 100644 index 00000000..ecd22fc8 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146277.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146301.png b/docs/ddm/umn/en-us_image_0000001733146301.png new file mode 100644 index 00000000..1679a673 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146301.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146317.png b/docs/ddm/umn/en-us_image_0000001733146317.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146317.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146325.png b/docs/ddm/umn/en-us_image_0000001733146325.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146325.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146333.png b/docs/ddm/umn/en-us_image_0000001733146333.png new file mode 100644 index 00000000..7cabd619 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146333.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146365.png b/docs/ddm/umn/en-us_image_0000001733146365.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146365.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146369.png b/docs/ddm/umn/en-us_image_0000001733146369.png new file mode 100644 index 00000000..1267615e Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146369.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146373.png b/docs/ddm/umn/en-us_image_0000001733146373.png new file mode 100644 index 00000000..533f6040 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146373.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146381.png b/docs/ddm/umn/en-us_image_0000001733146381.png new file mode 100644 index 00000000..e431718c Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146381.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146397.png b/docs/ddm/umn/en-us_image_0000001733146397.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146397.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146405.png b/docs/ddm/umn/en-us_image_0000001733146405.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146405.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146413.png b/docs/ddm/umn/en-us_image_0000001733146413.png new file mode 100644 index 00000000..6184cfce Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146413.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146449.png b/docs/ddm/umn/en-us_image_0000001733146449.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146449.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146461.png b/docs/ddm/umn/en-us_image_0000001733146461.png new file mode 100644 index 00000000..72f92417 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146461.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733146485.png b/docs/ddm/umn/en-us_image_0000001733146485.png new file mode 100644 index 00000000..b0aa4251 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733146485.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266389.png b/docs/ddm/umn/en-us_image_0000001733266389.png new file mode 100644 index 00000000..05725b84 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266389.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266393.png b/docs/ddm/umn/en-us_image_0000001733266393.png new file mode 100644 index 00000000..62ddb8e0 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266393.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266397.png b/docs/ddm/umn/en-us_image_0000001733266397.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266397.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266413.png b/docs/ddm/umn/en-us_image_0000001733266413.png new file mode 100644 index 00000000..f05928a2 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266413.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266417.png b/docs/ddm/umn/en-us_image_0000001733266417.png new file mode 100644 index 00000000..80c49902 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266417.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266429.png b/docs/ddm/umn/en-us_image_0000001733266429.png new file mode 100644 index 00000000..851c244e Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266429.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266445.png b/docs/ddm/umn/en-us_image_0000001733266445.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266445.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266489.png b/docs/ddm/umn/en-us_image_0000001733266489.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266489.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266493.png b/docs/ddm/umn/en-us_image_0000001733266493.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266493.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266501.png b/docs/ddm/umn/en-us_image_0000001733266501.png new file mode 100644 index 00000000..1909444d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266501.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266529.png b/docs/ddm/umn/en-us_image_0000001733266529.png new file mode 100644 index 00000000..6ad01fc6 Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266529.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266537.png b/docs/ddm/umn/en-us_image_0000001733266537.png new file mode 100644 index 00000000..37c8275e Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266537.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266553.png b/docs/ddm/umn/en-us_image_0000001733266553.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266553.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266557.png b/docs/ddm/umn/en-us_image_0000001733266557.png new file mode 100644 index 00000000..440b60bb Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266557.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266565.png b/docs/ddm/umn/en-us_image_0000001733266565.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266565.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266569.png b/docs/ddm/umn/en-us_image_0000001733266569.png new file mode 100644 index 00000000..168c349d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266569.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266613.png b/docs/ddm/umn/en-us_image_0000001733266613.png new file mode 100644 index 00000000..a82c89ea Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266613.png differ diff --git a/docs/ddm/umn/en-us_image_0000001733266617.png b/docs/ddm/umn/en-us_image_0000001733266617.png new file mode 100644 index 00000000..6916379d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001733266617.png differ diff --git a/docs/ddm/umn/en-us_image_0000001749511672.png b/docs/ddm/umn/en-us_image_0000001749511672.png new file mode 100644 index 00000000..4597538d Binary files /dev/null and b/docs/ddm/umn/en-us_image_0000001749511672.png differ diff --git a/docs/ddm/umn/public_sys-resources/caution_3.0-en-us.png b/docs/ddm/umn/public_sys-resources/caution_3.0-en-us.png new file mode 100644 index 00000000..60f60762 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/caution_3.0-en-us.png differ diff --git a/docs/ddm/umn/public_sys-resources/danger_3.0-en-us.png b/docs/ddm/umn/public_sys-resources/danger_3.0-en-us.png new file mode 100644 index 00000000..47a9c723 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/danger_3.0-en-us.png differ diff --git a/docs/ddm/umn/public_sys-resources/delta.gif b/docs/ddm/umn/public_sys-resources/delta.gif new file mode 100644 index 00000000..0d1b1f67 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/delta.gif differ diff --git a/docs/ddm/umn/public_sys-resources/deltaend.gif b/docs/ddm/umn/public_sys-resources/deltaend.gif new file mode 100644 index 00000000..cc7da0fc Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/deltaend.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-arrowdn.gif b/docs/ddm/umn/public_sys-resources/icon-arrowdn.gif new file mode 100644 index 00000000..37942803 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-arrowdn.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-arrowrt.gif b/docs/ddm/umn/public_sys-resources/icon-arrowrt.gif new file mode 100644 index 00000000..6aaaa11c Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-arrowrt.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-caution.gif b/docs/ddm/umn/public_sys-resources/icon-caution.gif new file mode 100644 index 00000000..079c79b2 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-caution.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-danger.gif b/docs/ddm/umn/public_sys-resources/icon-danger.gif new file mode 100644 index 00000000..079c79b2 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-danger.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-huawei.gif b/docs/ddm/umn/public_sys-resources/icon-huawei.gif new file mode 100644 index 00000000..a31d60f8 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-huawei.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-note.gif b/docs/ddm/umn/public_sys-resources/icon-note.gif new file mode 100644 index 00000000..31be2b03 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-note.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-notice.gif b/docs/ddm/umn/public_sys-resources/icon-notice.gif new file mode 100644 index 00000000..40907065 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-notice.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-tip.gif b/docs/ddm/umn/public_sys-resources/icon-tip.gif new file mode 100644 index 00000000..c47bae05 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-tip.gif differ diff --git a/docs/ddm/umn/public_sys-resources/icon-warning.gif b/docs/ddm/umn/public_sys-resources/icon-warning.gif new file mode 100644 index 00000000..079c79b2 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/icon-warning.gif differ diff --git a/docs/ddm/umn/public_sys-resources/note_3.0-en-us.png b/docs/ddm/umn/public_sys-resources/note_3.0-en-us.png new file mode 100644 index 00000000..57a0e1f5 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/note_3.0-en-us.png differ diff --git a/docs/ddm/umn/public_sys-resources/notice_3.0-en-us.png b/docs/ddm/umn/public_sys-resources/notice_3.0-en-us.png new file mode 100644 index 00000000..fa4b6499 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/notice_3.0-en-us.png differ diff --git a/docs/ddm/umn/public_sys-resources/warning_3.0-en-us.png b/docs/ddm/umn/public_sys-resources/warning_3.0-en-us.png new file mode 100644 index 00000000..def5c356 Binary files /dev/null and b/docs/ddm/umn/public_sys-resources/warning_3.0-en-us.png differ