Redian新闻
>
华为自用的时序数据库开源啦,来看看水平怎么样?

华为自用的时序数据库开源啦,来看看水平怎么样?

公众号新闻
数十年来,时间序列数据库(TSDB)的使用在各个行业中都很普遍,特别是在金融和工业控制系统中。然而,物联网 (IoT) 的出现导致时间序列数据(简称时序数据)量激增,对数据库的性能和存储成本提出了更高的要求,从而促进了对专用时序数据库的需求。

面对遗留时序解决方案的架构过时、扩展性有限等问题,新一代时序数据库应运而生,它们采用了现代架构,可实现分布式处理和水平扩展,以及云或本地的灵活部署。

2022 年底,又一重磅产品加入了开源时序数据库这一赛道,并在短短一年内在 60 余家企业测试和生产落地,吸引了 70 + 来自国内外重点高校和企业的贡献者 ——openGemini,华为开源的分布式时序数据库,主要聚焦于海量时序数据的存储和分析,通过技术创新,简化业务系统架构,降低海量时序数据的存储成本,提升时序数据的存储和分析效率。

今天,我们邀请到了 openGemini 社区负责人向宇,一起来聊聊,他们的开源故事~

01 源自内部需求,逐步走向自研

openGemini 的研发,最开始也是源于华为自身的需求。

2019 年,随着华为云的成立,广州、上海、北京、贵州和香港等地的数据中心纷纷拔地而起,并陆续上线了 260 + 云服务,平均每天采集的监控指标数据达数 TB,原有大数据解决方案逐渐不堪重负。数据量越大,查询效率越低,数据存储成本持续上升,急需一款高性能、高扩展性的专用时序数据库。

在当时,并没有什么好用的、能跟得上需求发展的时序数据库产品。InfluxDB 还是单机版,国内 Apache IoTDB 和 TDengine 还远不能达到生产要求。因此,华为决心做自己的数据库,优化数据处理工作,解决眼下十分要紧的业务问题。在这样的背景下,openGemini 应运而生。

据向宇介绍,在技术选型上,他们一开始在开源 InfluxDB 的基础上进行集群化改造。但随着指标数量的增加和采集频率的提高,日增数据量已达数十 TB。这时,InfluxDB 自身架构的缺陷开始凸显,影响到系统的性能和稳定性。于是,他们选择了对架构进行重构,开始了 openGemini 内核的自研之路。

02 个性独特,性能抢跑

openGemini 自诞生起就跟华为自家业务的需求联系紧密,所以每一个设计都充满了实用的考量。具体来说,openGemini 区别于别的时序数据库,主要有 9 大 “个性”:

性能优势:在 openGemini 差异化竞争力中,高性能是最重要的一项。在海量数据场景下,openGemini 相比开源 InfluxDB,简单查询场景提升 2 倍多,中等查询场景提升 5 倍多,复杂查询场景提升 10 倍以上。相比其他同类开源产品,openGemini 同样具有明显性能优势。

官方公布的单机写性能如下(测试工具为 TSBS,相关测试细节请参考 openGemini 官网文档):

官方公布的 DevOps 场景下单机查询性能对比(平均时延,ms):

官方公布的 IoT 场景下单机查询性能对比(平均时延,ms):

除此之外,openGemini 在数据存储和数据分析方面推出一系列实用功能,以此构建更多差异化竞争力:

独特的分布式架构:openGemini 提供了单机和分布式集群两种版本,其中分布式集群采用的是 MPP 大规模并行处理分层架构,将计算引擎,存储引擎和元数据管理划分为独立的组件,分别是 ts-sql、ts-store、ts-meta 。不同组件支持独立横向扩展,使得面对复杂的应用场景也能灵活应对。

高基数引擎:高基数问题(也称之为维度灾难)会带来倒排索引膨胀,从而引起内存资源消耗过高、读写性能降低的问题,长期以来一直困扰着时序数据库的发展。openGemini 高基数引擎通过构建时序专用的稀疏索引,进而彻底解决了这一难题,非常适合在网络监控、金融风控、物联网、交通等领域使用。

文本检索:文本数据是一种常见的数据类型,openGemini 支持在文本数据之上创建索引,采用动态的学习型分词方法,支持精确、短语和模糊匹配,且具有内存资源占用少,检索效率高的优点。

