全部产品
Search
文档中心

ApsaraDB for SelectDB:Danau data

更新时间:Jul 30, 2025

Topik ini menjelaskan cara menggunakan teknologi query terfederasi yang disediakan oleh ApsaraDB for SelectDB untuk melakukan analisis terfederasi pada sumber data eksternal seperti danau data, database, dan file jarak jauh. Ini memberikan pengalaman analisis data yang lebih sederhana dan cepat.

Ikhtisar

ApsaraDB for SelectDB menyediakan fitur multi-katalog untuk menghubungkan ke sumber data eksternal seperti danau data dan database guna mendukung analisis data yang sederhana dan cepat. Berdasarkan fitur multi-katalog, ApsaraDB for SelectDB menawarkan hierarki metadata tiga lapis baru: katalog -> database -> tabel. Katalog secara langsung memetakan sumber data eksternal. Untuk informasi lebih lanjut tentang sumber data eksternal yang didukung oleh ApsaraDB for SelectDB, lihat Analisis Danau Data

ApsaraDB for SelectDB juga menyediakan fungsi bernilai tabel (TVF) yang dapat digunakan untuk memetakan data file di penyimpanan jarak jauh umum seperti Amazon Simple Storage Service (Amazon S3) dan Hadoop Distributed File System (HDFS) ke tabel di ApsaraDB for SelectDB. Hal ini memfasilitasi analisis data file. Untuk informasi lebih lanjut, lihat Analisis File.

Topik ini menjelaskan kata kunci dan penggunaan katalog. Fitur multi-katalog memperluas kemampuan ApsaraDB for SelectDB sehingga tidak hanya dapat mengelola data internal tetapi juga secara efisien mengintegrasikan dan menanyakan sumber data eksternal. Anda dapat menggunakan katalog untuk mengakses dan menganalisis data yang tersimpan di berbagai gudang data dan sistem penyimpanan dari ApsaraDB for SelectDB. Ini memungkinkan manajemen dan analisis data yang lebih fleksibel dan komprehensif.

Kata kunci dan operasi

  • Katalog Internal

    Database dan tabel yang ada di ApsaraDB for SelectDB semuanya termasuk dalam katalog internal. Katalog internal adalah katalog default bawaan di ApsaraDB for SelectDB dan tidak dapat dimodifikasi atau dihapus.

  • Katalog Eksternal

    Anda dapat membuat katalog eksternal dengan mengeksekusi pernyataan CREATE CATALOG. Anda dapat mengeksekusi pernyataan SHOW CATALOGS untuk melihat semua katalog atau pernyataan SHOW CREATE CATALOG <catalog_name>; untuk menanyakan pernyataan pembuatan katalog.

  • Beralih ke Katalog

    Setelah masuk ke ApsaraDB for SelectDB, katalog internal digunakan secara default. Anda dapat mengeksekusi pernyataan SWITCH untuk beralih ke katalog lain. Contoh:

    SWITCH internal;
    SWITCH hive_catalog;

    Setelah beralih ke katalog, Anda dapat mengeksekusi pernyataan seperti SHOW DATABASES atau USE <db_name> untuk melihat semua database dalam katalog atau beralih ke database tertentu. ApsaraDB for SelectDB secara otomatis mengakses database dan tabel di sumber data eksternal menggunakan katalog. Anda dapat melihat dan mengakses data di katalog eksternal dengan cara yang sama seperti menggunakan katalog internal. ApsaraDB for SelectDB mendukung akses read-only ke data di katalog eksternal.

  • Hapus Katalog

    Database dan tabel di katalog eksternal bersifat read-only. Namun, Anda dapat menghapus katalog eksternal dengan mengeksekusi pernyataan DROP CATALOG <catalog_name>; jika diperlukan. Katalog internal tidak dapat dihapus.

    Catatan

    Operasi ini hanya menghapus informasi pemetaan tentang katalog di ApsaraDB for SelectDB dan tidak memodifikasi atau mengubah isi dari sumber data eksternal apa pun.

Pemetaan tipe kolom

Setelah membuat katalog untuk sumber data eksternal, ApsaraDB for SelectDB secara otomatis menyinkronkan database dan tabel dari sumber data eksternal ke katalog. Untuk jenis katalog dan tabel yang berbeda, ApsaraDB for SelectDB melakukan pemetaan antara tipe kolom.

Untuk tipe data eksternal yang tidak dapat dipetakan ke tipe kolom ApsaraDB for SelectDB, seperti UNION dan INTERVAL, ApsaraDB for SelectDB memetakan mereka ke UNSUPPORTED. Contoh kode berikut menunjukkan hasil dari kueri tipe yang dipetakan dan tipe UNSUPPORTED.

