Bagikan melalui


Analitik lintas penyewa menggunakan data yang diekstrak - aplikasi penyewa tunggal

Berlaku untuk: Azure SQL Database

Dalam tutorial ini, Anda berjalan melalui skenario analitik lengkap untuk implementasi penyewa tunggal. Skenario ini menunjukkan bagaimana analitik dapat memungkinkan bisnis untuk membuat keputusan yang cerdas. Menggunakan data yang diekstrak dari setiap database penyewa, Anda menggunakan analitik untuk mendapatkan wawasan ke dalam perilaku penyewa, termasuk penggunaannya atas aplikasi Wingtip Ticket SaaS sampel. Skenario ini melibatkan tiga langkah:

  1. Data ekstrak dari setiap database penyewa ke dalam penyimpanan analitik.
  2. Transformasikan data yang diekstrak untuk pemrosesan analitik.
  3. Gunakan alat kecerdasan bisnis untuk menarik wawasan yang berguna, yang dapat memandu pengambilan keputusan.

Dalam tutorial ini, Anda akan mempelajari cara:

  • Membuat penyimpanan analitik penyewa untuk mengekstrak data ke dalamnya.
  • Menggunakan pekerjaan elastis untuk mengekstrak data dari setiap database penyewa ke dalam penyimpanan analitik.
  • Mengoptimalkan data yang diekstrak (mengatur ulang menjadi skema bintang).
  • Kueri database analitik.
  • Gunakan Power BI untuk visualisasi data untuk menyoroti tren dalam data penyewa dan membuat rekomendasi untuk penyempurnaan.

Diagram memperlihatkan gambaran umum arsitektur yang digunakan untuk artikel ini.

Pola analitik penyewa offline

Aplikasi SaaS multi-penyewa biasanya memiliki sejumlah besar data penyewa yang disimpan di cloud. Data ini menyediakan sumber wawasan yang kaya tentang pengoperasian dan penggunaan aplikasi Anda, serta tentang perilaku penyewa. Wawasan ini dapat memandu pengembangan fitur, peningkatan kegunaan, dan investasi lainnya dalam aplikasi serta platform.

Mengakses data untuk semua penyewa sederhana ketika semua data hanya dalam satu database multi-penyewa. Tetapi aksesnya lebih kompleks ketika didistribusikan dalam skala di seluruh ribuan database. Salah satu cara untuk menjinakkan kompleksitas dan untuk meminimalkan dampak kueri analitik pada data transaksional adalah dengan mengekstrak data ke dalam database analitik atau gudang data yang dirancang khusus.

Tutorial ini menyajikan skenario analitik lengkap untuk sampel aplikasi SaaS Wingtip. Pertama, Pekerjaan Elastic digunakan untuk mengekstrak data dari setiap database penyewa dan memuatnya ke dalam tabel pementasan di toko analitik. Penyimpanan analitik bisa berupa SQL Database atau kumpulan SQL khusus. Untuk ekstraksi data skala besar, Azure Data Factory disarankan.

Selanjutnya, data agregat ditransformasikan menjadi satu set tabel skema bintang. Tabel terdiri atas tabel fakta terpusat ditambah tabel dimensi terkait. Untuk Tiket Wingtip:

  • Tabel fakta utama dalam skema bintang berisi data tiket.
  • Tabel dimensi menjelaskan tempat, acara, pelanggan, dan tanggal pembelian.

Bersama dengan tabel fakta pusat dan dimensi memungkinkan pemrosesan analitis yang efisien. Skema bintang yang digunakan dalam tutorial ini ditunjukkan dalam gambar berikut:

architectureOverView

Akhirnya, toko analitik dikueri menggunakan Power BI untuk menyoroti wawasan tentang perilaku penyewa dan penggunaan aplikasi Tiket Wingtip. Anda menjalankan kueri yang:

  • Menunjukkan popularitas relatif dari setiap tempat
  • Menyorot pola dalam penjualan tiket untuk acara yang berbeda
  • Menunjukkan kesuksesan relatif dari berbagai tempat dalam menjual acara mereka

Memahami bagaimana setiap penyewa menggunakan layanan ini digunakan untuk mengeksplorasi opsi untuk memonetisasi layanan dan meningkatkan layanan untuk membantu penyewa menjadi lebih sukses. Tutorial ini memberikan contoh dasar jenis wawasan yang dapat dipancarkan dari data penyewa.

Siapkan

Prasyarat

Untuk menyelesaikan tutorial ini, pastikan prasyarat berikut ini diselesaikan:

Membuat data untuk demo

