elasticsearch 使elasticsearch和bigquery协同工作,elasticsearch,google-bigquery,elasticsearch,Google Bigquery" /> elasticsearch 使elasticsearch和bigquery协同工作,elasticsearch,google-bigquery,elasticsearch,Google Bigquery" />

elasticsearch 使elasticsearch和bigquery协同工作

elasticsearch 使elasticsearch和bigquery协同工作,elasticsearch,google-bigquery,elasticsearch,Google Bigquery,我有一个web应用程序,在浏览器中显示分析数据,elasticsearch作为后端数据存储 一切都很酷,因为elasticsearch正在处理大约1TB的数据,搜索查询速度也非常快 然后,我们决定将来自所有服务的数据添加到应用程序中,接近1 PB,然后我们切换到bigquery。[是的,我们放弃了elasticsearch,开始直接查询bigquery] 现在我的应用程序的用户抱怨他们的查询速度太慢,他们花了几秒钟(4~10~15秒),而以前的显示时间不到一秒钟 当然,这里的大量数据是罪魁祸首,

我有一个web应用程序,在浏览器中显示分析数据,elasticsearch作为后端数据存储

一切都很酷,因为elasticsearch正在处理大约1TB的数据,搜索查询速度也非常快

然后,我们决定将来自所有服务的数据添加到应用程序中,接近1 PB,然后我们切换到bigquery。[是的,我们放弃了elasticsearch,开始直接查询bigquery]

现在我的应用程序的用户抱怨他们的查询速度太慢,他们花了几秒钟(4~10~15秒),而以前的显示时间不到一秒钟

当然,这里的大量数据是罪魁祸首,但我想知道是否有办法将elasticsearch带回游戏中,让elasticsearch和bigquery很好地结合在一起,这样我就可以从bigquery获得PB的存储空间,但仍然保留elasticsearch的lightspeed搜索

我确信我不是第一个面对这个问题的人,而是我相信我参加bigquery派对有点晚了,所以我应该能够通过解决所有问题来获得延迟进入的好处


如果您能为我指出正确的方向,请提前向我表示感谢。

这是我看到的客户部署的常见模式:

  • 使用Elasticsearch显示最近一天/一周的结果-任何适合Elasticsearch RAM的内容
  • 对其他所有内容使用BigQuery
通过这种方式,用户90%的查询都会得到次秒的结果,如果Elasticsearch无法在其资源中找到答案,他们也可以去任何他们想去的地方

我不确定你的用户界面是什么来获取数据的,但这就是需要部署这种逻辑的地方

(当然,随着技术的进步,连接和速度也会有所提高)

是吗?您正在运行什么类型的查询?1)使用BigQuery对大型数据集进行数据处理。根据您的搜索条件/要求,将处理后的数据集汇总/聚合为多个小数据集。2) 将小数据集推送到Elasticsearch。面向最终用户的应用程序将从elasticsearch进行查询。