All Products
Search
Document Center

OpenSearch:Sumber data MaxCompute

Last Updated:Apr 25, 2026

Topik ini menjelaskan cara mengonfigurasi sumber data MaxCompute.

Prasyarat

  • Anda memiliki pemahaman dasar tentang MaxCompute (sebelumnya dikenal sebagai ODPS). Jika Anda baru mengenal MaxCompute, Anda dapat mempelajari lebih lanjut di sini.

  • Anda memiliki izin tabel yang diperlukan. Akun yang digunakan untuk mengakses tabel MaxCompute harus memiliki izin describe, select, dan download untuk tabel tersebut, serta izin label untuk bidang-bidangnya.

Gunakan pernyataan berikut untuk memberikan izin:

-- Tambahkan pengguna.
add user ****@aliyun.com;

-- Berikan izin tabel yang diperlukan kepada pengguna.
GRANT describe,select,download ON TABLE table_xxx TO USER ****@aliyun.com
GRANT describe,select,download ON TABLE table_xxx_done TO USER ****@aliyun.com

-- MaxCompute memerlukan izin tingkat bidang. Kegagalan memberikan izin ini untuk semua bidang, termasuk bidang dengan hak istimewa tinggi, akan menyebabkan pembuatan indeks gagal.
-- Berikan izin untuk semua tabel dalam Project.
SET LABEL 3 to USER ****@aliyun.com

-- Berikan izin untuk tabel tertentu.
GRANT LABEL 3 ON TABLE table_xxx(col1, col2) TO ****@aliyun.com
  • OpenSearch Vector Search Edition mendukung tipe bidang berikut untuk tabel MaxCompute: STRING, BOOLEAN, DOUBLE, BIGINT, dan DATETIME.

Catatan

Untuk informasi detail tentang pernyataan CREATE TABLE dan konfigurasi parameter, lihat Pernyataan CREATE TABLE untuk sumber data MaxCompute.

Konfigurasikan sumber data MaxCompute

1. Masuk ke konsol OpenSearch. Di pojok kiri atas, beralihlah ke OpenSearch Vector Search Edition. Pada halaman Manajemen Instans, temukan instans Anda dan klik Manage di kolom Actions.

  1. 2. Di panel navigasi sebelah kiri, pilih Configuration Center > Data Source Configuration. Klik Add Data Source, pilih MaxCompute, lalu konfigurasikan parameter berikut: Data Source Name, Project, AccessKey ID, AccessKey Secret, Table, Partition Key, dan Automatic Index Rebuilding.

3. Setelah mengonfigurasi parameter, klik Validate. Setelah validasi berhasil, tombol OK menjadi dapat diklik.

4. Setelah menambahkan sumber data, Anda harus mengonfigurasi skema indeks dan menambahkan tabel indeks. Untuk informasi lebih lanjut, lihat Tambahkan tabel indeks.

5. Setelah tabel indeks dikonfigurasi, Anda harus menerapkan pembaruan konfigurasi dan membangun ulang indeks agar tersedia di kluster produksi. Untuk informasi lebih lanjut, lihat Perbarui konfigurasi.

Catatan:

  • Data Source Name: Nama sumber data. Nama harus mengikuti format instance_name_custom_name.

  • Project, AccessKey ID, AccessKey Secret, Table, dan Partition Key: Parameter yang diperlukan untuk mengakses sumber data MaxCompute.

  • Automatic index rebuilding: Jika diaktifkan, sistem secara otomatis membangun ulang indeks untuk setiap tabel indeks yang mereferensikan sumber data tersebut ketika sumber data berubah.

  • Jika Anda mengaktifkan automatic index rebuilding, Anda harus membuat done table. Untuk informasi lebih lanjut, lihat Automatic index rebuilding.

Automatic index rebuilding

Tujuan done table: Saat Anda mengaktifkan automatic index rebuilding untuk sumber data, instans OpenSearch Vector Search Edition Anda memantau done table dan memicu pembangunan ulang indeks setiap kali done table diperbarui.

Contoh: Misalkan Anda memiliki tabel data MaxCompute bernama mytable yang dipartisi berdasarkan ds=20220113. Setelah pembuatan indeks awal, partisi baru dengan muatan penuh data dihasilkan setiap hari. Anda ingin instans OpenSearch Vector Search Edition Anda mendeteksi partisi baru tersebut dan secara otomatis memicu pembangunan ulang indeks untuk menarik data baru. Proses ini memerlukan penggunaan automatic index rebuilding dengan done table.

Prosedur:

1. Saat menambahkan sumber data, aktifkan Automatic Index Rebuilding.

