Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tip
Microsoft Fabric Data Warehouse adalah gudang relasional skala perusahaan pada fondasi data lake, dengan arsitektur siap masa depan, AI bawaan, dan fitur baru. Jika Anda baru menggunakan pergudangan data, mulailah dengan Fabric Data Warehouse. Beban kerja kumpulan SQL terdedikasi yang ada dapat ditingkatkan ke Fabric untuk mengakses kemampuan baru di seluruh ilmu data, analitik waktu nyata, dan pelaporan.
Gudang data sistem multiproses simetris (SMP) tradisional menggunakan proses Ekstraksi, Transformasi, dan Pemuatan (ETL) untuk memuat data. Azure SQL pool adalah rancangan pemrosesan paralel masif (MPP) yang memanfaatkan skalabilitas dan fleksibilitas sumber daya komputasi dan penyimpanan.
Sebaliknya, proses Ekstrak, Muat, dan Transformasi (ELT) dapat memanfaatkan kemampuan pemrosesan kueri terdistribusi bawaan dan menghilangkan sumber daya yang diperlukan untuk mengubah data sebelum memuat.
Sementara kumpulan SQL mendukung banyak metode pemuatan, termasuk opsi non-Polybase seperti program penyalinan massal (bcp) dan SQL BulkCopy API, cara tercepat dan paling terukur untuk memuat data adalah melalui PolyBase. PolyBase adalah teknologi yang mengakses data eksternal yang disimpan di penyimpanan Azure Blob atau Azure Data Lake Storage melalui bahasa Transact-SQL (T-SQL).
Menerapkan Polybase ELT
Extract, Load, and Transform (ELT) adalah proses di mana data diekstrak dari sistem sumber, dimuat ke dalam gudang data, lalu ditransformasikan.
Langkah-langkah dasar untuk menerapkan PolyBase ELT untuk kumpulan SQL khusus adalah:
- Ekstrak data sumber ke dalam file teks.
- Arahkan data ke penyimpanan Azure Blob atau Azure Data Lake Storage.
- Siapkan data untuk dimuat.
- Muat data ke dalam tabel penahapan kumpulan SQL khusus menggunakan PolyBase.
- Mengubah data.
- Sisipkan data ke dalam tabel produksi.
Untuk tutorial pemuatan, lihat Memuat himpunan data New York Taxicab.
Untuk informasi selengkapnya, lihat Memuat pola dan strategi.
Mengekstrak data sumber ke dalam file teks
Mengeluarkan data dari sistem sumber daya Anda bergantung pada lokasi penyimpanan. Tujuannya adalah untuk memindahkan data ke file teks berbatas yang didukung PolyBase.
Format berkas eksternal PolyBase
PolyBase memuat data dari file teks dibatasi yang dikodekan UTF-8 dan UTF-16. PolyBase juga memuat dari format file Hadoop RC File, ORC, dan Parquet. PolyBase juga dapat memuat data dari file terkompresi Gzip dan Snappy. PolyBase saat ini tidak mendukung ASCII yang diperluas, format lebar tetap, atau format berlapis seperti WinZip, JSON, dan XML.
Jika Anda mengekspor dari SQL Server, Anda dapat menggunakan alat baris perintah bcp untuk mengekspor data ke dalam file teks yang dibatasi. Tabel berikut mencantumkan jenis data Parquet yang dipetakan ke Azure Synapse Analytics.
| Jenis data parquet | Jenis data SQL |
|---|---|
| tinyint | tinyint |
| smallint | smallint |
| int | int |
| bigint | bigint |
| boolean | bit |
| double | float |
| float | real |
| double | money |
| double | smallmoney |
| string | nchar |
| string | nvarchar |
| string | char |
| string | varchar |
| biner | biner |
| biner | varbinary |
| stempel waktu | date |
| stempel waktu | smalldatetime |
| stempel waktu | datetime2 |
| stempel waktu | tanggalwaktu |
| stempel waktu | time |
| date | date |
| decimal | decimal |
Mendaratkan data ke penyimpanan Azure Blob atau Azure Data Lake Store
Untuk mendaratkan data di penyimpanan Azure, Anda dapat memindahkannya ke penyimpanan Azure Blob atau Azure Data Lake Storage. Di salah satu lokasi, data harus disimpan dalam file teks. PolyBase dapat mengambil data dari salah satu lokasi.
Anda dapat menggunakan alat dan layanan berikut untuk memindahkan data ke Azure Storage:
- Layanan Azure ExpressRoute meningkatkan throughput jaringan, performa, dan prediktabilitas. ExpressRoute adalah layanan yang merutekan data Anda melalui koneksi privat khusus ke Microsoft Azure. Koneksi ExpressRoute tidak merutekan data melalui internet publik. Koneksi ExpressRoute menawarkan lebih banyak keandalan, kecepatan lebih cepat, latensi lebih rendah, dan keamanan lebih tinggi daripada koneksi biasa melalui internet publik.
- Utilitas AzCopy memindahkan data ke Microsoft Azure Storage melalui internet publik. Ini berfungsi jika ukuran data Anda kurang dari 10 TB. Untuk melakukan beban secara teratur dengan AzCopy, uji kecepatan jaringan untuk melihat apakah dapat diterima.
- Azure Data Factory memiliki gateway yang dapat Anda instal di server lokal Anda. Kemudian Anda dapat membuat alur untuk memindahkan data dari server lokal Anda ke Azure Storage. Untuk menggunakan Data Factory dengan kumpulan SQL khusus, lihat Memuat data ke Azure Synapse Analytics.
Menyiapkan data untuk pemuatan
Anda mungkin perlu menyiapkan dan membersihkan data di akun penyimpanan Anda sebelum memuatnya ke dalam kumpulan SQL khusus. Persiapan data dapat dilakukan saat data Anda berada di sumbernya, saat Anda mengekspor data ke file teks, atau setelah data berada di penyimpanan Azure. Paling mudah untuk bekerja dengan data sedini mungkin dalam proses.
Mendefinisikan tabel eksternal
Sebelum dapat memuat data, Anda perlu menentukan tabel eksternal di gudang data Anda. PolyBase menggunakan tabel eksternal untuk menentukan dan mengakses data di Azure Storage. Tabel eksternal mirip dengan tampilan database. Tabel eksternal berisi skema tabel dan menunjuk ke data yang disimpan di luar gudang data.
Menentukan tabel eksternal yang melibatkan penentuan sumber data, format file teks, dan definisi tabel. Berikut ini adalah topik sintaks T-SQL yang Anda butuhkan:
- Buat Sumber Data Eksternal
- BUAT FORMAT FILE EKSTERNAL
- Buat Tabel Eksternal
Memformat file teks
Setelah objek eksternal ditentukan, Anda perlu meratakan baris file teks dengan definisi tabel dan format file eksternal. Data di setiap baris file teks harus diratakan dengan definisi tabel. Untuk memformat file teks:
- Jika data Anda berasal dari sumber non-relasional, Anda perlu mengubahnya menjadi baris dan kolom. Baik data berasal dari sumber relasional atau non-relasional, data harus diubah untuk menyelaraskan dengan definisi kolom untuk tabel yang Anda rencanakan untuk memuat data.
- Format data dalam file teks untuk diratakan dengan kolom dan tipe data dalam tabel tujuan kumpulan SQL. Ketidakselarasan antara tipe data dalam file teks eksternal dan tabel gudang data menyebabkan baris ditolak selama pemuatan.
- Pisahkan bidang dalam file teks dengan pemisah. Pastikan untuk menggunakan karakter atau urutan karakter yang tidak ditemukan di dalam data sumber Anda. Gunakan terminator yang Anda tentukan dengan CREATE EXTERNAL FILE FORMAT.
Muat data ke dalam tabel penahapan kumpulan SQL khusus menggunakan PolyBase
Ini adalah praktik terbaik untuk memuat data ke dalam tabel penahapan. Tabel penahapan memungkinkan Anda menangani kesalahan tanpa mengganggu tabel produksi. Tabel persiapan juga memberi Anda kesempatan untuk menggunakan kemampuan pemrosesan kueri terdistribusi bawaan dari SQL pool untuk transformasi data sebelum memasukkan data ke dalam tabel produksi.
Opsi untuk memuat dengan PolyBase
Untuk memuat data dengan PolyBase, Anda dapat menggunakan salah satu opsi pemuatan ini:
- Muat data eksternal menggunakan ID Microsoft Entra.
- Muat data eksternal menggunakan identitas terkelola.
- PolyBase dengan T-SQL berfungsi dengan baik saat data Anda berada di penyimpanan Azure Blob atau Azure Data Lake Storage. Ini memberi Anda kontrol paling besar atas proses pemuatan, tetapi juga mengharuskan Anda untuk menentukan objek data eksternal. Metode lain menentukan objek ini di belakang layar saat Anda memetakan tabel sumber ke tabel tujuan. Untuk mengatur pemuatan T-SQL, Anda dapat menggunakan Azure Data Factory, SSIS, atau Azure Functions.
- PolyBase dengan Layanan Integrasi SQL Server (SSIS) berfungsi dengan baik ketika data sumber Anda berada di SQL Server. SSIS menentukan pemetaan tabel sumber-ke-tujuan, dan juga mengatur beban. Jika sudah memiliki paket SSIS, Anda dapat memodifikasi paket untuk bekerja dengan tujuan gudang data baru.
- PolyBase dengan Azure Data Factory adalah alat orkestrasi lain. Alat ini mendefinisikan alur dan menjadwalkan pekerjaan.
- PolyBase dengan Azure Databricks mentransfer data dari tabel Azure Synapse Analytics ke dataframe Databricks dan/atau menulis data dari dataframe Databricks ke tabel Azure Synapse Analytics menggunakan PolyBase.
Pilihan pemuatan Non-PolyBase
Jika data Anda tidak kompatibel dengan PolyBase, Anda dapat menggunakan bcp atau SQLBulkCopy API. BCP memuat langsung ke kumpulan SQL khusus tanpa melalui penyimpanan Azure Blob, dan hanya ditujukan untuk beban kecil. Perhatikan, performa beban opsi ini secara signifikan lebih lambat daripada PolyBase.
Mengubah data
Saat data berada dalam tabel penahapan, lakukan transformasi yang diperlukan beban kerja Anda. Kemudian pindahkan data ke dalam tabel produksi.
Menyisipkan data ke dalam tabel produksi
Pernyataan INSERT INTO ... SELECT memindahkan data dari tabel penahapan ke tabel permanen.
Saat Anda merancang proses ETL, coba jalankan proses pada sampel pengujian kecil. Coba ekstrak 1.000 baris dari tabel ke file, pindahkan ke Azure, lalu coba muat ke dalam tabel penahapan.
Solusi pemuatan untuk mitra
Banyak mitra kami memiliki solusi pemuatan. Untuk mengetahui lebih lanjut, lihat daftar mitra solusi kami.