我在我的hdfs上有一個簡單的管道分隔文件(newfile.txt),我已經正確配置了我的polybase。我很難用Polybase將這個文件導入到我的SQL Server中。下面是查詢:SQL Server 2016 polybase錯誤使用hadoop
首先被創建的外部文件格式:
CREATE EXTERNAL FILE FORMAT TextFile
WITH (
FORMAT_TYPE = DELIMITEDTEXT
, FORMAT_OPTIONS (Field_Terminator = '|',
USE_TYPE_DEFAULT = TRUE));
其次,將創建用於Hadoopcluster數據源:
CREATE EXTERNAL DATA SOURCE HadoopCluster
WITH (
TYPE = HADOOP,
LOCATION = 'hdfs://10.153.14.11:8020'
)
最後,創建外部表,其從hdfs導入數據:
create external table tmpExternal
(
patientEncounter varchar(8000),
PtAcctNo varchar(200))
with (location = '/user/newfolder/',
data_source = HadoopCluster,
file_format = TextFile,
reject_type = value,
reject_value = 0);
運行上面的查詢後,這裏是我最終得到了錯誤:
消息596,級別21,狀態1,行26
因爲會議是在擊殺狀態 無法繼續執行。消息0,級別20,狀態0,行26
當前命令發生嚴重錯誤。如果有的話,結果應該被丟棄。
我相信磁盤空間沒有問題。請協助。
更新: 正在使用HDP 2.5版本。我已成功安裝了Polybase,這是我嘗試從hdfs導入的第一個外部表。
txt文件格式有2行2列:
1234 | ABCD
5676 | EFGH
你能張貼一些樣本數據嗎?此外,你是否[安裝並啓用](https://docs.microsoft.com/en-us/sql/relational-databases/polybase/get-started-with-polybase)Polybase?你有其他的外部表是否能夠成功工作,或者這是第一個嗎?在安全方面,你如何連接? Hadoop安裝的版本是什麼(Hortonworks HDP x.x或Cloudera CDH)? – wBob
您的外部數據源定義中沒有'CREDENTIAL'? – wBob
更新:正在使用HDP 2.5版本。我已成功安裝了Polybase,這是我嘗試從hdfs導入的第一個外部表。 格式txt文件的有2行2列: 1234 | ABCD 5676 | EFGH – user3838498