我在Crate 0.38.x中创建了一个表,其中包含具有整数,字符串和时间戳数据类型的列。我想从分隔的文本文件中将数据加载到此表中。是否有实用程序进行批量导入?抱歉,我在文档或Github上找不到一个
答案 0 :(得分:1)
为了从文件进行批量导入,可以使用COPY FROM语句(参见https://crate.io/docs/stable/sql/reference/copy_from.html)。但是只支持JSON格式的文件,因此您可能需要先转换文本文件。
不确定是否有计划添加对其他格式的支持,但如果您创建了一个请求该功能的github问题,您将在实施后获得反馈。
迁移的文档答案 1 :(得分:1)
我已经快速将数据从MySQL导入Crate 0.40,在MySQL DB的同一服务器上安装Ruby on Rails,然后使用Mysql2JSON gem(参见Mysql2xxx部分)。
Crate每个寄存器JSON文件需要一行。因此,您必须编辑输出,将[", ",", "]
替换为mysql2xxXX gem源中的", "/n", "
,以便在输出中使用这样的格式:
{"id": 1, "quote": "Don't panic"}
{"id": 2, "quote": "Would it save you a lot of time if I just gave up and went mad now?"}
使用Mysql2Json gem导出MySQL JSON信息后,您必须将文件上传到Create服务器并放入Crate控制台:
COPY table_name FROM 'file:///tmp/import_data/quotes.json'
答案 2 :(得分:0)
阅读: https://crate.io/docs/crate/reference/en/latest/general/dml.html#import-and-export
只需确保事先使用复制功能从json或csv导入数据集,就已经使用模式创建了表。