全部产品
Search
文档中心

OpenSearch:Buat tabel untuk sumber data MaxCompute

更新时间:Jul 02, 2025

Topik ini menjelaskan cara membuat tabel untuk sumber data MaxCompute.

Prasyarat

  • Anda sudah familiar dengan MaxCompute. Untuk informasi lebih lanjut tentang MaxCompute, lihat Apa itu MaxCompute?

  • Akun yang Anda gunakan untuk masuk ke konsol OpenSearch Vector Search Edition diberikan izin berikut pada tabel MaxCompute yang ingin Anda konfigurasikan: izin DESCRIBE, SELECT, dan DOWNLOAD pada tabel serta izin LABEL pada bidang tabel tersebut.

Anda dapat mengeksekusi pernyataan berikut untuk memberikan izin yang diperlukan kepada akun:

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

-- Berikan izin yang diperlukan kepada akun.
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

-- Jika Anda mengaktifkan verifikasi izin bidang untuk tabel MaxCompute Anda, sistem akan mencegah Anda mengakses bidang dengan hak istimewa tinggi saat Anda menarik data, dan indeks tidak dapat dibuat untuk tabel tersebut. Dalam hal ini, Anda harus memberikan akun Anda izin untuk mengakses semua bidang. 
-- Berikan izin pada seluruh proyek.
SET LABEL 3 to USER ****@aliyun.com

-- Berikan izin pada tabel tunggal.
GRANT LABEL 3 ON TABLE table_xxx(col1, col2) TO ****@aliyun.com
  • Bidang yang terkandung dalam tabel MaxCompute Anda adalah tipe data berikut: STRING, BOOLEAN, DOUBLE, BIGINT, dan DATETIME.

Catatan

Untuk informasi lebih lanjut tentang pernyataan pembuatan tabel dan parameter untuk menambahkan sumber data MaxCompute, lihat Pernyataan CREATE TABLE untuk Membuat Tabel di Sumber Data MaxCompute.

Buat tabel

  1. Masuk ke konsol OpenSearch Vector Search Edition. Di panel navigasi sebelah kiri, klik Instances. Pada halaman Instances, temukan instance tempat Anda ingin membuat tabel dan klik nama atau ID instance tersebut. Pada halaman detail instance, klik Table Management di panel sebelah kiri. Pada halaman yang muncul, klik Add Table.

    3

  1. Pada langkah Informasi Dasar Tabel dalam wizard Create, konfigurasikan parameter berikut dan klik Next.

image.png

Parameter:

  • Nama Tabel: Nama tabel. Anda dapat menyesuaikan nama tabel.

  • Data Shards: Jumlah shard data yang terkandung dalam tabel. Jika Anda membuat beberapa tabel indeks dalam instance OpenSearch, pastikan bahwa tabel indeks tersebut memiliki jumlah shard yang sama. Atau, pastikan bahwa setidaknya satu tabel indeks memiliki satu shard dan tabel indeks lainnya memiliki jumlah shard yang sama.

  • Jumlah Sumber Daya untuk Pembaruan Data: Jumlah sumber daya yang digunakan untuk pembaruan data. Secara default, OpenSearch menyediakan kuota gratis dua sumber daya untuk pembaruan data untuk setiap sumber data dalam instance OpenSearch Vector Search Edition. Setiap sumber daya terdiri dari 4 inti CPU dan 8 GB memori. Anda akan dikenakan biaya untuk sumber daya yang melebihi kuota gratis. Untuk informasi lebih lanjut, lihat .

  • Template Skenario: Template yang digunakan untuk membuat tabel. Nilai valid: Common Template, Vector: Image Search, dan Vector: Semantic Search for Text.

  1. Pada langkah Sinkronisasi Data, konfigurasikan parameter berikut untuk menambahkan sumber data, lalu klik Check untuk memeriksa informasi sumber data. Jika pemeriksaan berhasil, klik Next.

    1

Parameter:

  • Sumber Data Lengkap: Jenis sumber data. Nilai valid: MaxCompute + API, OSS + API, dan API. Dalam contoh ini, MaxCompute + API dipilih.

  • Proyek: Nama proyek MaxCompute yang ingin Anda akses.

  • AccessKey: ID AccessKey akun Alibaba Cloud Anda atau pengguna Resource Access Management (RAM) dalam akun Alibaba Cloud.

  • Rahasia AccessKey: Rahasia AccessKey yang sesuai dengan ID AccessKey.

  • Tabel: Nama tabel MaxCompute yang ingin Anda akses.

  • Kunci Partisi: Kunci partisi sumber data MaxCompute. Parameter ini wajib. Contoh: ds=20170626.

  • Timestamp: Jika data tambahan didorong menggunakan operasi API, parameter ini menentukan titik waktu dari mana sistem mensinkronkan data tambahan dari sumber data. Anda dapat memilih tanggal dan waktu dalam 72 jam terakhir.

  • Reindexing Otomatis: Menentukan apakah fitur reindexing otomatis diaktifkan. Jika fitur reindexing otomatis diaktifkan, sistem secara otomatis melakukan reindexing untuk tabel indeks yang merujuk ke sumber data setiap kali sistem mendeteksi perubahan data di sumber data.

Catatan

  1. Pada langkah Konfigurasi Bidang, konfigurasikan bidang untuk tabel dan klik Next.

image.png

Catatan
  • Bidang kunci utama dan bidang vektor wajib. Bidang kunci utama harus bertipe INT atau STRING. Bidang vektor harus bertipe FLOAT.

  • Secara default, bidang vektor adalah bidang multi-nilai bertipe FLOAT, dan beberapa nilai dari bidang vektor dipisahkan oleh delimeter HA3 (^]). Delimeter ini dikodekan sebagai \x1D dalam format UTF. Anda juga dapat memasukkan delimeter multi-nilai kustom.

  1. Pada langkah Skema Indeks, konfigurasikan indeks untuk tabel dan klik Next.