Dalam tutorial ini, analisis dilakukan pada data penjualan tiket. Pada langkah saat ini, Anda menghasilkan data tiket untuk semua penyewa. Nantinya data ini diekstrak untuk analisis. Pastikan Anda telah menyediakan batch penyewa seperti yang dijelaskan sebelumnya, sehingga Anda memiliki jumlah data yang bermakna. Sejumlah besar data dapat mengekspos berbagai pola pembelian tiket yang berbeda.

  1. Di PowerShell ISE, buka ...\Learning Modules\Operational Analytics\Tenant Analytics\Demo-TenantAnalytics.ps1, dan tetapkan nilai berikut:
    • $DemoScenario = 1 Beli tiket untuk acara di semua tempat
  2. Tekan F5 untuk menjalankan skrip dan membuat riwayat pembelian tiket untuk setiap acara di setiap tempat. Skrip ini berlangsung selama beberapa menit untuk menghasilkan puluhan ribu tiket.

Menyebarkan penyimpanan analitik

Seringkali ada banyak database transaksional yang bersama dengan menyimpan semua data penyewa. Anda harus menggabungkan data penyewa dari banyak database transaksional ke dalam satu penyimpanan analitik. Agregasi memungkinkan kueri data yang efisien. Dalam tutorial ini, Azure SQL Database digunakan untuk menyimpan data agregat.

Dalam langkah-langkah berikut, Anda menyebarkan penyimpanan analitik, yang disebut tenantanalytics. Anda juga menyebarkan tabel yang sudah ditentukan sebelumnya yang diisi nanti dalam tutorial:

  1. Di PowerShell ISE, buka …\Learning Modules\Operational Analytics\Tenant Analytics\Demo-TenantAnalytics.ps1
  2. Atur variabel $DemoScenario dalam skrip agar sesuai dengan pilihan penyimpanan analitik Anda:
    • Untuk menggunakan Database SQL tanpa columnstore, atur $DemoScenario = 2
    • Untuk menggunakan SQL Database tanpa columnstore, atur $DemoScenario = 3
  3. Tekan F5 untuk menjalankan skrip demo (yang memanggil skrip Deploy-TenantAnalytics<XX>.ps1) yang membuat penyimpanan analisis penyewa.

Sekarang Setelah Anda menyebarkan aplikasi dan mengisinya dengan data penyewa yang menarik, gunakan SQL Server Management Studio (SSMS) untuk menyambungkan server tenants1-dpt-<User> dan catalog-dpt-<User> menggunakan Login = developer, Kata sandi = P@ssword1. Lihat tutorial pengantar untuk panduan lebih lanjut.

Cuplikan layar yang memperlihatkan informasi yang diperlukan untuk menyambungkan ke SQL Server.

Di the Object Explorer, lakukan langkah-langkah berikut ini:

  1. Perluas server tenants1-dpt-<Pengguna>.
  2. Perluas simpul Database, dan lihat daftar database penyewa.
  3. Perluas server catalog-dpt-<Pengguna>.
  4. Verifikasi bahwa Anda melihat penyimpanan analitik dan database jobaccount.

Lihat item database berikut ini di Object Explorer SQL Server Management Studio dengan memperluas simpul penyimpanan analitik:

  • Tabel TicketsRawData dan EventsRawData menyimpa data yang diekstrak mentah dari database penyewa.
  • Tabel skema bintangnya adalah fact_Tickets, dim_Customers, dim_Venues, dim_Events, dan dim_Dates.
  • Prosedur tersimpan digunakan untuk mengisi tabel skema bintang dari tabel data mentah.

Cuplikan layar item database yang diperlihatkan di Object Explorer SQL Server Management Studio.

Ekstraksi data

Membuat grup target

Sebelum melanjutkan, pastikan Anda telah menyebarkan akun pekerjaan dan database jobaccount. Dalam rangkaian langkah berikutnya, Pekerjaan Elastic digunakan untuk mengekstrak data dari setiap database penyewa dan untuk menyimpan data di penyimpanan analitik. Kemudian pekerjaan kedua menghancurkan data dan menyimpannya ke dalam tabel dalam skema bintang. Kedua pekerjaan ini dijalankan terhadap dua grup target yang berbeda, yaitu TenantGroup dan AnalyticsGroup. Pekerjaan ekstrak berjalan terhadap TenantGroup, yang berisi semua database penyewa. Pekerjaan penghancuran berjalan terhadap AnalyticsGroup, yang hanya berisi toko analitik. Buat grup target dengan menggunakan langkah-langkah berikut:

  1. Di SQL Server Management Studio, sambungkan ke database jobaccount di catalog-mt-<Pengguna>.
  2. Di SSMS, buka ...\Learning Modules\Operational Analytics\Tenant Analytics\ TargetGroups.sql
  3. Ubah @User variabel di bagian atas skrip, ganti <User> dengan nilai pengguna yang digunakan saat Anda menyebarkan aplikasi SaaS Wingtip.
  4. Tekan F5 untuk menjalankan skrip yang membuat dua grup target.

