Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analisis data

ampli, aplikasi radio langsung baru dari Amazon, adalah penemuan kembali radio yang menampilkan pertunjukan audio langsung yang dikuratori oleh manusia. Ini dirancang untuk memberikan pengalaman pelanggan yang mulus kepada pendengar dan pembuat konten dengan memulai debut pertunjukan audio langsung interaktif dari artis, DJ radio, podcaster, dan teman favorit Anda.

Namun, sebagai produk baru di ruang baru untuk Amazon, Amp membutuhkan data yang lebih relevan untuk menginformasikan proses pengambilan keputusan mereka. Amp menginginkan platform data dan analitik yang dapat diskalakan untuk memungkinkan akses mudah ke data dan melakukan eksperimen machine leaning (ML) untuk transkripsi audio langsung, moderasi konten, rekayasa fitur, dan layanan rekomendasi acara pribadi, dan untuk memeriksa atau mengukur KPI dan metrik bisnis.

Posting ini adalah yang pertama dalam seri dua bagian. Bagian 1 menunjukkan bagaimana data dikumpulkan dan diproses menggunakan platform data dan analitik, dan bagian 2 menunjukkan bagaimana data digunakan untuk membuat rekomendasi acara menggunakan Amazon SageMaker, layanan ML yang terkelola sepenuhnya. Layanan daftar rekomendasi acara yang dipersonalisasi telah menunjukkan peningkatan 3% pada metrik keterlibatan pelanggan yang dilacak (seperti menyukai acara, mengikuti pembuat konten, atau mengaktifkan pemberitahuan acara mendatang) sejak diluncurkan pada Mei 2022.

Ikhtisar solusi

Sumber data untuk Amp dapat dikategorikan secara luas sebagai streaming (mendekati waktu nyata) atau batch (titik waktu). Data sumber dipancarkan dari sistem milik Amp atau sistem Amazon lainnya. Dua tipe data yang berbeda adalah sebagai berikut:

  • Data streaming โ€“ Jenis data ini terutama terdiri dari berikut, pemberitahuan (tentang teman pengguna, pembuat favorit, atau acara), pembaruan aktivitas, interaksi pertunjukan langsung (panggilan, co-host, jajak pendapat, obrolan dalam aplikasi), waktu nyata pembaruan pada aktivitas pertunjukan langsung (jumlah dengar langsung, suka), metrik pemutaran audio langsung, dan metrik aliran klik lainnya dari aplikasi Amp. Pemangku kepentingan amp memerlukan data ini untuk mendukung proses ML atau model prediktif, alat moderasi konten, dan dasbor produk dan program (misalnya, acara yang sedang tren). Streaming data memungkinkan pelanggan Amp melakukan dan mengukur eksperimen.
  • Data kumpulan โ€“ Data ini terutama terdiri dari data katalog, metadata acara atau pembuat, dan data profil pengguna. Data batch memungkinkan lebih banyak pelaporan dan analitik point-in-time vs. real-time.

Diagram berikut menggambarkan arsitektur tingkat tinggi.

Platform data dan analitik Amp dapat dipecah menjadi tiga sistem tingkat tinggi:

  • Streaming penyerapan data, pemrosesan dan transformasi streaming, dan penyimpanan streaming
  • Pengambilan data batch, pemrosesan dan transformasi batch, dan penyimpanan batch
  • Intelijen bisnis (BI) dan analitik

Pada bagian berikut, kami membahas setiap komponen secara lebih rinci.

Streaming penyerapan data, pemrosesan, transformasi, dan penyimpanan

Amp membuat pipeline penyerapan streaming tanpa server yang mampu memanfaatkan data dari sumber tanpa memerlukan manajemen infrastruktur, seperti yang ditunjukkan pada diagram berikut.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Pipeline mampu menyerap data katalog pertunjukan Amp (pertunjukan apa yang tersedia di Amp) dan meneruskannya ke danau data untuk dua kasus penggunaan yang berbeda: satu untuk analitik hampir real-time, dan satu untuk analitik batch.

Sebagai bagian dari saluran penyerapan, tim Amp memiliki Layanan Antrian Sederhana Amazon (Amazon SQS) antrian yang menerima pesan dari upstream Layanan Pemberitahuan Sederhana Amazon (Amazon SNS) topik yang berisi informasi tentang perubahan acara di katalog. Perubahan tersebut bisa berupa penambahan acara baru atau penyesuaian acara yang sudah ada yang telah dijadwalkan.

