我想将选定的数据从Cassandra导出到SQL。任何人都知道任何开源连接器或任何其他解决方法。仅供参考,两者都在不同的服务器上运行。 Cassandra正在3节点centos集群上运行,其中MSSQL在Windows上。
下面是我的表格结构:
CREATE TABLE EventsByLogDate (
Id text,
impression bigint,
detailView bigint,
photoView bigint,
btnSellerView bigint,
response bigint,
totalViews bigint,
logdate timestamp,
PRIMARY KEY (logdate, Id)
);
我想每天将数据从Cassandra导出到MSSQL。因此,在构建的复制命令中将不起作用,因为它不支持where子句。
答案 0 :(得分:1)
你可能会发现像Spark这样的东西在这里很有用。您可以将Spark JDBC Dataframes api和Spark Cassandra Connector用于Cassandra Dataframe api。
当您将数据转换为MySql表单时,这将使您可以灵活地对数据执行任何操作。
http://spark.apache.org/docs/latest/sql-programming-guide.html https://github.com/datastax/spark-cassandra-connector
答案 1 :(得分:-1)
Cassandra有一个COPY命令来执行导出或导入数据,但不是键空间的整个数据,只是表格的数据。
导出:COPY tablename TO'源路径'
COPY用户TO'/ opt / cassandra / data_backup'导入:COPY表名称FROM'源路径'
COPY用户FROM'/ opt / cassandra / data_backup'
您还可以指定列
COPY用户(id,name)TO'/ opt / cassandra / data_backup'
<强>参考强>:
http://docs.datastax.com/en/cql/3.1/cql/cql_reference/copy_r.html
http://www.datastax.com/dev/blog/ways-to-move-data-tofrom-datastax-enterprise-and-cassandra
祝你好运!