全部产品
Search
文档中心

Platform For AI:Mengonversi Baris, Kolom, dan Nilai menjadi Pasangan KV

更新时间:Jun 22, 2025

Topik ini menjelaskan komponen Mengonversi Baris, Kolom, dan Nilai menjadi Pasangan KV yang disediakan oleh Machine Learning Designer (sebelumnya dikenal sebagai Machine Learning Studio).

Komponen ini mengonversi tabel trituple (baris,kolom,nilai) menjadi tabel key-value (baris,[kolom_id:nilai]).

Tipe data dari tabel trituple (baris,kolom,nilai) adalah "XXD" atau "XXL". "X" mewakili tipe data apa pun, "D" mewakili tipe data DOUBLE, dan "L" mewakili tipe data BIGINT. Dalam tabel key-value yang dihasilkan setelah konversi, tipe data baris dan nilai sama dengan tipe data input asli. Tabel indeks yang dihasilkan dari kolom memetakan ke kolom col_id. Tipe data kolom col_id adalah BIGINT.

Tabel-tabel berikut memberikan contoh konversi.

  • Tabel berikut adalah tabel trituple.

    id

    kata

    jumlah

    01

    a

    10

    01

    b

    20

    01

    c

    30

  • Tabel berikut adalah tabel key-value yang dihasilkan.

    id

    key_value

    01

    1:10;2:20;3:30

    null

    Anda dapat menyesuaikan pemisah antara kunci dan nilai, serta antara dua pasangan kunci-nilai dalam kolom key_value.

  • Tabel berikut adalah tabel indeks yang dihasilkan.

    kunci

    kunci_id

    a

    1

    b

    2

    c

    3

Anda dapat mengonfigurasi komponen menggunakan konsol Platform for AI (PAI) atau perintah PAI.

Mengonfigurasi komponen

Anda dapat menggunakan salah satu metode berikut untuk mengonfigurasi komponen Mengonversi Baris, Kolom, dan Nilai menjadi Pasangan KV.

Metode 1: Mengonfigurasi komponen pada halaman pipeline

Anda dapat mengonfigurasi parameter komponen Baris, Kolom, dan Nilai menjadi Pasangan KV pada halaman pipeline Machine Learning Designer dari Platform for AI (PAI). Machine Learning Designer sebelumnya dikenal sebagai Machine Learning Studio. Tabel berikut menjelaskan parameter tersebut.

Tab

Parameter

Deskripsi

Fields Setting

Columns Reserved During KV Conversion

Nama kolom yang tetap tidak berubah setelah tabel trituple dikonversi menjadi tabel key-value.

Output Keys

Kunci-kunci dalam tabel key-value.

Output Values

Nilai-nilai dalam tabel key-value.

Key Column in Input Index Table

Nama kolom kunci dalam tabel indeks.

Index ID Column of Key in Input Index Table

Nama kolom indeks dalam tabel indeks.

KV Delimiter

Pemisah yang digunakan untuk memisahkan kunci dan nilai dalam tabel key-value. Pemisah default adalah titik dua (:).

KV Pair Delimiter

Pemisah yang digunakan untuk memisahkan pasangan key-value. Nilai default: koma (,).

Pengaturan Lanjutan

Total Number of Instances

Jumlah total instansi. Nilainya harus bilangan bulat positif. Secara default, sistem menghitung nilai berdasarkan jumlah data input.

Memory Size (MB)

Total memori. Nilainya harus bilangan bulat positif. Secara default, sistem menghitung nilai berdasarkan jumlah data input.

Metode 2: Gunakan perintah PAI

Konfigurasikan parameter komponen menggunakan perintah PAI. Anda dapat menggunakan komponen SQL Script untuk memanggil perintah PAI. Untuk informasi lebih lanjut, lihat SQL Script.

