Bagaimana Twitter Menggunakan Apache Cassandra Untuk Mendukung Platform Media Sosialnya
Diterbitkan: 2022-11-17Twitter adalah platform jejaring sosial yang memungkinkan pengguna mengirim dan membaca pesan singkat yang disebut "tweet". Sudah ada sejak 2006 dan sejak itu menjadi salah satu platform media sosial paling populer. Meskipun Twitter menggunakan beberapa sistem manajemen basis data relasional (RDBMS) untuk bagian tertentu dari infrastrukturnya, Twitter terutama menggunakan basis data NoSQL yang disebut Apache Cassandra. Cassandra dirancang untuk menangani data dalam jumlah besar dengan ketersediaan dan performa tinggi. Twitter menggunakan Cassandra karena beberapa alasan. Pertama, ini sangat terukur. Twitter dapat dengan mudah menambahkan lebih banyak node Cassandra seiring pertumbuhan basis penggunanya. Kedua, Cassandra sangat tersedia. Bahkan jika satu node Cassandra turun, yang lain dapat mengambil kelonggaran. Akhirnya, Cassandra cepat. Ini penting untuk platform media sosial di mana pengguna mengharapkan pembaruan waktu nyata. Jadi, meskipun Twitter menggunakan beberapa database relasional, database utamanya adalah NoSQL. Ini memungkinkan Twitter untuk menskalakan dengan cepat dan memberi penggunanya pengalaman yang cepat dan andal.
Kevin Weil, direktur pengembangan produk Twitter, memberikan penjelasan tentang bagaimana perusahaan menggunakan NoSQL dalam video yang diposting awal tahun ini. Setiap hari, pengguna Twitter menghasilkan sekitar 12 petabyte data, setara dengan sekitar 4 petabyte per tahun. Hadoop, bersama dengan proyek sumber terbukanya sendiri yang disebut FlockDB, digunakan untuk menganalisis data sosial dan menganalisis data. Twitter mengumpulkan dan menggunakan semua informasi yang dikumpulkannya untuk menyediakan konten yang relevan. Menurut Weil, SlideShare ini adalah tempat yang bagus untuk mempelajari lebih lanjut tentang bagaimana Twitter menganalisis grafik sosial. Twitter masih bereksperimen dengan menggunakan Cassandra, database NoSQL sumber terbuka Facebook, sebagai layanan.
MySQL adalah penyimpanan data utama Twitter sejak awal, karena lapisan persistensi berkembang menjadi sejumlah besar cluster. Twitter memiliki penyebaran MySQL yang cukup besar sejak awal. Ada ribuan cluster MySQL dengan jutaan node di dalamnya, dan kueri per detik dilayani.
Google Cloud menyediakan dua jenis layanan basis data NoSQL: Cloud Firestore, yang merupakan basis data berorientasi dokumen, dan Cloud Object Storage, yang merupakan sistem penyimpanan data. Mudah digunakan dan dioptimalkan untuk dokumen kecil, menjadikannya ideal untuk aplikasi seluler. Database dokumen yang dapat diskalakan dengan mudah, berperforma baik, dan mudah digunakan di Cloud Datastore .
Teknologi NoSQL memberdayakan aplikasi seluler Ryanair, maskapai penerbangan tersibuk di dunia, yang melayani lebih dari 3 juta pengguna per bulan. Selama delapan tahun terakhir, Marriott telah menggunakan NoSQL untuk menjalankan sistem reservasinya, yang menghasilkan pendapatan $38 miliar. Selain sistem manajemen konten miliknya, Presto, yang digunakan oleh penerbit surat kabar AS No.1, The Chronicle of Higher Education, menggunakan NoSQL.
PostgreSQL dan Cassandra adalah dua dari sistem database backend Instagram.
Basis Data Seperti Apa yang Digunakan Twitter?

