di dalam Postingan terakhir Di blog teknik resminya, Uber mengungkapkan strateginya untuk memigrasikan rangkaian pelatihan analisis data batch dan pembelajaran mesin (ML) ke… Google Cloud Platform (GCP). Uber mengoperasikan salah satu perusahaan terbesar hadoop instalasi di seluruh dunia, mengelola lebih dari exabytes data di puluhan ribu server di kedua wilayah. Ekosistem data sumber terbuka, khususnya Hadoop, telah menjadi landasan platform data.
Rencana migrasi strategis terdiri dari dua langkah: migrasi awal dan memanfaatkan layanan cloud native. Strategi awal Uber melibatkan pemanfaatan penyimpanan objek GCP untuk menyimpan gudang data sambil memigrasikan kumpulan data lainnya ke infrastruktur sebagai layanan (IaaS) GCP. Pendekatan ini memungkinkan migrasi cepat dengan gangguan minimal terhadap fungsionalitas dan pipeline yang ada, karena mereka dapat mereplikasi versi yang tepat dari tumpukan perangkat lunak, mesin, dan model keamanan internal di IaaS. Setelah fase ini, tim teknik Uber berencana untuk secara bertahap mengadopsi penawaran Google Cloud Platform as a Service (PaaS), misalnya Proses Data Dan Pertanyaan yang bagusUntuk sepenuhnya memanfaatkan fleksibilitas dan manfaat kinerja layanan cloud native.
Setelah migrasi awal selesai, tim akan fokus pada pengintegrasian layanan cloud native untuk memaksimalkan kinerja dan skalabilitas infrastruktur data. Pendekatan bertahap ini memastikan bahwa pengguna Uber, mulai dari pemilik dasbor hingga praktisi pembelajaran mesin, mengalami transisi yang mulus tanpa mengubah alur kerja atau layanan yang ada.
Untuk memastikan transisi yang lancar dan efisien, tim Uber telah menetapkan beberapa prinsip panduan:
- Minimalkan gangguan penggunaan dengan memindahkan sebagian besar kumpulan data yang dikumpulkan ke cloud IaaS apa adanya; Mereka bertujuan untuk melindungi penggunanya dari perubahan apa pun pada produk atau layanan mereka. Dengan menggunakan abstraksi yang terkenal dan standar terbuka, mereka berusaha membuat proses transisi setransparan mungkin.
- Mereka akan mengandalkan konektor penyimpanan cloud yang mengimplementasikan antarmuka Hadoop FileSystem dengan Google Cloud Storage, sehingga memastikan kompatibilitas HDFS. Dengan menyatukan klien Apache Hadoop HDFS, kami akan mengabstraksikan detail implementasi HDFS lokal, sehingga memungkinkan integrasi yang lancar dengan lapisan penyimpanan GCP.
- Tim Uber telah mengembangkan agen akses data untuk Presto, percikanDan Sarang lebah Proxy ini mengabstraksi cluster komputasi fisik yang mendasarinya. Agen-agen ini akan mendukung perutean selektif lalu lintas pengujian ke klaster berbasis cloud selama fase pengujian dan merutekan seluruh kueri dan tugas ke klaster cloud selama migrasi penuh.
- Manfaatkan infrastruktur cloud Uber. Lingkungan kontainer, platform komputasi, dan alat penerapan Uber yang ada dirancang untuk terpisah antara cloud dan on-premise. Platform ini akan memungkinkan layanan mikro dari ekosistem data agregat dapat diperluas dengan mudah di cloud (IaaS).
- Tim ini akan membangun dan meningkatkan layanan manajemen data yang ada untuk mendukung layanan cloud yang dipilih dan disetujui, sehingga memastikan tata kelola data yang kuat. Perusahaan ini bertujuan untuk mempertahankan tingkat akses dan keamanan resmi yang sama seperti di lokasi, sekaligus mendukung otentikasi pengguna yang lancar terhadap gudang data penyimpanan objek dan layanan cloud lainnya.
Tim Uber berfokus pada penetapan keranjang dan perencanaan sumber daya cloud untuk migrasi. Memetakan file dan direktori HDFS ke objek cloud dalam satu atau beberapa bucket sangatlah penting. Mereka perlu menerapkan kebijakan IAM pada tingkat perincian yang berbeda, dengan mempertimbangkan batasan pada bucket dan objek seperti kecepatan baca/tulis dan pembatasan IOPS. Tim ini bertujuan untuk mengembangkan algoritme pemetaan yang memenuhi batasan ini dan mengatur sumber daya data secara hierarkis dan berfokus pada perusahaan, sehingga meningkatkan tata kelola dan manajemen data.
Integrasi keamanan adalah tindakan lain; Mengadaptasi token berbasis Kerberos dan token Delegasi Hadoop untuk cloud PaaS, khususnya Google Cloud Storage (GCS), sangatlah penting. Alur kerja ini dimaksudkan untuk mendukung autentikasi dan otorisasi pengguna, grup, dan akun layanan yang lancar, sekaligus mempertahankan tingkat akses yang konsisten secara lokal.
Tim juga fokus pada replikasi data. HiveSync, layanan replikasi data dua arah berbasis izin, memungkinkan Uber beroperasi dalam mode aktif aktif. Ini memperluas kemampuan HiveSync untuk mereplikasi data data lake lokal ke data lake berbasis cloud dan Hive Metastore yang sesuai. Hal ini melibatkan migrasi massal awal dan pembaruan bertahap hingga paket berbasis cloud menjadi standar.
Tindakan terakhir adalah menyediakan cluster YARN dan Presto baru di Iaas GCP. Agen akses data Uber akan mengarahkan lalu lintas kueri dan pekerjaan ke klaster berbasis cloud selama migrasi, sehingga memastikan transisi yang lancar.
Saat Uber memindahkan data besar ke Google Cloud, mereka menghadapi tantangan seperti perbedaan performa dalam penyimpanan dan masalah tak terduga akibat sistem lamanya. Tim berencana untuk mengatasi tantangan ini dengan memanfaatkan alat sumber terbuka, memanfaatkan fleksibilitas cloud untuk mengelola biaya, memindahkan penggunaan non-inti ke penyimpanan khusus, menguji integrasi secara proaktif, dan menghilangkan praktik lama.
“Pop culture ninja. Social media enthusiast. Typical problem solver. Coffee practitioner. Fall in love. Travel enthusiast.”