日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

訪問OSS數(shù)據(jù)

更新時(shí)間:

本文介紹如何通過云數(shù)據(jù)庫ClickHouse查詢阿里云對(duì)象存儲(chǔ)OSS(Object Storage Service)數(shù)據(jù)以及如何寫入數(shù)據(jù)至OSS。

前提條件

  • 已開通OSS服務(wù)。如何開通,請(qǐng)參見開通OSS服務(wù)。

  • 已在云數(shù)據(jù)庫ClickHouse所在地域創(chuàng)建存儲(chǔ)空間(Bucket)。如何創(chuàng)建,請(qǐng)參見控制臺(tái)創(chuàng)建存儲(chǔ)空間。

  • 已上傳文件至OSS。如何上傳,請(qǐng)參見控制臺(tái)上傳文件。

    說明

    本文以1,tick,32,shanghai,http://example.com為示例數(shù)據(jù),存儲(chǔ)為test.csv。

  • 訪問OSS的賬號(hào)已具備對(duì)OSS對(duì)象的讀寫權(quán)限。如何設(shè)置權(quán)限,請(qǐng)參見訪問控制概述。

注意事項(xiàng)

  • 云數(shù)據(jù)庫ClickHouse支持訪問多種格式的OSS文件,除不支持Protobuf和CapnProto外,其他均支持,具體請(qǐng)參見ClickHouse支持的文件格式。

  • 請(qǐng)確認(rèn)OSS存儲(chǔ)空間(Bucket)與您的云數(shù)據(jù)庫ClickHouse集群在同一地域,并使用阿里云VPC網(wǎng)絡(luò)訪問OSS。

  • 通過云數(shù)據(jù)庫ClickHouse寫入數(shù)據(jù)至OSS,會(huì)覆蓋原來的OSS文件數(shù)據(jù)。

步驟一:登錄數(shù)據(jù)庫

  1. 登錄云數(shù)據(jù)庫ClickHouse控制臺(tái)

  2. 集群列表頁面,選擇社區(qū)版實(shí)例列表,單擊目標(biāo)集群ID。

  3. 集群信息頁面,單擊右上方導(dǎo)航欄的登錄數(shù)據(jù)庫。

  4. 登錄實(shí)例頁面,輸入數(shù)據(jù)庫賬號(hào)和密碼,單擊登錄

步驟二:創(chuàng)建OSS外表

  1. 創(chuàng)建OSS外表。

    • 21.8及以下版本的建表語法:

      CREATE TABLE <table_name> [on cluster default]
      (
      'col_name1' col_type1,
      'col_name2' col_type2,
      ...
      )
      ENGINE = OSS('<oss-endpoint>', '<access-key-id>', '<access-key-secret>', '<oss-file-path>', '<file-format-name>');
    • 22.8版本的建表語法:

      CREATE TABLE <table_name> [on cluster default]
      (
      'col_name1' col_type1,
      'col_name2' col_type2,
      ...
      )
      ENGINE = OSS('https://<bucketName>.<oss-endpoint>/<file-name>', '<access-key-id>', '<access-key-secret>', '<file-format-name>');

      參數(shù)說明如下:

      參數(shù)名

      描述

      table_name

      表名。

      col_name1,col_name2

      列名。

      col_type1,col_type2

      列類型。

      重要

      OSS外表的結(jié)構(gòu)類型需與OSS數(shù)據(jù)對(duì)應(yīng)。

      BucketName

      Bucket的名稱。

      oss-endpoint

      ECS的VPC網(wǎng)絡(luò)訪問(內(nèi)網(wǎng))的Endpoint。如何獲取,請(qǐng)參見OSS地域和訪問域名。

      重要

      請(qǐng)確保OSS存儲(chǔ)空間(Bucket)與您的云數(shù)據(jù)庫ClickHouse集群在同一地域。

      file-name

      文件名稱。

      access-key-id

      訪問OSS數(shù)據(jù)的AccessKey ID。

      access-key-secret

      訪問OSS數(shù)據(jù)的AccessKey Secret。

      oss-file-path

      文件的存儲(chǔ)路徑。一般格式為oss://<bucket-name>/<path-to-file>

      說明

      oss-file-path參數(shù)支持通過通配符進(jìn)行模糊匹配。更多信息,請(qǐng)參見通配符模糊匹配OSS的存儲(chǔ)路徑

      file-format-name

      文件的格式,本文為CSV。

    示例語句:

    • 21.8及以下版本的示例語句:

      CREATE TABLE oss_test_tbl on cluster default
      (
      id UInt8,
      user_name String,
      age UInt16,
      city String,
      access_url String
      )
      ENGINE = OSS('oss-cn-shanghai-internal.aliyuncs.com', 'LTAI5tDVcUKu2CbcBwhr****', 'WAcroHBcL7IVOK8FIHzNJy91Lc****', 'oss://testBucketName/test.csv', 'CSV');
    • 22.8版本的示例語句:

      CREATE TABLE oss_test_tbl on cluster default
      (
      id UInt8,
      user_name String,
      age UInt16,
      city String,
      access_url String
      )
      ENGINE = OSS('http://testBucketName.oss-cn-shanghai-internal.aliyuncs.com/test.csv', 'LTAI5tDVcUKu2CbcBwhr****', 'WAcroHBcL7IVOK8FIHzNJy91Lc****','CSV')
  2. 查詢OSS外表的數(shù)據(jù)。

    select * from oss_test_tbl;

    返回結(jié)果:

    ┌─id─┬─user_name─┬──age──┬───city─────┬─────access_url────────┐
    │  1 │  tick     │   32  │  shanghai  │   http://example.com  │
    └────┴───────────┴───────┴────────────┴───────────────────────┘

