MySQL Cluster finishing notes

Source: Internet
Author: User
Tags failover memcached

  

MySQL cluster is based on the NDB storage engine.

The whole is divided into three parts, management node, storage node, SQL node.

The management node manages the entire cluster, the storage node and the NDB node, which is used to store the data, and the SQL node is responsible for receiving the client's SQL requests.

MySQL cluster features are as follows

Performance and expansion capabilities
Automatic sharding Databases are automatically and transparently distributed on low-cost commercial services, so you can increase the energy of read and write queries without changing the application.
Multi-master replication Each data node can accept write operations. This feature, combined with auto-shard functionality, provides very high write expansion capabilities.
Distributed cross-Shard JOIN Adaptive query localization Offload JOIN operations to data nodes so that they can execute on multiple local copies of data in parallel.
Real-time response The In-memory tables and indexes are flushed asynchronously to the disk and bound to the CPU thread, with low latency.
Developer API and data model
Sql MySQL Server provides a standard SQL interface for the cluster, which connects various Web development languages and frameworks through all standard MySQL connectors, such as JDBC, Odbc.net, and so on.
Using Memcached's NoSQL Native key-value access, bypassing the SQL layer to access the data stored in the digital nodes for both structural and unstructured storage.
Using JavaScript and node. js for NoSQL Enables direct access to data stored in data nodes through server-side JavaScript bypassing the SQL layer to accelerate data query and maintenance
Using NoSQL in C + + Native C + + access, bypassing the SQL layer for extremely low latency
Using Java and JPA for NoSQL Native Java and JPA access, bypassing the SQL tier for enterprise, Web, and telco services
Using the REST of NoSQL Native http/rest access, using Apache mod_ndb to bypass the SQL layer
Structured and unstructured data models The fully structured relational data model is used by default. With the Memcached API, each key value is written to the same table, each key-value pair is stored by default in one row, or can be configured to write to multiple existing tables.
99.999% Availability and data integrity
ACID-compliant, transactional MySQL Cluster fully supports ACID (independence, consistency, isolation, persistence) transactions.
FOREIGN KEY constraint (Constraint) MySQL Cluster automatically enforces referential integrity across tables.
Distributed, non-shared architecture Each node in the cluster is redundant and can be placed on a separate host to ensure continuous availability in the event of a process, hardware, or network failure.
No single point of failure Each node has its own disk and memory, thereby eliminating the risk of failure of shared components, such as storage.
Synchronous replication The data within each data node is synchronously replicated to at least one other node. If a node fails, at least one other data node stores the same information.
Sub-second automatic failover MySQL Cluster's heartbeat mechanism detects any failures immediately and automatically fails over to other nodes in the cluster, usually within a second, without interrupting the service provided to the client.
Self-healing Recovery The failed node can be automatically restarted and re-synchronized with the other nodes before re-joining the cluster for self-healing, which is completely transparent to the application.
Cross-region replication Replicate a cluster from one data center to another to achieve disaster recovery and reduce the impact of network latency. Each cluster is able to accept writes and internally handle conflicts to ensure consistency across clusters.
Multi-site Cluster Data nodes can be dispersed across multiple data centers, so replication can be replicated between different sites and automatic failover occurs in the event of a node failure.
Online operations
Online mode Updates Support for adding columns and tables online, as well as adding and removing indexes online.
Online extension You can add nodes to a running cluster on demand to improve performance and capacity. You can dynamically add application nodes to the cluster, or you can dynamically delete application nodes from the cluster, which is very flexible.
Online maintenance Supports online upgrade and patch installation of the underlying hardware, operating system, and MySQL Cluster processes.
Online backup A backup file is a consistent cluster-wide snapshot of the database that can be archived and replicated to a secure remote location.
Deployment flexibility
Virtual Machine Deployment You can deploy a virtual machine environment on your on-premises platform and cloud platform.
In-memory and disk-based tables Tables can be configured to be managed only in memory (fully logged and flushed to the persistent store) or stored on disk.
Commercial hardware MySQL Cluster can be extended with local storage between commercial hardware. There is no need to share disks.
Security and auditing
MySQL Enterprise-Class Security * Provides a ready-to-use external authentication module for MySQL Server connected to the cluster, making it easy to integrate into an existing security infrastructure.
MySQL Enterprise Level Audit * Provides an easy-to-use, policy-based audit solution that helps organizations enforce tighter security controls and meet regulatory requirements.
Management and Monitoring
MySQL Cluster manager* MySQL Cluster Manager automates common management tasks, simplifying the creation and management of MySQL Cluster databases.
MySQL Enterprise monitor* gives you an overview of the health of your cluster, alerting you to potential problems before they affect your system.

* Available only in the MySQL Cluster carrier-level version.

Precautions:

1. Primary keys and indexes are stored in memory: Each NDB table must have a primary key. If the user does not define a primary key when the table is created, the NDB cluster storage engine automatically generates an implied primary key. ( Note: The implied key also takes up space, just like any other table index.) The problem is not uncommon because there is not enough memory to accommodate these auto-created keys .

Problem:

1, because the primary key and index is stored in memory, when the memory does not have enough capacity to accommodate, there will be problems.

2. Use less

3. Documentation and references

4, problems are not easy to modify

5, large disk space, large memory

MySQL Cluster finishing notes

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

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

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