全部產品
Search
文件中心

Realtime Compute for Apache Flink:FETCH_CONTENT

更新時間:Apr 08, 2026

下載給定URI中的檔案並以Bytes Array格式返迴文件內容

使用限制

僅Realtime Compute引擎VVR 11.6.0及以上版本支援FETCH_CONTENT函數。

文法

VARBINARY FETCH_CONTENT(VARCHAR uri)
VARBINARY FETCH_CONTENT(VARCHAR uri, INTEGER httpRetryCount)

入參

參數

資料類型

說明

uri

VARCHAR

該參數指定需要下載的檔案路徑。支援的URI schemes包括HTTP和Flink FileSystem所支援的Schema:

  • http:// or https:// : HTTP/HTTPS連結

  • oss:// : 阿里雲OSS路徑

  • hdfs:// : HDFS路徑

  • file:// : 本地檔案路徑

httpRetryCount

INTEGER

選擇性參數,僅在uri是HTTP連結時生效。此參數用於指定HTTP請求重試次數,預設是3次,重試httpRetryCount次後仍失敗,則拋出相關異常。

說明
  • 如果uri為NULL,則返回NULL。如果非NULL的uri下載失敗,則拋出相關異常。

  • 如果uri為OSS路徑,則需要配置OSS相關鑒權資訊,參考配置Bucket鑒權資訊

  • 如果httpRetryCount被指定為負數或者NULL,則會使用預設的httpRetryCount。

出參

資料類型

說明

VARBINARY

檔案內容

樣本1

  • 測試資料

    表 1. T1

    input

    uri(VARCHAR)

    1

    http://example.com/image_url

    2

    oss://example-bucket/example.pdf

    3

    NULL

  • 測試語句

    SELECT 
        id,
        FETCH_CONTENT(uri) AS `value`
    FROM 
        T1;
  • 測試結果

    id (INT)

    value (VARCHAR)

    1

    x'ffd8ffe00010......'

    2

    x'aaffd8ffe000......'

    3

    NULL

樣本2

  • 測試資料

    表 1. T2

    id (INT)

    uri(VARCHAR)

    1

    http://example.com/image_url

    2

    http://example.com/not_exist_image_url

  • 測試語句

    SELECT 
        id,
        FETCH_CONTENT(uri, 5) AS `value`
    FROM 
        T2;
  • 測試結果

    id (INT)

    value (VARCHAR)

    1

    x'ffd8ffe00010......'

    在處理不存在的URL時,會在重試5次後拋出異常:

    Caused by: java.io.IOException: HTTP request failed with response code: 404 for URL

相關文檔