StoneDB:开源MySQL HTAP数据库及其演进计划(一)

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
应用实时监控服务ARMS - 应用监控,每月50GB免费额度
云原生网关 MSE Higress,422元/月
简介: StoneDB:开源MySQL HTAP数据库及其演进计划(一)

云原生实时数仓-StoneDB:开源MySQL HTAP数据库及其演进计划(一)

嘉宾信息
李浩 StoneDB首席架构师 StoneDB PMC


StoneDB:开源MySQL HTAP数据库及其演进计划(一)


内容介绍

一、 Who am I? A brief introduction of StoneStoneDB

二、Present of StoneStoneDB

三、Where StoneStoneDB will go?


今天给大家带来的分享是开源的MySQL htp数据库及其演进的计划,那么首先介绍一下StoneDB的应用场景是什么?我们为什么会做StoneDB这样产品?


一、Who am I? A brief introduction of StoneStoneDB

image.png

那么StoneDB是作为开源的MySQL http的数据库,其主要是为了解决在MySQL生态下面MySQL在app分析能力上的不足,那么从以下几个方面来讨论一下我们StoneStoneDB产品的优势或者是一些能力。
首先第就是完全兼容力MySQL时代,因为我们是基于MySQL上面做的htp数据库,因此,对于生态我们是完全兼容的,无论是从语法使用习惯上带来的好处是如果业务可以频发的迁移到我们自从StoneDB上面,第二个就是事务分析的一体化,因为我们是htp数据库,因此,无论是tp负载或者说我们均可以承载,同时在app上面,也保留了事物的acid的特性,第三个就是完全的开源,带来的好处是,我们可以去利用社区广大的一些人才资源,同时在互联网上存在着关于MySQL海量的一些解决方案,或者说一些知识库,这也是我们给我们StoneDB带来一个好处,就是我们所有遇到的问题,可以得到快速的社区的响应,以及相应的一些丰富的人才,再是十倍特性,主要是因为我们采用了触造级过滤以及知识网格的方式,同时,我们在执行的时候,会引入项量化执行的策略,因此带来十倍的性能,十倍的导入速度,那么是主要是通过预处理方式,将数据进行预处理,使得我们在导入的过程中无需经过层的一些解析,直接会把数据去加载到存储引擎上面,来获得十倍的导入速度,那最后是成本是,我们是完全进入MySQL生态的,因此,以前的解决方案,或者etf工具,或者运文的习惯,运维的人员的一些能力,支持他完全可以去兼容到我们,因此,总体t c o成本上可以最多给原来的1/10的成本。


1、产品架构

image.png

我们从产品的架构来讨论一下,上边是我们StoneDB的鉴临版本,另外是2.0版本,那么一在我们StoneDB中,我们引入了目的,劣势存储引擎,它主要的作用就是使得我们所有的app上的一些数据,会以列存的方式去存储在天目引擎上面,带来的好处在下面,会比较详细的去来分析一下,

 

2、数据组织


image.png

首先直观的好处就是我们在StoneDB上,一条查询涉及到一些大数据上的app的分析的时候,使得查询能力可以得到飞速的提升,那么从数据的组织上我们可以看出是采用的方式及我们在StoneDB上存在着行存和列存两种存储格式,那么主要是为了方面及引擎,那么,基于内存的存储引擎,就是我们所引入的新的天目存储引擎,

所有的数据是列存的方式进行组织,组织的方以列存的方带来好处就是可以对数据进行一些压缩,可以选择一些高效的压缩算法,可以进步,同时对于一些catch也是比较友好的,那么在查询的过程中,会利用各种针对于列运算进行一些并发的执行,使得我们查询的效率或者现场进一步的提升。
同时,在在查询扫描的过程中,创建索引,因为我们是利用测套集合知识网格的方式提供这样方式,不需要进行索引,给获得相对比较高效的,相较于MySQL来说,高效的app的处理的能力,从数据压缩的角度来看,由于我们是列存的方式,同时,每一列这种数据的类型,它的分布情况是比较比较比较有大量的一些冗余或者比较相似,为我们数据加缩提供了很好的使用的场景,所以因为支持多到20种以上的自信的压缩方法,你方式等压缩算法,从查询处理的部分来看,首先我们查询优化是基于知识网格的进行优化。


3、数据处理

image.png

那么就是说,在我们数据加载或者在执行的过程中,会构建知识网格,构建知识网格是为了在我们查询过程中,通过知识网格和塑造集来进行数据的减值,对于在查询中无关数据,会把它舍弃掉,我们只会关注相关的数据么带来的好处就是我们那io可以进入去节约。

