使用Spark读取Oracle数据库中的所有表

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

目标:从Spark中的oracle数据库中读取所有表。

调查结果:我已经编写了代码来读取单个表。我可以多次重复使用这个表来读取多个表,但是这将连接到我将读取的oracle数据库表。

val employees = sqlContext.load(
    "jdbc",
    Map("url" -> "url")",
    "dbtable" -> "tableName")
)

根据“dbtable”参数中的spark文档,我们只能拥有表名或任何子查询。我们有没有选择像sqoop import-all-tables in spark来读表?

scala apache-spark spark-dataframe sqoop
1个回答
0
投票

最近我遇到了相同的场景,我需要对Cassandra表进行备份。我们提供了一个解决方案,我们在Keyspace中列出了所有表名作为文本文件。我们编写了一个Shell脚本,从中我读取了该文件,并将键空间和表名作为参数传递给Spark代码。

注意 - 这不是一个好方法。 Sqoop适用于这种情况。

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