Ketika pesan diterima oleh antrian SQS, itu memicu AWS Lambda berfungsi untuk melakukan panggilan API ke layanan katalog Amp. Fungsi Lambda mengambil metadata acara yang diinginkan, memfilter metadata, dan kemudian mengirimkan metadata keluaran ke Aliran Data Amazon Kinesis. Firehose Data Amazon Kinesis menerima catatan dari aliran data. Kinesis Data Firehose kemudian memanggil fungsi Lambda sekunder untuk melakukan transformasi data yang meratakan catatan JSON yang diterima dan menulis catatan yang diubah ke Layanan Penyimpanan Sederhana Amazon (Amazon S3) data lake untuk konsumsi oleh pemangku kepentingan Amp.

Kinesis Data Firehose mengaktifkan buffering dan penulisan data ke Amazon S3 setiap 60 detik. Ini membantu tim Amp membuat keputusan pemrograman yang mendekati waktu nyata yang berdampak pada pelanggan eksternal.

Pipeline penyerapan streaming mendukung tujuan berikut: kinerja, ketersediaan, skalabilitas, dan fleksibilitas untuk mengirim data ke beberapa aplikasi atau layanan hilir:

  • Kinesis Data Streams menangani penyerapan data streaming bila diperlukan. Kinesis Data Streams mendukung tujuan ini dengan memungkinkan tim Amp menyerap data dengan cepat untuk analitik dengan beban operasional minimal. Sebagai layanan yang terkelola sepenuhnya, ini mengurangi biaya operasional, dan Amp dapat menyesuaikan dengan kebutuhan produk.
  • Lambda memungkinkan tim membuat fungsi ringan untuk menjalankan panggilan API dan melakukan transformasi data.
  • Karena Kinesis Data Firehose adalah layanan terkelola, Kinesis Data Firehose mampu menangani semua kebutuhan penskalaan, sharding, dan pemantauan data streaming tanpa gangguan tambahan untuk tim.

Batch penyerapan data, pemrosesan, transformasi, dan penyimpanan

Amp membuat saluran penyerapan batch (titik waktu) sementara yang mampu menyerap, memproses dan mentransformasikan, serta menyimpan data, seperti yang ditunjukkan dalam diagram berikut.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Pendekatan pekerjaan ekstrak, transformasi, dan beban sementara (ETL) dan ekstrak, muat, dan transformasi (ELT) diterapkan karena sifat batch beban kerja ini dan volume data yang tidak diketahui. Sebagai bagian dari otomatisasi alur kerja, Amazon SQS digunakan untuk memicu fungsi Lambda. Fungsi Lambda kemudian mengaktifkan crawler AWS Glue untuk menyimpulkan skema dan tipe data. Crawler menulis metadata skema ke Katalog Data AWS Glue, menyediakan penyimpanan metadata terpadu untuk berbagi data.

Pekerjaan ETL dan ELT diperlukan untuk berjalan pada jadwal yang ditetapkan atau alur kerja yang digerakkan oleh peristiwa. Untuk menangani kebutuhan tersebut, Amp digunakan Alur Kerja Terkelola Amazon untuk Apache Airflow (Amazon MWAA). Apache Airflow adalah platform manajemen alur kerja berbasis Python sumber terbuka. Amazon MWAA adalah layanan terkelola sepenuhnya yang secara otomatis menangani penskalaan. Ini menyediakan pengurutan, penanganan kesalahan, coba lagi logika, dan status. Dengan Amazon MWAA, Amp dapat memanfaatkan manfaat Airflow untuk orkestrasi pekerjaan tanpa harus mengelola atau memelihara server Airflow khusus. Selain itu, dengan menggunakan Amazon MWAA, Amp dapat membuat repositori kode dan alur kerja pipeline yang disimpan di Amazon S3 yang dapat diakses oleh Amazon MWAA. Pipeline memungkinkan insinyur data Amp untuk dengan mudah menerapkan DAG Aliran Udara atau skrip PySpark di berbagai lingkungan.

Ampli digunakan Amazon ESDM on Layanan Amazon Elastic Kubernetes (Amazon EKS) untuk mengonfigurasi dan mengelola container untuk pekerjaan pemrosesan dan transformasi data mereka. Karena sifat unik dari layanan Amp, volume data awal yang diharapkan yang akan diproses relatif tidak diketahui. Untuk memberikan fleksibilitas saat layanan berkembang, tim memutuskan untuk menggunakan Amazon EMR pada EKS untuk menghilangkan operasi yang tidak perlu yang terdengar berlebihan yang diperlukan untuk bootstrap dan menskalakan Amazon EMR untuk pemrosesan data. Pendekatan ini memungkinkan mereka untuk menjalankan cluster EMR hybrid sementara yang didukung oleh campuran Fargate AWS dan Cloud komputasi elastis Amazon (Amazon EC2), di mana semua tugas sistem dan beban kerja diturunkan ke Fargate, sementara Amazon EC2 menangani semua pemrosesan dan transformasi Apache Spark. Ini memberikan fleksibilitas untuk memiliki klaster dengan satu node yang berjalan, sementara auto scaler Amazon EKS membuat instance dan bootstrap secara dinamis setiap node EC2 tambahan yang diperlukan untuk pekerjaan tersebut. Ketika pekerjaan selesai, mereka secara otomatis dihapus oleh penskala otomatis cluster. Pola ini menghilangkan kebutuhan tim untuk mengelola tindakan bootstrap cluster atau penskalaan yang diperlukan untuk merespons beban kerja yang berkembang.

