Google Saja Bisa Down, Apalagi yang Lain

Oleh: Ahmad Zaenudin - 19 Desember 2020
Dibaca Normal 5 menit
Di usia belia, Google memiliki rasio kegagalan server antara 4 hingga 10 persen.
tirto.id - "Ketika Sergey (Brin) dan Larry (Page) mendirikan Google pada 1998, mereka menjalankan perusahaan ini dengan prinsip yang sederhana," tutur Eric Schmidt, Chief Executive Officer pertama sekaligus "adult advisor" Google, dalam bukunya berjudul How Google Works (2015). Prinsip sederhana itu, Google hanya ingin membuat penggunanya senang, yakni dengan membuat produk yang benar-benar hebat.

"Ketika Google memberikan produk hebat, uang akan datang dengan sendirinya," tulis Schmidt, yang kini bertindak serupa Bill Gates di Microsoft, yakni Penasehat Teknis untuk Alphabet, induk usaha Google.

Untuk membuat produk hebat, lagi-lagi, Google memanfaatkan strategi yang sederhana, yakni merekrut teknisi software sebanyak-banyaknya. Lalu, teknisi-teknisi ini diberi kebebasan untuk bekerja. Untuk mengatur teknisi yang banyak tersebut, Google hanya mengandalkan spreadsheet, Microsoft Excel. Tak lupa, tiap Jumat sore, teknisi-teknisi ini berkumpul untuk mendiskusikan segala hal tentang Google.

Di satu sisi, cara kerja sederhana ala Google ini memang menyenangkan. Di sisi lain, tulis Schmidt, "tidak ada perencanaan jangka panjang dalam tubuh Google. Jika ada insiden, misalnya, para insinyur dipaksa cepat-cepat memikirkannya". Salah satu insiden yang dikhawatirkan Schmidt adalah soal server. Schmidt khawatir mesin yang menghidupkan Google tiba-tiba mati, sementara mereka terlalu sibuk memikirkan produk.

Di usia belia Google, ucapan Schmidt terbukti. Google memiliki rasio kegagalan server antara 4 hingga 10 persen. Bagi perusahaan yang ingin membuat penggunanya bahagia, ini jelas berbahaya.

'Hukum Page': Setiap 18 Bulan, Software Melambat Dua Kali Lipat

Sebelum Google manjadi Google (yang kita kenal saat ini), Google tak ubahnya startup biasa. Untuk beroperasi, Google menempatkan server-server miliknya di fasilitas milik perusahaan lain (colocation). Steven Levy, dalam buku berjudul In The Plex: How Google Thinks, Works, and Shapes Our Lives (2011), menyebut bahwa hingga 1999, Google menyewa tempat bagi server miliknya di Exodus, perusahaan colocation yang berlokasi di San Jose, California, Amerika Serikat. Masalahnya, karena Google menjadi startup yang produknya sangat digemari warga maya--hingga membuat kebutuhan komputasi dan data selalu bertambah--Exodus menyebut bahwa Google adalah klien-nya yang paling resek.

Google selalu menambah server di Exodus. Tak tanggung-tangguh, karena tempat miliki Exodus terbatas, Google memaksakan server yang kian menggunung di satu lokasi sempit. Bagi Exodus, ini berbahaya. Server-server yang berhimpitan dan terus menyala 24 jam itu menghasilkan panas yang berlebih. Jika ini terjadi, pelanggan Exodus lain kena batunya. Masalahnya, dengan menempatkan sangat banyak server di lokasi Exodus, Exodus ketiban untung dari Google. Tercatat, Google memiliki lebih dari 300 server yang ditempatkan di Exodus, jauh lebih banyak dibandingkan klien-klien lain.

Tentu, bagi Google, bergantung pada perusahaan lain adalah masalah besar. Maka, untuk mengatasi masalah ini Google kemudian "membajak" Jim Reese, salah satu karyawan kunci Exodus, guna mengepalai proses penciptaan pusat data, bukan hanya tempat penyimpanan server tetapi juga menciptakan server, sendiri yang terbebas dari perusahaan pihak ketiga mana pun. Masih merujuk buku yang ditulis Levy, Brin dan Page meminta Reese untuk membuat pusat data yang dapat menampung 50.000 server--dan membuat sendiri semua 50.000 server itu. Kata Reese, "Google ingin memastikan layanan-layanan mereka dapat berkembang secara massif saat ini hingga bertahun-tahun mendatang".

Ya, hari ini Google adalah salah satu perusahaan terkaya di dunia. Namun, di awal 2000-an, keuangan Google masih seret. Maka, untuk dapat menciptakan ribuan server, tutur Reese, "Google merakit server-nya dari modul-modul murahan." Douglas Merrill, salah satu karyawan pertama Google, bahkan menyebut bahwa server-server yang diciptakan perusahaannya kala itu "berkualitas lebih rendah dibandingkan komputer bocah".

