全部产品
Search
文档中心

AnalyticDB:Sinkronisasi data SLS menggunakan AnalyticDB Pipeline Service (APS) (Direkomendasikan)

更新时间:Dec 06, 2025

AnalyticDB for MySQL menyediakan fitur AnalyticDB Pipeline Service (APS). Anda dapat menggunakan fitur ini untuk membuat tautan data Simple Log Service (SLS) guna menyinkronkan data secara real time dari Logstore ke kluster AnalyticDB for MySQL, mulai dari offset waktu tertentu. Fitur ini memenuhi kebutuhan seperti output data near real-time, pengarsipan lengkap data historis, dan analitik elastis. Topik ini menjelaskan cara menambahkan sumber data SLS, membuat tautan data SLS, memulai tugas sinkronisasi, melakukan analitik data, dan mengelola sumber data.

Prasyarat

Catatan

  • Satu tabel dalam kluster AnalyticDB for MySQL hanya dapat disinkronkan dengan satu Logstore di Simple Log Service.

  • Setelah data diingesti, operasi Commit harus dieksekusi agar data yang ditulis menjadi terlihat. Untuk mencegah interval operasi Commit yang terlalu pendek memengaruhi stabilitas pekerjaan dan kinerja baca-tulis, fitur sinkronisasi data AnalyticDB for MySQL memiliki interval operasi Commit default selama 5 menit. Oleh karena itu, saat Anda membuat dan memulai pekerjaan sinkronisasi data untuk pertama kalinya, Anda harus menunggu setidaknya 5 menit untuk melihat batch pertama data yang ditulis.

Informasi penagihan

Migrasi data ke OSS menggunakan fitur migrasi data AnalyticDB for MySQL dikenakan biaya berikut.

Prosedur

Konfigurasikan otorisasi RAM

Untuk menyinkronkan data SLS ke AnalyticDB for MySQL lintas akun Alibaba Cloud yang berbeda, Anda harus membuat peran Resource Access Management (RAM) di akun sumber, memberikan izin yang tepat kepada peran RAM tersebut, dan memodifikasi kebijakan kepercayaan peran RAM tersebut. Jika Anda menyinkronkan data SLS dalam akun yang sama, lewati langkah ini dan lanjutkan ke Buat sumber data.

  1. Buat peran RAM. Untuk informasi selengkapnya, lihat Buat peran RAM untuk akun Alibaba Cloud.

    Catatan

    Saat mengonfigurasi parameter Principal Name, pilih Other Account dan masukkan ID akun Alibaba Cloud yang berisi kluster AnalyticDB for MySQL. Anda dapat login ke Account Center dan melihat Account ID pada halaman Security Settings.

  2. Berikan izin AliyunAnalyticDBAccessingLogRolePolicy kepada peran RAM tersebut. Untuk informasi selengkapnya, lihat Berikan izin yang tepat kepada peran RAM.

  3. Modifikasi kebijakan kepercayaan peran RAM tersebut. Untuk informasi selengkapnya, lihat Modifikasi kebijakan kepercayaan peran RAM.

    {
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "RAM": [
                "acs:ram::<ID akun Alibaba Cloud>:root"
            ],
            "Service": [
                "<ID akun Alibaba Cloud>@ads.aliyuncs.com"
            ]
          }
        }
      ],
      "Version": "1"
    }
    Catatan

    ID akun Alibaba Cloud adalah ID akun Alibaba Cloud yang Anda tentukan pada Langkah 1. Jangan sertakan tanda kurung sudut (<>).

Buat sumber data

Catatan

