All Products
Search
Document Center

MaxCompute:Membaca dan Menulis Data Paimon di Lakehouse Berdasarkan FileSystem Catalog Menggunakan Proyek Eksternal

Last Updated:Jun 19, 2026

Artikel ini menjelaskan cara membuat Paimon Catalog berbasis Flink, menghasilkan data, lalu membuat proyek eksternal di MaxCompute berdasarkan Filesystem Catalog sehingga dapat langsung membaca data tabel Paimon.

Limitations

  • Hanya tabel dalam format Paimon yang didukung.

  • Penulisan ke tabel Dynamic Bucket tidak didukung.

  • Penulisan ke tabel Cross Partition tidak didukung.

  • Untuk informasi lebih lanjut, lihat Data type mapping.

Langkah-langkah Operasional

Langkah 1: Persiapan Data Sumber

Jika data tabel Paimon sudah tersedia di OSS, Anda dapat melewati langkah ini.

  1. Masuk ke OSS console, buat Bucket. Dalam contoh ini, nama Bucket adalah paimon-fs. Untuk detailnya, lihat Membuat Storage Space. Buat direktori baru bernama paimon-test di dalam Bucket tersebut.

  2. Masuk ke Flink console, lalu pilih Wilayah di pojok kiri atas.

  3. Klik nama workspace target, lalu di panel navigasi sebelah kiri, pilih 数据管理.

  4. Di halaman Catalog列表 di sebelah kanan, klik 创建Catalog . Di dialog 创建 Catalog yang muncul, pilih Apache Paimon, lalu klik 下一步 dan konfigurasikan parameter berikut:

    Parameter

    Wajib diisi?

    Deskripsi

    metastore

    Wajib

    Jenis penyimpanan metadata. Dalam contoh ini, pilih filesystem.

    catalog name

    Wajib

    Nama catalog sesuai keinginan, misalnya paimon-fs-catalog.

    warehouse

    Wajib

    Direktori gudang data yang ditentukan di layanan OSS. Dalam contoh ini, oss://paimon-fs/paimon-test/.

    fs.oss.endpoint

    Wajib

    Endpoint layanan OSS, misalnya untuk wilayah Hangzhou: oss-cn-hangzhou-internal.aliyuncs.com.

    fs.oss.accessKeyId

    Wajib

    Access Key ID yang diperlukan untuk mengakses layanan OSS.

    fs.oss.accessKeySecret

    Wajib

    Access Key Secret yang diperlukan untuk mengakses layanan OSS.

  5. Buat tabel Paimon berdasarkan Paimon Catalog dan tulis data ke dalamnya.

    1. Di panel navigasi sebelah kiri, pilih 数据开发 > 数据查询.

    2. Di tab 查询脚本, klik image, lalu buat skrip query baru.

      Jalankan kode berikut. Perhatikan bahwa Anda perlu menyesuaikan nama dalam kode sesuai dengan penamaan aktual:

      Catatan

      Karena Flink menggunakan Paimon Catalog, struktur organisasi data di file system akan mengikuti format baku Paimon Catalog, yaitu paimon_catalog_name/database_name.db/xxxx. Jika mesin lain digunakan untuk membaca/menulis data Paimon di direktori OSS tersebut, struktur tersebut juga harus diikuti, dan hanya data dalam format Paimon yang boleh disimpan. Jika tidak, sistem akan menganggapnya sebagai data abnormal dan menghasilkan error.

      CREATE TABLE `paimon-fs-catalog`.`default`.test_tbl (
          id BIGINT,
          data STRING,
          dt STRING,
          PRIMARY KEY (dt, id) NOT ENFORCED
      ) PARTITIONED BY (dt)
      WITH (
          'bucket' = '3'
      );
      INSERT INTO `paimon-fs-catalog`.`default`.test_tbl 
        VALUES (1,'CCC','2024-07-18'), (2,'DDD','2024-07-18'),(3,'EEE','2025-06-18');
  6. Lihat file yang dihasilkan. Masuk ke OSS console, lalu periksa tabel Paimon yang dihasilkan di direktori OSS yang terikat dengan Paimon Catalog.

    Di direktori OSS /paimon-test/default.db/test_tbl/, Anda dapat melihat direktori partisi dt=2024-07-18/, dt=2025-06-18/, serta direktori metadata manifest/, schema/, dan snapshot/.

