NoSQL Database



A. Penjelasan No SQL

    NoSQL adalah singkatan dari Not Only SQL. Database management system ini tanpa relasi. artinya No SQL bisa mengelola database dengan skema yang fleksibel dan tidak membutuhkan query yang kompleks.

    NoSQL mempunyai skalabilitas tinggin untuk dapat berkembang sesuai dengan kebutuhan data yang ada. Database management ini dianggap paling cocok untuk mengolah big data yang selalu berubah-ubah sekaipun.

   


B. Jenis-jenis Database
1. Key-Value
Jenis database ini menyimpan database dalam pasangan key/value berbentuk tabel hash yang simpel. Jadi, cocok digunakan oleh yang ingin menyimpan banyak data tanpa menggunakn querty yang ribet saat hendak memprosesnya.
2. Column family
Column (disebut juga dengan wide-column) merupakan jenis database NoSQL yang menyimpan data dalam bentuk kolom. Jadi, column-based sangat cocok untuk query SUM, COUNT, AVG, MIN, dan semacamnya..
3.Document-oriented
Jenis database ini menggunakan data yang berisi sepasang key dan value yang disimpan di dokumen dengan format JSON atau XML. Value disini bisa saja berupa string, angka, boolean, arrays, hingga object. 
4. Graph db
Graphdb adalah jenis database NoSQL yang berfokus untuk menyimpan hubungan antar entitas. Entitas tersebut disimpan dalam bentuk node, sedangkan hubungan antar entitasnya disebut sebagai edge.

C. Kelebihan dan kekurangan NoSQL

- Kelebihan

a. Performa

Database NoSQL disebut memiliki performa yang lebih unggul jika dibandingkan dengan database SQL. Hal itu disebabkan semua informasi terdapat di dalam satu database saja.

Sementara itu, dengan SQL maka pengguna harus mengkueri data di beberapa tabel terlebih dahulu. Namun, dengan NoSQL semua berada di dalam satu tabel sehingga mengambil data bisa dilakukan dengan cepat.

b. Skalabilitas

Kelebihan selanjutnya dari NoSQL adalah dari skalabilitasnya. Database ini menggunakan penskalaan horizontal dengan membagi data dan menempatkannya di beberapa mesin. Sementara itu, penskalaan vertikal berarti menambahkan lebih banyak sumber daya ke mesin. Sehingga bisa disebut lebih mahal dan membutuhkan banyak sumber daya. Penskalaan vertikal juga tidak mudah diterapkan seperti penskalaan horizontal. Jadi, bisa dibilang bahwa penggunaan NoSQL bisa menjadi lebih mudah dan murah dibandingkan dengan SQL.

c. Fleksibilitas

NoSQL lebih fleksibel sehingga jauh lebih mudah untuk menguji ide dan melakukan pembaruan. Hal tersebut sangat penting dalam aplikasi modern di mana sering terjadi perubahan struktur data yang harus cepat dan mudah.

- Kekurangan

a. Membutuhkan banyak database

Penggunaan NoSQL sangat terspesialisasi untuk penggunaan tertentu. Hal tersebut berbeda dengan SQL yang lebih umum dan bisa memenuhi berbagai kebutuhan. Jadi, dengan NoSQL maka diperlukan beberapa jenis database dan model data untuk menggunakannya.

b. Ukuran database bisa menjadi sangat besar

NoSQL tidak dirancang untuk menghapus duplikasi data sehingga ukuran database bisa menjadi sangat besar. Hal itu membutuhkan lebih banyak tempat penyimpanan data untuk dipersiapkan jika ingin menggunakan NoSQL.

c. Pengelolaan yang tidak mudah

Meskipun tujuan menggunakan NoSQL adalah untuk mengelola data dalam jumlah besar menjadi lebih sesederhana mungkin, tapi hal tersebut bukanlah hal yang mudah. Karena itu, dalam mengelola hal yang satu ini dibutuhkan lebih banyak usaha ekstra karena memang sukup sulit.



D. Perbedaan sql dan nosql

Perbedaan

SQL

NoSQL

Tipe

RDBMS atau Relational Databases

Non-relational database atau distributed database

Fungsi

Untuk mengolah data pada Online Analytical Processing (OLAP)

Untuk mengolah data terkait aplikasi dan website modern yang semakin kompleks

Bahasa query

Structured query language (SQL)

Tidak membutuhkan bahasa query yang terlalu kompleks

Struktur database

Berbentuk tabel

Bisa berbentuk key-value, column, dokumen, dan graph

Schema

Perlu ditentukan dahulu

Skema dinamis untuk data tak terstruktur

Jenis skalabilitas

Skala vertikal atau scale up dengan membeli hardware baru.

Skala horizontal atau scale out dengan menambah server.

Contoh database

MySQL, Postgres, MS-SQL

Redis, Neo4j, MongoDB

 Contoh database yang populer di NoSQL, diantaranya:

MongoDB

CouchDB

Cassandra

Redis

Riak

Neo4j

OrientDB

Salah satunya akan dibahas dipenjelasan video berikut :


Sumber:

https://www.niagahoster.co.id/blog/nosql-adalah/

https://glints.com/id/lowongan/nosql-adalah/#.YNXRT-j7TIU

https://www.youtube.com/watch?v=O-IfMPAVjXM

Komentar

Postingan Populer