ArgoDB 分布式闪存数据库

作者:yangjuan   日期:2020-01-02 点击量:

Transwarp ArgoDB是全新推出的一款分布式闪存数据库产品。它可以替代 Hadoop + MPP 混合架构,一站式满足企业对大数据平台的各种诉求。让企业更高效地使用大数据平台,从而更好地利用大数据的商业价值。

产品背景

随着大数据技术在企业中应用得越来越深、越来越广,用户的需求变得越来越复杂,主要体现在:离线业务与在线业务并存,分析型业务与检索型业务并存,结构化数据与非结构化数据并存。传统的大数据架构并不能很好的满足这些新需求,需要用到多种架构和多款产品,这直接导致平台复杂性急剧增加,系统响应时间变缓,客户成本上升,运维和实施成本上升。

软件的设计需要充分考虑硬件的特性,新的闪存技术为我们开拓了研发方向。从SAS硬盘,到SATA SSD,到PCIE-SSD,再到Memory,不管是吞吐也好,还是IOPS,性能都有着数量级的增长。

Transwarp ArgoDB就是一款面向未来全闪存服务器设计的数据库产品,从底层为适应闪存而设计了精巧的存储结构和高效的算法。由于ArgoDB出色的性能,在一套产品里就可以满足用户的多种复杂需求。以往客户根据不同需求,需要分别部署离线批处理数据仓库、实时数据分析平台、OLAP数据库、全文检索数据库等。而现在只需要简单的一个ArgoDB就可以满足客户的所有需求。

产品架构

Transwarp ArgoDB由核心组件和管理组件构成。核心组件包括分布式计算引擎和分布式存储引擎,管理组件包括Transwarp Container Operating System、Transwarp Manager和Transwarp Guardian。

分布式存储.png

核心组件

• 分布式计算引擎 

ArgoDB分布式计算引擎是面向数据集市及实时数据仓库的高性能引擎。针对闪存列存格式专门开发了纯向量化的计算引擎,既可以快速读取批量存储文件,也可以高速地响应少量数据的简单查询和复杂查询。内存数据格式的设计与存储适配,大程度地减少了数据在内存中转换的时间。同时,能够动态分析SQL结构,基于向量化的思想选取高效的运行时行列对象模型,在提升性能的同时显著节省内存使用。具备动态分析执行计划,剖析热点计算的能力,可以充分利用CPU硬件特性完成热点代码生成,还能够智能地缓存常用执行计划加速SQL执行。

• 分布式存储引擎 

ArgoDB将分布式存储引擎解构为通用分布式数据服务层与底层存储引擎两块,将底层存储引擎抽象为一组接口,任何实现这些接口的存储引擎都可以以插件的形式接入ArgoDB。基于分布式一致性协议Raft实现的存储引擎,利用它可以实现数据平台的稳定性和可靠性,并且可以使用标准化的手段统一运维管理所有的存储格式。通过基于闪存的列式存储格式,可以获得分析性能,同时加入多种辅助索引技术,极大地增强了数据的检索性能,能更好地适配混合型的业务场景。

管理组件

• Transwarp Container Operating System 

TCOS是为大数据应用量身订做的云操作系统,支持对ArgoDB一键式部署、扩容、缩容,同时也允许其他服务和大数据服务共享集群,从而提高资源的使用率。TCOS采用创新的抢占式资源调度模型,能在保障实时业务的同时,提高集群空闲时的资源占用,让批量作业和实时业务在互不干扰的情况下分时共享计算资源。

• Transwarp Manager 

Manager是用来配置、管理和运维ArgoDB集群的图形工具。用户只需通过几个步骤,就可以在x86服务器或云端平台上部署一个ArgoDB集群。Manager的运维模块提供告警、健康检测、监控和度量这四项服务。此外,Manager还提供了一些便捷的运维功能,例如,磁盘管理、软件升级和服务迁移等。

• Transwarp Guardian 

Guardian为ArgoDB提供集中的安全和资源管理服务。它支持LDAP和Kerberos,防止集群受到恶意攻击和安全威胁,而且还可以对资源做细粒度的ACL控制。其多租户资源管理模块可以按照租户的方式管理资源,并通过一个图形化工具为用户提供权限配置以及资源配置接口。

产品优势


1.png

完整的SQL支持

ArgoDB提供完整的SQL 2003支持,并且支持Oracle PL/SQL以及DB2 SQL PL。为了适配各种数据库语言,ArgoDB还允许用户设置数据库方言,目前可以很好的支持Oracle、DB2和Teradata。


2.png

分布式事务支持

ArgoDB针对数据仓库和数据集市类业务场景设计了Serializable的分布式事务算法,在不损失分析性能的前提下为业务提供ACID的保障。ArgoDB实现了串行化的事务隔离,并通Raft协议保证数据的一致性。

3.png

实时与批量数据接入

ArgoDB支持实时和批量两种数据导入方式。在线业务使用实时数据接入,保证数据时效性;数据仓库等离线业务使用批量数据导入方式,吞吐更高。


4.png

海量数据OLAP和离线分析

ArgoDB可以在PB级别的数据量上同时支撑离线分析和高并发的实时/准实时的数据集市类业务。当存储介质为高性能闪存盘时,ArgoDB的存储与计算能力将得到更大幅度的提升,拥有更大的性能优势。

5.png

支持内存/闪存/磁盘三级混合存储

ArgoDB支持内存/闪存/磁盘的三级混合存储,对一张表,DBA可以指定副本的存储策略,如一副本存储在闪存,两副本存储在磁盘。多级存储使得用户可以更好的在性能和硬件预算间找到平衡点。