Jika Anda ingin menggunakan sumber data yang sudah ada, lewati langkah ini dan lanjutkan ke Buat tautan data.

  1. Login ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih wilayah. Di panel navigasi sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster tersebut.

  2. Di panel navigasi sebelah kiri, pilih Data Ingestion > Data Sources.

  3. Di pojok kiri atas, klik Create Data Source.

  4. Pada halaman Create Data Source, konfigurasikan parameter-parameter berikut. Tabel berikut menjelaskan parameter-parameter tersebut.

    Parameter

    Deskripsi

    Data Source Type

    Pilih SLS.

    Data Source Name

    Sistem menghasilkan nama berdasarkan jenis sumber data dan waktu saat ini. Anda dapat mengubah nama sesuai kebutuhan.

    Data Source Description

    Deskripsi sumber data, misalnya skenario danau data terpadu atau batasan bisnis.

    Deployment Mode

    Saat ini, hanya Alibaba Cloud Instance yang didukung.

    Region of Simple Log Service Project

    Wilayah tempat proyek SLS berada.

    Across Alibaba Cloud Accounts

    Sumber data SLS mendukung sinkronisasi data dari akun Alibaba Cloud lain ke AnalyticDB for MySQL.

    • No: Sinkronkan data SLS dalam akun saat ini ke AnalyticDB for MySQL.

    • Yes: Sinkronkan data SLS dari akun lain ke AnalyticDB for MySQL. Jika Anda memilih opsi ini, Anda harus menentukan Alibaba Cloud Account dan RAM Role.

      Catatan
      • Alibaba Cloud Account: ID akun Alibaba Cloud tempat sumber data berada.

      • RAM Role: Nama peran RAM yang dibuat di akun sumber. Ini adalah peran RAM yang Anda buat pada Langkah 1.

    Simple Log Service Project

    Proyek SLS sumber.

    Penting

    Daftar Proyek SLS menampilkan semua proyek di bawah akun Alibaba Cloud dan pengguna RAM-nya. Jika Anda memilih proyek yang dimiliki oleh akun Alibaba Cloud, pastikan pengguna RAM memiliki izin pada proyek tersebut. Jika tidak, data tidak dapat disinkronkan ke AnalyticDB for MySQL.

    Simple Log Service Logstore

    Logstore SLS sumber.

  5. Setelah mengonfigurasi parameter, klik Create.

