Salin data ke atau dari Azure Data Explorer menggunakan Azure Data Factory atau Synapse Analytics

BERLAKU UNTUK:Azure Data Factory Azure Synapse Analytics

Tip

Cobalah Data Factory di Microsoft Fabric, solusi analitik all-in-one untuk perusahaan. Microsoft Fabric mencakup semuanya mulai dari pergerakan data hingga ilmu data, analitik real time, kecerdasan bisnis, dan pelaporan. Pelajari cara memulai uji coba baru secara gratis!

Artikel ini menjelaskan cara menggunakan aktivitas penyalinan di alur Azure Data Factory dan Synapse Analytics untuk menyalin data ke atau dari Azure Data Explorer. Ini dibangun pada artikel Gambaran umum aktivitas salin yang menyajikan gambaran umum aktivitas salin.

Tip

Untuk mempelajari lebih lanjut tentang integrasi Azure Data Explorer dengan layanan, baca secara umum Integrasi Azure Data Explorer.

Kemampuan yang didukung

Konektor Azure Data Explorer ini didukung untuk kemampuan berikut:

Kemampuan yang didukung IR
Salin aktivitas (sumber/sink) ① ②
Memetakan aliran data (sumber/sink)
Aktivitas pencarian ① ②

① Runtime integrasi Azure ② Runtime integrasi yang dihost sendiri

Anda juga dapat menyalin data dari penyimpanan data sumber yang didukung ke Azure Data Explorer. Anda juga dapat menyalin data dari Azure Data Explorer ke penyimpanan data sink yang didukung. Untuk daftar penyimpanan data yang didukung aktivitas salin sebagai sumber atau sink, lihat tabel Penyimpanan data yang didukung.

Catatan

Menyalin data ke atau dari Azure Data Explorer melalui penyimpanan data lokal dengan menggunakan runtime integrasi yang dihost sendiri didukung di versi 3.14 dan yang lebih baru.

Dengan konektor Azure Data Explorer, Anda dapat melakukan hal-hal berikut ini:

  • Salin data dengan menggunakan autentikasi token aplikasi Microsoft Entra dengan perwakilan layanan.
  • Sebagai sumber, ambil data dengan menggunakan kueri KQL (Kusto).
  • Sebagai sink, tambahkan data ke tabel tujuan.

Memulai

Tip

Untuk panduan tentang konektor Azure Data Explorer, lihat Salin data ke/dari Azure Data Explorer dan Salin massal dari database ke Azure Data Explorer.

Untuk melakukan aktivitas Salin dengan alur, Anda dapat menggunakan salah satu alat atau SDK berikut:

Membuat layanan tertaut ke Azure Data Explorer menggunakan UI

Gunakan langkah-langkah berikut untuk membuat layanan tertaut ke Azure Data Explorer di UI portal Azure.

  1. Telusuri ke tab Kelola di ruang kerja Azure Data Factory atau Synapse Anda dan pilih Layanan Tertaut, lalu klik Baru:

  2. Cari Explorer dan pilih konektor Azure Data Explorer (Kusto).

    Screenshot of the Azure Data Explorer (Kusto) connector.

  3. Konfigurasikan detail layanan, uji koneksi, dan buat layanan tertaut baru.

    Screenshot of linked service configuration for Azure Data Explorer.

Detail konfigurasi konektor

Bagian berikut memberikan detail tentang properti yang digunakan untuk menentukan entitas khusus untuk konektor Azure Data Explorer.

Properti layanan tertaut

Konektor Azure Data Explorer mendukung jenis autentikasi berikut ini. Lihat bagian terkait untuk detailnya:

Autentikasi perwakilan layanan