步驟三:寫入數(shù)據(jù)至OSS

insert into oss_test_tbl values(11, 'tick', 25, 'shanghai', 'http://example.com');

步驟四:查詢數(shù)據(jù)

云數(shù)據(jù)庫ClickHouse提供了表引擎和表函數(shù)兩種方法查詢OSS數(shù)據(jù)。

  • 通過表引擎查詢OSS數(shù)據(jù)。

    查詢OSS外表的數(shù)據(jù):

    select * from oss_test_tbl;

    返回結(jié)果:

    ┌─id─┬─user_name─┬──age──┬───city─────┬─────access_url────────┐
    │ 11 │  tick     │   25  │  shanghai  │   http://example.com  │
    └────┴───────────┴───────┴────────────┴───────────────────────┘
  • 通過表函數(shù)查詢OSS數(shù)據(jù)。

    • 21.8及以下版本的查詢語法:

      SELECT * FROM oss('<oss-endpoint>', '<access-key-id>', '<access-key-secret>', '<oss-file-path>', '<file-format-name>', '<col_name> <col_type>(,...)');
    • 22.8版本的查詢語法:

      SELECT * FROM oss('https://<bucketName>.<oss-endpoint>/<file-name>','<access-key-id>', '<access-key-secret>', '<file-format-name>', '<col_name> <col_type>(,...)');

      參數(shù)的詳細(xì)信息,請(qǐng)參見參數(shù)說明。

    示例語句:

    • 21.8及以下版本的查詢語句:

      SELECT * FROM oss('oss-cn-shanghai-internal.aliyuncs.com', 'LTAI5tDVcUKu2CbcBwhr****', 'WAcroHBcL7IVOK8FIHzNJy91Lc****', 'oss://testBucketName/test.csv', 'CSV', 'id UInt8, user_name String, age UInt16, city String, access_url String');
    • 22.8版本的查詢語句:

      SELECT * FROM oss('http://testBucketName.oss-cn-shanghai-internal.aliyuncs.com/test.csv', 'LTAI5tDVcUKu2CbcBwhr****', 'WAcroHBcL7IVOK8FIHzNJy91Lc****', 'CSV', 'id UInt8, user_name String, age UInt16, city String, access_url String')

      返回結(jié)果:

      ┌─id─┬─user_name─┬──age──┬───city─────┬─────access_url────────┐
      │ 11 │  tick     │   25  │  shanghai  │   http://example.com  │
      └────┴───────────┴───────┴────────────┴───────────────────────┘