Buat tautan data

  1. Di panel navigasi sebelah kiri, klik Simple Log Service/Kafka Data Synchronization.

  2. Di pojok kiri atas, klik Create Synchronization Job.

  3. Pada halaman Create Synchronization Job, konfigurasikan parameter Source and Destination Settings, Destination Database and Table Settings, dan Synchronization Settings.

    • Tabel berikut menjelaskan parameter Source and Destination.

      Parameter

      Deskripsi

      Job Name

      Nama tautan data. Sistem menghasilkan nama berdasarkan jenis sumber data dan waktu saat ini. Anda dapat mengubah nama sesuai kebutuhan.

      Data Source

      Pilih sumber data SLS yang sudah ada atau buat yang baru.

      Destination Type

      Opsi berikut didukung:

      • Data Lake - User OSS.

      • Data Lake - AnalyticDB Lake Storage (Direkomendasikan).

        Penting

        Saat Anda memilih Data Lake - AnalyticDB Lake Storage, Anda harus mengaktifkan fitur penyimpanan danau.

      ADB Lake Storage

      AnalyticDB for MySQL Nama penyimpanan danau tempat data danau berada.

      Pilih penyimpanan danau tujuan dari daftar drop-down. Jika belum ada penyimpanan danau yang dibuat, klik Automatically Created dalam daftar drop-down untuk membuatnya secara otomatis.

      Penting

      Parameter ini wajib diisi hanya ketika Destination Type diatur ke Data Lake - AnalyticDB Lake Storage.

      OSS Path

      AnalyticDB for MySQL Jalur penyimpanan di OSS untuk data danau data terpadu.

      Penting
      • Parameter ini wajib diisi ketika Anda mengatur Destination Type ke Data Lake - User OSS.

      • Bucket yang ditampilkan adalah semua bucket di wilayah yang sama dengan kluster AnalyticDB for MySQL. Anda dapat memilih salah satunya. Rencanakan jalur penyimpanan dengan cermat. Anda tidak dapat mengubahnya setelah pembuatan.

      • Pilih folder kosong. Jalur OSS tidak boleh memiliki hubungan awalan dengan jalur OSS tugas lain untuk mencegah data ditimpa. Misalnya, jika jalur OSS untuk dua tugas sinkronisasi data adalah oss://testBucketName/test/sls1/ dan oss://testBucketName/test/, keduanya memiliki hubungan awalan, yang akan menyebabkan data ditimpa selama sinkronisasi data.

      Storage Format

      Format penyimpanan data. Opsi berikut didukung:

      • PAIMON.

        Penting

        Format ini hanya didukung ketika Destination Type diatur ke Data Lake - User OSS.

      • ICEBERG.

    • Tabel berikut menjelaskan parameter Destination Database and Table Settings.

      Parameter

      Deskripsi

      Database Name

      Nama database tujuan di AnalyticDB for MySQL. Jika database dengan nama yang sama belum ada, database baru akan dibuat. Jika database dengan nama yang sama sudah ada, data akan disinkronkan ke database yang sudah ada. Untuk informasi selengkapnya tentang konvensi penamaan, lihat Batasan.

      Penting

      Dalam bagian Source and Destination Settings, jika Anda mengatur Storage Format ke PAIMON, database yang sudah ada harus memenuhi kondisi berikut. Jika tidak, tugas sinkronisasi data akan gagal.

      • Harus merupakan database eksternal. Pernyataan untuk membuat database harus berupa CREATE EXTERNAL DATABASE<database_name>.

      • Parameter `DBPROPERTIES` dalam pernyataan `CREATE DATABASE` harus mencakup properti catalog, dan nilai catalog harus paimon.

      • Parameter `DBPROPERTIES` dalam pernyataan `CREATE DATABASE` harus mencakup properti adb.paimon.warehouse. Contoh: adb.paimon.warehouse=oss://testBucketName/aps/data.

      • Parameter `DBPROPERTIES` dalam pernyataan `CREATE DATABASE` harus mencakup properti LOCATION, dan Anda harus menambahkan .db setelah nama database. Jika tidak, kueri XIHE akan gagal. Contoh: LOCATION=oss://testBucketName/aps/data/kafka_paimon_external_db.db/.

        Direktori bucket dalam jalur OSS yang dikonfigurasi untuk LOCATION harus sudah ada. Jika tidak, pembuatan database akan gagal.

      Table Name

      Nama tabel tujuan di AnalyticDB for MySQL. Jika tabel dengan nama yang sama belum ada di database, tabel baru akan dibuat. Jika tabel dengan nama yang sama sudah ada, sinkronisasi data akan gagal. Untuk informasi selengkapnya tentang konvensi penamaan, lihat Batasan.

      Schema Field Mapping

      Secara default, bidang diambil dari konfigurasi tugas pengiriman Simple Log Service. Jika tidak ada tugas pengiriman yang dikonfigurasi untuk Logstore, bidang diambil dari data log terbaru secara default.

      • Tipe data yang didukung: BOOLEAN, INT, BIGINT, FLOAT, DOUBLE, dan STRING.

      • Sinkronisasi bidang terpesan SLS didukung. Untuk informasi selengkapnya, lihat Bidang terpesan.

      Penting
      • Modifikasi nama bidang tujuan tidak didukung.

      • Jika tugas telah dimulai (berjalan atau selesai), Anda tidak dapat memodifikasi kolom yang sudah ada, tetapi Anda dapat menambahkan kolom baru. Jika tugas telah dibuat tetapi belum dimulai, Anda dapat memodifikasi kolom-kolom tersebut.

      Partition Key Settings

      Tetapkan kunci partisi untuk tabel tujuan. Kami merekomendasikan mengonfigurasi partisi berdasarkan waktu log atau logika bisnis untuk memastikan kinerja ingesti dan kueri data. Jika Anda tidak menetapkan kunci partisi, tabel tujuan tidak akan memiliki partisi secara default.

      Anda dapat memformat kunci partisi tujuan menggunakan format waktu atau dengan menentukan bidang partisi.

      • Untuk mempartisi berdasarkan tanggal dan waktu, pilih bidang tanggal-waktu sebagai nama bidang partisi. Untuk metode penanganan format, pilih Time Formatting, lalu pilih format bidang sumber dan format partisi tujuan. AnalyticDB for MySQL mengidentifikasi nilai bidang partisi berdasarkan format bidang sumber dan mengonversinya ke format partisi tujuan untuk partisi. Misalnya, jika bidang sumber adalah gmt_created dengan nilai 1711358834, format bidang sumber adalah timestamp presisi tingkat detik, dan format partisi tujuan adalah yyyyMMdd, data akan dipartisi berdasarkan 20240325.

      • Untuk mempartisi berdasarkan nilai bidang, pilih Specify Partition Field sebagai metode penanganan format.

    • Tabel berikut menjelaskan parameter Synchronization Settings.

      Parameter

      Deskripsi

      Starting Consumer Offset for Incremental Synchronization

      Saat tugas sinkronisasi dimulai, tugas tersebut mengonsumsi data SLS dari titik waktu yang dipilih. Nilai yang valid:

      • Earliest offset (begin_cursor): Secara otomatis mengonsumsi data dari titik waktu paling awal dalam data SLS.

      • Latest offset (end_cursor): Secara otomatis mengambil data dari titik waktu paling akhir dalam data SLS.

      • Custom offset: Anda dapat memilih titik waktu apa pun. Sistem mulai mengonsumsi data dari entri pertama di SLS yang sama dengan atau setelah waktu ini.

      Job Resource Group

      Tentukan kelompok sumber daya pekerjaan tempat tugas dijalankan.

      ACUs for Incremental Synchronization

      Tentukan jumlah ACUs untuk kelompok sumber daya pekerjaan. Jumlah minimum ACUs adalah 2, dan maksimum adalah sumber daya komputasi maksimum yang tersedia di kelompok sumber daya pekerjaan. Kami merekomendasikan menentukan jumlah ACUs yang lebih tinggi untuk meningkatkan kinerja ingesti data dan stabilitas tugas.

      Catatan

      Saat Anda membuat tugas sinkronisasi data, tugas tersebut menggunakan sumber daya elastis dari kelompok sumber daya pekerjaan. Tugas sinkronisasi data menempati sumber daya dalam waktu lama, sehingga sistem mengurangi sumber daya yang digunakan oleh tugas tersebut dari kelompok sumber daya. Misalnya, jika kelompok sumber daya pekerjaan memiliki maksimum 48 ACUs dan Anda telah membuat tugas sinkronisasi yang menggunakan 8 ACUs, jumlah maksimum ACUs yang dapat Anda pilih untuk tugas sinkronisasi lain dalam kelompok sumber daya ini adalah 40.

      Advanced Settings

      Konfigurasi lanjutan memungkinkan Anda menyesuaikan tugas sinkronisasi. Untuk menggunakan konfigurasi khusus, hubungi dukungan teknis.

  4. Setelah mengonfigurasi parameter, klik Submit.