Twitter menggunakan database relasional untuk menyimpan tweet-nya. Basis data ini dirancang untuk menyimpan data dalam serangkaian tabel, dengan setiap tabel berisi informasi tentang aspek tertentu dari tweet. Misalnya, ada tabel untuk informasi pengguna, tabel untuk tweet itu sendiri, dan tabel untuk hubungan antar pengguna.
Kami mungkin memerlukan beberapa informasi ini untuk beberapa layanan kami, seperti meminta agar permintaan Anda dialihkan ke server tertentu, tetapi ini tidak diperlukan. Jika ingin merutekan permintaan, Anda tidak perlu mengetahui stempel waktu tweet Anda.
Meskipun demikian, data tetap disimpan dan diproses. Tidak perlu menghapus atau menganonimkan informasi. Data kami tidak dapat diakses oleh pemerintah, tetapi masih dapat digunakan untuk mengumpulkan informasi tentang Anda.
Beberapa masalah privasi muncul sebagai akibat dari penyimpanan dan pemrosesan informasi ini. Ini juga memungkinkan pemerintah untuk melacak pergerakan dan aktivitas Anda sejak awal. Selain itu, memungkinkan pemerintah untuk mengakses informasi pribadi Anda tanpa persetujuan Anda.
Kami tidak menyimpan teks tweet Anda. Nama dan stempel waktu akun ini adalah satu-satunya hal yang kami simpan. Kami tidak menyimpan konten tweet Anda.
Tweet Anda tidak disertai dengan data apa pun yang dapat kami simpan di dalamnya.
Kami hanya menyimpan nama akun dan stempel waktu saat mengunggah gambar.
Manfaat Menggunakan Mysql
Twitter telah menggunakan MySQL untuk menyimpan tweet di masa lalu. MySQL dapat menangani sejumlah besar permintaan karena sifatnya yang dapat diandalkan dan konsisten. Facebook menggunakan MySQL untuk menyimpan semua data media sosialnya .
Apakah Facebook Menggunakan Sql Atau Nosql?

Karena menyediakan fleksibilitas pemodelan data dan MySQL ada di mana-mana saat FB dimulai, SQL digunakan sebagai database persisten dan memcache sebagai cache "lookaside" di masa-masa awal FB.
Database Facebook menyimpan profil pelanggannya, yang merupakan sekitar 23% dari total pelanggan. Prinsip dasar yang mendukung skala internet Facebook, arsitektur yang didistribusikan secara global berlaku untuk berbagai aplikasi bisnis penting perusahaan, termasuk SaaS multi-penyewa, dan ada pelajaran yang bisa dipelajari dari pemahaman yang lebih baik tentang evolusi database di Facebook. TAO NoSQL Graph API, yang dibangun di atas versi sharded dari database open source populer Mystria , adalah salah satu API NoSQL FB. TAO mempartisi 1000 database master-slave MySQL yang lebih tua secara manual ke dalam ribuan budak yang dipecah. Akibatnya, aplikasi tidak lagi menggunakan database untuk melakukan transaksi cross-shard dan cross-shard JOIN. Akibatnya, jika failover jenis ini dilakukan, data terbaru akan hilang. Karena semua objek dan asosiasi di-cache di server yang sama, mereka dapat disimpan di shard yang sama untuk waktu yang tidak terbatas.
Tingkat kolokasi data ditentukan sebagai teknik pengoptimalan penting yang digunakan untuk memaksimalkan akses data latensi. Komunitas pengembang meninggalkan SQL demi API NoSQL kustom TAO setelah FB memaksa mereka untuk melepaskan API kueri SQL mereka. Basis data Spanner Google, dibuat lebih dari satu dekade lalu, dibuat sebagai bagian dari basis data TAO FB. Model data Spanner, berbeda dengan grafik sosial, lebih merupakan beban kerja akses acak tradisional untuk OLTP. Generasi kedua database terdistribusi dibangun di atas skalabilitas masif dan distribusi data global sebagai bagian dari lapisan database. Spanner menggunakan konsensus terdistribusi per-shard untuk memastikan bahwa setiap shard (dan bukan hanya setiap instans) tetap tersedia jika terjadi kegagalan layanan. Terlepas dari kenyataan bahwa konfigurasi cluster aplikasi telah diubah, tetap beroperasi.

