在当今数字化时代,数据量呈爆炸式增长,数据库技术的重要性愈发凸显。2022 年举办的第十三届中国数据库技术大会上,天云数据的乔旺龙介绍了 Hubble Ai-Native 数据库的混合存储之列存技术,引发了广泛关注。
Hubble 数据库架构剖析
Hubble 数据库架构设计精妙,接口层丰富多样,涵盖管理接口、JDBC 接口、TinkerPop 接口等。这些接口各司其职,管理接口负责库表、权限、事务、分片等管理工作;JDBC 接口用于客户端与数据库交互;TinkerPop 接口兼容 Gremlin,方便操作图数据。
在执行层面,执行器承担着数据扫描、内存计算、任务管理等关键任务。存储层更是核心所在,其存储 / 索引引擎为数据的高效存储和快速检索提供坚实保障。并且,系统具备强大的资源管理能力,能够实现 AP/TP 任务合理分配、资源的精准收集与灵活分配,确保数据库在不同负载下都能稳定高效运行。
图逻辑计划融合的创新实践
Hubble 在图逻辑计划融合方面进行了大胆创新。通过巧妙的数据结构映射,将图的存储结构、索引结构与数据库的存储层、索引紧密结合。如此一来,图的节点、边、属性等元素可以自然地映射为数据库的表和字段,使得用户借助 SQL 语句就能轻松访问图的底层数据。不仅如此,图数据还能直接为 Hubble 的计算层所用,有力支撑各类图算法的运行。而且,该数据库兼容 Gremlin,并在其基础上扩展了 SQL 表达,这使得用户在操作结构化数据和图结构数据时更加得心应手,极大地提升了数据处理的灵活性和效率。
关键技术点:打造卓越性能
数据一致性保障
数据一致性是数据库的生命线,Hubble 采用 Raft 协议来确保数据的一致性。在这个机制下,每个分片都有对应的 Leader 和 Follower 节点。当客户端发起数据写入请求时,Leader 节点会将数据同步给 Follower 节点,只有当多数节点确认接收后,写入操作才被视为成功。这一过程有效避免了数据不一致的问题,即使在部分节点出现故障的情况下,数据库依然能够保持数据的一致性和完整性。
高并发存储与索引优化
在高并发存储方面,Hubble 基于 LSM KV 存储结构,并提供等值、哈希、范围三种 sharding 机制。这些机制能够根据数据的特点和业务需求,将数据合理地分布在不同的分片上,从而提高存储和查询的效率。在索引方面,Hubble 支持复合索引、倒排索引等多种类型,并引入索引选择评分机制。该机制能够智能地选择最匹配的索引进行查询,大大提升了查询速度,确保在高并发场景下数据库依然能够快速响应。
强大的事务处理能力
事务处理能力是衡量数据库性能的重要指标。Hubble 支持全局事务(2PC)和本地事务(LOCK),并采用 MVCC 机制来处理读事务。在写入操作时,当前采用锁机制来保证数据的一致性;读取操作则使用快照读取,存储层每次写入都是追加写入,通过覆盖机制实现数据变更。这种设计既保证了事务的原子性、一致性、隔离性和持久性,又提高了并发性能,使得数据库在处理大量并发事务时能够游刃有余。
混合实现与资源精细管理
Hubble 在技术实现上采用混合架构,融合了索引算法优化、AP 资源控制、列存储、内存计算等多种技术。在资源管理方面,提供 FIFO Scheduler 和 Fair Scheduler 两种调度模式,用户可以根据任务的优先级和业务需求进行灵活选择。同时,系统能够实时监控每个 shardserver 的 CPU 和内存使用情况,以及每个任务的资源占用情况,从而实现资源的精细化管理,提高资源利用率。
性能优化全方位策略
为了进一步提升性能,Hubble 采取了一系列优化措施。在压缩方面,支持 snappy、gz、izo、iz4 等多种压缩格式,有效减少数据 IO。在线程调度上,线程启动快速,资源占用少,启动灵活,能够支持更多并发。在存储方面,表可以采用列式存储,这种存储方式能够实现连续的 IO 操作,减少随机读取。并且,Hubble 可以对数据进行预先统计,根据统计值和数据分布情况使用 boolfilter,减少数据提取量,从而提升 AP 场景的性能。
应用场景与使用价值凸显
在传统数据集市和银行数据建设领域,Hubble 有着广阔的应用前景。传统数据集市往往面临数据处理速度慢、报表生成不及时等问题。在银行场景中,贷款审批流程耗时过长、客户信息更新不及时等问题严重影响业务发展。Hubble 凭借其强大的性能和灵活的数据处理能力,能够实现高效的 OLAP 分析,满足业务驱动的数据分析需求。无论是实时查询、数据即席服务,还是历史数据和实时数据的在线服务,Hubble 都能出色完成任务,有效解决了数据迁移、加工性能、开发复杂度等一系列难题。
在行业数据中台场景下,Hubble 同样发挥着重要作用。它能够与多数据源系统协同工作,对实时流数据进行处理和分析。通过与 Kafka、Flink 等技术结合,实现数据的快速采集、传输和处理。同时,借助其图计算能力,能够进行人物画像、实时预警等操作,为企业提供更具价值的数据洞察,助力企业做出更明智的决策。
Hubble Ai-Native 数据库凭借其独特的架构设计、创新的技术实现和广泛的应用场景,为数据库领域带来了新的活力和解决方案。随着数据量的不断增长和业务需求的日益复杂,相信 Hubble 将在未来的数字化建设中发挥更加重要的作用。

1651

被折叠的 条评论
为什么被折叠?



