全部產品
Search
文件中心

MaxCompute:外部表格概述

更新時間:Jun 19, 2024

MaxCompute支援使用外部表格功能查詢和分析儲存於OSS等外部儲存系統的資料。該機制使得使用者可以無需將資料匯入到MaxCompute內部儲存,直接對外部資料進行操作,從而提供了資料處理的靈活性和方便性。

背景資訊

MaxCompute SQL作為分布式資料處理的主要入口,可實現EB層級離線資料的快速處理和儲存。隨著巨量資料業務的不斷擴充,新的資料使用情境在不斷產生,MaxCompute計算架構也在不斷演化。MaxCompute原來主要面對內部特殊格式資料的強大計算能力,正一步步地開放給不同的外部資料。

現階段MaxCompute SQL處理的主要是以cfile列格式儲存在內部MaxCompute表格中的結構化資料。對於MaxCompute表外的各種使用者資料(包括文本以及各種非結構化的資料),您需要通過不同工具匯入MaxCompute表再進行計算。以OSS為例,如果您需要在MaxCompute中處理OSS上的資料,通常有以下兩種方式:

  • 通過OSS SDK或者其他工具從OSS下載資料,然後再通過MaxCompute Tunnel將資料匯入表裡。

  • 編寫UDF,在UDF裡直接調用OSS SDK訪問OSS資料。

但這兩種方法都有不足之處:

  • 第一種方法需要在MaxCompute系統外部做一次中轉,如果OSS資料量太大,還需要考慮如何並發來加速,無法充分利用MaxCompute的大規模計算能力。

  • 第二種方法通常需要申請UDF網路存取權限,還需要開發人員自己控製作業並發數,解決資料如何分區的問題。

因此,MaxCompute提供了外部表格來解決上述問題。外部表格的功能旨在提供除MaxCompute內部表格以外的其他資料的處理能力。通過一條簡單的DDL語句,即可在MaxCompute上建立一張外部表格,建立MaxCompute表與外部資料源的關聯,提供各種資料的接入和輸出能力。建立好的外部表格可以像普通的MaxCompute表一樣使用(大部分情境),充分利用MaxCompute SQL的強大計算功能。

說明
  • 使用外部表格功能時,外部表格的資料不會複製一份存在MaxCompute上併產生儲存費用。

  • 外部表格支援全量搜尋。

  • Tunnel功能及Tunnel SDK當前不支援外部表格操作。您可以通過Tunnel直接上傳資料到MaxCompute內部表,或者是通過OSS Python SDK上傳到OSS後,在MaxCompute使用外部表格做映射。

  • 您可以通過DataWorks配合MaxCompute對外部表格進行可視化的建立、搜尋、查詢、配置、加工和分析。詳情請參見外部表格

  • 外部表格在MaxCompute側只會產生計算費用,遵循MaxCompute計算資源計費規則。外部表格的資料不會儲存在MaxCompute,所以在MaxCompute不會有儲存費用,儲存費用請關注資料來源儲存側計費規則。在使用公網MaxComputeEndpoint串連使用外部表格時,會產生公網流量費和下載費用。MaxCompute費用詳情請參見計費項目與計費方式概述

外部表格樣本

您可以通過以下樣本,深入瞭解通過MaxCompute外部表格功能處理各種非結構化資料的方法:

相關文檔