Data yang relevan dengan wilayah lokal akan terus diberi peringkat di bagian atas daftar karena fitur seperti geo-partisi tingkat tabel dan tingkat baris. Manajer transaksi terdistribusi digunakan dalam transaksi multi-pecahan untuk mengelola proses Komitmen 2 Fase, serta kemiringan jam di setiap node. Kami menggunakan TAO sebagai ukuran pemotongan biaya di FB, yang memungkinkan kami menyimpan investasi kami di MySQL yang terfragmentasi. Google memilih untuk mengambil jalan yang berbeda dengan Spanner, database yang benar-benar baru dengan kemampuan penskalaan horizontal, kemampuan replikasi geo yang mulus, dan kemudahan kegagalan infrastruktur.
Ada banyak alasan mengapa database NoSQL mendapatkan popularitas. Sistem menggunakan pendekatan berbeda untuk penyimpanan data yang lebih efisien saat menangani volume data yang besar.
Basis data NoSQL digunakan oleh sejumlah bisnis terkenal, termasuk Amazon, Netflix, Microsoft, Snapchat, dan Dropbox. Memilih database NoSQL adalah salah satu keputusan terbaik yang pernah mereka buat karena aplikasi mereka menangani banyak data.
Akibatnya, database NoSQL memberikan fleksibilitas yang lebih besar dalam cara perusahaan dapat menyimpan data. Hasilnya, ada organisasi dan akses data yang lebih baik. Selain itu, database NoSQL memiliki keuntungan lebih cepat dalam hal pemrosesan data dalam jumlah besar.
Sangat masuk akal untuk bisnis yang perlu menyimpan data dalam jumlah besar untuk mempertimbangkan database NoSQL. Sebagai hasil dari pendekatan unik mereka terhadap pemrosesan data, mereka mampu menangani data dengan kecepatan lebih tinggi dan lebih efisien.
Apakah Twitter Menggunakan Database Grafik