Mengekstrak data mentah dari semua penyewa

Modifikasi data ekstensif mungkin terjadi lebih sering untuk data tiket dan pelanggan daripada data acara dan tempat. Oleh karena itu, pertimbangkan untuk mengekstraksi data tiket dan pelanggan secara terpisah dan lebih sering daripada Anda mengekstrak data acara dan tempat. Di bagian ini, Anda menentukan dan menjadwalkan dua pekerjaan terpisah:

  • Ekstrak tiket dan data pelanggan.
  • Ekstrak data acara dan tempat.

Setiap pekerjaan mengekstrak datanya, dan mempostingnya ke penyimpanan analitik. Ada pekerjaan terpisah menghancurkan data yang diekstrak ke dalam skema bintang analitik.

  1. Di SQL Server Management Studio, sambungkan ke database jobaccount di server catalog-mt-<Pengguna>.
  2. Di SQL Server Management Studio, buka ...\Learning Modules\Operational Analytics\Tenant Analytics\ExtractTickets.sql.
  3. Modifikasi @User di bagian atas skrip, dan <User> ganti dengan nama pengguna yang digunakan saat Anda menggunakan aplikasi Wingtip SaaS
  4. Tekan F5 untuk menjalankan skrip yang membuat dan menjalankan pekerjaan yang mengekstrak data tiket dan pelanggan dari setiap database penyewa. Pekerjaan ini menyimpan data ke dalam penyimpanan analitik.
  5. Kueri tabel TicketsRawData di database tenantanalytics, untuk memastikan bahwa tabel diisi dengan informasi tiket dari semua penyewa.

Tangkapan layar menunjukkan database ExtractTickets dengan TicketsRawData d b o dipilih di Object Explorer.

Ulangi langkah-langkah sebelumnya, kecuali kali ini ganti \ExtractTickets.sql with \ExtractVenuesEvents.sql di langkah 2.

Berhasil menjalankan pekerjaan mengisi tabel EventsRawData di penyimpanan analitik dengan informasi acara dan tempat baru dari semua penyewa.

Reorganisasi data

Data yang diekstrak shred untuk mengisi tabel skema bintang

Langkah selanjutnya adalah menghancurkan data mentah yang diekstrak ke dalam sekumpulan tabel yang dioptimalkan untuk kueri analitik. Skema bintang digunakan. Tabel fakta sentral menyimpan catatan penjualan tiket individu. Tabel lain diisi dengan data terkait tentang tempat, acara, dan pelanggan. Dan ada tabel dimensi waktu.

Di bagian tutorial ini, Anda menentukan dan menjalankan pekerjaan yang menggabungkan data mentah yang diekstrak dengan data dalam tabel skema bintang. Setelah pekerjaan penggabungan selesai, data mentah dihapus, membuat tabel siap untuk diisi oleh pekerjaan ekstrak data penyewa berikutnya.

  1. Di SQL Server Management Studio, sambungkan ke database jobaccount di catalog-mt-<Pengguna>.
  2. Di SQL Server Management Studio, buka …\Learning Modules\Operational Analytics\Tenant Analytics\ShredRawExtractedData.sql.
  3. Tekan F5 untuk menjalankan skrip untuk menentukan pekerjaan yang memanggil sp_ShredRawExtractedData yang tersimpan di penyimpanan analitik.
  4. Luangkan cukup waktu agar pekerjaan dapat berjalan dengan sukses.
    • Periksa kolom Siklus Hidup jobs.jobs_execution tabel untuk status pekerjaan. Pastikan bahwa pekerjaan Berhasil sebelum melanjutkan. Berhasil menjalankan untuk menampilkan data yang mirip dengan bagan berikut ini:

memotong

Eksplorasi data

Memvisualisasikan data penyewa

Data dalam tabel skema bintang menyediakan semua data penjualan tiket yang diperlukan untuk analisis Anda. Untuk mempermudah melihat tren dalam kumpulan data besar, Anda perlu memvisualisasikannya secara grafis. Di bagian ini, Anda mempelajari cara menggunakan Power BI untuk memanipulasi dan memvisualisasikan data penyewa yang telah Anda ekstrak dan tata.

