星环科技 TDH8.0 使用必读 :为什么你需要存算解耦的多模型数据管理平台

星环科技于 2021 年 3 月发布了星环极速大数据平台 TDH 的 8.0 版本。相信很多企业级数据平台的用户都对这款新产品非常感兴趣。
我们将用一系列文章,向您逐一介绍最新发布的 TDH8.0 全新功能和技术创新。帮助您更全面、深入地了解最新的大数据技术,更好地技术选型。
您也可以在星环科技官方视频号、星环社区服务号、以及 bilibili、腾讯视频等站点看到我们的视频。
存算一体 VS 存算解耦
1983 年甲骨文公司推出了第一代数据库产品。同一年,IBM 公司推出了第二代数据库产品 DB2。这些产品不局限于大型机上使用,也可以部署在小型机甚至 PC 上。当时的服务器硬件成本高昂,硬件算力、存储、网络带宽都十分有限。数据库产品集中在关系型数据库,集中处理高价值的数据。为了及时响应事务和查询的需求,软件性能优化时,需要极致的压榨硬件性能。

由于网络带宽的限制,多服务器间的信息交换十分受限。因此,数据库软件重点针对单服务器的 CPU、内存、磁盘等硬件在几种典型的固定配置下,进行极致优化。软件架构和算法,是存储与计算耦合在一起的,存算一体由此得名,其核心思想是通过存算一体达到性能上的极致优化。
再来介绍存算解耦。顾名思义,存算解耦将存储和计算解耦合,使存储和计算有各自相对的独立性。随着信息技术的发展,服务器的硬件成本逐渐下降,算力、存储容量、网络带宽不断增大,服务器间的数据交换效率不断提高。

在软件架构上,存算解耦使用分布式计算与分布式存储,确保计算和存储任务都能拆解成独立的小任务。在硬件架构上,存算解耦对计算和存储单元配置的限制很少,可以根据用户需要进行灵活的扩展,追求集群总体的高性价比。
计算机硬件、数据规模、用户需求的演变和存算解耦的主流化
回顾计算机硬件与网络的历史,从二十世纪七八十年代到今天,硬件的发展速度有目共睹。几十年间,CPU 计算能力,内存存储容量,永久存储容量、网络带宽都有了百万倍的提高。这促使用户通过集群化部署,分布式的架构,集合多台服务器的计算和存储能力来解决复杂问题。单台服务器很难解决的问题,就用多台服务器协同工作来解决,成为一种必然的趋势。
随着“大数据”概念被提出与实践,现在的一个企业或机构,往往要处理几十、几百 TB 数据,PB 级的数据也不罕见。

数据规模指数级增长的同时,数据的价值密度也有了分级分层的趋势。不同价值密度的数据,选用方案不同。核心数据通常选用高成本、高性能、高可靠的方案。外围的数据,往往选用低成本、性能与可靠性弱一些的高性价比的方案。
业务需求方面,早期由于硬件成本和硬件性能的限制,客户希望优先解决高价值核心场景问题。以“交易”为代表的事务型的关系型数据库首先取得成功。而到 2010 年前后,以 Hadoop 为代表的开源大数据极大的推动了新技术的发展。处理的数据涵盖结构化、半结构化、非结构化数据。场景涵盖交易型 OLTP、分析型 OLAP、数据仓库、数据集市、实时计算、综合搜索、图计算、图分析等多种场景。业务需求越来越多样化,就要求方案能灵活的按需增减数据模型,按需分配计算和存储资源。
小结
由于硬件成本的降低,网络带宽的提高,数据量的指数级增长,数据按价值密度分层管理,以及业务场景的多样化发展等一系列市场趋势,用户对大数据和数据库平台在灵活扩展缩减资源,灵活增减数据模型等方面提出了更高的要求。用户从追求单一场景、单机数据库的极致性能,向着总拥有成本更低、总体方案更灵活高效,集群整体性价比更高的方向发展。

