MatrixOne从入门到实践——初识MatrixOne
作者:互联网
初识MatrixOne
简介
MatrixOrigin
矩阵起源 是一家数据智能领域的创新企业,其愿景是成为数字世界的核心技术提供者。
物理世界的数字化和智能化无处不在。我们致力于建设开放的技术开源社区和生态系统、打造世界级的团队、并通过业界领先的技术创新和工程能力,实现数据在数字世界中的任意存储和任意计算,帮助用户释放数据的潜力和创新力(Store Anywhere, Compute Anywhere, Innovate Anywhere)。
MatrixOne
MatrixOne 是一款致力于 One Size Fits Most 的超融合异构数据库。
MatrixOne通过超融合数据引擎HSTAP实现单一数据库系统支持 事务性(TP,Transactional Processing)、分析型(AP,Analytical Processing)、流式(Streaming)等多种数据负载,通过异构云原生架构实现单一数据库系统支持公有云原生、私有云、边缘云部署和使用。从而简化开发运维,消简数据碎片,提升数据端到端存算性能和开发敏捷度。
技术架构
MatrixOne 是第一个开源的分布式 HSTAP 数据库,支持 OLTP、OLAP 和 Streaming,使用单个自动调优存储引擎。
HSTAP 对 HTAP 数据库进行了重新定义,HSTAP 旨在满足单一数据库内事务处理(TP)和分析处理(AP)的所有需求。与传统的 HTAP 相比,HSTAP 强调其内置的用于连接TP和AP表数据流处理能力。为用户提供了数据库可以像大数据平台一样的使用体验,也恰恰得益于大数据的繁荣,很多用户已经熟悉了这种体验。 MatrixOne 以最少的集成工作,让用户摆脱大数据的限制,为企业提供所有TP和AP场景的一站式覆盖。
MatrixOne 作为一个从零开始打造的全新数据库,并在其他 DBMS 中引入了多种创新和最佳实践。采用解耦存储和计算架构,将数据存储在 S3 云存储服务上,实现低成本,计算节点无状态,可随意启动,实现极致弹性。在本地部署可用的情况下,MatrixOne 可以利用用户的 HDFS 或其他支持的分布式文件系统来保存数据。MatrixOne 还配备了兼容 S3 的内置替代方案,以确保其存储的弹性、高可靠性和高性能,而无需依赖任何外部组件。架构如下:
集群管理层
Cluster Managerment Layer 这一层负责集群管理,在云原生环境中与 Kubernetes 交互动态获取资源;在本地部署时,根据配置获取资源。集群状态持续监控,根据资源信息分配每个节点的任务。提供系统维护服务以确保所有系统组件在偶尔出现节点和网络故障的情况下正常运行,并在必要时重新平衡节点上的负载。集群管理层的主要组件是:
- Prophet 调度:提供负载均衡和节点 Keep-alive。
- 资源管理:提供物理资源。
Serverless层
Serverless Layer 层是一系列无状态节点的总称,整体上包含三类:
- 后台任务:最主要的功能是 Offload Worker,负责卸载成本高的压缩任务,以及将数据刷新到S3存储。
- SQL计算节点:负责执行 SQL 请求,这里分为写节点和读节点,写节点还提供读取最新数据的能力。
- 流任务处理节点:负责执行流处理请求。
日志层
Log Layer 作为 MatrixOne 的单一数据源 (即Single source of truth),数据一旦写入日志层,则将永久地存储在 MatrixOne中。它建立在我们世界级的复制状态机模型的专业知识之上,以保证我们的数据具有最先进的高吞吐量、高可用性和强一致性。它本身遵循完全模块化和分解的设计,也帮助解耦存储和计算层的核心组件,与传统的 NewSQL 架构相比,我们的架构具有更高的弹性。
存储层
Storage Layer存储层将来自日志层的传入数据转换为有效的形式,以供将来对数据进行处理和存储。包括为快速访问已写入 S3 的数据进行的缓存维护等。在 MatrixOne 中,TAE(即Transactional Analytic Engine)是存储层的主要公开接口,它可以同时支持行和列存储以及事务处理能力。此外,存储层还包括其他内部使用的存储功能,例如流媒体的中间存储。
存储供应层
Provision Layer作为与基础架构解耦的 DBMS,MatrixOne 可以将数据存储在 S3/HDFS 、本地磁盘、本地服务器、混合云或其他各类型云,以及智能设备的共享存储中。存储供应层通过为上层提供一个统一的接口来访问这些多样化的存储资源,并且不向上层暴露存储的复杂性。
相关技术解读
关于TAE(Transactional Analytical Engine)的那些事 - 矩阵起源 | Matrix Origin
浅谈MatrixOne如何用Go语言高性能哈希表的设计与实现 - 矩阵起源 | Matrix Origin
数据技术大融合,HSTAP数据库有多少想象空间? - 矩阵起源 | Matrix Origin
为什么MatrixOne 0.5变慢了? - 矩阵起源 | Matrix Origin
MOers的最高追求→把「重新定义数据库」圈为重点 - 矩阵起源 | Matrix Origin
MatrixCube揭秘102——300行实现的完整分布式存储系统MatrixKV - 矩阵起源 | Matrix Origin
Push还是Pull,这是个问题么? - 矩阵起源 | Matrix Origin
茴字有四种写法,HTAP呢? - 矩阵起源 | Matrix Origin
核心特性
超融合引擎
-
超融合引擎
融合数据引擎,单数据库即可支持TP、AP、时序、机器学习等混合工作负载。
-
内置流引擎
利用独有的增量物化视图能力,无需跨数据库即可实现实时数据流处理。
异构云原生
-
异构统一
支持跨机房协同/多地协同/云边协同,实现无感知扩缩容,提供高效统一的数据管理。
-
多地多活
MatrixOne采用最优的一致性协议,实现业内最短网络延迟的多地多活。
极致性能
-
高性能
特有的向量化执行引擎,支持极速的复杂查询。单表、星型和雪花查询都具备极速分析性能。
-
强一致
提供跨存储引擎的高性能全局分布式事务能力,在保证极速分析性能的同时支持更新、删除和实时点查询。
-
高可用
存算分离,支持存储节点与计算节点独立扩缩容,高效应对负载变化。
应用场景
-
数据一致性及高可靠、系统高可用、扩展性和容灾要求较高的金融行业
-
有高并发OLTP事务要求和极速OLAP分析要求的混合场景
-
HSTAP一体化场景
-
OLTP和数仓构建场景
. . . . . .
. . . . . .
用户价值
-
简化数据开发和运维
随着业务发展,企业使用的数据引擎和中间件越来越多,而每一个数据引擎平均依赖5+个基础组件,存储3+个数据副本,每一个数据引擎都要各自安装、监控、补丁和升级。这些都导致数据引擎的选型、开发及运维成本高昂且不可控。在MatrixOne的一体化架构下,用户使用单个数据库即可服务多种数据应用,引入的数据组件和技术栈减少80%,大大简化了数据库管理和维护的成本。
-
消减数据碎片和不一致
在既有复杂的系统架构内,存在多条数据管道多份数据存储冗余。数据依赖复杂,导致数据更新维护复杂,上下游数据不一致问题频发,人工校对难度增大。MatrixOne的高内聚架构和独有的增量物化视图能力,使得下游可以支持上游数据的实时更新,摆脱冗余的ETL流程,实现端到端实时数据处理。
-
无需绑定基础设施
因为基础设施的碎片化,企业的私有化数据集群和公有云数据集群之间数据架构和建设方案割裂,数据迁移成本高。而数据上云一旦选型确定数据库厂商,后续的集群扩容、其他组件采购等都将被既有厂商绑定。MatrixOne提供统一的云边基础架构和高效统一的数据管理,企业数据架构不再被基础设施绑定,实现单数据集群跨云无感知扩缩容,提升性价比。
-
极速的分析性能
目前,由于缓慢的复杂查询性能以及冗余的中间表,数据仓库在业务敏捷性上的表现不尽人意,大量宽表的创建也严重影响迭代速度。MatrixOne通过特有的因子化计算和向量化执行引擎,支持极速的复杂查询,单表、星型和雪花查询都具备极速分析性能。
-
像TP一样可靠的AP体验
传统数据仓库数据更新代价非常高,很难做到数据更新即可见。在营销风控,无人驾驶,智能工厂等实时计算要求高的场景或者上游数据变化快的场景中,当前的大数据分析系统无法支持增量更新,往往需要做全量的更新,耗时耗力。MatrixOne通过提供跨存储引擎的高性能全局分布式事务能力,支持条级别的实时增量更新,在保证极速分析性能的同时支持更新、删除和实时点查询。
-
不停服自动扩缩容
传统数仓无法兼顾性能和灵活度,性价比无法做到最优。MatrixOne基于存算分离的技术架构,支持存储节点与计算节点独立扩缩容,高效应对负载变化。
标签:引擎,存储,入门,数据库,初识,MatrixOne,数据,节点 来源: https://www.cnblogs.com/mklzl/p/16669559.html