-- Skema tabel setelah sinkronisasi:
k1 INT,
k2 INT,
k3 UNSUPPORTED,
k4 INT

-- Hasil kueri:
SELECT * FROM testtable;                // Error: Unsupported type 'UNSUPPORTED_TYPE' in '`k3`
SELECT * except(k3) FROM testtable;     // Query OK.
SELECT k1, k3 FROM testtable;           // Error: Unsupported type 'UNSUPPORTED_TYPE' in '`k3`
SELECT k1, k4 FROM testtable;           // Query OK.

Anda dapat melihat tipe data yang didukung oleh ApsaraDB for SelectDB dengan mengeksekusi pernyataan SHOW DATA TYPES;. Untuk informasi lebih lanjut tentang tipe data yang didukung oleh sumber data eksternal yang berbeda, lihat Analisis Danau Data

Pengelolaan izin

Secara default, ApsaraDB for SelectDB menggunakan fitur pengelolaan izinnya sendiri untuk mengontrol akses ke database dan tabel di katalog eksternal. Bersamaan dengan fitur multi-katalog, pengelolaan izin ditambahkan pada tingkat katalog. Untuk informasi lebih lanjut, lihat Pengelolaan Izin Pengguna.

Manajemen sinkronisasi database

Anda dapat menentukan database yang akan disinkronkan dengan mengonfigurasi parameter include_database_list dan exclude_database_list dari katalog.

  • include_database_list: database yang akan disinkronkan. Hanya database yang ditentukan dalam properti ini yang disinkronkan. Pisahkan nama database dengan koma (,). Secara default, semua database disinkronkan. Nama database bersifat case-sensitive.

  • exclude_database_list: database yang tidak perlu disinkronkan. Pisahkan nama database dengan koma (,). Parameter ini kosong secara default, menunjukkan bahwa semua database disinkronkan. Nama database bersifat case-sensitive.

Penting
  • Parameter exclude_database_list memiliki prioritas lebih tinggi daripada parameter include_database_list. Jika database ditentukan di kedua parameter, database tersebut tidak disinkronkan.

  • Jika katalog digunakan untuk terhubung ke sumber data Java Database Connectivity (JDBC), Anda harus menggunakan dua parameter sebelumnya dengan parameter only_specified_database. Untuk informasi lebih lanjut, lihat Sumber Data JDBC.

Pembaruan metadata

Secara default, perubahan metadata di sumber data eksternal, seperti pembuatan atau penghapusan tabel atau kolom, tidak disinkronkan ke ApsaraDB for SelectDB. Anda dapat menggunakan salah satu metode berikut untuk menyegarkan metadata.

Penyegaran manual

Eksekusi pernyataan REFRESH untuk menyegarkan metadata secara manual.

Sintaksis

REFRESH CATALOG catalog_name;
REFRESH DATABASE [catalog_name.]database_name;
REFRESH TABLE [catalog_name.][database_name.]table_name;

Jika Anda menyegarkan katalog secara manual, cache terkait objek dipaksa dibatalkan, termasuk cache partisi, cache skema, dan cache file.

Contoh

  1. Segarkan katalog.

    REFRESH CATALOG hive;
  2. Segarkan database.

    REFRESH DATABASE ctl.database1;
    REFRESH DATABASE database1;
  3. Segarkan tabel.

    REFRESH TABLE ctl.db.table1;
    REFRESH TABLE db.table1;
    REFRESH TABLE table1;

Penyegaran terjadwal

Saat membuat katalog, Anda dapat mengaktifkan penyegaran terjadwal dengan menentukan parameter metadata_refresh_interval_sec dalam properti. Interval penyegaran terjadwal diukur dalam detik. Setelah menentukan parameter ini, node master FE secara berkala menyegarkan katalog berdasarkan nilai parameter ini. Hanya tiga jenis sumber data berikut yang mendukung penyegaran terjadwal:

  • Hive Metastore Service (HMS)

  • Elasticsearch

  • Sumber Data JDBC

-- Atur interval penyegaran katalog menjadi 20 detik.
CREATE CATALOG es PROPERTIES (
    "type"="es",
    "hosts"="http://127.0.0.1:9200",
    "metadata_refresh_interval_sec"="20"
);

Penyegaran otomatis

Hanya acara tertentu dari sumber data Hive yang dapat disegarkan secara otomatis ke katalog. Untuk informasi lebih lanjut, lihat bagian Sumber Data Hive dari topik "Sumber Data Hive".