Karena penggunaan modul murahan ini, Reese memperkirakan server-server Google akan memiliki rasio kegagalan yang tinggi. "Beruntung," kata Levy, "Google memiliki sangat banyak insinyur bertitel Ph.D". Guna meminimalkan rasio kegagalan server, Google memerintahkan Jeff Dean, Doktor Ilmu Komputer lulusan University of Washington, dan Sanjay Ghemawat--yang menulis disertasi berjudul "The Modified Object Buffer: A Storage Management Technique for Object-Oriented Databases" (1995) di Massachusetts Institute of Technology--untuk memikirkan masalah ini. Tak lama, Dean dan Ghemawat menciptakan "The Google File System", suatu software yang dirancang untuk mendistribusikan kata kunci yang diketik pengguna ke banyak server atau "sharding data". "Jika penelusuran Google meminta informasi tertentu di satu server dan tidak mendapatkan balasan setelah beberapa milidetik, ada dua server Google lain yang dapat memenuhi permintaan tersebut."

Ketika Exodus bangkrut, Google membeli salah satu fasilitas milik perusahaan tersebut. Masalahnya, ucap Urs Hölzle, salah satu teknisi pertama Google, bekas fasilitas milik Exodus itu "menyia-nyiakan listrik, baik karena praktek yang buruk dan bangunan buruk". Maka, sejak pertengahan 2003, Google membangun fasilitas pusat data di kota bernama The Dalles. Pemilihan The Dalles dilakukan karena kota itu masih memiliki lahan kosong yang luas serta berpenduduk kecil. Namun, yang paling utama, sebagaimana diungkap Chris Sacca, salah satu karyawan pertama Google lainnya, "The Dalles memiliki bandara kecil yang pas untuk menampung hobi Schmidt di bidang aviasi".

Dengan ribuan server yang ditempatkan di fasilitas milik sendiri, ada masalah lain menimpa Google, yakni mahalnya ongkos internet yang harus dibayar. Kala itu, Google harus merogoh kocek senilai USD 250.000 (sekitar Rp3,5 miliar) per bulan untuk berlangganan internet. Yang unik, guna mengatasi masalah ini, kembali merujuk buku yang ditulis Levy, "awalnya Google mengakali sistem penagihan provider broadband dengan membuat konsumsi data internet seolah-olah kecil". Namun, karena strategi ini tak bisa terus-terusan digunakan, Google membangun jaringannya sendiri, yang didukung dengan aksi Google memborong persediaan kabel fiber optik.

Ketika Levy bertanya seberapa banyak kabel fiber optik yang dimiliki Google, Sacca menjawab bahwa perusahaannya "memiliki kabel fiber optik jauh lebih banyak dari perusahaan apapun di planet ini".

Usai membangun pusat data di The Dalles, Google membangun pusat data lain. Awalnya, pusat data hanya dibangun di AS, kemudian menjalar ke berbagai tempat di seluruh dunia. Pembangunan pusat data di banyak tempat di seluruh dunia ini punya satu alasan dasar: Larry Page sangat terobsesi dengan kecepatan. menurut hitung-hitungan Page, dengan menduplikasi Hukum Moore, software atau yalanan internet akan melambat dua kali lipat setiap 18 bulan. Untuk mengatasi "Page's Law" ini, satu-satunya cara yang dapat dilakukan ialah dengan menambah dan menyebar pusat data.

Lalu, apa hubungannya dengan pusat data yang banyak?

Infografik Google
Infografik Google. tirto.id/Fuad


Ketika Anda mengakses Gmail, Youtube, atau bahkan situsweb Tirto, Anda memang tidak akan pernah melihat langsung kabel yang menghubungkan ponsel atau komputer Anda dengan server Google atau server Tirto. Namun, dalam konsep yang paling dasar, ketika mengakses Google atau Tirto atau layanan internet apapun, 90 persen dilakukan melalui kabel. Ponsel Anda, misalnya, memang tidak terhubung dengan tower 4G milik Telkomsel, XL Axiata, atau Indosat via kabel. Tetapi, tower-tower itu menghubungkan Anda dengan server berbagai layanan internet dengan kabel, bahkan menyeberangi samudera. Maka, semakin pendek kabel yang diperlukan untuk mengakses suatu layanan internet, semakin cepat bagi Anda merasakan layanan itu.

Tatkala Anda mengakses Youtube, Google akan mengarahkan permintaan Anda pada pusat data terdekat. Misalnya, alih-alih menghubungkan Anda dengan server Google di California, Google memilih menghubungkan Anda dengan server miliknya di Singapura.

