做开源数据库,九章云极DataCanvas是认真的
https://p26.toutiaoimg.com/large/tos-cn-i-tjoges91tu/SibV8eWA3BB2xx中国正值企业数智化转型的时代拐点之际,企业数据规模出现爆炸性增长、数据类型愈发丰富、新数据应用场景深化等特点,云数据库、HTAP 数据库、开源数据库等新型数据库的出现,推动数据库范畴全新发展。
据中国信息通信研究院发布的《数据库发展研究报告(2021年)》表现,2020 年全球数据库市场规模为 671 亿美元,其中中国数据库市场规模为 35 亿美元,占全球 5.2%。预计到 2025 年,全球数据库市场规模达到 798 亿美元。
中国数据库发展潜力巨大,随着业界对国产基础软件自主创新的呼声逐渐高涨,越来越多科技公司投入数据库研发。克日,九章云极DataCanvas将自研新一代集分析与高并发服务一体的混合数据库DingoDB正式开源,笔者认为,这是国产数据库渐渐走出自身风格,形成独特流派的体现之一。
https://p6.toutiaoimg.com/large/tos-cn-i-tjoges91tu/SibV8iB7gfIVeO
兼顾数据分析和高频数据服务,DingoDB为数据智能而生
随着Hadoop 开源技能的成熟,越来越多开源大数据工具都可以用来为数据分析提速,助力大数据平台发展。但是工具栈的繁荣却没有解决最根本的症结,如何兼顾数据分析与高并发服务的的实时本领,始终是众多大数据开发者所要面对的一道难题。
我们知道数据访问是受局部性原理所支配的,现代硬盘、内存工作原理是当用户读某一区域的数据时,其邻近的数据也会被调入上一级高速缓存,读取邻近的数据服从会远比随机的数据访问快得多,因此现代数据库最本质的优化工作,是将有关联盘算需求的数据放在一起存储,在实际应用中高频数据服务与数据分析两种场景所必要的存储模型简直不同。
以金融场景为例,在银行实时生意业务场景中,数据访问是大多在数据行维度进行展开。如在存储生意业务中,对客户信息表中的特定一条记录进行多次访问,并对客户的姓名、帐户、手机号、密码进行识别验证,这种场景下以数据行为粒度进行数据的存储读取服从最高。
然而在数据分析生成报表的场景中,报表用户往往只关心总体情况,好比全行的存款总额、贷款总额等,此时数据以存储、贷款等列为粒度进行存取及关联盘算的效果最好。总结来说,生意业务型数据库处理速度要快,分析型数据库处理本领要高。
之前生意业务与分析的应用场景基本处于“井水不犯河水”的状态,但随着直播带货等新场景需求涌现,在直播中既要保证用户顺利完成生意业务,同时根据用户行为做实时分析、精确营销的需求不断涌现,在时代大潮的推动下,HSAP(实时分析数据库)数据库应运而生,集分析和服务为一体的开源数据库 DingoDB正是其中的代表之一。
对于营销、推荐场景中,企业对数据的时效性相对于数据的准确性要求更高。而企业的数据处理架构通常以Lambda为主,通过批盘算和流盘算的混合盘算引擎来服务企业数据处理。由于离线层和实时层引入的盘算引擎、存储引擎各不类似,潜伏的造成盘算效果不一致、数据散列冗余存储、难以维护等问题。
九章云极DataCanvas最新开源的DingoDB,高效支持高频修改和查询、实时交互式分析、实时多维分析等功能,兼具行列混存等技能创新,有用直击行业痛点,引领未来 HSAP 数据库发展。
https://p9.toutiaoimg.com/large/tos-cn-i-tjoges91tu/SibV8qW8mqM9VB
DingoDB混合场景的打开方式:行列混存+智能优化器
在直播带货、金融理财销售等场景,业务员可能仅有几分钟时间来争取客户,需根据客户行为快速做出反应,把握住转瞬即逝的营销时机。
但传统技能方案无法做到实时盘算,或很难保证明时盘算的准确性,数据准确性、时效性的高要求与体系实际的服务处理本领之间巨大的鸿沟,导致大数据工程师与产品司理之间永世无法达成协议。
DingoDB智能优化器实现行列优化选择的混合存储方案令人眼前一亮,之前业界有不少将行列进行混存,以综合行列存两者优势的探索,但对于联机生意业务场景而言,列式存储的写入性能低、难修改,最后退化成为行式存储。在通留宿间数据交换,将趋于稳固的生意业务数据转换到列式存储分析型数据库,进行数据价值挖掘,通过业务形态进行行列存数据的分别存储,在业务侧实现数据融合。
DingoDB 的行列混存方案是基于列存模式实现盘算列的快速序次读取,基于内存盘算和Arrow,实现数据的聚合高效分析。针对生意业务场景中,DingoDB通过行存模式实现数据的记录级定位,实现数据的点查询、更新、修改和删除操作,基于分布式一致性协议来实现行列的转换,保证行存副本和列存副本的一致性,云云一来,既保证了实效性又保证了准确性。
在联机生意业务完成进行数据分析时,DingoDB将用户输入的SQL通过智能优化器来生成最优的执行计划,并分配盘算使命。DingoDB体系内的Coordinator会对表级的元数据进行管理和存储,在进行SQL分析时,会基于执行计划和数据分布,提供最佳的数据存储格式。
如对聚合类的分析场景,优化器通过对SQL计划的分析,将SQL计划转变成分布式执行使命,基于使掷中的算子类型自动选择列存模式;对于记录级的修改和查询操作,会转变成行存模式,实现数据的点查、修改操作。针对用户的分析盘算场景,通过不同的优化器选择不同的数据存储格式,提供最佳的分析性能。
另外,DingoDB作为实时数字仓的底层存储,由实时数字仓演变出来的实时指标、实时大屏、实时报表等场景,均可通过 DingoDB 得到满足。
https://mmbiz.qlogo.cn/mmbiz_png/Pn4Sm0RsAuj8LM9nz263Fph8Wg08MUIWVERHRiat1CXZo5Czu0lmibSPKiczoqvvSVhW92WIutUXz3OKed6LO0p1Q/0?wx_fmt=png
DingoDB——逻辑架构
DingoDB答应用户通过直接 SQL 语句来定义 BI 大屏或者报表中的盘算逻辑,并由此实现企业核心业务指标的实时监测和盘算,而不必要再去关心数据的实效性及准确性问题。基于DingoDB强大的分析本领,可对企业数据进行实时多维分析,提供最客观的业务数据,为企业用户的决议做出强力支持,企业基于实时盘算的效果,可以实现核心业务的实时监控,并快速做出反应,实时分析+多维数据的方案完美地解决业务职员营销数据不快、不准的问题。
https://p5.toutiaoimg.com/large/tos-cn-i-tjoges91tu/SibV9897mQGxL0
DingoDB K-V神方案:实时高频更新
Hadoop 等用于数据分析的大数据技能栈内大多使用 Key-value 的存储方式,Key-value存储的特点就是擅长增量写入和查询,然而一遇到插入、更新就服从下降;Mysql 等用于实时生意业务的数据库通常使用 B+ 树为模型进行数据存储,但 B+ 树虽然容易建立索引,优化读取速度,但数据的规模受限,很难应对大数据规模条件下的高频服务查询、修改、删除等场景。
DingoDB 行存储数据库没有使用 B+ 树的数据存储方案,转而采用基于 LSM Tree 的 RocksDB 作为行存底层数据存储引擎,RocksDB将数据的随机写,转换成了磁盘上的序次写,具有很高的随机写吞吐本领。
在高频生意业务场景中,SQL 优化器将记录级的操作,转变成 RocksDB 中的记录级的点操作,可以实现数据记录的Upsert、Delete操作,实现高频更新。
这项创新技能在现实有广泛应用,如在手机银行积分兑换、支付宝信用分查询等场景中,用户需不断地调阅自身的历史生意业务记录,根据历史记录来决定本身后续的生意业务行为,借助 DingoDB 提供的高频点查、修改本领,完全可以让用户在刷积分时享受到丝丝顺滑的体验。
https://p6.toutiaoimg.com/large/tos-cn-i-tjoges91tu/SibV98uJ9Ubxoy
开源DingoDB,拓展企业数据新应用场景
专注自动化数据科学平台的连续开发与建设的九章云极DataCanvas,自研DingoDB基于智能优化器实现行列优化选择、多副本机制存算弹性扩展、高频点查、修改操作等创新技能,为行业提供前沿实时大屏、实时互动分析、多维实时数据分析、数据高频查询修改等数据新应用解决方案。信赖未来DingoDB不断创新,为企业低落体系数据使用成本,提升数据价值。
页:
[1]