全部產品
Search
文件中心

:通過MaxCompute查詢和分析OSS資料

更新時間:Feb 28, 2024

部分應用可能每天都有大量的資料上傳至OSS,這些資料可能涉及超大文字檔的結構化分析。您可以通過MaxCompute的外部表格查詢功能,將OSS儲存的資料載入到MaxCompute進行分析。MaxCompute的資料查詢和分析工作效率可提升至分鐘級,協助您更高效、更低成本地挖掘海量資料的價值。

前提條件

  • 已建立OSS Bucket。具體操作,請參見建立Bucket

操作步驟

  1. 將物聯網採集的資料上傳到OSS。

    1. 準備資料。

      本地建立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
    2. vehicle.csv檔案上傳至華東1(杭州)地區examplebucket的demo/目錄下。具體操作,請參見上傳檔案

  2. 運行MaxCompute用戶端。

    具體操作,請參見運行MaxCompute用戶端

  3. 通過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/';
  4. 通過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         |
    +------------+------------+-----------+

常見問題

報錯:Accessing project '<projectname>' failed: ODPS-0420095: Access Denied - Authorization Failed [4002], You don't exist in project <projectname>.如何解決?

相關文檔

  • MaxCompute支援您在專案中建立OSS外部表格,與OSS上的目錄建立映射關係,您可以通過OSS外部表格訪問OSS目錄下的非結構化資料,或者將MaxCompute專案中的資料寫入OSS。更多資訊,請參見建立OSS外部表格

  • 如果您需要將MaxCompute表中的資料匯出到本地,便於離線查看資料。請參見運行SQL命令並匯出結果資料

  • 如果您不再需要保留表資料或MaxCompute專案,可以刪除表或MaxCompute專案,以免產生不必要的資源浪費及賬單費用。請參見刪除表或MaxCompute專案