Gunakan langkah-langkah berikut ini untuk menyambungkan ke Power BI, dan untuk mengimpor tampilan yang Anda buat sebelumnya:

  1. Luncurkan desktop Power BI.

  2. Dari pita Beranda, pilih Dapatkan Data, dan pilih Lainnya dari menu.

  3. Di jendela Dapatkan Data, pilih Azure SQL Database.

  4. Di jendela masuk database, masukkan nama server Anda (catalog-dpt-<Pengguna>.database.windows.net). Pilih Impor untuk Mode Konektivitas Data, lalu klik OK.

    signinpowerbi

  5. Pilih Database di panel kiri, lalu masukkan nama pengguna = developer, dan masukkan kata sandi = P@ssword1. Klik Sambungkan.

    Cuplikan layar memperlihatkan dialog database SQL Server tempat Anda bisa memasukkan Nama pengguna dan Kata Sandi.

  6. Di panel Navigator, di bawah database analitik, pilih tabel skema bintang: fact_Tickets, dim_Events, dim_Venues, dim_Customers, dan dim_Dates. Lalu pilih Muat.

Selamat! Anda berhasil memuat data ke Power BI. Sekarang Anda dapat mulai menjelajahi visualisasi yang menarik untuk membantu mendapatkan wawasan tentang penyewa Anda. Selanjutnya Anda menelusuri bagaimana analitik dapat memungkinkan Anda untuk memberikan rekomendasi berbasis data kepada tim bisnis Wingtip Tickets. Rekomendasi dapat membantu mengoptimalkan model bisnis dan pengalaman pelanggan.

Anda mulai dengan menganalisis data penjualan tiket untuk melihat variasi penggunaan di seluruh tempat. Pilih opsi berikut di Power BI untuk memplot bagan batang dari jumlah total tiket yang dijual oleh setiap tempat. Karena variasi acak dalam generator tiket, hasil Anda mungkin berbeda.

Cuplikan layar memperlihatkan visualisasi dan kontrol Power B I untuk visualisasi data di sisi kanan.

Plot sebelumnya menegaskan bahwa jumlah tiket yang dijual oleh setiap venue bervariasi. Tempat yang menjual lebih banyak tiket menggunakan layanan Anda lebih banyak daripada tempat yang menjual lebih sedikit tiket. Mungkin ada kesempatan di sini untuk menyesuaikan alokasi sumber daya sesuai dengan kebutuhan penyewa yang berbeda.

Anda dapat menganalisis data lebih lanjut untuk melihat bagaimana penjualan tiket bervariasi dari waktu ke waktu. Pilih opsi berikut di Power BI untuk memplot jumlah total tiket yang terjual setiap hari untuk jangka waktu 60 hari.

Cuplikan layar memperlihatkan visualisasi Power B I berjudul Distribusi Penjualan Tiket versus Hari Penjualan.

Bagan sebelumnya menampilkan lonjakan penjualan tiket untuk beberapa tempat. Lonjakan ini memperkuat gagasan bahwa beberapa tempat mungkin mengkonsumsi sumber daya sistem secara tidak proporsional. Sejauh ini tidak ada pola yang jelas ketika lonjakan terjadi.

Selanjutnya Anda ingin menyelidiki lebih lanjut signifikansi hari-hari puncak penjualan ini. Kapan puncak ini terjadi setelah tiket mulai dijual? Untuk memplot tiket yang terjual per hari, pilih opsi berikut di Power BI.

SaleDayDistribution

Plot sebelumnya menunjukkan bahwa beberapa tempat menjual banyak tiket pada hari pertama penjualan. Segera setelah tiket mulai dijual di tempat-tempat ini, tampaknya ada kesibukan yang padat. Ledakan aktivitas oleh beberapa tempat ini mungkin berdampak pada layanan untuk penyewa lain.

Anda dapat menelusuri data lagi untuk melihat apakah kesibukan gila ini berlaku untuk semua acara yang diselenggarakan oleh tempat-tempat ini. Dalam plot sebelumnya, Anda mengamati bahwa Contoso Concert Hall menjual banyak tiket, dan bahwa Contoso juga memiliki lonjakan penjualan tiket pada hari-hari tertentu. Putar opsi Power BI untuk merencanakan penjualan tiket kumulatif untuk Contoso Concert Hall, yang berfokus pada tren penjualan untuk setiap acaranya. Apakah semua kejadian mengikuti pola penjualan yang sama?

ContosoSales