存算解耦方案相比与存算一体方案而言,虽然在单机性能方面稍弱一些,但是在硬件的通用性、硬件资源配置的灵活性、按需扩容缩容能力、数据存储均匀性自动化管理等多个方面有明显优势。因此,我们认为存算解耦技术是大势所趋,会成为技术的主流。
怎样的存算解耦能够满足当今用户的需求
使用过开源产品的观众或多或少有这样的体会。明确的单一场景且数据量合适时,开源产品能满足基本需求。但需要多产品协同支持复杂场景时,技术运维难度就大大增加。如果业务还因市场变化而时长变化,大数据平台的整体调优就更加困难。
星环大数据平台支持几十 G 到 PB 级的大跨度数据量,且服务于多种客户场景和业务需求,所以灵活性是我们存算解耦技术的核心目标。

第一,确保能进行灵活的垂直扩展。用户升级服务器时,无论升级 CPU、GPU 等计算硬件,还是扩展内存、磁盘等存储硬件,或是计算存储同时升级扩展,都支持。
第二,确保能进行灵活的水平扩展。业务场景的数据量往往因市场变动,出现增长和萎缩。高性价比方案要能按需进行水平扩容、缩容,且支持一个一个节点的扩展。此外,需支持异构操作系统、异构硬件服务器协同工作。
第三,确保能灵活的增减数据模型,从而应对复杂多变的业务需求。创新型业务通常需要灵活的选择不同的字段和条件,探索性的进行跨项目、跨部门数据关联分析计算,再根据探索结果决定下一步的研究方向。由于创新业务无法事先预测,无法让每个数据库预留足量存储和计算资源。弹性的按需获取资源方式,更贴近业务复杂多变的用户需求。根据业务按需扩展数据模型,在统一的公共资源池中获取存对应的存储计算资源,在业务结束后将资源释放回公共资源池中。
明确了三个基本目标后,向大家介绍星环 TDH 8.0 存算解耦的技术实现。
TDH8.0 的存算解耦的技术实现
星环 TDH 8.0 是企业级一站式大数据综合平台。它提供了大数据存储、大数据分析、实时计算、综合搜索、数据挖掘等基础能力。能处理结构化、半结构化、非结构化数据,能处理实时数据和批量数据。为企业建设数据湖、数据仓库、数据中台提供基础的技术平台支撑,为企业数字化转型提供助力,让客户更便捷的进行数字化运营、数字化决策、数字营销等创新业务。

星环 TDH 采用了分布式计算、分布式存储技术。平台创造性的采用了简明的五层技术架构来实现存算解耦。这五层架构从下而上依次是资源调度层、存储管理层、存储引擎层、计算引擎层和计算接口层。每一层设计中都考虑了存算解耦的目标要求。
资源调度层 星环云原生操作系统 TCOS
资源调度层采用了统一的星环云原生操作系统 TCOS(Transwarp Cloud Operating System)。这款生产级的云原生操作系统,基于容器技术 Kubernetes 构建。提供了调度服务、网络服务、存储服务、负载管理等服务,满足了大数据分布式存储等有状态工作负载在编排、弹性、隔离、异构计算等方面的多种需求。

在扩缩容方面, TCOS 强大的编排技术保障了平台的计算引擎和存储引擎都可以独立的弹性扩缩容。
在调度方面,原生的 Kubernetes 调度器无法满足我们平台的应用需求。因此,关系型分析引擎 Inceptor,我们使用了大数据负载调度策略;实时流计算 Slipstream,我们使用了智能负载调度策略;分布式文件系统 TDFS,我们使用了存储负载调度策略。
此外,TCOS 隔离了因服务器硬件架构、操作系统的异构带给计算、存储层的不必要麻烦。通过 TCOS 对硬件和操作系统的适配和优化,就可以让存储、计算代码工作在异构的服务器上。目前的平台支持 X86、ARM、MIPS、Alipha 等不同 CPU 架构的服务器,也支持 CentOS、统信 UOS、银河麒麟、中标麒麟等不同操作系统。
存储管理层 统一的分布式文件系统和分布式数据管理系统
星环分布式文件系统,Transwarp Distributed File System,TDFS 与开源方案相比,使用 RAFT 协议解决高可用问题,不依赖 Zookeeper 等协调组件。同时,充分利用 NVME 存储介质高性能,构建元数据服务,解决 HDFS Name Node 元数据规模瓶颈问题,保障集群水平扩展能力向几百、几千节点规模演进。

