Skip to main content

Ikhtisar Data NoSQL

Mapping External Services (Kubernetes Best Practices) (April 2024)

Mapping External Services (Kubernetes Best Practices) (April 2024)
Anonim

Akronim NoSQL diciptakan pada tahun 1998. Banyak orang berpikir NoSQL adalah istilah penghinaan yang dibuat untuk menyodok di SQL. Pada kenyataannya, istilah ini berarti Tidak Hanya SQL. Idenya adalah bahwa kedua teknologi dapat hidup berdampingan dan masing-masing memiliki tempatnya. Gerakan NoSQL telah menjadi berita dalam beberapa tahun terakhir karena banyak pemimpin Web 2.0 telah mengadopsi teknologi NoSQL. Perusahaan seperti Facebook, Twitter, Digg, Amazon, LinkedIn, dan Google semuanya menggunakan NoSQL dalam satu atau lain cara. Mari kita hancurkan NoSQL sehingga Anda dapat menjelaskannya kepada CIO Anda atau bahkan rekan kerja Anda.

NoSQL Muncul Dari Sebuah Kebutuhan

Penyimpanan data: Data digital yang disimpan di dunia diukur dalam exabyte. Exabyte sama dengan satu miliar gigabyte (GB) data. Menurut Internet.com, jumlah data yang disimpan ditambahkan pada tahun 2006 adalah 161 exabyte. Hanya 4 tahun kemudian pada tahun 2010, jumlah data yang disimpan akan menjadi hampir 1.000 ExaBytes yang merupakan peningkatan lebih dari 500%. Dengan kata lain, ada banyak data yang disimpan di dunia dan itu hanya akan terus berkembang.

Data yang Berhubungan: Data terus menjadi lebih terhubung. Penciptaan web dipupuk dalam hyperlink, blog memiliki pingback dan setiap sistem jejaring sosial utama memiliki tag yang mengikat semuanya. Sistem utama dibangun untuk saling terhubung.

Struktur Data Kompleks: NoSQL dapat menangani struktur data bertingkat hirarkis dengan mudah. Untuk mencapai hal yang sama di SQL, Anda akan membutuhkan tabel relasional ganda dengan semua jenis kunci. Selain itu, ada hubungan antara kinerja dan kompleksitas data. Kinerja dapat menurunkan dalam RDBMS tradisional karena kami menyimpan sejumlah besar data yang diperlukan dalam aplikasi jejaring sosial dan web semantik.

Apa itu NoSQL?

Saya kira salah satu cara untuk mendefinisikan NoSQL adalah mempertimbangkan apa yang tidak. Ini bukan SQL dan itu bukan relasional. Seperti namanya, itu bukan pengganti untuk RDBMS tetapi pujian itu. NoSQL dirancang untuk menyimpan data terdistribusi untuk kebutuhan data skala besar. Pikirkan tentang Facebook dengan 500.000.000 pengguna atau Twitter yang mengakumulasi Terabits data setiap hari.

Dalam database NoSQL, tidak ada skema tetap dan tidak ada gabungan. Sebuah RDBMS "berskala" dengan mendapatkan perangkat keras yang lebih cepat dan lebih cepat dan menambahkan memori. NoSQL, di sisi lain, dapat memanfaatkan "scaling out". Scaling out mengacu pada penyebaran beban di banyak sistem komoditas. Ini adalah komponen NoSQL yang membuatnya menjadi solusi murah untuk dataset besar.

Kategori NoSQL