Untuk menggunakan autentikasi perwakilan layanan, ikuti langkah-langkah ini untuk mendapatkan perwakilan layanan dan memberikan izin:

  1. Mendaftarkan aplikasi di platform identitas Microsoft. Untuk mempelajari caranya, lihat Mulai Cepat: Mendaftarkan aplikasi dengan platform identitas Microsoft. Catat nilai berikut, yang Anda gunakan untuk menentukan layanan tertaut:

    • ID Aplikasi
    • Kunci Aplikasi
    • ID Penyewa
  2. Beri perwakilan layanan izin yang benar di Azure Data Explorer. Lihat Mengelola izin database Azure Data Explorer untuk informasi mendetail tentang peran dan izin serta tentang mengelola izin. Secara umum, Anda harus:

    • Sebagai sumber, beri setidaknya peran Penampil database ke database Anda
    • Sebagai sink, berikan setidaknya peran pengguna Database ke database Anda

Catatan

Saat Anda menggunakan antarmuka pengguna untuk menulis, secara default akun pengguna login Anda digunakan untuk membuat daftar kluster, database, dan tabel Azure Data Explorer. Anda dapat memilih untuk mencantumkan objek menggunakan perwakilan layanan dengan mengklik menu drop-down di samping tombol refresh, atau memasukkan nama secara manual jika Anda tidak memiliki izin untuk operasi ini.

Properti berikut ini didukung untuk layanan tertaut Azure Data Explorer:

Properti Deskripsi Wajib
jenis Properti jenis harus diatur ke AzureDataExplorer. Ya
titik akhir URL titik akhir dari kluster Azure Data Explorer, dengan format sebagai https://<clusterName>.<regionName>.kusto.windows.net. Ya
database Nama database. Ya
penyewa Tentukan informasi penyewa (nama domain atau ID penyewa) tempat aplikasi Anda berada. Ini dikenal sebagai "ID Otoritas" dalam string koneksi Kusto. Anda dapat mengambilnya dengan mengarahkan mouse ke sudut kanan atas portal Microsoft Azure. Ya
servicePrincipalId Menentukan ID klien aplikasi. Ini dikenal sebagai "ID klien aplikasi Microsoft Entra" di Kusto string koneksi. Ya
servicePrincipalKey Tentukan kunci aplikasi. Ini dikenal sebagai "kunci aplikasi Microsoft Entra" di Kusto string koneksi. Tandai bidang ini dengan SecureString untuk menyimpannya dengan aman, atau merujuk penyimpanan data aman di Azure Key Vault. Ya
connectVia Runtime integrasi yang akan digunakan untuk menyambungkan ke penyimpanan data. Anda dapat menggunakan runtime integrasi Azure atau runtime integrasi yang dihost sendiri jika penyimpanan data Anda berada di jaringan privat. Jika tidak ditentukan, runtime integrasi Azure default digunakan. Tidak

Contoh: menggunakan autentikasi kunci perwakilan layanan

{
    "name": "AzureDataExplorerLinkedService",
    "properties": {
        "type": "AzureDataExplorer",
        "typeProperties": {
            "endpoint": "https://<clusterName>.<regionName>.kusto.windows.net ",
            "database": "<database name>",
            "tenant": "<tenant name/id e.g. microsoft.onmicrosoft.com>",
            "servicePrincipalId": "<service principal id>",
            "servicePrincipalKey": {
                "type": "SecureString",
                "value": "<service principal key>"
            }
        }
    }
}

Autentikasi identitas terkelola yang ditetapkan sistem

Untuk mempelajari selengkapnya tentang identitas terkelola untuk sumber daya Azure, lihat Identitas terkelola untuk sumber daya Azure.

Untuk menggunakan autentikasi identitas terkelola yang ditetapkan sistem, ikuti langkah-langkah berikut untuk memberikan izin:

  1. Ambil informasi identitas terkelola dengan menyalin nilai ID objek identitas terkelola yang dihasilkan bersama dengan pabrik atau ruang kerja Synapse Anda.

  2. Beri identitas terkelola izin yang benar di Azure Data Explorer. Lihat Mengelola izin database Azure Data Explorer untuk informasi mendetail tentang peran dan izin serta tentang mengelola izin. Secara umum, Anda harus:

    • Sebagai sumber, berikan peran penampilDatabase ke database Anda.
    • Sebagai sink, berikan peran database ingestor dan penampil Database ke database Anda.

Catatan