Lantas, bagaimana Google menentukan bahwa pengguna A harus diarahkan ke server di Singapura, tetapi pengguna B harus diarahkan ke server di Islandia?

Sederhana, jika masalah Google ini terjadi saat ini, Google tinggal berlangganan layanan milik Cloudflare. Sayangnya, masalah Google ini terjadi di awal dekade 2000-an dan Cloudflare belum lahir. Maka, kembali merujuk tulisan Levy, "beruntung, Google memiliki sangat banyak insinyur bertitel Ph.D". Insinyur Google akhirnya menghadirkan solusi bernama MapReduce, suatu software yang betugas menduplikasi--men-cache--database milik Google ke banyak server di berbagai pusat data di seluruh dunia. Tak hanya itu, MapReduce pun memetakan ke mana pengguna A atau B harus diarahkan ketika request muncul.

MapReduce tidak sendirian. Xian Zhou, peneliti Google, dalam studinya berjudul "Datacenter Optics: Requirements, Technologies, and Trends" (2017) menyebut Google memanfaatkan teknologi bernama bisection bandwdth (BW) untuk menghubungkan pusat data yang tersebar di seluruh dunia. Melalui BW, pusat data milik Google disatukan dalam jaringan khusus melalui kabel fiber optik. Menurut Zhou, berbagai pusat data milik Google terhubung dengan kecepatan 400 gigabit detik. Sementara itu, server-server dalam satu pusat data terhubung dengan jaringan berkecepatan 40 terabit per detik.

Jika Anda menengok ke pojok kanan atas website/aplikasi Youtube, Anda akan melihat foto (berikut nama dan email tatkala diklik). Anda mungkin berpikir bahwa foto Anda tersebut disimpan pada server milik Google yang dikhususkan pada Youtube. Yang benar, foto tersebut diakses dari server milik Google yang dikhususkan pada Gmail. Artinya, ketika Anda membuka berbagai layanan Google, timbul jaringan akses data antar server dalam tubuh Google. Agar akses antar server terasa mulus, Google membedakan prioritas. Tatkala Youtube yang diakses, sistem Google memprioritaskan me-loading video-video Youtube terlebih dahulu, lalu foto Anda di pojok kanan atas di-loading belakangan. Kerja memprioritaskan layanan ini dilakukan oleh teknologi bernama OpenFlow.

Berbagai layanan Google bukanlah layanan pasif, melainkan aktif. Artinya, Anda dapat mengunggah sesuatu dalam tubuh layanan Google. Seandainya Google hanya beroperasi di AS, ini bukan masalah. Namun, karena beroperasi di berbagai sudut dunia, ini jadi masalah. Kenapa? Lihat newsfeed Facebook atau Twitter. Sistem harus dapat menentukan unggahan mana yang lebih dulu masuk dan mengurutkan unggahan tersebut berdasarkan waktu. Dan karena Google memiliki banyak pusat data dan unggahan penggunanya juga harus di-cache ke banyak pusat data, sistem harus tahu secara persis kapan unggahan masuk ke server. Untuk mengatasi masalah ini, Google menciptakan Spanner. Sederhananya, Spanner memberikan cap tanggal berbasis GPS dan jam atom dari tiap unggahan yang diberikan penggunanya untuk disimpan di server-server mereka.

Dengan teknologi-teknologi di atas, berbagai layanan Google dapat digunakan dengan cepat.

Tentu, meskipun sukses membangun teknologi tinggi untuk melayani penggunanya, tidak ada jaminan Google dapat diakses dengan baik oleh penggunanya. Pada Senin (14/12) kemarin misalnya, berbagai layanan Google tak bisa diakses selama kurang dari satu jam, yang terjadi gara-gara sistem pengkuotaan media penyimpanan Google mengalami kendala. Tatkala sistem pengkuotaan ini mengalami kendala, sistem memblokir akses pengguna Google ke berbagai layanan Google. Ingat, tatkala error terjadi, hanya Search yang dapat digunakan karena layanan ini memang tidak memungkinkan penggunanya mengunggah data.

Penyebab error Google kemarin bagai mengungkit pertanyaan Bill Gates pada Steven Levy dalam kunjungannya ke kantor Newsweek (kini Levy bekerja di Wired) pada 2004 silam. Pertanyaan itu terlecut karena Gates heran dengan strategi Gmail memberikan kapasitas penyimpanan sebesar 1 gigabit sementara layanan email lain, termasuk Outlook, hanya 10 megabit.

"Kok kalian butuh 1 gigabit, sih, buat apaan?"

WFH, bos!

Baca juga artikel terkait GOOGLE atau tulisan menarik lainnya Ahmad Zaenudin
(tirto.id - Teknologi)

Penulis: Ahmad Zaenudin
Editor: Windu Jusuf
DarkLight