Ibis 与 Spark 使用 DataFrame API 对分析数据仓库进行大数据处理?

问题描述 投票:0回答:1

想象以下场景:

  • 我在分析数据仓库中托管着非常大的数据集
    • 仓库在处理大型分析工作负载方面非常高效,并且可以任意扩展
  • 我需要以 CPU 密集型方式处理数据,这需要一次将大量数据加载到内存中
  • 我想使用DataFrame API(类似pandas或spark)

在执行此类任务时,在 IbisSpark 之间进行选择时,我应该考虑什么?

似乎核心区别在于,Ibis 的计算发生在数据仓库中,而 Spark 的计算发生在外部集群上。

Spark 似乎是更受欢迎的选择。然而,Ibis 听起来会更便宜/更方便:我可以使用我已经付费的计算(日期仓库本身),并且避免管理 Spark 集群。如果这是真的,我不明白为什么宜必思不会比 Spark 更受欢迎。

apache-spark etl ibis
1个回答
0
投票

Ibis 非常适合您描述的任务。 (我在宜必思全职工作)。

核心区别在于,Ibis 的计算发生在数据仓库中,而 Spark 的计算发生在外部集群上。

Ibis 对于计算发生的地点几乎没有任何意见。

我们支持规模截然不同的后端:

  1. pandas 后端(我推荐)可扩展到 RAM,因此很快就会崩溃。
  2. DuckDB 后端(我强烈推荐)可扩展到您的硬盘。
  3. Spark 后端可扩展至...任何您的计算硬件可扩展至的范围
  4. 云后端可扩展至...
    $CLOUD_SCALE
    (除了“大量数据”之外,很难确切地说出它们可扩展至什么)

在进行计算的内容与如何指定计算的问题上存在一些混淆。

是的,像 Spark 这样的系统在集群上运行,但实际上任何现代的“网络规模”数据仓库也是如此。像 Spark 这样的系统和基于云的数据仓库之间的主要区别在于管理它的团队/人员/系统。

我想说的是,在我非常有偏见的观点中,无论哪种情况你都应该使用 Ibis:Ibis 与 Spark 和一堆基于 SQL 的现代数据仓库一起工作。

© www.soinside.com 2019 - 2024. All rights reserved.