流式聚合:流式聚合是一种前置聚合方式,一边写数据、一边对数据进行降采样,其目的是解决传统降采样方法从磁盘读取大量历史数据进行计算,造成 I/O 放大严重的问题。

多级降采样:对于存量的历史数据,传统降采样方式会保留历史数据明细。在某些场景下,历史数据明细并不重要,只需保留数据特征即可,多级降采样功能可以实现对历史数据明细的特征提取,并原地替换历史数据明细,可进一步降低 50% 的存储成本。

异常检测和预测:异常检测和预测是目前时序数据分析最成熟的应用之一,被广泛应用于量化交易、网络安全检测和数据中心、工业设备和 IT 基础设施的日常维护等场景中。openGemini 提供了一个异常检测库 ——openGemini-castor,封装了常见的 13 种异常场景的检测算法,具有检测速度快、准确性高、流批一体的优点,帮助应用提高数据分析效率。

数据冷热分层存储:支持将历史数据转存到对象存储上,可实现低成本方式本永久保留历史数据,还能支持大数据离线分析。【该功能计划 H2 对外发布】

数据可靠性:支持多计算副本,进一步提升数据可靠性。【该功能计划 H2 对外发布】

 

03 注重使用体验,入门更方便

openGemini 不仅性能够强,它独特的设计,在实际的应用中,还能带来很多舒适的体验:

在入门方面,openGemini 与 InfluxDB v1.x 的生态完全兼容,接口、生态工具等直接通用,InfluxDB 用户可以无障碍迁移。同时,openGemini 采用了跟 InfluxDB 一样的 Line Protocol,数据建模简单,且容易理解,对关系型数据库的开发者也很友好。最后,openGemini 使用类 SQL 查询语言,无需额外学习,上手容易。集群部署上,社区还提供了一键部署工具 Gemix,省去了大量的配置工作。

在操作系统方面,openGemini 目前已支持主流 Linux 系统(含 openEuler)、Windows 和 MacOS,应用开发调试更加方便。处理器支持 X86 和 ARM64 两种架构。

在云原生方面,openGemini 提供了 Dockerfile 和 Docker 镜像,支持 Docker、K8s、KubeEdge 等平台的部署。由于容器重新拉起后,IP 地址随之变化,openGemini 新增域名功能,确保集群节点在容器重启后依然可以保持连通。社区还创建了 openGemini-operator 项目,方便用户一键式容器化部署。openGemini 支持普罗米修斯远程读写,可以作为普罗米修斯的一个后端存储,解决它存储能力不足的问题。【btw:openGemini 还将直接支持 PromQL,目前正在开发中】

在可观测性方面,社区开发了 ts-monitor 组件,专门采集节点和内核指标,分为 19 个子类,260 余项,可搭配 Grafana 实现对 openGemini 运行状态的全面监控。例如 CPU 和内存利用率、写入带宽、写时延、写并发、QPS 等指标可以通过可视化界面一目了然,方便随时查看运行状况、数据库性能调优和精准定位问题。

04 经过内部实战考验,回馈开源

openGemini 作为时序数据库,目前最常见的使用场景就是物联网和运维监控,在处理海量数据这方面,有着普通数据库无法比拟的优势。同时,openGemini 作为华为内部的项目,已经经过了 “自家人” 的考验:

华为云 SRE 使用 openGemini 作为监控数据存储底座,全网共部署 25 套集群,最大集群规模 70 个节点,成功经受住了每秒 4 千万条数据写入和 5 万次的并发查询的实战考验。相比原有解决方案,在承载相同业务的情况下,较原系统端到端时延降低 50%,CPU 资源上可以节省 68%,内存资源可以节省 50%,硬盘资源可以节省 90% 以上。

华为云的工业物联平台,之前一直用的 InfluxDB 的单机版,自从切换到 openGemini 上来后,再也不用被吞吐量困扰了,端到端和查询性能提升了 3 倍,设备接入量提升到了百万级。

向宇介绍,openGemini 源自开源,从 InfluxDB 开源项目中受益良多,因此秉承开源的精神,将 openGemini 的全部代码开源,希望全球更多的企业和开发者从中获益,也希望通过开放的社区平台,和广大开发者一起,共同推动技术创新,共享开源成果。

