如何使用 HBase/Bigtable 进行数据分析?

Posted

技术标签:

【中文标题】如何使用 HBase/Bigtable 进行数据分析?【英文标题】:How HBase/Bigtable can be used for data analysis? 【发布时间】:2019-05-30 11:54:07 【问题描述】:

从概念上讲,HBase/Bigtable 是键值存储。很多时候在阅读两者的文档时,都会提到它们可用于分析。但由于它们是键值对并且不支持 SQL 或类似 SQL 的语言,它们如何用于分析?

Cloud Bigtable 还擅长作为批处理 MapReduce 的存储引擎 操作、流处理/分析和机器学习 应用程序。 (source)

【问题讨论】:

我认为这里的关键词是“存储引擎”,而不是机器学习引擎本身。 从什么时候开始需要 SQL 来执行分析? 【参考方案1】:

您可以在 HBase 和 Cloud Bigtable 上使用 Hadoop MapReduce、Apache Spark 和 Apache Beam / Google Cloud Dataflow 等分析工具,例如,请参阅:

Dataflow connector for Cloud Bigtable Connect Apache Spark to your HBase database HBaseIO connector for Apache Beam BigtableIO connector for Apache Beam

此外,TensorFlow 与 Cloud Bigtable 集成以进行 ML 训练,例如,请参阅:

Using Cloud Bigtable as a streaming data source for TensorFlow TensorFlow APIs for accessing data in Cloud Bigtable

最后,您可以通过集成运行 SQL 分析,例如,BigQuery 可以对存储在 Cloud Bigtable 中的数据运行 SQL 查询; Apache Hive 可以对存储在 Apache HBase 中的数据运行 SQL 查询;例如,参见:

BigQuery + Cloud Bigtable federated queries Hive + HBase integration

【讨论】:

以上是关于如何使用 HBase/Bigtable 进行数据分析?的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop学习笔记—15.HBase框架学习(基础知识篇)

Hadoop快速入门

具有大量读写的海量数据的最佳数据存储

如何使用 ReactJs 对 Cloud Firestore 数据进行分页

如何使用 NSIndexPath (CoreData) 对数据进行分页

如何使用 jQuery 对 JSON 数据进行分页?