Plot sebelumnya untuk Contoso Concert Hall menunjukkan bahwa kesibukan gila tidak terjadi untuk semua acara. Bermain-main dengan opsi filter untuk melihat tren penjualan untuk tempat lain.

Wawasan tentang pola penjualan tiket dapat menyebabkan Tiket Wingtip mengoptimalkan model bisnis mereka. Alih-alih menagih semua penyewa secara merata, mungkin Wingtip harus memperkenalkan tingkat layanan dengan ukuran komputasi yang berbeda. Tempat yang lebih besar yang perlu menjual lebih banyak tiket per hari dapat ditawarkan tingkat yang lebih tinggi dengan perjanjian tingkat layanan (SLA) yang lebih tinggi. Tempat-tempat itu dapat memiliki basis data mereka yang ditempatkan dalam kumpulan dengan batas sumber daya per database yang lebih tinggi. Setiap tingkat layanan dapat memiliki alokasi penjualan per jam, dengan biaya tambahan yang dikenakan untuk melebihi alokasi. Tempat yang lebih besar yang memiliki ledakan penjualan berkala akan mendapat manfaat dari tingkat yang lebih tinggi, dan Tiket Wingtip dapat memonetisasi layanan mereka dengan lebih efisien.

Sementara itu, beberapa pelanggan Wingtip Ticket mengeluh bahwa mereka berjuang untuk menjual tiket yang cukup untuk membenarkan biaya layanan. Mungkin dalam wawasan ini ada peluang untuk meningkatkan penjualan tiket untuk tempat-tempat berperforma rendah. Penjualan yang lebih tinggi akan meningkatkan nilai layanan yang dirasakan. Klik kanan fact_Tickets dan pilih Pengukuran baru. Masukkan ekspresi berikut untuk pengukuran baru yang disebut AverageTicketsSold:

AverageTicketsSold = AVERAGEX( SUMMARIZE( TableName, TableName[Venue Name] ), CALCULATE( SUM(TableName[Tickets Sold] ) ) )

Pilih opsi visualisasi berikut untuk memplot persentase tiket yang dijual oleh setiap tempat untuk menentukan keberhasilan relatif mereka.

Cuplikan layar menunjukkan visualisasi Power B I berjudul Rata-rata Tiket yang Dijual Oleh Setiap Tempat.

Plot sebelumnya menunjukkan bahwa meskipun sebagian besar tempat menjual lebih dari 80% tiket mereka, beberapa berjuang untuk mengisi lebih dari setengah seat. Putar Values Well untuk memilih persentase maksimum atau minimum tiket yang dijual untuk setiap tempat.

Sebelumnya Anda memperdalam analisis Anda untuk menemukan bahwa penjualan tiket cenderung mengikuti pola yang dapat diprediksi. Penemuan ini mungkin memungkinkan Tiket Wingtip membantu tempat yang kurang baik meningkatkan penjualan tiket dengan merekomendasikan harga dinamis. Penemuan ini dapat mengungkapkan kesempatan untuk menggunakan teknik pembelajaran komputer untuk memprediksi penjualan tiket untuk setiap acara. Prediksi juga dapat dibuat untuk dampak pada pendapatan menawarkan diskon pada penjualan tiket. Power BI Embedded dapat diintegrasikan ke dalam aplikasi manajemen acara. Integrasi dapat membantu memvisualisasikan penjualan yang diprediksi dan efek dari diskon yang berbeda. Aplikasi ini dapat membantu menyusun diskon optimal untuk diterapkan langsung dari tampilan analitik.

Anda telah mengamati tren dalam data penyewa dari aplikasi WingTip. Anda dapat merenungkan cara lain aplikasi dapat menginformasikan keputusan bisnis untuk vendor aplikasi SaaS. Vendor dapat lebih baik memenuhi kebutuhan penyewa mereka. Semoga tutorial ini telah melengkapi Anda dengan alat yang diperlukan untuk melakukan analitik pada data penyewa untuk memberdayakan bisnis Anda untuk membuat keputusan berbasis data.

Langkah berikutnya

Dalam tutorial ini, Anda mempelajari cara:

  • Menyebarkan database analitik penyewa dengan tabel skema bintang yang telah ditentukan sebelumnya
  • Menggunakan pekerjaan elastis untuk mengekstrak data dari semua database penyewa
  • Menggabungkan data yang diekstrak ke dalam tabel dalam skema bintang yang dirancang untuk analitik
  • Membuat kueri database analitik
  • Menggunakan Power BI untuk visualisasi data untuk mengamati tren dalam data penyewa

Selamat!

Sumber Daya Tambahan: