YMatrix
Quick Start
Simulate Time Series Scenarios
Standard Cluster Deployment
Data Modeling
Connecting to The database
Data Writing
Data Migration
Data Query
Scene Application Examples
Federal Query
Maintenance and Monitoring
Global Maintenance
Partition Maintenance
Backup and Restore
Cluster Expansion
Monitoring
Performance Tuning
Troubleshooting
Reference Guide
Tool Guide
Data Type
Storage Engine
Execution Engine
Configuration Parameters
Index
Extension
SQL Reference
FAQ
本文档介绍了 YMatrix 架构的以下内容:
全局架构
局部架构
YMatrix 为降低数据生态的复杂性,设计了具有超融合基因的简洁架构,将计算、存储和网络资源整合在一个统一系统中。其基于大规模并行处理(MPP)系统构建,符合微内核架构特点。
此架构可灵活、融合适应多个场景,不仅对于物联网时序场景友好,也支持传统分析型数据仓库环境及商业智能(BI)工作。
使用超融合架构替换传统数据技术栈看似是一项艰巨的任务。那么,为什么我们一定要这样做?
实际上,无论在哪种情况下,全面使用超融合架构对于许多企业都能带来助益,为企业庞杂的 IT 系统提供统一的数据基座,包括智能网联汽车、工业互联网、智能制造、智慧城市、能源、金融、制药等。
相比于如 Hadoop 生态等复杂数据技术栈,YMatrix 架构有以下优势:
超融合
高可用
丰富的工具链生态
支持标准 SQL
完整支持 ACID 事务
与其他架构的数据库相比,YMatrix 的超融合体现在融合了多种数据类型与数据操作,从而在一个数据库内实现多种数据类型 + 多场景的高性能支持;就 YMatrix 内部架构而言,其具有微内核特征。在公共基础组件之上,为不同业务场景需求提供不同的存储、执行引擎组合,实现不同的微内核,以得到针对性的写入、存储、查询性能提升。
下图描述了 YMatrix 内部的超融合架构组成及其功用:
以下部分详细介绍了 YMatrix 超融合架构的组成。
YMatrix 的高层数据库架构在经典的 MPP(大规模并行处理)数据库技术架构基础上有所发展。
下图描述了组成一个 YMatrix 数据库系统的核心组件以及它们如何一起工作:
以下部分详细介绍了 YMatrix 数据库系统中的各个组件及其功能。
YMatrix 使用自研的 ALOHA(Advanced least Operation High Availability) 技术来保障集群的高可用性。当集群出现实例单点故障时,其对应的备用实例将发生角色切换,代替故障实例提供服务,从而保障了集群服务不中断。
故障节点实例 | 影响 | 时间 |
Mirror | 当 Mirror 故障,不会影响用户对于相应 Primary 中数据的查询,但需手动恢复故障的 Mirror | 网络通畅的情况下可达秒级别 |
Standby | 当 Standby 故障,不会影响用户集群数据的查询,但需手动恢复故障的 Standby | |
Primary | 当 Primary 故障,用户无法查询相应数据,需要等待系统自动提升对应的 Mirror 为 Primary 后再进行查询 | |
Master | 当 Master 故障,集群不可用,用户无法查询相应数据,需要等待系统自动提升对应的 Standby 为 Master 后再进行查询 |
注意!
故障恢复详细操作步骤详见故障恢复。
ALOHA 服务采用了基于 ETCD 集群的高可用架构。该架构可以解决故障自动转移(Failover)的问题,本质上来说即是实现自动选举主节点(Master)机制,并保持数据强一致性。
该机制包括以下环节:- Status data collection There are two sources of data reported to ETCD by the data cluster:
Notes!
ETCD clusters will have more disk operations during storage state, so ideally, several separate physical machines should be used to deploy ETCD clusters, which can fully guarantee the performance of ETCD. However, in actual applications, the number of physical machines may not be enough to support ETCD independent deployment, so odd ETCD instances will be randomly deployed on some or all physical machines in the data cluster to save the status data of nodes and instances.
The schematic diagram is as follows:

You can see:
ETCD is a distributed key-value storage cluster used to store and retrieve data in a distributed system. ETCD uses Raft consistency algorithm to ensure data consistency and reliability. It is designed to be highly available with strong failure recovery capabilities. ETCD provides a simple RESTful API interface, allowing applications to easily access and manipulate key-value pairs stored there.
Important concepts: