常見的數據加載模式複製
了解常見的使用模式複製到文件來源的數據加載到三角洲湖。
有很多選項可用於使用副本。你也可以使用臨時憑證來加載數據複製結合這些模式。
看到複製到全部參考的所有選項。
創建複製到目標表
複製成
必須目標現有三角洲表。在磚運行時11.0及以上,這些表的模式是可選支持的格式模式演化:
創建表如果不存在my_table((col_1col_1_type,col_2col_2_type,…))(評論<table_description>](TBLPROPERTIES(<table_properties>));
注意,來推斷與複製到模式,您必須通過額外的選項:
複製成my_table從“/道路/ /文件”FILEFORMAT=<格式>FORMAT_OPTIONS(“mergeSchema”=“真正的”)COPY_OPTIONS(“mergeSchema”=“真正的”);
下麵的示例創建一個無模式表稱為δmy_pipe_data
和加載以豎線CSV頭:
創建表如果不存在my_pipe_data;複製成my_pipe_data從“s3a: / /桶/ pipeData”FILEFORMAT=CSVFORMAT_OPTIONS(“mergeSchema”=“真正的”,“分隔符”=“|”,“頭”=“真正的”)COPY_OPTIONS(“mergeSchema”=“真正的”);
用複製到加載JSON數據
下麵的示例加載JSON數據從五個文件AWS S3的表稱為δmy_json_data
。必須創建這個表複製成
可以被執行。如果數據已經加載的文件,不重新加載該文件的數據。
複製成my_json_data從“s3: / /桶/ jsonData”FILEFORMAT=JSON文件=(“f1.json”,“f2.json”,“f3.json”,“f4.json”,“f5.json”)——第二個執行不會複製任何數據以來第一個命令已經加載數據複製成my_json_data從“s3: / /桶/ jsonData”FILEFORMAT=JSON文件=(“f1.json”,“f2.json”,“f3.json”,“f4.json”,“f5.json”)
Avro數據加載和複製
下麵的示例加載Avro穀歌雲存儲數據使用額外的SQL表達式的一部分選擇
聲明。
複製成my_delta_table從(選擇to_date(dt)dt,事件作為測量,數量::雙從“gs: / /桶/ avroData”)FILEFORMAT=AVRO
加載到CSV文件副本
下麵的示例加載CSV文件從Azure代下湖存儲數據abfss: / / container@storageAccount.dfs.core.windows.net/base/path/folder1
到一個增量表abfss: / / container@storageAccount.dfs.core.windows.net/deltaTables/target
。
複製成δ。”abfss:/ /容器@storageAccount。dfs。核心。窗戶。淨/deltaTables/目標”從(選擇關鍵,指數,textData,“constant_value”從“abfss: / / container@storageAccount.dfs.core.windows.net/base/path')FILEFORMAT=CSV模式=folder1 / file_ [g] . csv”FORMAT_OPTIONS(“頭”=“真正的”)——下麵的示例加載CSV文件沒有頭ADLS Gen2使用副本。通過鑄造和重命名列的數據,你可以把你想要的數據模式複製成δ。”abfss:/ /容器@storageAccount。dfs。核心。窗戶。淨/deltaTables/目標”從(選擇_c0::長整型數字關鍵,_c1::int指數,_c2textData從“abfss: / / container@storageAccount.dfs.core.windows.net/base/path')FILEFORMAT=CSV模式=folder1 / file_ [g] . csv”
忽略腐敗文件同時裝載數據
如果你加載的數據不能閱讀由於一些腐敗問題,這些文件可以跳過設置ignoreCorruptFiles
來真正的
在FORMAT_OPTIONS
。
的結果複製成
命令返回多少個文件由於腐敗的跳過num_skipped_corrupt_files
列。這個指標也顯示了operationMetrics
列下numSkippedCorruptFiles
在運行描述曆史
在三角洲表。
腐敗不是跟蹤文件複製成
可以加載,所以他們在隨後的運行,如果腐敗是固定的。你可以看到哪些文件是腐敗的運行複製成
在驗證
模式。
複製成my_table從“/道路/ /文件”FILEFORMAT=<格式>(驗證所有]FORMAT_OPTIONS(“ignoreCorruptFiles”=“真正的”)
請注意
ignoreCorruptFiles
有磚運行時11.0及以上。