【问题标题】:Sqoop functionality has been removed from DSESqoop 功能已从 DSE 中删除
【发布时间】:2019-04-29 07:59:46
【问题描述】:

我是 cassandra 的新手。在这里,我正在尝试使用 sqoop 将整个 MYSQL 数据库传输到 cassandra。但在所有设置之后,当我执行以下命令时。

bin/dse sqoop import-all-tables -m 1 --connect jdbc:mysql://127.0.0.1:3306/ABCDatabase --username root --password root --cassandra-thrift-host localhost --cassandra-create-schema --direct

我收到以下错误。

Sqoop 功能已从 DSE 中删除。

它说 sqoop 功能已从 datastax 中删除。如果它被删除了,请问有没有其他方法可以做到这一点?

谢谢

【问题讨论】:

    标签: mysql cassandra sqoop datastax datastax-enterprise


    【解决方案1】:

    您可以使用 Spark 传输数据 - 这应该很简单,例如:

    val table = spark.read.jdbc(jdbcUrl, "table", connectionProperties)
    table.write.format("org.apache.spark.sql.cassandra").options(
       Map("table" -> "TBL", "keyspace" -> "KS")).save()
    

    Databrick's documentation 中描述了 jdbc URL、选项等的示例,因为它们对于不同的数据库可能会有所不同。

    【讨论】:

    • 我是 spark 和 Java 的新手,但对 python 知之甚少。你能提供我的博客链接,帮助我在 python 的帮助下执行你的命令吗?谢谢
    • 只需阅读 Spark SQL 文档的前几页 - 它有 python 示例。 Spark Cassandra 连接器文档也有关于 python 的部分
    • 根据您的文档网址,我已在 spark 的帮助下成功连接到 MySql 和 cassandra。但现在每次我只需要传输新添加的记录。怎么做?有没有可用的 api 支持?
    • 这取决于您的数据库架构 - 只需使用仅选择/过滤新记录的查询...
    • 查看 Confluent 的博客 - 他们有几篇关于该主题的博客文章
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-23
    • 1970-01-01
    • 1970-01-01
    • 2012-12-23
    相关资源
    最近更新 更多