Proyek FeatureStore terhubung ke satu sumber data offline dan satu sumber data online. Proyek-proyek tersebut terisolasi satu sama lain. Di dalam satu proyek, semua tabel fitur offline dan online dibagikan bersama.
Prasyarat
Anda telah membuat sumber data offline dan online store. Untuk informasi selengkapnya, lihat Buat sumber data baru.
Tabel Label telah disimpan di offline store.
Tabel Label berisi label yang digunakan untuk pelatihan model. Tabel ini mencakup target pelatihan model dan JoinId yang menghubungkan ke entitas fitur. Dalam skenario rekomendasi, tabel ini biasanya diturunkan dari tabel perilaku dengan pengelompokan berdasarkan bidang seperti user_id, item_id, atau request_id.
Buat proyek
Masuk ke Konsol PAI. Di panel navigasi kiri, klik . Pilih ruang kerja dan klik Enter FeatureStore.
Klik Create Project. Di kotak dialog, konfigurasikan parameter proyek.
Parameter utama tercantum di bawah ini.
Parameter
Deskripsi
Offline Store
Pilih sumber data offline yang sudah ada.
Online Store
Pilih sumber data online yang sudah ada.
Offline Table Lifecycle
Siklus hidup tabel yang secara otomatis dibuat dan disimpan di MaxCompute oleh FeatureStore.
Klik Submit untuk menyelesaikan pembuatan proyek.
Buat entitas fitur
Entitas fitur mengelompokkan tabel-tabel fitur yang saling terkait. Dalam sistem rekomendasi, misalnya, Anda dapat mendefinisikan dua entitas fitur: user dan item.
Di daftar proyek fitur, klik nama proyek untuk membuka halaman detail proyek.
Di tab Feature Entity, klik Create Entity. Di kotak dialog, konfigurasikan parameter entitas fitur.
Panduan parameter utama tercantum di bawah ini.
Parameter
Deskripsi
Feature Entity Name
Masukkan nama kustom. Dalam skenario rekomendasi, buat dua entitas fitur bernama user dan item.
Join Id
Join Id adalah bidang dalam tabel fitur yang menghubungkan tampilan fitur ke entitas fitur. Setiap entitas fitur memiliki satu Join Id. Anda menggunakannya untuk menggabungkan beberapa tampilan fitur.
Setiap tampilan fitur memiliki kunci primer (index key) untuk mengambil data fiturnya. Nama index key mungkin berbeda dari nama Join Id.
Dalam skenario rekomendasi, atur Join Id ke kunci primer tabel user dan item: user_id dan item_id.
Klik Submit untuk menyelesaikan pembuatan.
Buat tampilan fitur
Tampilan fitur menyimpan sekelompok fitur dan fitur turunannya. Tampilan ini merepresentasikan subset dari keseluruhan set fitur untuk suatu entitas fitur dan dipetakan ke tabel fitur offline maupun online.
Di halaman detail proyek, buka tab Feature View dan klik Create Feature View.
Di kotak dialog, konfigurasikan parameter tampilan. Klik Submit untuk menyelesaikan pembuatan.
Buat tampilan fitur offline: Daftarkan data fitur offline ke FeatureStore.
Buat tampilan fitur real-time: Daftarkan data real-time feature ke FeatureStore.
Buat tampilan fitur offline
Parameter konfigurasi utama tercantum di bawah ini.
Parameter | Deskripsi |
Type | Pilih Offline untuk mendaftarkan data fitur offline sebagai tampilan fitur di FeatureStore. |
Write Mode |
Properti bidang yang perlu dikonfigurasi meliputi:
|
Synchronize Online Feature Table | Pilih apakah akan menyinkronkan data fitur dari tampilan ini ke sumber data online dalam proyek fitur yang sama secara otomatis. |
Feature Entity | Pilih entitas fitur yang terhubung ke tampilan fitur ini. Catatan Anda dapat menghubungkan beberapa tampilan fitur ke satu entitas fitur. |
Feature Lifecycle | Atur siklus hidup untuk tampilan fitur ini. Setelah diatur, data real-time yang baru ditulis akan menggunakan siklus hidup ini. |
Buat tampilan fitur real-time
Parameter konfigurasi utama tercantum di bawah ini.
Parameter | Deskripsi |
View Name | Anda dapat mengikuti petunjuk di antarmuka konsol untuk melakukan konfigurasi kustom. |
Type | Pilih Real Time untuk mendaftarkan data fitur online sebagai tampilan fitur di FeatureStore. |
Feature Entity | Pilih entitas fitur yang terhubung ke tampilan fitur ini. Catatan Anda dapat menghubungkan beberapa tampilan fitur ke satu entitas fitur. |
Write Mode | Tampilan fitur real-time hanya mendukung Customize Table Schema. Definisikan skema baru untuk tampilan fitur real-time ini. Setelah memilih opsi ini, tambahkan bidang secara manual dan konfigurasikan propertinya sesuai petunjuk. Properti bidang yang perlu dikonfigurasi meliputi:
|
Feature Field | Masukkan jumlah bidang yang Anda perlukan.
|
Feature Lifecycle | Atur nilai lebih besar dari 1. Nilai default adalah 30 hari. |
Advanced Settings | Konfigurasikan opsi lanjutan dalam format JSON. |
Buat tabel Label
Tabel Label menyimpan label yang digunakan untuk pelatihan model. Tabel ini berisi atribut target pelatihan model dan join ID dari entitas fitur. Dalam skenario rekomendasi, tabel ini biasanya dihasilkan dari tabel perilaku menggunakan operasi seperti GROUP BY user_id, item_id, atau request_id.
Di halaman detail proyek, buka tab Label Table dan klik Create Label Table.
Di kotak dialog, pilih sumber data dan nama tabel untuk tabel Label.
Konfigurasikan bidang tabel Label. Klik Submit untuk menyelesaikan.
Konfigurasi bidang
Deskripsi
Feature Field
Jika tabel Label berisi fitur, pilih bidang yang sesuai sebagai bidang fitur.
FG Reserved Fields
Anda tidak perlu mengonfigurasi bidang ini sekarang.
Event Time
Pilih bidang timestamp yang mencatat kapan perilaku terjadi.
Label Field
Pilih bidang Label di tabel Label.
Partition Field
Pilih bidang partisi di tabel Label.
Buat fitur model
Fitur model adalah kumpulan fitur yang digunakan selama pelatihan dan penerbitan. Setelah Anda memilih fitur untuk membuat model, MaxCompute membuat tabel train set untuk pelatihan offline. Nantinya, Anda juga dapat menentukan fitur model dari EAS dan FeatureStore di PAI-Rec untuk mengambil data fitur secara otomatis guna inferensi.
Di halaman detail proyek, buka tab Model Features dan klik Create Model Feature.
Di kotak dialog, konfigurasikan parameter fitur model. Klik Submit untuk menyelesaikan.
Parameter
Deskripsi
Select Feature
Pilih fitur dari tampilan offline saat ini dan tetapkan alias.
Label Table Name
Pilih nama tabel Label yang sudah ada.
Export Table Name
Setelah Anda mengirimkan, FeatureStore membuat tabel train set di MaxCompute untuk pelatihan offline.
Ikhtisar fitur real-time
Istilah
Fitur real-time berubah dengan cepat—sering kali dalam hitungan milidetik. Fitur ini dihasilkan atau diperbarui dengan cepat di sisi server dan langsung digunakan untuk pemrosesan serta pengambilan keputusan. Fitur real-time biasanya dibangun dan dikonsumsi dalam sistem aliran data real-time serta memerlukan ketepatan waktu tinggi dan respons cepat.
Fitur real-time diekstraksi dari aliran data. Sistem pemrosesan aliran seperti Flink menghitung dan menghasilkannya untuk mencerminkan kondisi terkini. Seluruh pipeline harus memberikan performa tinggi dan latensi rendah. Fitur real-time diperbarui secara dinamis, dan sistem terus-menerus menghitung ulang fitur tersebut.
Skenario
Kasus penggunaan umum untuk fitur real-time meliputi:
Iklan online: Sesuaikan konten iklan secara real-time berdasarkan perilaku penelusuran pengguna.
Deteksi penipuan: Deteksi transaksi keuangan mencurigakan secara real-time dan picu peringatan atau blokir transaksi.
Rekomendasi personalisasi: Perbarui daftar rekomendasi secara real-time menggunakan aktivitas terkini dan data historis.
Sistem IoT: Pantau dan kendalikan perangkat secara real-time. Hasilkan dan gunakan fitur real-time untuk merespons perubahan lingkungan.
Fitur real-time dalam sistem rekomendasi dan periklanan
Proses penulisan fitur real-time
Setelah Anda membuat tampilan fitur real-time di FeatureStore, FeatureStore secara otomatis membuat tabel yang sesuai di mesin data online. Tabel ini menyimpan dan melayani data fitur real-time. Saat Anda menggunakan sumber data seperti FeatureDB, TableStore, atau Hologres, backend Anda terhubung ke Alibaba Cloud DataHub. DataHub meneruskan data ke Flink. Flink memproses dan menghitung fitur real-time, lalu menulis hasilnya ke tabel sumber data online. Anda dapat menemukan nama tabel yang tepat di halaman detail tampilan fitur real-time.
Baca fitur online
Saat Anda menggunakan EasyRec Processor, SDK C++ FeatureStore bawaannya menganalisis nama fitur model Anda (fs_model) untuk mengidentifikasi fitur real-time dan membacanya secara otomatis. Saat Anda menggunakan SDK Go atau Java FeatureStore, konfigurasikan pembacaan fitur sesuai dokumentasi SDK.
Ekspor sampel offline
FeatureStore secara otomatis menggabungkan tabel-tabel di mesin data offline yang sesuai dengan tampilan fitur dan mengekspor hasilnya. Untuk tampilan fitur real-time, FeatureDB secara otomatis menulis data mode online ke tabel offline di mesin data offline. Jika Anda tidak menggunakan FeatureDB, Anda harus membuat tugas untuk menulis data ke tabel offline di mesin data offline. Alternatifnya, Anda dapat menggunakan algoritma rekomendasi di PAI-Rec untuk menghasilkan data real-time simulasi secara offline, yang berfungsi sebagai sumber data untuk tabel offline dari tampilan fitur real-time yang sesuai.
Tampilan fitur real-time di FeatureStore
Alur kerja tampilan fitur real-time
Tampilan fitur real-time di FeatureStore menangani fitur yang berubah secara real-time. Tampilan ini menggunakan DataHub dan Flink untuk menulis fitur ke online store. Kemudian EasyRec Processor melakukan polling fitur, atau SDK FeatureStore membacanya secara langsung. Hal ini memungkinkan layanan downstream mendeteksi perubahan fitur pada tingkat milidetik.
Operasi ekspor
Anda dapat memilih beberapa tampilan fitur real-time dan offline untuk membuat fitur model. Setelah membuat fitur model, ekspor fitur tersebut. FeatureStore mendukung ekspor otomatis. Sumber tabel offline untuk tampilan fitur real-time bergantung pada konfigurasi Anda:
Sumber data online | FeatureDB | Hologres/TableStore | |
Mesin rekomendasi | Keduanya | PAI-REC (gunakan kustomisasi algoritma rekomendasi) | Lainnya |
Metode ekspor | Ekspor langsung menggunakan FeatureStore. | Impor data simulasi dari kustomisasi algoritma rekomendasi ke tabel offline untuk tampilan fitur real-time. Lalu ekspor menggunakan FeatureStore. | Ekspor data secara manual dari tabel offline untuk tampilan fitur real-time. Lalu ekspor menggunakan FeatureStore. |
Operasi sinkronisasi
Anda dapat menyinkronkan data dengan dua cara:
Tulis menggunakan SDK. Untuk informasi selengkapnya, lihat Referensi SDK FeatureStore.
Referensi
Setelah mengonfigurasi proyek FeatureStore, pelajari cara menggunakannya. Untuk informasi selengkapnya, lihat Gunakan FeatureStore untuk mengelola fitur dalam sistem rekomendasi.