我们在检索的过程中所涉及到的数据量的一些io,会大大的减少。


 4、数据导入

image.png

进一步会提高我们在查询处理方面的一些能力,再就是从数据导入方面看,刚才也提到了,我们导入是经过server层的一些处理直接是通过预处理,直接从二进制的方式导入天目引擎,好处就是说,与传统的逻辑导入的方式不同,那么逻辑导入方式,需要经过有层的一些sq解析,那么在解析包括这部分的处理过程中会消耗大量的cpu资源,因此双StoneDB的导入,是无需要经过的一些serve处理,带来的好处就是我们可以节约大量的cpu资源,使得我们cpu可以更好的利用到我们在真正的导入过程中,处理能力。

image.png

再就是所支持的部署方式,总共有以下几种部署方式,最简单的是基础方式,就是我们单节点单实例的部署方式,除了这种单节点的部署方式,主要是面向于中小的客户,要求不是特别高的情况下,如果需要对于高可用业务的一些稳定性有相关的要求的时候,可以采用高可用的部署方式,那么再可以提供读,读写分离部署方式,最后就是三节点的部署方式,那么接下来我们会介绍一下当前的情况。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9天前
|
存储 关系型数据库 MySQL
探索MySQL:关系型数据库的基石
MySQL,作为全球最流行的开源关系型数据库管理系统(RDBMS)之一,广泛应用于各种Web应用、企业级应用和数据仓库中
|
7天前
|
关系型数据库 MySQL 网络安全
Mysql 数据库主从复制
在MySQL主从复制环境中,配置了两台虚拟机:主VM拥有IP1,从VM有IP2。主VM的`my.cnf`设置server-id为1,启用二进制日志;从VM设置server-id为2,开启GTID模式。通过`find`命令查找配置文件,编辑`my.cnf`,在主服务器上创建复制用户,记录二进制日志信息,然后锁定表并备份数据。备份文件通过SCP传输到从服务器,恢复数据并配置复制源,启动复制。检查复制状态确认运行正常。最后解锁表,完成主从同步,新用户在从库中自动更新。
918 6
Mysql 数据库主从复制
|
7天前
|
缓存 运维 关系型数据库
数据库容灾 | MySQL MGR与阿里云PolarDB-X Paxos的深度对比
经过深入的技术剖析与性能对比,PolarDB-X DN凭借其自研的X-Paxos协议和一系列优化设计,在性能、正确性、可用性及资源开销等方面展现出对MySQL MGR的多项优势,但MGR在MySQL生态体系内也占据重要地位,但需要考虑备库宕机抖动、跨机房容灾性能波动、稳定性等各种情况,因此如果想用好MGR,必须配备专业的技术和运维团队的支持。 在面对大规模、高并发、高可用性需求时,PolarDB-X存储引擎以其独特的技术优势和优异的性能表现,相比于MGR在开箱即用的场景下,PolarDB-X基于DN的集中式(标准版)在功能和性能都做到了很好的平衡,成为了极具竞争力的数据库解决方案。
|
6天前
|
关系型数据库 数据库 RDS
利用DTS将自建mysql5.7版本数据库迁移至对应rds报错
利用DTS将自建mysql5.7版本数据库迁移至对应rds报错
29 0
|
10天前
|
XML 关系型数据库 MySQL
支付系统----微信支付19---集成MyBatis-plus,数据库驱动对应的依赖版本设置问题,5没版本没有cj这个依赖,mysql驱动默认的是版本8,这里是一个父类,数据库都有,写个父类,继承就行
支付系统----微信支付19---集成MyBatis-plus,数据库驱动对应的依赖版本设置问题,5没版本没有cj这个依赖,mysql驱动默认的是版本8,这里是一个父类,数据库都有,写个父类,继承就行
|
13天前
|
XML Java 关系型数据库
Action:Consider the following: If you want an embedde ,springBoot配置数据库,补全springBoot的xml和mysql配置信息就好了
Action:Consider the following: If you want an embedde ,springBoot配置数据库,补全springBoot的xml和mysql配置信息就好了
|
12天前
|
关系型数据库 MySQL 数据库
关系型数据库mysql数据增量恢复
【7月更文挑战第3天】
126 2
|
12天前
|
关系型数据库 MySQL Shell
关系型数据库mysql数据完全恢复
【7月更文挑战第3天】
83 2
|
12天前
|
存储 关系型数据库 MySQL
|
14天前
|
存储 关系型数据库 MySQL

热门文章

最新文章