部分應用可能每天都有大量的資料上傳至OSS,這些資料可能涉及超大文字檔的結構化分析。您可以通過MaxCompute的外部表格查詢功能,將OSS儲存的資料載入到MaxCompute進行分析。MaxCompute的資料查詢和分析工作效率可提升至分鐘級,協助您更高效、更低成本地挖掘海量資料的價值。
前提條件
已建立OSS Bucket。具體操作,請參見建立Bucket。
已授權MaxCompute訪問OSS。
您可以在登入阿里雲帳號後,單擊此處完成一鍵授權。
已建立MaxCompute專案。具體操作,請參見建立MaxCompute專案。
已安裝並配置MaxCompute用戶端。具體操作,請參見安裝並配置MaxCompute用戶端。
操作步驟
將物聯網採集的資料上傳到OSS。
準備資料。
本地建立vehicle.csv檔案,檔案包含的樣本資料如下:
1,1,51,1,46.81006,-92.08174,9/14/2014 0:00,S 1,2,13,1,46.81006,-92.08174,9/14/2014 0:00,NE 1,3,48,1,46.81006,-92.08174,9/14/2014 0:00,NE 1,4,30,1,46.81006,-92.08174,9/14/2014 0:00,W 1,5,47,1,46.81006,-92.08174,9/14/2014 0:00,S 1,6,9,1,46.81006,-92.08174,9/14/2014 0:00,S 1,7,53,1,46.81006,-92.08174,9/14/2014 0:00,N 1,8,63,1,46.81006,-92.08174,9/14/2014 0:00,SW 1,9,4,1,46.81006,-92.08174,9/14/2014 0:00,NE 1,10,31,1,46.81006,-92.08174,9/14/2014 0:00,N
將vehicle.csv檔案上傳至華東1(杭州)地區examplebucket的demo/目錄下。具體操作,請參見上傳檔案。
運行MaxCompute用戶端。
具體操作,請參見運行MaxCompute用戶端。
通過MaxCompute建立外部表格。具體操作,請參見建立表。
建立非分區表data_csv_external,樣本如下。
CREATE EXTERNAL TABLE IF NOT EXISTS data_csv_external ( vehicleId int, recordId int, patientId int, calls int, locationLatitute double, locationLongtitue double, recordTime string, direction string ) STORED BY 'com.aliyun.odps.CsvStorageHandler' LOCATION 'oss://oss-cn-hangzhou-internal.aliyuncs.com/examplebucket/demo/';
通過MaxCompute查詢外部表格。
執行如下SQL語句:
select recordId, patientId, direction from data_csv_external where patientId > 25;
輸出結果如下:
+------------+------------+-----------+ | recordId | patientId | direction | +------------+------------+-----------+ | 1 | 51 | S | | 3 | 48 | NE | | 4 | 30 | W | | 5 | 47 | S | | 7 | 53 | N | | 8 | 63 | SW | | 10 | 31 | N | +------------+------------+-----------+
常見問題
相關文檔
MaxCompute支援您在專案中建立OSS外部表格,與OSS上的目錄建立映射關係,您可以通過OSS外部表格訪問OSS目錄下的非結構化資料,或者將MaxCompute專案中的資料寫入OSS。更多資訊,請參見建立OSS外部表格。
如果您需要將MaxCompute表中的資料匯出到本地,便於離線查看資料。請參見運行SQL命令並匯出結果資料。
如果您不再需要保留表資料或MaxCompute專案,可以刪除表或MaxCompute專案,以免產生不必要的資源浪費及賬單費用。請參見刪除表或MaxCompute專案。