Distributed storage System is to solve the capacity, performance and other bottlenecks of single-machine storage, as well as the problems of usability and expansibility, and to provide large-capacity, high-performance, highly available and scalable storage services for large-scale storage applications by distributing data on multiple storage devices. This series of articles describes a typical distributed storage system design and implementation, the system has been serving a large number of business, reached the storage capacity of hundreds of T, withstood the test of massive services.
Overall architecture
The overall architecture of the system is shown, where the logical layer is the consumer of the storage service. The system consists of two parts, part of which is the module of Data Warehouse, which is the core part of directly providing data storage service, which consists of access layer, data layer and configuration Operation Center, and the other part is auxiliary system, which is mainly responsible for system monitoring, operational and operation backup system, monitoring system, operation and maintenance management system, The user operation system is composed.
A data warehouse is a storage cluster, multiple businesses can share the resources of a data warehouse, we can deploy multiple data warehouses according to requirements, the auxiliary system is common to all data warehouses.
The following is a brief introduction to the main functions of each module.
Access Layer
The access layer is mainly to provide two functions, one is to load balance the access layer of the logical layer, and the other is to realize the data shard, that is, the data-tier device that forwards the data to the request of accessing the data.
Data layer
Data layer is the storage of data, storage media can support memory or SSD. Read-write service is to handle the user's read and write requests, synchronization module multiple copies of the master-and-standby synchronization between the data, maintenance tool is used to perform primary and standby switchover, panic recovery, expansion and other operations.
Configuring the Operations Center
The configuration operations Center consists of 3 parts. Configuration Center is responsible for the entire warehouse configuration maintenance and distribution; The Quota Center is responsible for the quota management of the capacity, traffic, CPU and other resources at each business level; Operations Center is used for automatic or manual shipping of dimension commands.
Backup system
The backup system is responsible for data backup, back-up, and recovery of all business in the system. The Flow Center records all writes, and the task Center manages and schedules the execution of all data backup, fallback, and recovery tasks.
Monitoring System
The monitoring system reports and analyzes the key information and operation status of the system, and monitors and alarms the abnormal situation. The escalation is to count or escalate the critical path of the system, the anomaly, and so on. Multidimensional escalation is a supplement to the escalation of the report, which reports more dimensions.
Operation and Maintenance Management system
Operation and maintenance Management system users are system operators, can easily carry out business management and operations, such as configuration management, fault management, business expansion and other common operations; You can also view system health and business operation data.
User Operation system
Users of the user management system are users of the storage services, the user through the system can master the operation of the connected business data, as well as user-level business management and operational operations, such as renewal, expansion, data emptying, data backup, data recovery and so on.
Distributed Storage System Design (1)--System architecture