Twitter menyimpan data primer seperti grafik minat, garis waktu, dan data pengguna di MySql. Twitter memiliki ratusan skema dan ribuan node yang melayani jutaan kueri per detik di kluster terbesarnya. Layanan flockdb digunakan dalam komputasi grafik.
Penggunaan database grafik , penerapannya pada data COVID-19, dan pilihan bahasa untuk grafik dibahas. Setelah obrolan, Anda dapat membaca wawasan mereka di sini. Berpartisipasi dalam obrolan tweet kami pada pukul 13:00 EST hari ini bertajuk The State of Graph Databases in 2020. Kami akan menyajikan beberapa pertanyaan yang akan digunakan untuk memfasilitasi diskusi. Database grafik telah terbukti sangat berguna di masa lalu. Karena kemampuannya untuk menghubungkan data, menangani data dalam jumlah besar, dan bekerja dengan mengagumkan, ini diperlukan oleh semua organisasi yang berpikiran analitis. Mereka dibedakan oleh fakta bahwa mereka dapat digunakan untuk menghubungkan data dari berbagai sumber daripada database.
Pengguna sekarang dapat menggunakan grafik ini untuk mendapatkan keuntungan dari fungsi spesifik yang ditemukan dalam database grafik selama analisis data. Banyak pengguna baru dapat diperkenalkan ke #knowledgegraph sebagai kasus penggunaan pertama karena banyak perusahaan memerlukan #analytics dari berbagai sumber data terstruktur dan tidak terstruktur. Dalam hal #NLP dan menggabungkan hasilnya dengan berbagai sumber, #graphdb adalah solusi terbaik. COVID-19 akan dibahas lebih mendalam di GraphDB Q2. # GraphDB dapat melihat banyak kegunaan di Q2 sebagai solusi pelacakan kontak. Akibatnya, data menjadi tidak ADIL untuk organisasi besar karena informasi dapat Ditemukan, Dapat Diakses, Dapat Dioperasikan, dan Dapat Digunakan Kembali. RDF* adalah grafik properti.
Tidak ada keraguan bahwa ada kebingungan. Federasi adalah topik yang menarik saat ini. Data ini harus diserap ke dalam file #graphdbs. Jika Anda memodelkannya dengan benar, Anda tidak perlu menggunakan RDF*. Menggunakan ilmu data grafik untuk menghubungkan dan menghubungkan set data yang berbeda adalah cara terbaik untuk melakukannya. Tidak ada perbedaan signifikan antara RDF* dan LPG saat ini. Vendor yang mengaktifkan RDF biasanya mendukung properti berlabel, yang memungkinkan algo grafik dan fungsi analitik lainnya benar-benar tidak terlihat oleh RDF sebelumnya.
Haruskah saya menggunakan rdf atau sparcl antara PC & aplikasi seluler saya? Faktanya, ini bukan ilmu roket untuk menghasilkan properti dari RDF, tetapi ML berpotensi menghasilkan tiga kali lipat dari properti di DBMS grafik #GraphDB @stevesarfield. Saat Anda melihat ontologi, Anda memodelkannya, dan itu mengikuti Anda ke tempat tidur. Selain itu, editor kami telah mulai berinteraksi dengan pasar GraphDB. Tujuan kami adalah menyusun daftar lengkap produk terbaik yang tersedia bagi konsumen. Grafik pengetahuan dapat dibuat dengan GraphDB dengan menggabungkan data terstruktur dan tidak terstruktur, memungkinkannya digunakan sebagai alat analitik. Banyak pengguna akan menganggap ini sebagai awal dari perjalanan mereka menuju database grafik di masa mendatang.
Untuk waktu yang lama, FOSS adalah sumber utama untuk proyek sumber terbuka, tetapi mungkin akan muncul lagi di masa mendatang. #GraphDB mungkin merupakan cara terbaik untuk mengatur semua komponen yang berbeda dalam ekosistem #IoT saat mereka matang dalam organisasi dan ekosistem. Perusahaan kartu kredit menggunakan GraphDB untuk mendeteksi pola aktivitas yang mencurigakan. Saat Anda perlu menggabungkan skema yang tidak sempurna dengan sumber tidak sempurna lainnya, menggunakan #GraphDB mungkin merupakan pilihan yang baik. Tetap berhubungan satu sama lain dan tetap sehat juga. Solusi database GOLAP Cambridge Semantics, AnzoGraphDB, memberikan konteks dan makna dalam skala besar dalam database grafik Massively Parallel Processing (MPP) dalam memori. Kueri traversal grafik dapat diskalakan untuk memenuhi permintaan pergudangan dan analitik data yang kompleks, dan juga dapat menangani sebagian besar agregasi data. Coba AnzoGraphDB gratis untuk melihat apakah itu dapat membantu Anda mengelola koleksi data Anda yang sangat banyak dengan lebih baik.
Bagaimana Raksasa Media Sosial Menggunakan Database Grafik Untuk Meningkatkan Platform Mereka
MySQL, sistem manajemen basis data, pada awalnya digunakan untuk menyimpan data Twitter. Kami beralih dari instans database kecil ke instans database besar, lalu dari satu instans database besar ke instans lainnya. Basis data Twitter digunakan untuk menyimpan semua informasi pengguna, memungkinkannya menjadi salah satu perusahaan media sosial paling kuat . Perusahaan dapat meningkatkan platformnya dengan menganalisis perilaku pengguna dan melacak kemajuan mereka. Mesin pencari Instagram awalnya ditenagai oleh Elasticsearch, mesin pencari sosial grafik yang dibuat oleh Facebook, tetapi akhirnya digantikan oleh Unicorn. Selain menggunakan database grafik untuk melacak bagaimana pengguna berinteraksi, Instagram menggunakannya untuk melacak bagaimana pengguna terkait. Instagram dapat meningkatkan pengalaman penggunanya dan menyediakan konten yang lebih relevan dengan menganalisis data media sosial. Database grafik dan analitik digunakan oleh Facebook, Instagram, dan Twitter untuk mendapatkan pemahaman yang lebih baik tentang bagaimana pengguna mereka berinteraksi satu sama lain dan untuk membangun platform yang lebih baik.