如何将动态数据加载到cassandra表中?如何读取csv文件与标题也?

nnt7mjpx  于 2021-10-28  发布在  Cassandra
关注(0)|答案(1)|浏览(464)

我想把csv文件(它不断变化的列)加载到cassandra表中?文件有时有10列,有时有8列,根据这个,我如何将数据插入到cassandra表中?
使用scala或批处理命令加载有什么方法吗?
如何读取csv文件与标题也?

zsbz8rwp

zsbz8rwp1#

这里有很多选择。您可以使用datastax驱动程序之一编写自己的解决方案,也可以使用cqlsh copy命令或datastax批量加载工具。
源文件更改格式的事实在这里给您带来了一点麻烦,假设您对必须加载的文件没有任何控制权,那么在每个基中,您将需要创建一些东西,最初解析文件或将其转换为具有相同列数的通用格式。
例如,如果您使用shell,那么可以使用 awk 然后把你的行动建立在这个基础上。一个简单的例子 bash 要计算列数:

$ cat csv.ex1
apples,bananas,grapes,pineapples

$ cat csv.ex2
oranges,mangos,melons,pears,rasberries,strawberries,blueberries

$ cat csv.ex1 | awk -F "," '{print "num of cols: "NF}'
num of cols: 4

$cat csv.ex2 | awk -F "," '{print "num of cols: "NF}'
num of cols: 7

一旦你有了这个,你应该能够解析或转换你的文件,并相应地加载到Cassandra你会与任何其他csv文件。

相关问题