如何解决Spark-从数据库加载配置数据
我们很少有Spark应用程序(流和批处理模式)。我们在数据库中保存了一些配置数据(来自不同表)。在应用程序开始时,我们需要加载此数据(通常为50-100 MB,甚至添加一些它增长的缓冲区,不应超过1或2 GB)。 我们有2个选择:
- 使用jdbc将数据加载到 Scala 对象中的Map中-这将确保我们易于在每个执行程序上访问此数据,并且可以在 map / flatMap 中访问这些数据。 strong>在处理数据框中的每个事件/行时起作用。
- 作为Spark 数据集/数据框加载-这可能会使情况复杂一些,因为我们必须使用联接来获取具有主数据框的数据,然后将该数据传递给 map / flatMap 函数。
这两种方法的优缺点是什么。
我更喜欢#1,因为它可以简化代码而无需连接,并且可以在处理层(map / flatMap)中访问数据,但是想知道这种方法是否有严重的缺点。
推荐的方法是什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。