我正在嘗試爲Hadoop(hdfs)和Apache Drill製作存儲插件。 其實我很困惑,我不知道要爲hdfs://連接設置端口以及設置位置。 這是我的插件:在Apache Drill上製作存儲插件到HDFS
{
"type": "file",
"enabled": true,
"connection": "hdfs://localhost:54310",
"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"
},
"avro": {
"type": "avro"
}
}
}
那麼,是TI正確設置本地主機:54310,因爲我得到了與命令:
hdfs -getconf -nnRpcAddresses
,或者是:8020?
第二個問題,我需要設置位置?我的Hadoop文件夾是:
/usr/local/hadoop
,在那裏你可以找到在/ etc /斌/ lib中/日誌......所以,我需要對我的數據節點設置位置,還是?
第三個問題。當我連接到鑽,我經歷sqlline,比連接上我的飼養員像:這裏
!connect jdbc:drill:zk=localhost:2181
我的問題是,當我做存儲插件,當我連接與ZK來鑽去,我可以查詢hdfs文件嗎?
如果這是一個noob問題,我很抱歉,但我沒有在互聯網上找到任何有用的東西,或者至少它沒有幫助我。 如果你能解釋我一些東西,我會非常感激。
嗯,同時我做了hadoop多節點集羣。但是,我仍然無法查詢hdfs文件夾。我檢查了我的* core-site.xml *並在連接站點:'hdfs:// hadoop-master:9000'。我去了apache drill * dfs *插件和*連接*我寫了完全一樣的行。我還在hdfs中製作了文件夾,並將其命名爲** parquet **。當我試圖從鑽取查詢時,這是我的查詢:'SELECT * FROM dfs。'/ parquet/file.parquet';'我得到這個錯誤: *查詢失敗:PARSE ERROR: ,列21 1號線,列23:表 'dfs./file.parquet' 未找到 [wq9u34jnj1223在Hadoop主:31010] –
@Superbrain_bug檢查我的回答的最後一道防線。它的'符號不是單引號(')現在試試:'''SELECT * FROM dfs.' /拼花/ file.parquet';''' –
是啊是啊,我一直在用他,我想念打字,我SRY 此外,當我試圖使用'與HDFS SHOW FILES'://配置,我得到了這樣的錯誤:**查詢失敗:系統錯誤:故障處理SQL ** 但是,我可以切換模式。 –