Apache Cassandra 2.0 membawa sekolah fungsi SQL tuaAdministrator database relasional akan mengenali pemicu Cassandra baru , transaksi ringan , dan bahasa query SQL sepertiApache
NoSQL Cassandra didistribusikan menyimpan data terus menumpuk fitur
yang meniru database tradisional, dengan yang baru dirilis versi 2 dari
perangkat lunak sumber terbuka menawarkan pemicu , transaksi ringan dan
bahasa query diperbarui mirip dengan SQL ."
Banyak pembangunan kita didorong [ untuk membubarkan ] titik rasa sakit
yang pengguna kami merasa paling tertekan atas , " kata wakil presiden
Cassandra Jonathan Ellis , tentang rilis 2.0 Cassandra , yang dikelola
di bawah Apache Software Foundation .[ Andrew C. Oliver menjawab pertanyaan di benak setiap orang : Yang database yang panik harus saya gunakan ? |
Bersaing dengan pendekatan terbaru untuk mengelola informasi yang
berlebihan dan kepatuhan dalam InfoWorld Enterprise Data Ledakan Digital
Spotlight . ]Pertama
diciptakan untuk Facebook , Cassandra adalah data terdistribusi NoSQL
menyimpan mudah dapat menangani sejumlah besar menulis dan membaca ,
kualitas yang telah memenangkan mendukung dengan kedua layanan internet
volume tinggi serta dengan perusahaan-perusahaan melaksanakan analisis
data - gaya besar.Organisasi
seperti Adobe , CERN , Comcast , eBay , GoDaddy , Hewlett -Packard ,
IBM , Instagram , Netflix , dan Sony semua menggunakan perangkat lunak.Banyak
perubahan dalam penawaran kemampuan versi baru lama dinikmati oleh
relasional database , kemampuan yang bisa membuat Cassandra cocok
sebagai pengganti untuk database tradisional , setidaknya untuk beberapa
kasus penggunaan .Mungkin
fitur yang paling penting adalah dukungan untuk transaksi ringan , yang
menjamin bahwa setiap satu operasi menyimpan data tidak terganggu oleh
operasi lainnya . " Kami yang pertama database yang akhirnya konsisten untuk melaksanakan transaksi ringan , " kata Ellis .Panjang
fitur database SQL tradisional , transaksi ringan memastikan bahwa ,
misalnya , dua akun dengan nama pengguna yang sama tidak dapat
diciptakan pada waktu yang sama . Ini
pada dasarnya mengunci data yang sedang dibaca atau diperbarui oleh
operasi sehingga operasi lain tidak mengubah data pertengahan transaksi ,
atau membaca data yang hendak diberikan usang .Tim
proyek Cassandra menemukan bahwa kurangnya dukungan untuk transaksi
ringan di Cassandra telah memotivasi beberapa pengguna untuk menjalankan
dua database bukan satu.Pengguna
tersebut telah memisahkan diri bagian paling sangat berkonsultasi
database relasional mereka untuk berjalan di bawah Cassandra untuk
kinerja lebih cepat . Tapi mereka tidak bermigrasi seluruh database mereka untuk Cassandra karena kekhawatiran tentang manajemen kunci . Lainnya menggunakan mekanisme penguncian eksternal seperti Apache Zookeeper , yang membawa satu set baru kompleksitas .Versi baru dari Cassandra juga perkenalkan kembali konsep database lama disebut pemicu , bentuk prosedur yang tersimpan . Dua
dekade lalu, pemicu telah digunakan dengan database tradisional untuk
memusatkan perhitungan dalam database itu sendiri , dalam rangka
meningkatkan konsistensi hasil di berbagai aplikasi yang menggunakan
database .
Pemicu kehilangan dukungan dari waktu ke waktu , namun, karena operasi mereka dapat memperlambat operasi database . Dengan demikian, banyak pindah perhitungan mereka keluar untuk server aplikasi , di mana mereka bisa lebih mudah ditingkatkan .Cassandra memiliki keuntungan lebih dari database relasional , bagaimanapun , dalam hal ini adalah database terdistribusi , yang berarti melaksanakan memicu tidak lagi menjadi hambatan kinerja , jika kinerja melambat , simpul Cassandra lain dapat ditambahkan ." Jadi ketika masuk akal untuk memiliki logika lebih dekat dengan data , Anda bisa melakukan itu . Ia telah datang lingkaran penuh ke tempat yang masuk akal lagi , " kata Ellis .Tim pembangunan juga berusaha untuk meringankan pekerjaan pengembang membangun aplikasi mereka di atas Cassandra , dengan mengganti sangat sulit untuk menggunakan API ( Application Programming Interface ) dengan CQL ( Cassandra Query Language ) , yang menyerupai banyak dipahami SQL digunakan untuk relasional database .Cassandra telah menawarkan CQL sejak Januari , namun rilis 2.0 telah diperbaiki beberapa masalah kecil , sehingga siap untuk digunakan produksi penuh .Dengan CQL itu, "kami merasa nyaman dengan memberitahu orang-orang bahwa ini adalah apa yang Anda harus membangun aplikasi Anda dengan , " kata Ellis . " Anda tidak perlu untuk menggunakan API lama bahwa setiap orang mengeluh terlalu sulit untuk digunakan. Anda dapat menggunakan CQL . Kurva belajar secara dramatis lebih rendah . "Juga , karena dengan rilis utama , Cassandra 2.0 gudang banyak fungsi usang. Upgrade ke versi 2.0 memerlukan versi lama setidaknya 1.2 , yang memungkinkan penjaga proyek untuk membersihkan kode lama dan mengabaikan sedikit digunakan atau bermasalah kode .Perangkat lunak diperbarui juga mencakup sejumlah tweak untuk mempercepat kinerja .Ini termasuk metode baru pemadatan , yang mencegah performa membaca dari penderitaan ketika sejumlah besar bahan sedang ditulis ke disk . Pesan latency pengolahan telah berkurang berkat pelaksanaan Disruptor kinerja tinggi antar -benang perpustakaan pesan . Jumlah timeout dapat dikurangi berkat teknik baru mengirimkan permintaan berlebihan untuk node lain , harus terlalu banyak waktu berlalu sebelum permintaan asli terpenuhi .
Pemicu kehilangan dukungan dari waktu ke waktu , namun, karena operasi mereka dapat memperlambat operasi database . Dengan demikian, banyak pindah perhitungan mereka keluar untuk server aplikasi , di mana mereka bisa lebih mudah ditingkatkan .Cassandra memiliki keuntungan lebih dari database relasional , bagaimanapun , dalam hal ini adalah database terdistribusi , yang berarti melaksanakan memicu tidak lagi menjadi hambatan kinerja , jika kinerja melambat , simpul Cassandra lain dapat ditambahkan ." Jadi ketika masuk akal untuk memiliki logika lebih dekat dengan data , Anda bisa melakukan itu . Ia telah datang lingkaran penuh ke tempat yang masuk akal lagi , " kata Ellis .Tim pembangunan juga berusaha untuk meringankan pekerjaan pengembang membangun aplikasi mereka di atas Cassandra , dengan mengganti sangat sulit untuk menggunakan API ( Application Programming Interface ) dengan CQL ( Cassandra Query Language ) , yang menyerupai banyak dipahami SQL digunakan untuk relasional database .Cassandra telah menawarkan CQL sejak Januari , namun rilis 2.0 telah diperbaiki beberapa masalah kecil , sehingga siap untuk digunakan produksi penuh .Dengan CQL itu, "kami merasa nyaman dengan memberitahu orang-orang bahwa ini adalah apa yang Anda harus membangun aplikasi Anda dengan , " kata Ellis . " Anda tidak perlu untuk menggunakan API lama bahwa setiap orang mengeluh terlalu sulit untuk digunakan. Anda dapat menggunakan CQL . Kurva belajar secara dramatis lebih rendah . "Juga , karena dengan rilis utama , Cassandra 2.0 gudang banyak fungsi usang. Upgrade ke versi 2.0 memerlukan versi lama setidaknya 1.2 , yang memungkinkan penjaga proyek untuk membersihkan kode lama dan mengabaikan sedikit digunakan atau bermasalah kode .Perangkat lunak diperbarui juga mencakup sejumlah tweak untuk mempercepat kinerja .Ini termasuk metode baru pemadatan , yang mencegah performa membaca dari penderitaan ketika sejumlah besar bahan sedang ditulis ke disk . Pesan latency pengolahan telah berkurang berkat pelaksanaan Disruptor kinerja tinggi antar -benang perpustakaan pesan . Jumlah timeout dapat dikurangi berkat teknik baru mengirimkan permintaan berlebihan untuk node lain , harus terlalu banyak waktu berlalu sebelum permintaan asli terpenuhi .