【问题标题】:Import .csv file into cassandra将 .csv 文件导入 cassandra
【发布时间】:2013-08-12 03:27:32
【问题描述】:

我想将 CSV 文件导入 cassandra。当我在 cassandra cqlsh 上编写此命令时,出现错误: 命令是:

COPY table ( ID,  name) FROM 'table.csv' WITH HEADER = TRUE;

和错误:

Can't open 'table.csv' for reading: [Errno 2] No such file or directory: 'table.csv'

谁能告诉我这是什么意思?

【问题讨论】:

  • 您是否在“table.csv”所在的同一目录中运行cqlsh
  • 是的。我的“table.csv”在 cqlsh 所在的 cassandra/bin 目录中。 windows .csv 文件和 cassandra 之间有什么区别吗?我的“table.csv”文件是从 windows mysql 表导出的。
  • 我是说您是否在与您的文件相同的目录中运行cqlsh?因为您可以在cassandra/bin 以外的目录中运行cqlsh
  • 是的。我想我在与 .csv 文件相同的目录中运行 cqlsh 文件。
  • 它工作..提前谢谢..

标签: csv cassandra


【解决方案1】:

table.csv 文件应该在 cassandra 安装目录(你运行 cqlsh 的地方)。

文件名区分大小写,因此请检查原始文件名大小写。

【讨论】:

    【解决方案2】:

    确保你的本地目录应该是相同的,并且也有相同的文件。

    cqlsh.bat 192.168.1.xx -k [keyspace name] -e "COPY [domain] FROM 'filename' WITH HEADER=true"
    

    【讨论】:

    • 如果复制一个文件的几列,你会怎么做?
    【解决方案3】:

    在cassandra中,需要正确提及文件名(区分大小写)。

    使用pwd命令知道ubuntu中的当前路径,然后给出文件名。

    例如如果我执行 pwd 命令后的路径是/home/xyz/Docs

    那么cassandra复制文件的命令就是

    COPY table ( ID,  name) FROM '/home/xyz/Docs/table.csv' WITH HEADER = TRUE;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-16
      • 2014-08-04
      • 1970-01-01
      • 2014-02-03
      • 2013-08-09
      • 2015-09-01
      • 2016-03-25
      • 2018-07-18
      相关资源
      最近更新 更多