2. Buat done table di MaxCompute. Jika tabel data bernama mytable dan kunci partisinya adalah ds, maka done table harus diberi nama mytable_done dan juga menggunakan ds sebagai kunci partisinya. Kedua tabel tersebut muncul di MaxCompute sebagai berikut:

odps:sql:xxx> show tables;
InstanceId: xxx  
SQL: .                                                                                              

ALIYUN$****@aliyun.com:mytable          # Tabel data untuk muatan penuh
ALIYUN$****@aliyun.com:mytable_done     # Done table untuk memicu muatan penuh otomatis

Pernyataan untuk membuat done table:

create table mytable_done (attribute string) partitioned by (ds string);

3. Setelah data untuk partisi baru ds=20220114 dihasilkan di tabel mytable, perbarui done table untuk memicu pembangunan ulang indeks di instans OpenSearch Vector Search Edition Anda.

-- Tambahkan partisi.
alter table mytable_done add if not exists partition (ds="20220114");

-- Masukkan data sinyal untuk memicu muatan penuh otomatis.
insert into table mytable_done partition (ds="20220114") select '{"swift_start_timestamp":1642003200}';

Konten akhir dari done table adalah sebagai berikut:

odps:sql:xxx> select * from mytable_done where ds=20220114 limit 1;
InstanceId: xxx  
SQL: .                                                                                              
+-----------+----+
| attribute | ds |
+-----------+----+
| {"swift_start_timestamp":1642003200} | 20220114 |
+-----------+----+

Saat data sinyal dimasukkan ke dalam done table, instans OpenSearch Vector Search Edition mendeteksi sinyal tersebut dan secara otomatis memicu pembangunan ulang indeks.

Penting
  • done table harus memiliki setidaknya satu kunci partisi, dan kunci partisinya harus memiliki nama yang sama dengan kunci partisi tabel data. Misalnya, jika kunci partisi tabel data adalah ds, maka kunci partisi done table juga harus ds.

  • done table harus berisi satu bidang STRING bernama attribute.

  • Partisi yang Anda tambahkan ke done table harus sudah ada di tabel data. Misalnya, jika tabel data berisi partisi ds="20220114", ds="20220115", dan ds="20220116", partisi baru yang ditambahkan ke done table harus merupakan salah satu dari partisi yang sudah ada tersebut.

  • Saat Anda memasukkan data ke done table, nilai bidang attribute harus berupa string dalam format JSON, seperti {"swift_start_timestamp":1642003200}. Timestamp tersebut menentukan titik awal untuk ingestion data inkremental.

Edit sumber data MaxCompute

  1. Pada halaman Data Source Configuration, temukan sumber data yang ingin Anda edit dan klik Modify di kolom Actions.

  1. Pada halaman Edit Data Source, ubah parameter seperti Project, AccessKey ID, AccessKey Secret, Table, dan Partition Key.

Setelah mengubah parameter, klik Validate. Setelah validasi berhasil, klik OK untuk menyimpan perubahan Anda.

  1. Setelah mengedit sumber data, Anda harus menerapkan pembaruan konfigurasi dan membangun ulang indeks agar perubahan berlaku di kluster produksi. Untuk informasi lebih lanjut, lihat Perbarui konfigurasi.

Catatan

Atur granularitas partisi ke tingkat jam, misalnya yyyyMMddHH (seperti 2022011314), untuk memungkinkan beberapa muatan penuh dalam sehari.

Hapus sumber data MaxCompute

  1. 1. Pada halaman Data Source Configuration, temukan sumber data yang ingin Anda hapus dan klik Delete di kolom Actions.

  1. 2. Setelah Anda mengklik Delete, sistem memeriksa apakah sumber data tersebut direferensikan oleh tabel indeks.

  • Jika sumber data tidak direferensikan oleh tabel indeks apa pun, klik OK untuk menghapusnya.

  • Jika sumber data direferensikan oleh tabel indeks, sistem akan melaporkan error.

Sistem menampilkan pesan: "Sumber data direferensikan oleh tabel indeks. Hapus tabel indeks atau hapus asosiasinya, lalu hapus sumber data."

Anda harus terlebih dahulu menghapus semua tabel indeks yang mereferensikan sumber data tersebut sebelum menghapusnya. Untuk informasi lebih lanjut, lihat Hapus tabel indeks.

Catatan penggunaan

  • Anda tidak dapat mengubah nama sumber data setelah dibuat.

  • MaxCompute tidak mendukung tabel eksternal. Anda harus menggunakan tabel internal.

  • Tabel yang Anda konfigurasikan sebagai sumber data MaxCompute harus berupa tabel partisi.

  • Anda dapat menggunakan tabel yang dihasilkan di MaxCompute untuk operasi muatan penuh dan menggunakan sumber data API untuk mendorong data real-time.