基于HBase的工业大数据存储实战interbus现场总线在物品管理中的应用

基于HBase的工业大数据存储实战interbus现场总线在物品管理中的应用

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

了解HBase

HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。它利用Hadoop HDFS作为其文件存储系统,将海量数据处理能力通过MapReduce框架实现。与Google Bigtable不同的是,HBASE使用Zookeeper作为协同服务,而不是Chubby。此外,尽管两者都是基于Bigtable设计,但它们在实现细节上有所差异。

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

线性扩展,可以根据需要增加节点进行支撑。

数据存储在hdfs上,有良好的备份机制。

通过zookeeper协调访问速度快。

HBase实战案例

为了更好地展示HBase在人工智能场景下的应用,我们以某半导体显示企业为案例,对于该公司如何利用HBase设计一个快速查找面板特征系统进行分析。

原有方案:MySQL+OSS

原有的业务需求主要包括两个方面:

根据组id查找该组下面的所有面板数据;

根据组id+面板id查找某个面板具体数据。

原有的解决方案是结合MySQL表(group)和OSS(对象存储),但这种方式存在以下问题:

MySQL不支持动态列,因此属于同一张面板组内面的每个单独特征被拆分成多行记录。

查询过程中需要从MySQL读取大量行并扫描,然后再从OSS中获取这些特征,这导致查询时间较长,大约10秒左右,不足以满足快速发展需求。

Hbase解决方案

为了解决上述问题,我们可以采用一种新的方法,即使用动态列支持万亿行百万列,并且允许对原始结构进行优化,同时还能保持二级索引功能。这意味着我们可以创建一个名为glass表,它具有MOB(Medium-SizedObject)功能用于小文件操作,如图片或文档等内容。在这个表中,每个单独的地理位置ID都会成为一个独立条目,而不是像之前那样被组织成单一条记录中的子项。这使得查询变得更加高效,因为只需简单地搜索指定ID即可获取相关的地理位置信息而无需遍历整个列表。