目前,openGemini 只有开源版和云服务,并不打算涉足线下商业版本,且有意愿向基金会捐献。当下,社区尚有诸多未完善之处,接下来,社区将会进一步丰富 openGemini 的生态工具(诸如数据迁移工具、SDK、大数据生态集成等)、可视化管理界面、以及文档等等。

“目前,社区的技术规划总体上会围绕物联网、运维监控和可观测性这三个重要应用场景,加强相关技术生态兼容和内核能力建设,我们正在着手论证 openGemini 下一代的软件架构。” 向宇说。

“短时间内,openGemini 不会考虑工业相关场景,因为工业领域的业务场景非常复杂,实时性要求极高,工业软件厂商的护城河很深,时序数据库能做的事情有限。此外,社区缺乏行业背景,对这方面的场景还不够了解。之后,我们会考虑寻找一些工业领域的伙伴,比方说工业软件供应商、解决方案提供商等,一起去合作、完善。” 向宇说。

 

openGemini 官网主页: 
https://www.openGemini.org/

openGemini 开源地址: 
https://github.com/openGemini


热门文章

德国政府“又”从Windows迁移到Linux

开源副屏「操作系统」底层采用Electron,是生产力工具还是美丽的废物?

神级程序员Fabrice Bellard发布音频压缩工具TSAC

JetBrains全家桶2024首个大版本更新

从C++切换到Rust,开发效率提升两倍不止

⬇️ 长按二维码,启动!

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
TimeGPT首个时序大模型引爆新热点!股票跌了 99 %,巴菲特差点吓出心脏病!纽交所数据库 bug 造成万亿美元市值蒸发,技术专家:他们的 IT 水平不行熵泱——第十七章跨界造车一炮而红,来看看雷军的爆品思路毕业3年,在澳洲年薪8w是怎么样的水平呢,买房喘不过气,不知道该怎么办查询提速 11 倍,资源节省 70%,Apache Doris 在网易日志和时序场景的落地实践美军未来战争模式雏形呼之欲出威廉开口透露凯特最新情况!中国电商巨头将在伦敦上市,来看看你用过吗?第一个开源的大规模并行数据库突然 404,国内数仓市场或迎大变动嘉博环球:2024航空经济与管理数据库黄河流域发展数据库报告数据库的夏天!2024可信数据库发展大会如约而至,邀请你来!| Q推荐安远AI&北京大学:2024基础模型的负责任开源-超越开源闭源的二元对立:负责任开源的内涵、实践与方案报告天网恢恢,疏而不漏2024年8款数据库数据分析能力(TPC-H)真实性能评测,真有100倍差距扩散模型和Transformer引爆时序方向!从数据库开始,私募巨头的绿色新星诞生这样画时序图,真香!把纯正的美式教育 “搬到中国”,来看看这个由美国藤校教授领军的学术项目!CellAgent:LLM Agent 助力单细胞测序数据分析的重要突破丨AI 4 Science爱因斯坦把全人类带进阴沟,而特斯拉才能让人类重新走上光明大道GPT-5 体验首次曝光!发布时间也被剧透,来看看这些内幕消息ACL 2024 Findings | 视频大语言模型能理解视频中的时序信息吗?女儿自用2年的练眼工具,终于出了1秒就能用的版本东京自由行(6)上野公园央行取消自用汽车贷款最高比例限制,华为门店回应P70发布时间,台积电暂停台湾工厂建设,极氪回应IPO,这就是今天的其他大新闻!在美国做中产阶级得挣多少钱?来看看你在你的州是什么水平,各州差距巨大开源日报 | 微软AI程序员登场,马斯克开源Grok;Open-Sora全面开源离散化、对齐文本还是预训练,哪个才是 LLM 处理时序数据的关键?首个全开源时序预测基础模型:Zero-shot预测能力比肩从零训练最优模型又水一篇AI顶会!不知道硕士博士咋毕业的,来看看咋水的。康州郁金香刚盛开!且免费赠送十朵郁金香!还能游耶鲁,看水族馆!摆摆自用的国货洗面奶,建议人手一支,黑头脏东西退退退~历时 5 个月从零到一研发一款数据库产品,这些坑他们已经踩过了 |InfoQ 独家专访百度智能云向量数据库团队4月这几天一定要去STC!优衣库开了:又送咖啡又送礼品卡分布式数据库入门:以国产数据库 TDSQL 为例
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。