【问题标题】:Fetch data from oracle and process using spark in emr cluster在 emr 集群中使用 spark 从 oracle 中获取数据并进行处理
【发布时间】:2018-10-27 21:15:20
【问题描述】:

我有一个大约有 30 个表的 oracle 表。我想将这些表中特定时间段的数据转储到 EMR 集群中,并运行我对数据的配置单元查询。我想使用 spark 和 AWS EMR 来执行此操作。这将是一个需要每 4 小时运行一次的计划作业。获取的数据量大约为 100 条记录(每 4 小时)。如何从 oracle 获取数据并对数据运行 hive 查询?

【问题讨论】:

    标签: oracle amazon-web-services apache-spark sqoop amazon-emr


    【解决方案1】:

    我会添加评论,但分数不够,所以我写在这里。

    如果我对您的理解正确,您希望每 4 小时从 Oracle 获取 +/- 100 行,对吗?如果是这样,为什么你需要使用 Spark 或 Hive 来做到这一点?您不能简单地直接在 Oracle 中每 4 小时使用这 100 行创建一个视图并直接查询它吗?需要担心的是,如果数据适合您的单台机器并且预计不会快速增长,则您不需要任何分布式解决方案。

    【讨论】:

    • 感谢您的回复。在 15 个表中每个表大约 400-500 行,在其他 15 个表中大约 0-100 行。我需要获取数据,进行一些转换(标记 npi 数据),创建一个 csv 文件并将这些文件推送到 S3 存储桶。
    • 那么我认为你应该能够独立完成。除非您希望将来必须处理 x1000 行或更多行,否则构建一个集群只是为了获取最坏的 9000 行,IMO 有点矫枉过正。您可以编写一个简单的 Python/Scala 程序,使用提供的函数(映射、过滤器...)进行转换,一个库生成 CSV,另一个库推送到 S3(AWS SDK 非常适合)。
    • 谢谢@bartosz25
    猜你喜欢
    • 2021-01-16
    • 2021-11-12
    • 2016-08-10
    • 2020-03-25
    • 2016-04-19
    • 2023-01-29
    • 1970-01-01
    • 2020-05-19
    • 1970-01-01
    相关资源
    最近更新 更多