Mengenal Database NoSQL

date 04 Feb 2021
date Sulfikardi
date 169
date Web Programming
Mengenal Database NoSQL

Database NoSQL adalah sebuah konsep serta model basis data yang fleksibel. Secara general maupun spesifik NoSQL tidak mengikuti kaidah-kaidah database relasional (RDBMS). NoSQL tidak pula menggunakan bahasa query SQL. NoSQL adalah sebuah model database yang berbeda dibandingkan dengan SQL dan tidak harus memiliki relasi layaknya tabel-tabel MySQL.
Tujuan dari penggunaan database noSQL adalah untuk model data spesifik dan memiliki skema fleksibel dalam membuat aplikasi modern. Kebanyakan dalam beberapa kasus penggunaan Database noSQl berfungsi dalam pengembangan real time application.
Cara kerja database noSQL yakni dengan menggunakan berbagai model database untuk mengelolah dan mengakses data, seperti document, key-value, grafic, in-memory dan search-engine.

Kita akan mengulas beberapa model database noSQL diatas.
 

1. Document
mendefenisikan database sebagai dokumen artinya penyimpanan data dan proses manipulasinya dalam bentuk objek dokument. Contoh objek dokument yang sering diterapkan dalam pemograman adalah format Json. Konsep dari Json merupakan konsep data yang efesien dalam pembangunan aplikasi karena Json memiliki sifat yang fleksible, semi struktur dan hirarki. Sehingga memungkinkan program akan lebih mudah dikembangkan karena document akan menyusaikan penyimpanan data berdasarkan kebutuhan dari aplikasi.


2. Key-Value
Key-value, defenisi database dengan key-value adalah penyimpanan data dengan dengan metode key-value (nilai kunci) sebagai tempat akses data-data. Contoh database yang manganut konsep key-value adalah dyamondDB.


3.Grafik
Database jenis grafik menggunakan node sebagai entitas data dan edge sebagai hubungan antar entitas. Setiap edge memiliki node awalan dan node akhiran. Edge juga menggambarkan hubungan antara oratua-anak, kepemilikan, tindakan dan lain sebagainya. Tidak ada batasan jumlah suatu node untuk terhubung dengan node lainnya. 


4. In-Memory
Database model ini bekerja dengan menyimpan data pada memori utama, Dengan penyimpanan data didalam RAM maka aksesnya akan sangat cepat sekali. Tidak ada perangkat disk manapun yang mampu menyaingi kecepatan dari akses langsung ke memori utama (RAM) sekali pun itu SSD (Solid State Disc). Jika demikian bagaimana jika perangkat (server) mati tentunya seluruh data akan hilang. Akan tetapi cara kerja database jenis ini tidak seperti itu sepenuhnya, karna database dala in-memory dapat disimpan dalam sebuah disc penyimpanan layaknya MySQL dan Postgres.

Kenapa Anda harus menggunakan database NoSQL?

Database NoSQL sangat cocok untuk digunakan dengan berbagai aplikasi modern seperti aplikasi seluler, web, dan gaming yang memerlukan database yang fleksibel,kinerja tinggi, dan memiliki fungsionalitas tinggi untuk memberikan pengalaman pengguna yang baik.
 

  • Fleksibilitas: Database NoSQL umumnya menyediakan skema fleksibel yang memungkinkan pengembangan yang lebih cepat dan lebih berulang. Model data fleksibel membuat database NoSQL ideal untuk data yang semi terstruktur dan tidak terstruktur.
  • Skalabilitas: Database NoSQL umumnya didesain untuk meningkatkan skala dengan menggunakan klaster perangkat keras yang terdistribusi alih-alih meningkatkan skala dengan menambah server yang mahal dan robust. Beberapa penyedia layanan cloud menangani aktivitas di balik operasi ini sebagai layanan yang dikelola sepenuhnya.
  • Kinerja tinggi: Database NoSQL dioptimalkan untuk model data spesifik dan pola akses yang memberikan kinerja yang lebih tinggi dibandingkan jika Anda mencoba mendapatkan fungsionalitas yang mirip dengan database relasional.
  • Fungsionalitas tinggi: Database NoSQL menyediakan API dan jenis data fungsional yang dibuat secara khusus untuk setiap model data yang sesuai.

Kelebihan dan Kekurangan Database NoSQL

Kelebihan NoSQL

  1. Memiliki kemampuan scaling yang baik, karena kemampuannya pada suatu kondisi.
  2. Penanganan data skema dan struktur data pada NoSQL mudah ditangani tanpa harus merubah konsistensi data pada database, karena skema data pada NoSQL tidak fixed seperti halnya pada SQL.
  3. Biaya maintenance terjangkau, karena tidak membutuhkan database administrator dengan skill yang tinggi.
  4. Sifat NoSQL adalah database horizontal yang semakin melebar ke samping utnuk mengikuti perkembangan data pada jenis yang sama, tetapi terdapat penambahan pada data lain yang tidak dapat dibedakan dengan data sebelumnya serta untuk memperbesar skala, anda hanya perlu melakukan penambahan server DB yang di cluster untuk load balancing.
  5. Memiliki kemampuan schema-less, yaitu tidak perlu mendefinisikan fields dan tipedata pada tabel seperti pada mysql.

Kekurangan NoSQL

  1. Tiap record atau row merupakan data yang unik dan tidak bisa digantika data yang lain
  2. Setiap baris data konsisten, yang mana data akan tetap konsisten setelah di eksekusi dan server maupun client akan melihat data yang sama.
  3. Setelah transaksi selesai, akibat dari perubahan record akan tersimpan secara permanen dan solid.
  4. Tidak saling terkait antara transaksi record satu dengan lainnya.
     
sul.png

Sulfikardi

Web Design & Web Programming

Halo, saya seorang Web Developer yang terbiasa mengembangkan website menggunakan HTML, CSS, Javascript, PHP, MYSQL, dan Laravel. Disini saya akan membagikan pengalaman saya dalam membangun dan mengembangan website yang responsif dan dinamis

Artikel Terkait

Halo, ada yang bisa kami bantu?