1

我正在实现 Lambda 架构,分别对批处理层和速度层使用 spark 和 spark 流。到目前为止,我将批处理视图和实时视图都存储在 HBase 中,但存储在不同的表中。

我被困在如何合并批处理视图生成的批处理视图和速度层生成的实时视图,以便进行查询。怎么做才对?我是否应该将它们转储到同一个 HBase 表中,然后客户端直接查询 HBase?

4

1 回答 1

0

首先,我认为 HBase 不是实时视图的最佳选择,因为重负载的随机读/随机写并不是 HBase 最强大的一面。

无论如何,一种方法可以是以下:

  • 在 Spark 中缓存批处理视图作为DataFrame/DataSet例如
  • 通过 Spark 实时获取并将其表示为DataFrame/ DataSettoo
  • 在需要时创建适当的管道以合并这些结构,例如根据 UI 的请求等。

可以在我的 github 中找到非常简化的流程

于 2016-05-28T06:46:14.783 回答