全部产品
Search
文档中心

Hologres:IMPORT FOREIGN SCHEMA

更新时间:Feb 04, 2026

Pernyataan IMPORT FOREIGN SCHEMA membuat tabel eksternal secara batch. Topik ini menjelaskan penggunaan dan batasan pernyataan tersebut.

Detail fitur

IMPORT FOREIGN SCHEMA adalah fitur Hologres yang membuat tabel eksternal secara batch. Fitur ini secara otomatis memetakan skema tabel dari sumber data remote ke tabel eksternal Hologres, sehingga menghilangkan kebutuhan untuk membuat setiap tabel secara manual. Saat ini, fitur ini mendukung dua jenis sumber data berikut:

  • Tabel MaxCompute: Impor batch tabel eksternal dari model dua lapis atau tiga lapis MaxCompute.

  • Tabel Paimon di DLF: Buat batch tabel eksternal Hologres dari tabel Paimon di Data Lake Formation (DLF).

Batasan

  • Saat menggunakan pernyataan IMPORT FOREIGN SCHEMA, tambahkan klausa LIMIT TO untuk menentukan tabel yang akan diimpor, dengan nama tabel tersebut dituliskan dalam tanda kurung. Jika klausa ini dihilangkan, sistem akan membuat tabel eksternal di Hologres untuk semua tabel dalam proyek MaxCompute target.

  • Hanya Hologres V1.1.26 dan versi yang lebih baru yang mendukung penambahan awalan dan akhiran pada nama tabel eksternal yang dibuat menggunakan IMPORT FOREIGN SCHEMA. Jika instans Anda menggunakan versi sebelum V1.1.26, lihat Kesalahan umum saat mempersiapkan upgrade atau bergabunglah dengan grup DingTalk Hologres untuk memberikan masukan. Untuk informasi selengkapnya, lihat Bagaimana cara mendapatkan dukungan online lebih lanjut?.

  • Versi Hologres V1.3 dan yang lebih baru mendukung model tiga lapis MaxCompute, yang menambahkan lapisan Schema antara Project dan Table. Untuk informasi selengkapnya, lihat Operasi Schema. Untuk membuat tabel eksternal di Hologres dari proyek MaxCompute yang menggunakan model tiga lapis, Anda harus menggunakan Hologres V1.3 atau versi yang lebih baru. Jika Anda menggunakan versi Hologres yang lebih lama, lihat Kesalahan umum saat mempersiapkan upgrade atau bergabunglah dengan grup DingTalk Hologres untuk memberikan masukan. Untuk informasi selengkapnya, lihat Bagaimana cara mendapatkan dukungan online lebih lanjut?.

Format perintah

Perintah untuk membuat tabel eksternal secara batch di Hologres menggunakan format berikut.

IMPORT FOREIGN SCHEMA remote_schema
    [ { LIMIT TO | EXCEPT } ( table_name [, ...] ) ]
    FROM SERVER odps_server
    INTO local_schema 
    [ OPTIONS ( option 'value' [, ... ] ) ]

Deskripsi parameter

Tabel berikut menjelaskan parameter-parameter tersebut.

Parameter

Deskripsi

remote_schema

  • MaxCompute

    • Model dua lapis: Nama proyek tempat tabel MaxCompute yang akan diimpor berada.

    • Model tiga lapis: Nama proyek dan schema MaxCompute. Formatnya adalah odps_project_name#odps_schema_name. Jika proyek MaxCompute Anda menggunakan model tiga lapis tetapi Anda menggunakan sintaksis model dua lapis, terjadi error. Berikut contoh pesan error tersebut.

      failed to import foreign schema:Table not found - table_xxx
  • DLF: Nama metadatabase yang dibuat di DLF.

table_name

  • MaxCompute: Nama tabel MaxCompute yang akan diimpor.

  • DLF: Nama tabel DLF yang akan diimpor.

server_name

  • MaxCompute: Nama server eksternal tempat tabel MaxCompute berada. Nilai default-nya adalah odps_server. Anda dapat langsung memanggil server tabel eksternal bernama odps_server yang telah dibuat sebelumnya di Hologres. Untuk informasi lebih lanjut tentang prinsipnya, lihat Postgres FDW.

  • DLF: Nama server eksternal tempat tabel DLF berada. Untuk informasi selengkapnya, lihat Akses katalog Paimon berdasarkan DLF.

local_schema

Nama skema tempat tabel eksternal Hologres berada, misalnya public.