Amazon S3 digunakan sebagai pusat data lake, dan data disimpan dalam format Apache Parket (Parquet). Parket adalah format kolom, yang mempercepat pengambilan data dan menyediakan kompresi data yang efisien. Amazon S3 menyediakan fleksibilitas, skalabilitas, dan kebutuhan keamanan untuk Amp. Dengan Amazon S3, tim Amp mampu memusatkan penyimpanan data di satu lokasi dan menyatukan akses ke data secara virtual di semua layanan atau alat di dalam atau di luar AWS. Data lake dibagi menjadi dua bucket S3: satu untuk penyerapan data mentah dan satu lagi untuk output data yang diubah. Amazon EMR melakukan transformasi dari data mentah menjadi data yang diubah. Dengan Amazon S3 sebagai pusat data lake, Amp dapat dengan aman mengekspos dan berbagi data dengan tim lain di seluruh Amp dan Amazon.

Untuk menyederhanakan definisi data, penyediaan akses tabel, serta penambahan dan penghapusan tabel, mereka menggunakan crawler AWS Glue dan Katalog Data AWS Glue. Karena Amp adalah layanan baru dan terus berkembang, tim membutuhkan cara untuk mendefinisikan, mengakses, dan mengelola tabel di data lake dengan mudah. Perayap menangani definisi data (termasuk perubahan skema) dan penambahan dan penghapusan tabel, sedangkan Katalog Data berfungsi sebagai penyimpanan metadata terpadu.

Kecerdasan dan analitik bisnis

Diagram berikut mengilustrasikan arsitektur untuk komponen BI dan analitik.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Amp memilih untuk menyimpan data di data lake S3, dan bukan di data warehouse. Ini memungkinkan mereka untuk mengaksesnya secara terpadu melalui Katalog Data AWS Glue dan memberikan fleksibilitas yang lebih besar bagi konsumen data. Ini menghasilkan akses data yang lebih cepat di berbagai layanan atau alat. Dengan data yang disimpan di Amazon S3, ini juga mengurangi biaya infrastruktur gudang data, karena biaya tersebut merupakan fungsi dari jenis komputasi dan jumlah data yang disimpan.

Grafik Pergeseran Merah Amazon Jenis simpul RA3 digunakan sebagai lapisan komputasi untuk memungkinkan pemangku kepentingan menanyakan data yang disimpan di Amazon S3. Node Amazon Redshift RA3 memisahkan penyimpanan dan komputasi, dan dirancang untuk pola akses melalui Katalog Data AWS Glue. Node RA3 memperkenalkan Amazon Redshift Managed Storage, yang didukung oleh Amazon S3. Kombinasi fitur ini memungkinkan Amp untuk mengukur kluster dengan benar dan memberikan kinerja kueri yang lebih baik untuk pelanggan mereka sambil meminimalkan biaya.

Konfigurasi Amazon Redshift diotomatiskan menggunakan fungsi Lambda, yang terhubung ke klaster tertentu dan menjalankan pernyataan SQL berparameter. Pernyataan SQL berisi logika untuk menyebarkan skema, grup pengguna, dan pengguna, sementara Manajer Rahasia AWS digunakan untuk membuat, menyimpan, dan memutar kata sandi pengguna Amazon Redshift secara otomatis. Variabel konfigurasi yang mendasari disimpan di Amazon DynamoDB. Fungsi Lambda mengambil variabel dan meminta kredensial sementara Amazon Redshift untuk melakukan konfigurasi. Proses ini memungkinkan tim Amp menyiapkan klaster Amazon Redshift secara konsisten.

Hasil bisnis

Amp mampu mencapai hasil bisnis berikut:

  • Pelaporan bisnis โ€“ Pelaporan standar yang diperlukan untuk menjalankan bisnis, seperti laporan kilat harian, mekanisme tinjauan bisnis gabungan, atau pembaruan proyek dan program.
  • Pelaporan produk โ€“ Pelaporan khusus diperlukan untuk memungkinkan pemeriksaan atau pengukuran KPI dan Metrik produk utama. Ini termasuk laporan visual melalui dasbor seperti efektivitas promosi pemasaran, metrik keterlibatan aplikasi, dan acara yang sedang tren.
  • Eksperimen ML โ€“ Mengaktifkan tim Amazon hilir untuk menggunakan data ini guna mendukung eksperimen atau menghasilkan prediksi dan rekomendasi. Misalnya, eksperimen ML seperti daftar rekomendasi acara yang dipersonalisasi, kategorisasi acara, dan moderasi konten membantu retensi pengguna Amp.

