我是Apache Drill的再见。
情景如下:
我有一个S3存储桶,我在其中放置了名为test.csv的csv文件。 我已经在官方网站上安装了Apache Drill。
我按照本教程:https://drill.apache.org/blog/2014/12/09/running-sql-queries-on-amazon-s3/创建了一个S3插件。
我开始练习,使用正确的"工作空间" (使用:my-s3;),但是当我尝试从test.cav文件中选择记录时发生错误:
表' s3./test.csv'没找到。
任何人都可以帮助我吗? 谢谢!
答案 0 :(得分:4)
使用工作区的名称(如果使用的话)和USE命令中的后退标记,如下所示:
USE `my-s3`.`<workspace-name>`;
SHOW files; //should list test.csv file
SELECT * FROM `test.csv`;
使用dfs存储插件配置查询本地文件系统中的CSV,以排除导致问题的标题等问题。如果您还没有看到,page可能会有所帮助。
上面评论中提到的存储插件:
{
"type": "file",
"enabled": true,
"connection": "s3n://<accesskey>:<secret>@catpaws",
"workspaces": {},
"formats": {
"psv": {
"type": "text",
"extensions": [
"tbl"
],
"delimiter": "|"
},
"csv": {
"type": "text",
"extensions": [
"csv"
],
"delimiter": ","
},
"tsv": {
"type": "text",
"extensions": [
"tsv"
],
"delimiter": "\t"
},
"parquet": {
"type": "parquet"
},
"json": {
"type": "json"
}
}
}
可能这不相关。它是Amazon S3帮助的摘录,其中包含更多信息:
<property>
<name>fs.s3.awsAccessKeyId</name>
<value>ID</value>
</property>
<property>
<name>fs.s3.awsSecretAccessKey</name>
<value>SECRET</value>
</property>