Mulai tugas sinkronisasi data

  1. Pada halaman Simple Log Service/Kafka Data Synchronization, temukan tugas sinkronisasi data yang telah Anda buat dan klik Start di kolom Actions.

  2. Di pojok kiri atas, klik Search. Tugas berhasil dimulai ketika statusnya berubah menjadi Running.

Analitik data

Setelah data disinkronkan, Anda dapat menggunakan fitur pengembangan Spark Jar untuk menganalisis data di AnalyticDB for MySQL. Untuk informasi selengkapnya tentang pengembangan Spark, lihat Editor pengembangan Spark dan Pengembangan aplikasi Spark offline.

  1. Di panel navigasi sebelah kiri, pilih Job Development > Spark JAR Development.

  2. Masukkan pernyataan contoh dalam templat default dan klik Run Now.

    -- Berikut ini hanya contoh SparkSQL. Ubah kontennya dan jalankan program spark Anda.
    
    conf spark.driver.resourceSpec=medium;
    conf spark.executor.instances=2;
    conf spark.executor.resourceSpec=medium;
    conf spark.app.name=Spark SQL Test;
    conf spark.adb.connectors=oss;
    
    -- Berikut adalah pernyataan sql Anda
    show tables from lakehouse20220413156_adbTest;
  3. (Opsional): Pada tab Applications, klik Logs di kolom Actions untuk melihat log eksekusi pekerjaan Spark SQL.

Kelola sumber data

Di panel navigasi sebelah kiri, pilih Data Ingestion > Data Sources. Anda dapat melakukan operasi berikut di kolom Actions.

Operasi

Deskripsi

Create Job

Berpindah cepat ke halaman pembuatan tugas sinkronisasi atau migrasi data untuk sumber data ini.

View

Lihat konfigurasi detail sumber data.

Edit

Edit properti sumber data, seperti nama dan deskripsinya.

Delete

Hapus sumber data saat ini.

Catatan

Jika terdapat tugas sinkronisasi atau migrasi data untuk sumber data tersebut, Anda tidak dapat langsung menghapus sumber data. Anda harus terlebih dahulu membuka halaman Simple Log Service/Kafka Data Synchronization, temukan tugas sinkronisasi yang dituju, lalu klik Delete di kolom Actions untuk menghapus tugas sinkronisasi atau migrasi data tersebut.