Apache Drill功能列表提到它可以从Google云端存储查询数据,但找不到任何有关如何执行此操作的信息。我已经在S3上正常工作,但怀疑我在Google云端存储方面错失了一些非常简单的东西。使用Google云端存储的Apache Drill
有没有人有Google Cloud Storage的Storage Plugin配置示例?
感谢
中号
Apache Drill功能列表提到它可以从Google云端存储查询数据,但找不到任何有关如何执行此操作的信息。我已经在S3上正常工作,但怀疑我在Google云端存储方面错失了一些非常简单的东西。使用Google云端存储的Apache Drill
有没有人有Google Cloud Storage的Storage Plugin配置示例?
感谢
中号
我设法查询使用Apache钻(1.6.0),谷歌的Dataproc群集上运行在谷歌云存储(GCS)实木复合地板的数据。 为了设置了,我采取了以下措施:
安装钻机,使访问的GCS连接器(这可以作为一个init脚本的dataproc,只要注意它不是真正的考验并依靠当地动物园管理员实例):
#!/bin/sh
set -x -e
BASEDIR="/opt/apache-drill-1.6.0"
mkdir -p ${BASEDIR}
cd ${BASEDIR}
wget http://apache.mesi.com.ar/drill/drill-1.6.0/apache-drill-1.6.0.tar.gz
tar -xzvf apache-drill-1.6.0.tar.gz
mv apache-drill-1.6.0/* .
rm -rf apache-drill-1.6.0 apache-drill-1.6.0.tar.gz
ln -s /usr/lib/hadoop/lib/gcs-connector-1.4.5-hadoop2.jar ${BASEDIR}/jars/gcs-connector-1.4.5-hadoop2.jar
mv ${BASEDIR}/conf/core-site.xml ${BASEDIR}/conf/core-site.xml.old
ln -s /etc/hadoop/conf/core-site.xml ${BASEDIR}/conf/core-site.xml
drillbit.sh start
set +x +e
连接到钻控制台,创建一个新的存储插件(称呼它,比如,gcs
),并使用以下配置(请注意我复制大部分来自s3配置,做了细微的修改):
{
"type": "file",
"enabled": true,
"connection": "gs://myBucketName",
"config": null,
"workspaces": {
"root": {
"location": "/",
"writable": false,
"defaultInputFormat": null
},
"tmp": {
"location": "/tmp",
"writable": true,
"defaultInputFormat": null
}
},
"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",
"extensions": [
"json"
]
},
"avro": {
"type": "avro"
},
"sequencefile": {
"type": "sequencefile",
"extensions": [
"seq"
]
},
"csvh": {
"type": "text",
"extensions": [
"csvh"
],
"extractHeader": true,
"delimiter": ","
}
}
}
查询使用以下语法(注意反引号):
select * from gs.`root`.`path/to/data/*` limit 10;
如果我在计算实例上创建钻取群集并尝试访问谷歌存储,我们该怎么做。 – sanjay
我相信你需要[GCS连接器](https://cloud.google.com/hadoop/google-cloud-storage-connector)。它预先安装在Dataproc中,我没有尝试在其他场景中使用它,例如使用Drill的“裸”计算实例。如果您使用Dataproc,会为您执行许多管理难题,其缺点是群集上运行其他不必要的服务,但根据我的经验,开销可以忽略不计。 –
,您是否找到了如何做到这一点?我试过邮件列表和推特,但没有回答:/ – Johan
您是否找到任何解决方案?我正在试图在我需要连接到谷歌云存储的计算实例上运行钻取群集? – sanjay