初识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从入门到实践01——初识MatrixOne的更多相关文章

  1. MatrixOne从入门到实践03——部署MatrixOne

    MatrixOne从入门到实践--部署MatrixOne 前两章节我们简单介绍了MatrixOne和源码编译了MatrixOne.本章节将使用不同的部署方式,来部署MatrixOne的服务. 注意:不 ...

  2. MatrixOne从入门到实践02——源码编译

    MatrixOne从入门到实践--源码编译 ​ 在部署MatrixOne前,我们可能会比较纠结使用哪个版本合适,MatrixOne在github上有各个版本的Releases,包含源码包和适用于Lin ...

  3. MatrixOne从入门到实践08——SSB性能测试

    MatrixOne从入门到实践--SSB性能测试 SSB 星型模式基准测试是 OLAP 数据库性能测试的常用场景,通过本篇教程,您可以了解到如何在 MatrixOne 中实现 SSB 测试. 测试环境 ...

  4. MatrixOne从入门到实战04——MatrixOne的连接和建表

    MatrixOne从入门到实战--MatrixOne的连接和建表 前景回顾 前几篇文章,为大家介绍了MatrixOne这个产品,以及编译.部署MatrixOne的服务. 直通车: MatrixOne从 ...

  5. 081 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 06 new关键字

    081 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 06 new关键字 本文知识点:new关键字 说明:因为时间紧张,本人写博客过程中只是 ...

  6. 080 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 05 单一职责原则

    080 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 05 单一职责原则 本文知识点:单一职责原则 说明:因为时间紧张,本人写博客过程中只是 ...

  7. 079 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 04 实例化对象

    079 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 04 实例化对象 本文知识点:实例化对象 说明:因为时间紧张,本人写博客过程中只是对知 ...

  8. 078 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 03 创建类

    078 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 03 创建类 本文知识点:创建类 说明:因为时间紧张,本人写博客过程中只是对知识点的关 ...

  9. 077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象

    077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象 本文知识点:类和对象 说明:因为时间紧张,本人写博客过程中只是对知识点 ...

随机推荐

  1. 一寸宕机一寸血,十万容器十万兵|Win10/Mac系统下基于Kubernetes(k8s)搭建Gunicorn+Flask高可用Web集群

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_185 2021年,君不言容器技术则已,欲言容器则必称Docker,毫无疑问,它是当今最流行的容器技术之一,但是当我们面对海量的镜像 ...

  2. odoo14 button 事件调用python方法如何传递参数

    1 <field name="user_ids" 2 mode="kanban" 3 nolabel="1" 4 options=&q ...

  3. Serverless之Knative部署应用实例;

    1.什么是Knative? Knative是Google2018的Google Cloud Next大会上发布的一款基于kubernetes的Serverless框架. knative的目的是在kub ...

  4. java学习第二天面向对象.day08

    this 在方法中表示调用当前方法的对象,this与主方法中对象类名调用是同理的,也是去指向堆中的地址. this可以解决成员变量和形参的问题 使用构造器还是setter方法 构造器:在创建对象的时侯 ...

  5. tty的crash分析

    crash> btPID: 410629 TASK: ffff883fea379fa0 CPU: 10 COMMAND: "jupyter-lab"#0 [ffff8823c ...

  6. Taurus.MVC 微服务框架 入门开发教程:项目集成:4、默认安全认证与自定义安全认证。

    系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...

  7. IPV6属于自己专属公网IP

    有了公网IP就可以搭建网站 简单理解公网IP就是私人的服务器 搭建之前一定要注意!没有网络安全意识的不要随便搭建 如何搭建? 材料如下 支持IPV6的光猫 支持IPV6的路由器 支持IPV6的设备 方 ...

  8. 创建swarm集群并自动编排

    1.基础环境配置 主机名 master node1 node2 IP地址 192.168.***.1 192.168.***.2 192.168.***.3 角色     管理节点 工作节点 工作节点 ...

  9. day01-GUI坦克大战01

    JavaGUI-坦克大战 1.Java绘图坐标体系 坐标体系介绍:下图说明了一个Java坐标体系.坐标原点位于左上角,以像素为单位.在Java坐标体系中,第一个是x坐标,表示当前位置为水平方向,距离坐 ...

  10. Homework4

    书籍链接:https://www.ituring.com.cn/article/13466(why Software Development Methodologies Suck?) 问:读 why ...