Saat Anda menggunakan antarmuka pengguna untuk menulis, akun pengguna login Anda digunakan untuk membuat daftar kluster, database, dan tabel Azure Data Explorer. Masukkan nama secara manual jika Anda tidak memiliki izin untuk operasi ini.

Properti berikut ini didukung untuk layanan tertaut Azure Data Explorer:

Properti Deskripsi Wajib
jenis Properti jenis harus diatur ke AzureDataExplorer. Ya
titik akhir URL titik akhir dari kluster Azure Data Explorer, dengan format sebagai https://<clusterName>.<regionName>.kusto.windows.net. Ya
database Nama database. Ya
connectVia Runtime integrasi yang akan digunakan untuk menyambungkan ke penyimpanan data. Anda dapat menggunakan runtime integrasi Azure atau runtime integrasi yang dihost sendiri jika penyimpanan data Anda berada di jaringan privat. Jika tidak ditentukan, runtime integrasi Azure default digunakan. Tidak

Contoh: menggunakan autentikasi identitas terkelola yang ditetapkan sistem

{
    "name": "AzureDataExplorerLinkedService",
    "properties": {
        "type": "AzureDataExplorer",
        "typeProperties": {
            "endpoint": "https://<clusterName>.<regionName>.kusto.windows.net ",
            "database": "<database name>",
        }
    }
}

Autentikasi identitas terkelola yang ditetapkan pengguna

Untuk mempelajari lebih lanjut tentang identitas terkelola untuk sumber daya Azure, lihat Identitas terkelola untuk sumber daya Azure

Untuk menggunakan autentikasi identitas terkelola yang ditetapkan pengguna, ikuti langkah-langkah berikut:

  1. Buat satu atau beberapa identitas terkelola yang ditetapkan pengguna dan berikan izin di Azure Data Explorer. Lihat Mengelola izin database Azure Data Explorer untuk informasi mendetail tentang peran dan izin serta tentang mengelola izin. Secara umum, Anda harus:

    • Sebagai sumber, beri setidaknya peran Penampil database ke database Anda
    • Sebagai sink, beri setidaknya peran Ingestor database ke database Anda
  2. Tetapkan satu atau beberapa identitas terkelola yang ditetapkan pengguna ke pabrik data atau ruang kerja Synapse Anda, dan buat informasi masuk untuk setiap identitas terkelola yang ditetapkan pengguna.

Properti berikut ini didukung untuk layanan tertaut Azure Data Explorer:

Properti Deskripsi Wajib
jenis Properti jenis harus diatur ke AzureDataExplorer. Ya
titik akhir URL titik akhir dari kluster Azure Data Explorer, dengan format sebagai https://<clusterName>.<regionName>.kusto.windows.net. Ya
database Nama database. Ya
informasi masuk Tentukan identitas terkelola yang ditetapkan pengguna sebagai objek kredensial. Ya
connectVia Runtime integrasi yang akan digunakan untuk menyambungkan ke penyimpanan data. Anda dapat menggunakan runtime integrasi Azure atau runtime integrasi yang dihost sendiri jika penyimpanan data Anda berada di jaringan privat. Jika tidak ditentukan, runtime integrasi Azure default digunakan. Tidak

Contoh: menggunakan autentikasi identitas terkelola yang ditetapkan pengguna

{
    "name": "AzureDataExplorerLinkedService",
    "properties": {
        "type": "AzureDataExplorer",
        "typeProperties": {
            "endpoint": "https://<clusterName>.<regionName>.kusto.windows.net ",
            "database": "<database name>",
            "credential": {
                "referenceName": "credential1",
                "type": "CredentialReference"
            }
        }
    }
}

Properti himpunan data

Untuk daftar lengkap bagian dan properti yang tersedia untuk menentukan himpunan data, lihat Himpunan data. Bagian ini mencantumkan properti yang didukung oleh himpunan data Azure Data Explorer.

Untuk menyalin data ke Azure Data Explorer, atur properti jenis himpunan data ke AzureDataExplorerTable.

Berikut adalah properti yang didukung:

Properti Deskripsi Wajib
jenis Properti jenis harus diatur ke AzureDataExplorerTable. Ya
tabel Nama tabel yang dimaksud layanan tertaut. Ya untuk sink; Tidak untuk sumber