Langkah 2: Membuat Sumber Data Eksternal di MaxCompute

  1. Masuk ke MaxCompute console, lalu pilih Wilayah di pojok kiri atas.

  2. Di panel navigasi sebelah kiri, pilih Manage Configurations > External Data Source .

  3. Di halaman External Data Source, klik Create External Data Source.

  4. Di dialog Create External Data Source, konfigurasikan parameter. Tabel berikut menjelaskan parameter tersebut.

    Parameter

    Wajib diisi?

    Deskripsi

    External Data Source Type

    Wajib

    Pilih Filesystem Catalog.

    External Data Source Name

    Wajib

    Nama dapat ditentukan sendiri. Aturan penamaan sebagai berikut:

    • Dimulai dengan huruf, hanya boleh berisi huruf kecil, garis bawah (_), dan angka.

    • Tidak boleh lebih dari 128 karakter.

    Contoh: external_fs.

    Description

    Opsional

    Isi sesuai kebutuhan.

    Region

    Wajib

    Secara default adalah wilayah saat ini.

    Authentication and Authorization

    Wajib

    Secara default menggunakan role RAM Alibaba Cloud.

    RoleARN

    Wajib

    Informasi ARN role RAM. Role ini harus memiliki izin untuk mengakses layanan DLF dan OSS secara bersamaan.

    1. Login ke RAM console.

    2. Di panel navigasi kiri, pilih Identities > Roles.

    3. Di bagian Basic Information, Anda dapat memperoleh ARN.

    Contoh: acs:ram::124****:role/aliyunodpsdefaultrole.

    Storage Type

    • OSS

    • OSS-HDFS

    Endpoint

    Dihasilkan secara otomatis. Untuk wilayah Hangzhou: oss-cn-hangzhou-internal.aliyuncs.com.

    Foreign Server Supplemental Properties

    Opsional

    Atribut tambahan sumber data eksternal yang dideklarasikan secara khusus. Setelah ditentukan, tugas yang menggunakan sumber data eksternal ini akan mengakses sistem sumber sesuai perilaku yang didefinisikan oleh parameter tersebut.

    Catatan

    Parameter spesifik yang didukung akan diumumkan dalam pembaruan dokumentasi resmi selanjutnya, dan parameter tersebut akan dibuka secara bertahap seiring pengembangan kemampuan produk.

  5. Klik OK untuk membuat sumber data eksternal.

  6. Di halaman External Data Source, temukan sumber data tersebut, lalu klik Details pada kolom Actions untuk melihat detailnya.

