Pembayaran bil awan Azure Microsoft: tutorial cepat gudang data moden Azure Synapse Analytics
Pada era data besar hari ini, banyak syarikat sering mengalami "keadaan sembelit" yang sangat memalukan ketika melakukan analisis dan laporan data:
Syarikat ini telah mengumpulkan beberapa data tahap TB atau bahkan PB selama beberapa tahun, semuanya tersebar di tempat yang berbeza (pangkalan data perniagaan, fail log, pelbagai platform SaaS pihak ketiga). Idea umum pengurus produk atau operasi menarik laporan analisis potret pengguna "rentas suku tahun, multi-dimensi", dan hasilnya adalah "pelaksanaan" dalam pangkalan data SQL tradisional. Sebilangan besar hari telah berlalu, dan sistem masih berputar liar. Setelah akhirnya menunggu pada waktu petang, bukan sahaja laporan itu tidak habis, tetapi juga CPU pangkalan data persekitaran pengeluaran dalam talian secara langsung dipenuhi kerana permintaan setinggi langit ini, yang menyebabkan APP front-end tersekat serta-merta dan dikeluhkan oleh pelanggan.
Senibina data tradisional "gaya cerobong" atau "gaya bengkel kecil" ini rentan terhadap data besar-besaran. Perniagaan sangat menyakitkan, pembangunan habis, operasi dan penyelenggaraan takut mati.
Untuk mengurangkan dimensi sepenuhnya dan mengatasi titik-titik kesakitan pertanyaan data besar-besaran dan data yang tersebar di mana-mana, Microsoft Cloud (Azure) telah mengeluarkan senjata utamanya dalam bidang analisis data --
Azure Synapse Analytics (Perkhidmatan Gudang/Analisis Data Moden)
。
Logik terasnya kasar dan elegan:
Ia secara paksa menggabungkan "Gudang Data" tradisional dan "Analisis Data Besar" moden di ruang kanopi bebas yang dikendalikan sepenuhnya.
Ia bergantung pada lapisan bawah
Senibina pemprosesan selari berskala besar (MPP) dapat membahagikan pertanyaan gergasi kompleks yang pada awalnya perlu berjalan selama beberapa jam menjadi puluhan atau bahkan ratusan tugas kecil, dan menyerahkannya kepada kelompok pengkomputeran belakang untuk mengebom pada masa yang sama. Anda hanya perlu menyelesaikan ayat SQL standard, ketik dan tekan Enter, di hadapan data besar-besaran, ia masih dapat memberi anda tindak balas tahap kedua
。
Hari ini kami menolak sebarang khotbah rasmi dan parameter teori yang membosankan, dan secara langsung bermula dari amalan pengeluaran sebenar kilang besar moden, dan membawa anda tanpa rasa sakit untuk mengungkap misteri Azure Synapse Analytics, dan membina satu set sendiri di awan dalam 10 minit Kedudukan analisis data besar yang sangat pantas.
Tahap pertama: pembongkaran mendalam, "model kosmik pelbagai dimensi" Azure Synapse
Sebelum anda mengklik konsol, anda mesti membina model dunia fizikal asas Azure Synapse dalam fikiran anda. Ramai orang akan tersesat ketika memasuki konsol kerana mereka tidak memahami bahawa sebenarnya ada tiga "kekuatan pengkomputeran kosmik selari" yang sama sekali berbeza di dalamnya:
Universe One: Server SQL Pool (Serverless SQL Pool, Explore Pioneer): Ini adalah teknologi hitam yang paling menjimatkan dan menakjubkan. Ia tidak mempunyai pelayan fizikal, dan mengira wang berdasarkan jumlah data yang anda tanyakan (sekitar $5 untuk 1 TB). Satu-satunya tugasnya ialah apabila anda mempunyai sekumpulan fail CSV, JSON atau Parquet yang tidak kemas yang terletak di awan
Semasa menyimpan, anda tidak perlu membuat jadual apa pun, anda boleh "menembusi" fail ini seperti memeriksa pangkalan data dengan menggunakan pernyataan SQL standard. Sesuai untuk penerokaan data secara tiba-tiba.
Universe 2: Kolam SQL khusus (Kolam SQL Dedicated, pasukan berkuda berat): Ini adalah gudang data peringkat perusahaan (sebelumnya dikenali sebagai Azure SQL DW) dalam pengertian tradisional. Ia adalah kumpulan entiti yang mengumpulkan wang secara tetap setiap jam. Ia menggunakan seni bina diedarkan MPP (pemprosesan selari berskala besar) standard, dan data akan tersebar dan diedarkan ke 60 unit penyimpanan yang mendasari setelah masuk. Apabila anda perlu menjalankan laporan besar tetap harian beratus-ratus juta data inti syarikat, kumpulan pasukan berkuda berat ini akan berjalan dengan kelajuan penuh, memberikan tindak balas tahap kedua yang tetap.
Universe Three: Synapse Pipelines (Synapse Pipelines): Anda boleh memahaminya sebagai Azure Data Factory(ADF) yang dibina di dalamnya. Ia tidak memerlukan anda menulis sebaris kod. Ia hanya bergantung pada seret dan lepas, dan secara automatik dapat "mengepam" data ke gudang ini secara automatik dari bilik komputer buatan sendiri syarikat anda atau pelbagai pangkalan data luaran.
Kecemerlangan pengeluar utama: Ketiga alam semesta ini dibuka sepenuhnya dalam antara muka yang sama, perkongsian data, dan pengasingan kuasa pengkomputeran. Ini adalah siling pusat data moden moden.
Tahap kedua: latihan pertempuran sebenarnya-10 minit untuk menaikkan bangunan tinggi di tanah, membina gudang kelajuan moden
Pastikan anda sudah mempunyai akaun Azure dan telah membina asas
Azure Data Lake Storage Gen2 (Penyimpanan tasik data)
Digunakan untuk menyimpan fail asal.
Langkah 1: Membuka Ruang Kerja Alam Semesta Bebas Synapse (Workspace)
Log masuk ke laman web portal Azure.
Masukkan "Azure Synapse Analytics" di bar carian di atas dan klik untuk memasukkan konsol teras.
Klik "Buat" di bahagian atas: Maklumat asas: Pilih kumpulan sumber anda, namakan ruang kerja anda sebagai synapse-workspace-prod, dan pilih yang paling dekat dengan anda (seperti East Asia Hong Kong). Tentukan Data Data (Pilih Data Lake Storage Gen2): Pilih Storage Account (akaun penyimpanan) yang anda bina terlebih dahulu, dan tentukan bekas (Container) yang diberi nama raw-data. Catatan: Bekas ini akan berfungsi sebagai "pangkalan belakang besar" untuk keseluruhan gudang, dan semua dokumen asal akan dibuang di sini.
Masukkan nama pengguna dan kata laluan pentadbir anda, dan terus klik Seterusnya sehingga penciptaan selesai.
Langkah 2: Log masuk ke Meja Kerja Perspektif Tuhan (Synapse Studio)
Setelah penciptaan selesai (biasanya diperlukan sekitar 2 minit), klik untuk memasuki halaman sumber.
Di tengah, anda akan
Lihat butang biru terang yang sangat menarik: "Open Synapse Studio".
Jangan teragak-agak untuk memesannya! Halaman secara automatik akan melompat ke meja kerja dunia data yang bebas sepenuhnya dan sangat sci-fi. Semua saintis data, jurutera BI dan pengurus rangkaian di kilang besar bertarung berdampingan dalam antara muka ini setiap hari.
Tahap ketiga: latihan pertempuran sebenar dua-gunakan Serverless SQL untuk "menembusi" sebilangan besar fail asli dalam satu saat
Kami sekarang akan mensimulasikan senario pembangunan yang paling realistik: sistem e-dagang luar negara syarikat baru saja membuang puluhan juta log transaksi pesanan pengguna global (format Parquet atau format CSV) yang dimampatkan oleh beberapa GB bulan lalu. kami
Raw-data
Dalam bekas tasik data.
Sekarang pengurus produk ingin melihat: "Siapa 10 pengguna tempatan teratas dengan jumlah penggunaan tertinggi di dunia bulan lalu?"
Menurut amalan sebelumnya, anda harus membina jadual, menulis kod dan menulis ETL untuk mengimport puluhan juta data ini ke dalam pangkalan data, dan membuang hampir sepanjang hari. Tetapi di hadapan Synapse, kami menggunakan
SQL Serverless
Main blitzkrieg yang melampau.
Di sebelah kiri antara muka Synapse Studio, klik pada ikon "Data".
Tukar ke tab "Linked" (dipautkan), buka akaun simpanan Data Lake anda, dan cari folder tempat fail pesanan disimpan.
Saksikan momen teknologi hitam: Klik kanan pada fail pesanan besar dan pilih "Skrip SQL Baru"-> "Pilih TOP 100 baris".
Sistem akan menghasilkan pernyataan SQL yang luar biasa untuk anda secara automatik. Kami mengubahnya sedikit dan menulis secara langsung logik teras yang dikehendaki oleh pengurus produk:
Klik pada bahagian atas
"Run" (berjalan)
。
Kekuatan pengkomputeran Serverless di bahagian belakang meletup seketika. Ia tidak memerlukan indeks dan secara langsung menyapu semua fail yang tersebar di tasik data. Hanya beberapa saat kemudian, ID dan jumlah penggunaan 10 pengguna zalim tempatan muncul dengan kemas di tetingkap Results di bawah.
Saya menarik pengurus produk dan memindahkan skrin kepadanya. Seluruh proses berjalan lancar. Ini adalah kelajuan gudang moden yang asli.
Tahap keempat: sejarah mengelakkan darah dan air mata di bawah struktur serentak peringkat kilang besar
Platform data besar yang dikendalikan sepenuhnya ini sangat menyegarkan untuk digunakan, dan secara langsung membantu anda melicinkan semua kerumitan pengedaran yang mendasari. Tetapi untuk bertahan dengan stabil di medan perang lalu lintas komersial yang sangat ketat dan laporan serentak yang tinggi, sebagai ketua arkitek data, anda mesti segera mengeluarkan perintah pentadbiran untuk menyolder dua lubang besar berikut sebelum menutup komputer:
1. Tragedi kewangan yang disebabkan oleh "Serverless SQL Blind Scan" yang mematikan
Seperti disebutkan sebelumnya, Serverless SQL sangat mudah dan tidak perlu dibuka
Mesin, hitung wang mengikut jumlah data yang diminta (setiap imbasan 1 TB berharga sekitar $5).
Bencana berlaku: Sekiranya syarikat anda mempunyai pengembangan atau operasi utama, tulis pernyataan pertanyaan yang sangat tidak teratur (contohnya, tidak ada had masa, gunakan SELECT * padanan kabur untuk mengimbas keseluruhan cakera), dan kemudian masukkan pertanyaan ini ke dalam setiap 5 Skrip gelung yang dicetuskan secara automatik setiap minit. Oleh kerana ia mengimbas beratus-ratus GB log asal setiap kali, dalam beberapa hari, bil imbasan SQL Serverless ini dapat membakar ribuan dolar dengan mudah, dan kewangan akan datang kepada anda secara langsung dengan pisau.
Konfigurasi Pingat Emas Pengecualian Standard Arkitek: Kunci Had Kelajuan Fizikal: Di Synapse Studio, klik untuk memasukkan "Manage"-> "SQL pools". Klik untuk mengawal tetapan bawaan kumpulan SQL Serverless, dan konfigurasikan secara paksa "had pemprosesan data harian/mingguan/bulanan" (had pemprosesan data maksimum harian/mingguan/bulanan). Sebagai contoh, tetapkan sehingga 2 TB setiap hari. Setelah kod sampah atau skrip gelung tanpa henti mencetuskan melebihi standard, sistem akan menghentikan pertanyaan dengan kejam dan melaporkan kesalahan dalam satu saat, dan menyimpan pasaran modal syarikat.
2. Dilarang keras menggunakan "Row-by-Row Updates" dalam kumpulan SQL khusus (Row-by-Row Updates)
Apabila anda mengaktifkan
Dedicated SQL Pool (kolam SQL khusus)
Apabila digunakan untuk membuat gudang inti, kebiasaan kod anda mesti diubah sepenuhnya dari pemikiran "bengkel kecil" menjadi pemikiran "diedarkan".
Pendedahan orang dalam: Dalam pangkalan data hubungan tradisional (seperti SQL Server/MySQL), kita sering menulis status SET UPDATE my_table = 1 WHERE id = 123;. Tetapi dalam seni bina Synapse yang diedarkan, data dipecah dan diedarkan dalam 60 nod penyimpanan. Sekiranya anda menggunakan gelung untuk menjalankan Kemas kini atau Insert rekod tunggal ini dalam kod atau proses ETL, ia akan menyebabkan otak terkoordinasi yang diedarkan (Kod Kawalan) yang mendasari mati sepenuhnya untuk mengunci jadual dan penyegerakan rangkaian dengan kerap, dan kelajuannya akan lebih baik daripada Pangkalan data yang berdiri sendiri seratus kali lebih perlahan!
Spesifikasi pengukuhan tegar: Sentiasa gunakan genre "Beban Penuh". Sekiranya anda perlu mengemas kini data, selalu gunakan arahan PolyBase atau COPY dengan konfigurasi tinggi untuk memasukkan puluhan ribu data baru ke dalam Jadual Staging sementara. Kemudian gunakan pernyataan berorientasikan set yang bersih dan murni untuk menimpa atau menggabungkan kumpulan. Tulis kod mengikut selera kluster yang diedarkan, dan ia akan memberi anda tindak balas tahap kedua yang sebenar.
Jumlah
Mengakhiri
Dengan menggunakan Azure Synapse Analytics untuk membina gudang data moden peringkat perusahaan dengan cepat, inti inti inti industri sebenarnya dipermudah menjadi enam belas perkataan:
Pengalihan daya pengkomputeran, penerokaan penembusan, penguncian total, throughput massa
。
Anda mengucapkan selamat tinggal kepada masa lalu dan meminta datuk dan nenek anda untuk meminta data dari sistem yang berbeza. Anda takut bahawa anda akan menjalankan laporan besar dan terjebak dalam sistem dalam talian, dan anda akan menumpahkan rambut anda setiap hari untuk memori mesin maya. Semua tekanan kuasa pengkomputeran yang paling berat dihoskan sepenuhnya kepada otak asli awan MPP yang diedarkan yang dibina oleh Microsoft dengan puluhan bilion dolar. Duduk di depan komputer, dengan elegan membuka pasar data yang indah, dengan tenang menyaksikan ratusan juta data dijinakkan dan patuh dalam sekelip mata, ini adalah postur pengewangan arkitek yang paling elegan di era data moden moden.