Dunia NoSQL saat ini cocok menjadi 4 kategori dasar.

  1. Toko Nilai-Kunci didasarkan terutama pada Amazon's Dynamo Paper yang ditulis pada tahun 2007. Ide utamanya adalah keberadaan tabel hash di mana ada kunci unik dan pointer ke item data tertentu. Pemetaan ini biasanya disertai dengan mekanisme cache untuk memaksimalkan kinerja.
    1. Toko Keluarga Kolom diciptakan untuk menyimpan dan memproses sejumlah besar data yang didistribusikan ke banyak mesin. Masih ada kunci tetapi mereka menunjuk ke beberapa kolom. Dalam kasus BigTable (Google Kolom Family NoSQL model), baris diidentifikasi oleh kunci baris dengan data yang diurutkan dan disimpan oleh kunci ini. Kolom disusun oleh keluarga kolom.
  2. Basis Data Dokumens terinspirasi oleh Lotus Notes dan mirip dengan toko-toko nilai kunci. Model ini pada dasarnya adalah dokumen berversi yang merupakan kumpulan koleksi nilai kunci lainnya. Dokumen semi-terstruktur disimpan dalam format seperti JSON.
  3. Database Grafiks dibangun dengan node, hubungan antara catatan dan properti dari node. Alih-alih tabel baris dan kolom serta struktur SQL yang kaku, model grafik fleksibel digunakan yang dapat menskala di banyak mesin.

Pemain NoSQL Utama

Para pemain utama di NoSQL telah muncul terutama karena organisasi yang telah mengadopsi mereka. Beberapa teknologi NoSQL terbesar termasuk:

  • Dinamo: Dynamo dibuat oleh Amazon.com dan merupakan basis data NoSQL Kunci-nilai yang paling menonjol. Amazon membutuhkan platform terdistribusi yang sangat skalabel untuk bisnis e-commerce mereka sehingga mereka mengembangkan Dynamo. Amazon S3 menggunakan Dynamo sebagai mekanisme penyimpanan.
  • Cassandra: Cassandra terbuka bersumber dari Facebook dan merupakan database NoSQL yang berorientasi pada kolom.
  • Meja besar: BigTable adalah database berorientasi kolom milik Google. Google mengizinkan penggunaan BigTable tetapi hanya untuk Google App Engine.
  • SimpleDB: SimpleDB adalah basis data Amazon lainnya. Digunakan untuk Amazon EC2 dan S3, ini adalah bagian dari Amazon Web Services yang mengenakan biaya tergantung pada penggunaan.
  • CouchDB: CouchDB bersama dengan MongoDB adalah database NoSQL yang berorientasi pada dokumen sumber terbuka.
  • Neo4J: Neo4j adalah database grafik open source.

Querying NoSQL

Pertanyaan tentang bagaimana query database NoSQL adalah apa yang kebanyakan pengembang tertarik. Setelah semua, data yang disimpan dalam database besar tidak ada gunanya bagi siapa pun jika Anda tidak dapat mengambil dan menunjukkannya kepada pengguna akhir atau layanan web. Database NoSQL tidak menyediakan bahasa query deklaratif tingkat tinggi seperti SQL. Sebaliknya, query database ini adalah data-model spesifik.

Banyak platform NoSQL memungkinkan untuk antarmuka RESTful ke data. API permintaan penawaran lainnya. Ada beberapa alat kueri yang telah dikembangkan yang mencoba untuk kueri beberapa basis data NoSQL. Alat-alat ini biasanya bekerja di satu kategori NoSQL. Salah satu contohnya adalah SPARQL. SPARQL adalah spesifikasi kueri deklaratif yang dirancang untuk basis data grafik. Berikut ini contoh kueri SPARQL yang mengambil URL blogger tertentu (milik IBM):

PREFIX foaf: SELECT? UrlDARI DI MANA {? Kontributor foaf: nama "Jon Foobar".? contributor foaf: weblog? url.}

Masa Depan NoSQL

Organisasi yang memiliki kebutuhan penyimpanan data yang sangat besar terlihat serius di NoSQL. Rupanya, konsep ini tidak mendapatkan banyak daya tarik dalam organisasi yang lebih kecil. Dalam survei yang dilakukan oleh Information Week, 44% profesional bisnis TI belum pernah mendengar tentang NoSQL. Lebih lanjut, hanya 1% dari responden yang melaporkan bahwa NoSQL adalah bagian dari arah strategis mereka. Jelas, NoSQL memiliki tempatnya di dunia kita yang terhubung tetapi perlu terus berkembang untuk mendapatkan daya tarik massa yang menurut banyak orang bisa terjadi.