Langkah 3: Membuat Proyek Eksternal di MaxCompute

  1. Masuk ke MaxCompute console, lalu pilih Wilayah di pojok kiri atas.

  2. Di panel navigasi sebelah kiri, pilih Manage Configurations > Projects.

  3. Di tab External Project, klik Create Project.

  4. Di dialog Create Project, konfigurasikan pengaturan, lalu klik OK.

    Parameter

    Wajib diisi?

    Deskripsi

    Project Type

    Wajib

    Secara default adalah proyek eksternal.

    Region

    Wajib

    Secara default adalah wilayah saat ini, dan tidak dapat diubah di sini.

    Project Name (Globally Unique)

    Wajib

    Dimulai dengan huruf, hanya boleh berisi huruf, angka, dan garis bawah (_), dengan panjang 3–28 karakter.

    MaxCompute Foreign Server Type

    Opsional

    Pilih Filesystem Catalog.

    MaxCompute Foreign Server

    Opsional

    • Use Existing: akan menampilkan sumber data eksternal yang telah dibuat sebelumnya.

    • Create Foreign Server: akan membuat dan menggunakan sumber data eksternal baru.

    MaxCompute Foreign Server Name

    Wajib

    • Pilih yang sudah ada: pilih nama sumber data eksternal yang telah dibuat dari daftar drop-down.

    • Buat sumber data eksternal baru: maka akan menggunakan nama sumber data eksternal baru yang dibuat.

    Authentication and Authorization

    Wajib

    Identitas pelaksana tugas. Jika role layanan terkait belum dibuat, Anda harus membuatnya terlebih dahulu agar dapat menggunakan mode ini.

    RoleARN

    Wajib

    Informasi ARN role RAM. Role ini harus memiliki izin untuk mengakses layanan DLF dan OSS secara bersamaan.

    1. Login ke RAM console.

    2. Di panel navigasi kiri, pilih Identities > Roles.

    3. Di bagian Basic Information, Anda dapat memperoleh ARN.

    Contoh: acs:ram::124****:role/aliyunodpsdefaultrole.

    Storage Type

    • OSS

    • OSS-HDFS

    Endpoint

    Wajib

    Dihasilkan secara default.

    Bucket Catalog

    Wajib

    Pilih Bucket OSS lengkap beserta direktori file system hingga level Catalog. Dalam contoh ini, oss://paimon-fs/paimon-test/.

    Table Format

    Wajib

    Secara default adalah Paimon.

    Billing Method

    Wajib

    Subscription atau Pay-as-you-go.

    Default Quota

    Wajib

    Pilih Quota yang sudah ada.

    Description

    Opsional

    Deskripsi proyek sesuai keinginan.

Langkah 4: Membaca dan Menulis Tabel Paimon

  1. Pilih tool koneksi untuk masuk ke proyek eksternal.

  2. Masuk ke proyek eksternal yang baru dibuat, lalu lihat schema Paimon yang sudah ada.

    -- Aktifkan switch dukungan sintaks schema di tingkat session.
    SET odps.namespace.schema=true;
    SHOW schemas;
    -- Hasil yang dikembalikan sebagai berikut.
    ID = 20250922********wbh2u7
    default
    OK
  3. Baca tabel di schema default.

    SET odps.sql.allow.fullscan=true; 
    SELECT * FROM <external_project_name>.default.test_tbl;
    -- Hasil yang dikembalikan sebagai berikut.
    +------------+------------+------------+
    | id         | data       | dt         | 
    +------------+------------+------------+
    | 1          | CCC        | 2024-07-18 | 
    | 2          | DDD        | 2024-07-18 | 
    | 3          | EEE        | 2025-06-18 | 
    +------------+------------+------------+
  4. Tulis data ke tabel Paimon yang sudah ada.

    INSERT INTO test_tbl PARTITION(dt='2025-08-26') VALUES(4,'FFF');
    SELECT * FROM test_tbl;
    -- Hasil yang dikembalikan sebagai berikut.
    +------------+------------+------------+
    | id         | data       | dt         | 
    +------------+------------+------------+
    | 1          | CCC        | 2024-07-18 | 
    | 2          | DDD        | 2024-07-18 | 
    | 3          | EEE        | 2025-06-18 | 
    | 4          | FFF        | 2025-08-26 | 
    +------------+------------+------------+
  5. Buat tabel di schema baru, lalu tulis data.

    Buat tabel baru dan tulis data. MaxCompute juga akan menulis data baru sesuai struktur organisasi Paimon Catalog di file system.

    -- Buat schema.
    CREATE schema testschema;
    -- Buat tabel di schema yang baru dibuat.
    use schema testschema;
    CREATE TABLE table_test(id INT, name STRING);
    -- Masukkan data ke tabel baru, lalu baca.
    INSERT INTO table_test VALUES (101,'张三'),(102,'李四');
    SELECT * FROM table_test;
    -- Hasil yang dikembalikan sebagai berikut.
    +------------+------------+
    | id         | name       | 
    +------------+------------+
    | 101        | 张三        | 
    | 102        | 李四        | 
    +------------+------------+
  6. Masuk ke OSS console, lalu cari direktori Bucket proyek eksternal di OSS untuk melihat schema dan tabel yang baru dibuat.