我将cassandra作为docker容器运行,并尝试将csv文件导入到我的表中。我经常会遇到这样的错误: Failed to import 0 rows: IOError - Can't open '/Users/myFilePath/Desktop/data.csv' for reading: no matching file found, given up after 1 attempts
我确实有 data.csv
我桌面上的文件。
我的table是这样的:
create table mydata
(
Rank int primary key,
Title varchar,
Genre SET<text>,
Director varchar,
Actors SET<text>,
Year int,
Runtime_Minutes int,
Rating varchar,
Votes int,
Revenue_Millions varchar,
Metascore int
);
以下是我尝试导入文件的方式: COPY mydata (Rank, Title, Genre, Director, Actors, Year, Runtime_Minutes, Rating, Votes, Revenue_Millions, Metascore) FROM '/Users/myFilePath/Desktop/data.csv' WITH HEADER = 'true';
请让我知道我做错了什么。非常感谢你的帮助和时间。
1条答案
按热度按时间mhd8tkvw1#
最可能的原因是cassandra/cqlsh没有对桌面上的文件的访问权限—在最新版本的macos上,这种访问在默认情况下是禁用的。在应用程序设置中检查隐私设置。
我也建议不要使用
COPY ... FROM
,使用dsbulk工具-它针对csv和json格式的数据加载/卸载进行了大量优化,并且非常灵活。datastax博客有一系列关于dsbulk的文章:1、2、3、4、5、6