options

Hologres mendukung empat opsi berikut:

  • if_table_exist: Menentukan aksi yang diambil jika tabel dengan nama yang sama sudah ada saat impor. Nilai yang valid:

    • error: Nilai default. Jika tabel eksternal dengan nama yang sama sudah ada, tabel tidak dibuat.

    • ignore: Melewatkan impor tabel jika tabel eksternal dengan nama yang sama sudah ada. Proses impor dilanjutkan untuk tabel lainnya.

    • update: Memperbarui tabel dengan mengimpornya kembali.

  • if_unsupported_type: Menentukan aksi yang diambil jika tabel eksternal yang diimpor berisi tipe data yang tidak didukung oleh Hologres. Nilai yang valid:

    • error: Melaporkan error dan impor gagal. Pesan menunjukkan tabel mana yang berisi tipe data yang tidak didukung.

    • skip: Nilai default. Melewatkan impor tabel yang berisi tipe data yang tidak didukung. Pesan menunjukkan tabel mana yang dilewati.

  • prefix: Awalan untuk nama tabel eksternal Hologres yang dihasilkan selama impor. Opsi ini ditambahkan di Hologres V1.1.26.

  • suffix: Akhiran untuk nama tabel eksternal Hologres yang dihasilkan selama impor. Opsi ini ditambahkan di Hologres V1.1.26.

Catatan

Hologres hanya mendukung pembuatan tabel eksternal MaxCompute. Nama tabel eksternal baru harus sesuai dengan nama tabel MaxCompute yang bersesuaian.

Contoh penggunaan

  • Model dua lapis MaxCompute

    Contoh berikut menunjukkan cara membuat tabel eksternal secara batch di Hologres dari tabel dalam dataset publik MaxCompute public_data.

    • Contoh 1: Buat tabel eksternal baru untuk schema public. Jika tabel sudah ada, perbarui.

      IMPORT FOREIGN SCHEMA public_data LIMIT TO
      (customer) 
        FROM server odps_server INTO PUBLIC options(if_table_exist 'update');
    • Contoh 2: Buat tabel eksternal secara batch untuk schema public.

       IMPORT FOREIGN SCHEMA public_data LIMIT TO(
        customer,
        customer_address,
        customer_demographics,
        inventory,item,
        date_dim,
        warehouse) 
        FROM server odps_server INTO PUBLIC options(if_table_exist 'update');
    • Contoh 3: Buat schema testdemo dan buat tabel eksternal secara batch.

      CREATE schema testdemo;
      
      IMPORT FOREIGN SCHEMA public_data LIMIT TO(
        customer,
        customer_address,
        customer_demographics,
        inventory,item,
        date_dim,
        warehouse) 
        FROM server odps_server INTO testdemo options(if_table_exist 'update');
        
      SET search_path TO testdemo;
    • Contoh 4: Buat tabel eksternal secara batch di schema public. Jika tabel eksternal sudah ada, laporkan error.

      IMPORT FOREIGN SCHEMA public_data LIMIT to
      (customer,
        customer_address) 
        FROM server odps_server INTO PUBLIC options(if_table_exist 'error');
    • Contoh 5: Buat tabel eksternal secara batch di schema public. Jika tabel eksternal sudah ada, lewati.

      IMPORT FOREIGN SCHEMA public_data LIMIT to
      (customer,
        customer_address) 
        FROM server odps_server INTO PUBLIC options(if_table_exist 'ignore');
  • Model tiga lapis MaxCompute

    Anda dapat membuat tabel eksternal di Hologres yang dipetakan ke tabel odps_region_10g dalam skema tpch_10g dari proyek MaxCompute odps_hologres.

    IMPORT FOREIGN SCHEMA "odps_hologres#tpch_10g" LIMIT to
    (
        odps_region_10g
    )
    FROM SERVER odps_server INTO public OPTIONS(if_table_exist 'error',if_unsupported_type 'error');
  • Sumber data DLF

    Untuk sumber data DLF, buat langsung tabel eksternal Hologres dengan menentukan nama sumber data, seperti github_events.

    • Contoh: Buat tabel eksternal baru untuk schema public. Jika tabel sudah ada, perbarui. Untuk informasi selengkapnya, lihat Akses katalog Paimon berdasarkan DLF.

      IMPORT FOREIGN SCHEMA github_events
      limit to (customer) 
      FROM SERVER paimon_server into public
      options (if_table_exist 'update');