特定行上的 Cassandra CSV
Cassandra CSV on specific row
我需要在cassandra中创建一个csv文件,它只会给出特定行和特定列的csv文件。
CREATE TABLE abcd (
a bigint,
b bigint,
c bigint,
d int,
e int,
PRIMARY KEY (a)
);
Select a,c,e from abcd where a in (1,4,5,6,7,8,9,.....);
如果我使用 COPY 命令,我可以 select 列,但我不能 select 行。如何在 cassandra 中获取 csv 文件,我可以从行和列中 select。是否可以得到这样的csv文件?
COPY
命令只是将完整的 table 复制到您需要的 .csv.
格式文件中。此处的文档涵盖了 COPY
命令的完整概要。 (假设您使用的是 Cassandra 2.0 或 2.1)
http://docs.datastax.com/en/cql/3.1/cql/cql_reference/copy_r.html
我会说你最好在这里使用一种开源驱动程序,如 Datastax python 驱动程序,这样你就可以更好地控制你的 select 语句,并且只提取您需要的行数。
https://datastax.github.io/python-driver/getting_started.html
这里还有一个你可能会觉得有用的工具,我见过很多人使用它来满足他们的需要:
https://github.com/brianmhess/cassandra-loader
希望对您有所帮助。
您可以使用 cqlsh capture
功能将结果输出到文件中。
然后通过 sed 传递结果:sed -i -e 's/|/,/g' /tmp/test.csv
(或您可以想出的任何其他包装器 :))
我需要在cassandra中创建一个csv文件,它只会给出特定行和特定列的csv文件。
CREATE TABLE abcd (
a bigint,
b bigint,
c bigint,
d int,
e int,
PRIMARY KEY (a)
);
Select a,c,e from abcd where a in (1,4,5,6,7,8,9,.....);
如果我使用 COPY 命令,我可以 select 列,但我不能 select 行。如何在 cassandra 中获取 csv 文件,我可以从行和列中 select。是否可以得到这样的csv文件?
COPY
命令只是将完整的 table 复制到您需要的 .csv.
格式文件中。此处的文档涵盖了 COPY
命令的完整概要。 (假设您使用的是 Cassandra 2.0 或 2.1)
http://docs.datastax.com/en/cql/3.1/cql/cql_reference/copy_r.html
我会说你最好在这里使用一种开源驱动程序,如 Datastax python 驱动程序,这样你就可以更好地控制你的 select 语句,并且只提取您需要的行数。
https://datastax.github.io/python-driver/getting_started.html
这里还有一个你可能会觉得有用的工具,我见过很多人使用它来满足他们的需要:
https://github.com/brianmhess/cassandra-loader
希望对您有所帮助。
您可以使用 cqlsh capture
功能将结果输出到文件中。
然后通过 sed 传递结果:sed -i -e 's/|/,/g' /tmp/test.csv
(或您可以想出的任何其他包装器 :))