image.png

Konfigurasikan parameter berikut di bagian Indeks Vektor:

  • Bidang kunci utama dan bidang vektor wajib. Bidang namespace bersifat opsional dan dapat dibiarkan kosong.

  • Anda hanya dapat mengonfigurasikan tiga bidang tetap untuk parameter Fields Contained dan tidak dapat menambahkan bidang.

  • Dimensi Vektor: Dimensi vektor. Tentukan dimensi vektor berdasarkan model vektor yang Anda pilih.

  • Tipe Jarak: Tipe jarak vektor. Nilai valid: SquareEuclidean dan InnerProduct. Tentukan tipe jarak berdasarkan model vektor yang Anda pilih.

  • Algoritma Indeks Vektor: Algoritma yang digunakan untuk membuat indeks vektor. Nilai valid: Qc, Linear, dan HNSW. Tentukan algoritma berdasarkan model vektor yang Anda pilih.

  • Indeks Real-time: Menentukan apakah akan membangun indeks real-time untuk data tambahan yang didorong menggunakan operasi API. Nilai valid: true dan false. Nilai default: true.

Anda juga dapat mengonfigurasikan parameter untuk konfigurasi lanjutan indeks vektor. Untuk informasi lebih lanjut, lihat Konfigurasi Umum Indeks Vektor.

image.png

  1. Pada langkah Konfirmasi, klik Konfirmasi. Tabel yang Anda konfigurasikan akan dibuat secara otomatis.

image.png

Untuk melihat kemajuan pembuatan tabel, klik Change History di panel sebelah kiri pada halaman detail instance, lalu klik tab Perubahan Sumber Data.

2

  1. Jika tabel memasuki status Digunakan, Anda dapat menjalankan tes kueri di halaman Query Test.

image.png

Konfigurasikan reindexing otomatis

Deskripsi tabel done: Jika Anda mengaktifkan reindexing otomatis saat mengonfigurasikan sumber data, OpenSearch Vector Search Edition secara otomatis melakukan reindexing berdasarkan perubahan dalam tabel done.

Contoh: Saat Anda mengonfigurasikan sumber data MaxCompute, Anda menentukan mytable sebagai tabel MaxCompute dan ds=20220113 sebagai partisi. Setelah Anda mengonfigurasikan reindexing untuk sumber data untuk pertama kalinya, sistem menghasilkan partisi baru setiap hari. Setiap partisi baru berisi data lengkap tabel. Setiap kali partisi baru dihasilkan, OpenSearch Vector Search Edition diharuskan memindai partisi baru dan secara otomatis melakukan reindexing berdasarkan data dalam partisi baru. Untuk memenuhi persyaratan ini, Anda dapat menggunakan fitur reindexing otomatis dan tabel done.

Prosedur

  1. Aktifkan reindexing otomatis saat Anda menambahkan sumber data.

image.png

  1. Konfigurasikan tabel done yang sesuai di MaxCompute. Jika nama tabel MaxCompute adalah mytable dan nama kunci partisi tabel mytable adalah ds, nama tabel done adalah mytable_done dan nama kunci partisi tabel done adalah ds. Blok kode berikut menunjukkan bagaimana kedua tabel ditampilkan di MaxCompute:

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

ALIYUN$****@aliyun.com:mytable          # Tabel yang menyimpan data lengkap sumber data.
ALIYUN$****@aliyun.com:mytable_done     # Tabel done ke mana data lengkap tabel sumber disinkronkan secara otomatis.

Gambar berikut menunjukkan tabel done.

image.png

Anda dapat mengeksekusi pernyataan berikut untuk membuat tabel done:

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

  1. Saat partisi ds=20220114 tabel mytable dihasilkan, konfigurasikan tabel done untuk memicu OpenSearch Vector Search Edition melakukan reindexing.

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

-- Masukkan semaphore untuk mengaktifkan sinkronisasi data lengkap otomatis.
insert into table mytable_done partition (ds="20220114") select '{"swift_start_timestamp":1642003200}';

Tabel done berisi konten berikut:

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

Setelah semaphore untuk sinkronisasi data lengkap otomatis dimasukkan ke dalam tabel done, OpenSearch Vector Search Edition memindai semaphore tabel done dan secara otomatis memicu reindexing.

Penting
  • Pastikan Anda menentukan setidaknya satu kunci partisi untuk tabel done. Nama kunci partisi tabel done harus sama dengan nama kunci partisi tabel MaxCompute. Jika kunci partisi tabel MaxCompute adalah ds, kunci partisi tabel done harus diatur ke ds.

  • Tabel done hanya berisi satu bidang bertipe STRING. Nama bidang haruslah attribute.

  • Partisi yang Anda tambahkan ke tabel done harus ada di tabel MaxCompute. Sebagai contoh, jika tabel MaxCompute berisi partisi ds=20220114, ds=20220115, dan ds=20220116, Anda harus memilih partisi yang akan ditambahkan ke tabel done dari ketiga partisi tersebut.

  • Saat Anda memasukkan data ke tabel done, nilai bidang attribute harus berupa string JSON, seperti {"swift_start_timestamp":1642003200}. Timestamp menentukan offset awal untuk sinkronisasi data tambahan real-time.

Catatan Penggunaan

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

  • Tabel MaxCompute yang Anda tentukan saat menambahkan sumber data MaxCompute harus berupa tabel terpartisi.

  • Anda dapat menggunakan data lengkap tabel MaxCompute sebagai sumber data untuk membangun indeks di OpenSearch Vector Search Edition dan menggunakan sumber data API untuk mensinkronkan data tambahan secara real-time.