Kunci Keuntungan

Dengan menerapkan arsitektur yang terukur dan hemat biaya, Amp mampu mencapai hal berikut:

  • Kompleksitas operasional terbatas โ€“ Mereka membangun sistem fleksibel yang menggunakan layanan terkelola AWS jika memungkinkan.
  • Gunakan bahasa data โ€“ Amp mampu mendukung dua bahasa manipulasi data yang paling umum, Python dan SQL, untuk melakukan operasi platform, melakukan eksperimen ML, dan menghasilkan analitik. Dengan dukungan ini, para pengembang dengan Amp dapat menggunakan bahasa yang mereka kenal.
  • Aktifkan eksperimen dan pengukuran โ€“ Amp memungkinkan pengembang dengan cepat menghasilkan kumpulan data yang diperlukan untuk melakukan eksperimen dan mengukur hasilnya. Ini membantu dalam mengoptimalkan pengalaman pelanggan Amp.
  • Bangun untuk belajar tetapi rancang untuk skala โ€“ Amp adalah produk baru yang menemukan kecocokan pasarnya, dan mampu memfokuskan energi awal mereka untuk membangun fitur yang cukup untuk mendapatkan umpan balik. Ini memungkinkan mereka untuk berputar ke arah pasar produk yang tepat sesuai dengan setiap peluncuran. Mereka mampu membangun secara bertahap, tetapi merencanakan untuk jangka panjang.

Kesimpulan

Dalam posting ini, kami melihat bagaimana Amp membuat platform analitik data mereka menggunakan data perilaku pengguna dari streaming dan sumber data batch. Faktor utama yang mendorong implementasi adalah kebutuhan untuk menyediakan platform analisis data yang fleksibel, dapat diskalakan, hemat biaya, dan hemat tenaga. Pilihan desain dibuat dengan mengevaluasi berbagai layanan AWS.

bagian 2 dari seri ini menunjukkan bagaimana kami menggunakan data ini dan membuat daftar rekomendasi acara yang dipersonalisasi menggunakan SageMaker.

Sebagai langkah selanjutnya, kami merekomendasikan untuk mempelajari secara mendalam setiap tahap sistem saluran data Anda dan membuat pilihan desain yang hemat biaya dan skalabel untuk kebutuhan Anda. Untuk informasi lebih lanjut, Anda juga dapat melihat kasus penggunaan pelanggan lainnya di Blog AWS Analytics.

Jika Anda memiliki umpan balik tentang posting ini, kirimkan di bagian komentar.


Tentang penulis

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Tulip Gupta adalah Arsitek Solusi di Amazon Web Services. Dia bekerja dengan Amazon untuk merancang, membangun, dan menerapkan solusi teknologi di AWS. Dia membantu pelanggan dalam mengadopsi praktik terbaik saat menerapkan solusi di AWS, dan merupakan penggemar Analytics dan ML. Di waktu luangnya, dia suka berenang, mendaki gunung, dan bermain papan permainan.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.David Kuo adalah Arsitek Solusi di Amazon Web Services. Dia bekerja dengan pelanggan AWS untuk merancang, membangun, dan menerapkan solusi teknologi di AWS. Dia bekerja dengan pelanggan Media dan Hiburan dan memiliki minat dalam teknologi pembelajaran mesin. Di waktu luangnya, dia bertanya-tanya apa yang harus dia lakukan dengan waktu luangnya.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Manolya McCormick adalah Insinyur Pengembangan Perangkat Lunak Senior untuk Amp di Amazon. Dia mendesain dan membangun sistem terdistribusi menggunakan AWS untuk melayani aplikasi yang dihadapi pelanggan. Dia suka membaca dan memasak resep baru di waktu luangnya.

Bagaimana Amp di Amazon menggunakan data untuk meningkatkan keterlibatan pelanggan, Bagian 1: Membangun platform analitik data PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Jeff Christophersen adalah Insinyur Data Senior untuk Amp di Amazon. Dia bekerja untuk merancang, membangun, dan menerapkan solusi Big Data di AWS yang mendorong wawasan yang dapat ditindaklanjuti. Dia membantu tim internal dalam mengadopsi solusi yang skalabel dan otomatis, dan merupakan penggemar Analytics dan Big Data. Di waktu luangnya, ketika dia tidak sedang bermain ski, Anda dapat menemukannya di atas sepeda gunungnya.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS