摘要
作为一种面向列的、分布式的、高容错的数据库,HBase由于其容量大、随机读取快和优良的批量处理的性能,逐渐被制造业所采用。电网通常从多元数据源中产生大量的数据。与服务于关系查询的传统关系数据库不同,HBase中JOIN操作性能很低。在HBase的应用中,如何存储数据以保证JOIN运算和随机读取的充分性能是必须解决的关键问题。在本文中,我们提出了一种事件驱动型的HBase数据模型来解决这个问题。在我们的数据模型中,每一条数据记录都被定义为发生在电网中的唯一事件。来自各数据源的各类数据都可以在数据库中加以区分。因此,我们的数据模型可以存储由电网设备产生的多源数据。此外,我们通过在表中设计一个特定的RowKey,提高了集成在我们的数据模型中的JOIN运算操作从多个数据源读取数据的性能。我们还提出了一种包含了新型虚拟列族的方案,它解决了存储多源数据的兼容性问题。通过设计特定的限定符来实现虚拟列族。为了验证我们数据模型的有效性,我们在Hadoop平台上进行了实征性研究以比较我们的优化方案和原始方案。实验结果表明,我们的数据模型确保了优化后的方案比基于原始数据模型的方案更好。
-
单位国网江苏省电力公司信息通信分公司