基于HBase的工业大数据存储实战汽车can总线协议在物品追踪中的应用

基于HBase的工业大数据存储实战汽车can总线协议在物品追踪中的应用

随着工业4.0时代的到来,工业互联网和企业的智能化、信息化都将不断推进,传统的工业实时数据库和关系数据库已经难以完全胜任工业大数据的存储,以HBase为代表的NoSQL数据库正在蓬勃发展,其完全分布式特征、高性能、多副本和灵活的动态扩展等特点,使得HBase在工业大数据的存储上拥有强大的优势,打破了流程工业生产中的数据壁垒效应,促进了生产水平和管理水平的大幅提升。本期格物汇,就来给大家介绍HBase数据库及格创东智相关实战案例。

了解HBase

HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。它利用Hadoop HDFS作为其文件存储系统,将海量数据处理成结构化格式,从而实现快速查询与高效分析。虽然Google Bigtable是HBASE的一个灵感来源,但两者有许多不同之处,比如使用不同的协同服务:Bigtable使用Chubby,而HBASE则采用Zookeeper。

与传统数据库相比,HBASE具备多重优势:

线性扩展:随着数据量增多,可以通过增加节点来进行支撑。

数据持久性:通过hdfs上的备份机制确保了数据安全。

高速访问:通过zookeeper协调访问速度快。

HBase实战案例

为了更好地展示如何在人工智能场景中应用HBASE,我们可以参考某半导体显示企业为例,它需要设计一个快速查找面板特征系统。在该公司业务场景中,每个面板包含大量特征,这些面板被分组,并且每个组可能包含从一张到数千张面的图像。此外,每张图像都是3.2KB二进制编码后的base64字符串。现在他们希望根据组ID或组ID+面板ID找到对应信息。

原有方案: MySQL + OSS

目前,他们使用的是MySQL表(group)来保存各个组ID,以及OSS对象存储(face)用于保存所有图像特征。这意味着对于每个面板群体,都会在MySQL中创建大量行以保存这些关联信息。这导致查询过程变得复杂,因为它们需要先从MySQL读取大量行,然后再从OSS获取相应特征,这种链路延迟非常长,对于快速增长的事务需求来说是不够用的。

HBase解决方案

由于现有的设计存在两个问题——无法一次读取完整内容并且不支持动态列—-因此我们可以考虑使用更适合这种情况的大型项目,如Google Bigtable或Apache Cassandra。但是,由于成本因素,我们决定重新设计这个基于关系型模型(RDBMS)的解决方案,以便能够利用更多小规模项目提供的一般功能,同时保持成本低廉。此外,该团队还计划利用Column Families (CF) 的MOB(Medium-Sized Object)功能进行优化,因为它们知道绝大部分所需操作涉及较小数量的小文件(即MB级别),这使得MOB特别有用。此外,由于实际操作只包括插入新记录以及检索已有记录,所以不会对交易频率产生显著影响,从而进一步降低成本。最后,该团队计划根据用户请求更新配置以提高事务处理能力,同时减少内置缓冲区大小以减少内核资源消耗并避免过度写入磁盘,从而进一步提高效率。此外,还计划引入预分配策略,以最大限度地减少IO开销,并尽可能地平衡服务器负载。