星环分布式数据管理系统,Transwarp Distributed Data Management System,TDDMS 分为 Master 和 Tablet Server 两部分。Master 采用 3、5、7 节点的 RAFT Group 保障高可用性,负责元信息管理,读写分离管理。Tablet Server 负责数据分片与均匀分布管理,支持范围分片,哈希分片,支持分割与合并操作。与开源方案相比,提高了节点上限到几百几千。读写分离保障了数据分布变动时,不影响集群总体服务。在水平扩展时,自动化的分布管理无需用户数据重分布操作,保障产品持续服务能力。
存储引擎层 - 用 8 种存储引擎,支持 10 种数据模型
目前不同的场景的高性能仍然需要使用不同的数据存储结构保障,因此需要多种存储引擎保障性能。
与多个数据库简单对接的方案不同,TDH 平台将分布式文件管理和分布式数据管理等公共存储服务进行了统一。一方面我们通过多种存储引擎保障了高性能,另一方面我们通过统一的存储管理,保障了扩展的灵活性。

对用户而言,一开始的需求可能只做批量分析,后来业务变化可能增加全文搜索,这时用户只需要操作同一个平台,增加“搜索”数据模型,扩展相应的计算、存储资源,就能支持全文搜索。感受上一个产品拥有了多模型弹性扩展能力,十分便捷。资源也按需增减而不是长期预留,十分的经济高效。
统一的分布式计算引擎 Transwarp Nucleon
市场上许多方案针对不同场景使用不同计算引擎。星环 TDH 8.0 使用统一的计算引擎,各类算法都遵从一致的计算框架:逻辑计划、逻辑优化、物理计划、物理优化、执行引擎。同时也使用了许多优化技术,包括:基于规则的优化、基于物化的优化、基于代价的优化、向量化执行引擎等。

统一的计算引擎让产品根据数据模型自动选择最优算法、算子,保障高性能。而不是由用户人凭经验进行优化。用户使用更便捷,总体性能更有保障。此外,统一的计算引擎让跨库关联分析十分便捷,不需要数据跨库导入导出,也不用担心数据模型切换影响计算结果,最大程度的保障了计算弹性。
统一的 SQL 编译器 Transwarp Quark
计算接口层,星环开发了统一的 SQL 编译器 Transwarp Quark,确保星环平台中的各个数据库产品遵从一致的 SQL 规范。支持标准 SQL 语法;支持标准 JDBC、ODBC 连接;支持标准 Oracle、IBM DB2、Teradata 语法方言。客户即使切换数据库和业务场景,也不用担忧开发接口、编程语言不兼容的问题。统一的 SQL 让开发的代码可移植性强,技术对接成本低,人员学习成本低,能更好的应对复杂多变的业务需求。
总结
TDH8.0 使用了简明的 5 层架构,包括:资源调度层、存储管理层、存储引擎层、计算引擎、计算接口层。

在技术实现上,架构中每个层次的技术,都重点考虑了存算解耦的技术目标,允许计算和存储独立扩展,允许用户灵活的进行水平扩展和垂直扩展。此外,还支持按需增减数据模型,使用统一 SQL 降低学习和迁移成本,直接进行跨模型关联分析等。让用户应对各类业务变动时,更加轻松自如。
了解更多,请点击:
版权声明: 本文为 InfoQ 作者【星环科技】的原创文章。
原文链接:【http://xie.infoq.cn/article/2da56c31612ddfbeb86df1f33】。文章转载请联系作者。
评论