gpt4 book ai didi

scala - Apache Spark和域驱动设计

转载 作者:行者123 更新时间:2023-12-04 12:57:32 27 4
gpt4 key购买 nike

我有些抽象的问题。最近,我在Scala中使用Apache Spark(还包括流技术和SQL)很多。我的大多数Spark作业基本上将RDD/Dataframe从一个类移到另一个类,其中每个类对输入执行一些转换。

最近,我也一直在阅读有关域驱动设计的文章,这使我开始思考如何使用DDD对Spark程序进行建模。我要说的是,与使用DDD概念的非Spark代码相比,为Spark代码建模要困难得多(也许是因为它主要执行转换或IO)。我大概可以考虑如何创建一种普遍存在的语言,而不是如何在Spark代码本身中实际应用它。

我尝试谷歌搜索如何将Spark与DDD结合使用,但找不到任何相关信息,所以我想知道:

  • 我只是缺少关于如何在Spark代码上应用DDD概念的东西吗?
  • 也许Spark作业过于关注ETL,以至于它们实际上不需要使用DDD?如果不是这种情况,有人可以解释她/他如何在Spark代码中使用DDD概念吗?也许一些例子可能有用

  • 我希望这是一个合理的问题-如果不是,我深表歉意

    提前致谢

    最佳答案

    Spark的DSL和DDD是截然不同的抽象。您面临的挑战来自两个抽象之间的“距离”。这是复杂系统设计中的一个常见问题,它表明缺少一种将两者联系起来的抽象概念。在您的情况下,那将是非常适合DDD的抽象,然后通过DSL“生成” Spark转换。 Scala非常适合构建这样的抽象。有关可能的提示,请参阅:https://databricks.com/session/the-smart-data-warehouse-goal-based-data-production

    关于scala - Apache Spark和域驱动设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36308265/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com