Contoh properti himpunan data:

{
   "name": "AzureDataExplorerDataset",
    "properties": {
        "type": "AzureDataExplorerTable",
        "typeProperties": {
            "table": "<table name>"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Azure Data Explorer linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Properti aktivitas salin

Untuk daftar lengkap bagian dan properti yang tersedia untuk menentukan aktivitas, lihat Alur dan aktivitas. Bagian ini menyediakan daftar properti yang didukung oleh sumber dan sink Azure Data Explorer.

Azure Data Explorer sebagai sumber

Untuk menyalin data dari Azure Data Explorer, atur properti jenis di sumber aktivitas Salin ke AzureDataExplorerSource. Berikut ini properti yang didukung di bagian sumber aktivitas salin:

Properti Deskripsi Wajib
jenis Properti jenis sumber aktivitas salin harus diatur ke: AzureDataExplorerSource Ya
pertanyaan Permintaan baca-saja yang diberikan dalam format KQL. Gunakan kueri KQL kustom sebagai referensi. Ya
queryTimeout Waktu tunggu sebelum permintaan kueri habis. Nilai default adalah 10 menit (00:10:00); nilai maks yang diperbolehkan adalah 1 jam (01:00:00). Tidak
noTruncation Menunjukkan apakah akan memotong kumpulan hasil yang dikembalikan. Secara default, hasil dipotong setelah 500.000 rekaman atau 64 megabyte (MB). Pemotongan sangat dianjurkan untuk memastikan perilaku aktivitas yang benar. Tidak

Catatan

Secara default, sumber Azure Data Explorer memiliki batas ukuran 500.000 rekaman atau 64 MB. Untuk mengambil semua rekaman tanpa pemotongan, Anda dapat menentukan set notruncation; di awal kueri Anda. Untuk informasi selengkapnya, lihat Batas kueri.

Contoh:

"activities":[
    {
        "name": "CopyFromAzureDataExplorer",
        "type": "Copy",
        "typeProperties": {
            "source": {
                "type": "AzureDataExplorerSource",
                "query": "TestTable1 | take 10",
                "queryTimeout": "00:10:00"
            },
            "sink": {
                "type": "<sink type>"
            }
        },
        "inputs": [
            {
                "referenceName": "<Azure Data Explorer input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ]
    }
]

Azure Data Explorer sebagai sink

Untuk menyalin data ke Azure Data Explorer, atur properti jenis di sink aktivitas salin ke AzureDataExplorerSink. Berikut adalah properti yang didukung di bagian sink aktivitas salin:

Properti Deskripsi Wajib
jenis Properti jenis sink aktivitas salin harus diatur ke AzureDataExplorerSink. Ya
ingestionMappingName Nama pemetaan yang telah dibuat sebelumnya pada tabel Kusto. Untuk memetakan kolom dari sumber ke Azure Data Explorer (yang berlaku untuk semua penyimpanan dan format sumber yang didukung, termasuk format CSV/JSON/Avro), Anda dapat menggunakan pemetaan kolom aktivitas salin (secara implisit menurut nama atau secara eksplisit sebagaimana yang telah dikonfigurasi) dan/atau pemetaan Azure Data Explorer. Tidak
additionalProperties Kumpulan properti yang dapat digunakan untuk menentukan salah satu properti penyerapan yang belum diatur oleh Sink Azure Data Explorer. Secara khusus, ini dapat berguna untuk menentukan tag penyerapan. Pelajari selengkapnya dari Dokumen penyerapan data Azure Data Explorer. Tidak

Contoh:

"activities":[
    {
        "name": "CopyToAzureDataExplorer",
        "type": "Copy",
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "AzureDataExplorerSink",
                "ingestionMappingName": "<optional Azure Data Explorer mapping name>",
                "additionalProperties": {<additional settings for data ingestion>}
            }
        },
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Azure Data Explorer output dataset name>",
                "type": "DatasetReference"
            }
        ]
    }
]

Properti pemetaan aliran data

Saat mengubah data dalam aliran data pemetaan, Anda dapat membaca dari dan menulis ke tabel di Azure Data Explorer. Untuk informasi selengkapnya, lihat transformasi sumber dan transformasi sink dalam aliran data pemetaan. Anda dapat memilih untuk menggunakan himpunan data Azure Data Explorer atau himpunan data sebaris sebagai jenis sumber dan sink.

Transformasi sumber

Tabel di bawah mencantumkan properti yang didukung oleh sumber Azure Data Explorer. Anda bisa mengedit properti ini di tab opsi Sumber.

Nama Deskripsi Wajib diisi Nilai yang diizinkan Properti skrip aliran data
Table Jika Anda memilih Tabel sebagai input, aliran data akan mengambil semua data dari tabel yang ditentukan dalam himpunan data Azure Data Explorer atau di opsi sumber saat menggunakan himpunan data sebaris. Tidak String (hanya untuk himpunan data sebaris)
tableName
Kueri Permintaan baca-saja yang diberikan dalam format KQL. Gunakan kueri KQL kustom sebagai referensi. Tidak String pertanyaan
Waktu habis Waktu tunggu sebelum waktu permintaan kueri habis. Nilai default-nya adalah '172000' (2 hari) Tidak Bilangan bulat waktu habis

Contoh skrip sumber Azure Data Explorer

Saat Anda menggunakan himpunan data Azure Data Explorer sebagai jenis sumber, skrip aliran data terkaitnya adalah:

source(allowSchemaDrift: true,
	validateSchema: false,
	query: 'table | take 10',
	format: 'query') ~> AzureDataExplorerSource

Jika menggunakan himpunan data sebaris, skrip aliran data terkait adalah:

source(allowSchemaDrift: true,
    validateSchema: false,
    format: 'query',
    query: 'table | take 10',
    store: 'azuredataexplorer') ~> AzureDataExplorerSource

Transformasi sink

Tabel di bawah mencantumkan properti yang didukung oleh sink Azure Data Explorer. Anda bisa mengedit properti ini ditab Pengaturan. Saat menggunakan himpunan data sebaris, Anda akan melihat pengaturan tambahan, yang sama dengan properti yang dijelaskan di bagian properti himpunan data.

Nama Deskripsi Wajib diisi Nilai yang diizinkan Properti skrip aliran data
Tindakan pada tabel Menentukan apakah akan membuat ulang atau menghapus semua baris dari tabel tujuan sebelum menulis.
- Tidak Ada: Tidak ada tindakan yang akan dilakukan pada tabel.
- Buat ulang: Tabel akan dihapus dan dibuat ulang. Diperlukan jika membuat tabel baru secara dinamis.
- Kosongkan: Semua baris dari tabel target akan dihapus.
Tidak true atau false recreate
Memotong
Skrip Pra dan Pasca SQL Tentukan beberapa skrip Perintah kontrol Kusto yang akan dijalankan sebelum (pra-pemrosesan) dan setelah (pasca-pemrosesan) data ditulis ke database sink Anda. Tidak String preSQLs; postSQLs
Waktu habis Waktu tunggu sebelum waktu permintaan kueri habis. Nilai default-nya adalah '172000' (2 hari) Tidak Bilangan bulat waktu habis

Contoh skrip sink Azure Data Explorer

Saat Anda menggunakan himpunan data Azure Data Explorer sebagai jenis sink, skrip aliran data terkaitnya adalah:

IncomingStream sink(allowSchemaDrift: true,
	validateSchema: false,
	format: 'table',
	preSQLs:['pre SQL scripts'],
	postSQLs:['post SQL script'],
	skipDuplicateMapInputs: true,
	skipDuplicateMapOutputs: true) ~> AzureDataExplorerSink

Jika menggunakan himpunan data sebaris, skrip aliran data terkait adalah:

IncomingStream sink(allowSchemaDrift: true,
    validateSchema: false,
    format: 'table',
    store: 'azuredataexplorer',
    skipDuplicateMapInputs: true,
    skipDuplicateMapOutputs: true) ~> AzureDataExplorerSink

Properti aktivitas pencarian

Selengkapnya tentang properti, lihat Aktivitas pencarian.