PAI -name triple_to_kv
    -project algo_public
    -DinputTableName=test_data
    -DoutputTableName=test_kv_out
    -DindexOutputTableName=test_index_out
    -DidColName=id
    -DkeyColName=word
    -DvalueColName=count
    -DinputTablePartitions=ds=test1
    -DindexInputTableName=test_index_input
    -DindexInputKeyColName=word
    -DindexInputKeyIdColName=word_id
    -DkvDelimiter=:
    -DpairDelimiter=;
    -Dlifecycle=3

Parameter

Diperlukan

Deskripsi

Nilai Default

inputTableName

Ya

Nama tabel input.

Tidak ada nilai default

idColName

Ya

Nama kolom yang tetap tidak berubah setelah tabel trituple dikonversi menjadi tabel key-value.

Tidak ada nilai default

keyColName

Ya

Nama kolom yang mencantumkan kunci dalam tabel key-value.

Tidak ada nilai default

valueColName

Ya

Nama kolom yang mencantumkan nilai dalam tabel key-value.

Tidak ada nilai default

outputTableName

Ya

Nama tabel key-value yang dihasilkan.

Tidak ada nilai default

indexOutputTableName

Ya

Nama tabel indeks yang dihasilkan.

Tidak ada nilai default

indexInputTableName

Tidak

Nama tabel indeks yang sudah ada. Tabel tersebut harus berisi data.

Tidak ada nilai default

indexInputKeyColName

Tidak

Nama kolom kunci dalam tabel indeks. Parameter ini diperlukan jika Anda mengatur parameter indexInputTableName.

Tidak ada nilai default

indexInputKeyIdColName

Tidak

Nama kolom indeks dalam tabel indeks. Parameter ini diperlukan jika Anda mengatur parameter indexInputTableName.

Tidak ada nilai default

inputTablePartitions

Tidak

Nama partisi tabel input. Anda hanya dapat memasukkan satu nama partisi.

Tidak ada nilai default

kvDelimiter

Tidak

Pemisah yang digunakan untuk memisahkan kunci dan nilai dalam tabel key-value.

Titik dua (:)

pairDelimiter

Tidak

Pemisah yang digunakan untuk memisahkan pasangan key-value.

Koma (,)

lifecycle

Tidak

Siklus hidup tabel output.

Tidak ada nilai default

coreNum

Tidak

Jumlah total instansi. Nilainya harus bilangan bulat positif.

Dihitung secara otomatis berdasarkan jumlah data input

memSizePerCore

Tidak

Total memori. Nilainya harus bilangan bulat positif.

Dihitung secara otomatis berdasarkan jumlah data input

Contoh

  • Input

    drop table if exists triple2kv_test_input;
    create table triple2kv_test_input as
    select
      *
    from
    (
      select '01' as id, 'a' as word, 10 as count
        union all
          select '01' as id, 'b' as word, 20 as count
        union all
          select '01' as id, 'c' as word, 30 as count
        union all
          select '02' as id, 'a' as word, 100 as count
        union all
          select '02' as id, 'd' as word, 200 as count
        union all
          select '02' as id, 'e' as word, 300 as count
    ) tmp;
  • Perintah PAI

    PAI -name triple_to_kv
        -project algo_public
        -DinputTableName=triple2kv_test_input
        -DoutputTableName=triple2kv_test_input_out
        -DindexOutputTableName=triple2kv_test_input_index_out
        -DidColName=id
        -DkeyColName=word
        -DvalueColName=count
        -Dlifecycle=1;
  • Output

    • Tabel key-value triple2kv_test_input_out

      +------------+------------+
      | id         | key_value  |
      +------------+------------+
      | 02         | 1:100;4:200;5:300 |
      | 01         | 1:10;2:20;3:30 |
      +------------+------------+
    • Tabel indeks triple2kv_test_input_index_out

      +------------+------------+
      | key        | key_id     |
      +------------+------------+
      | a          | 1          |
      | b          | 2          |
      | c          | 3          |
      | d          | 4          |
      | e          | 5          |
      +------------+------------+