MAKALAH
DATABASE NO SQL
Disusun untuk memenuhi tugas
Mata Kuliah : Pengantar Komputasi Modern
Dosen : Ertie Nur Hartiwati, S.Kom.,MMSI
Penyusun:
Mohamad Noor Fauzi (53417663)
KELAS 4IA22
UNIVERSITAS GUNADARMA
FAKULTAS TEKNOLOGI INDUSTRI JURUSAN TEKNIK INFORMATIKA
2021
DAFTAR ISI
JUDUL .................................................................................................... i
DAFTAR ISI ........................................................................................... ii
BAB I PENDAHULUAN
........................................................... 1
1.1. Latar Belakang
Masalah ............................................ 1
1.2. Batasan Masalah
........................................................ 1
1.3. Tujuan Pembahasan
.................................................... 1
BAB II PEMBAHASAN
.............................................................. 2
2.1. Pengertian SQL ......................................................... 2
2.2. Pengertian NoSQL
..................................................... 2
2.3. Struktur NoSQL ......................................................... 3
2.4. Perbedaan SQL dan
NoSQL ...................................... 4
2.5. Kelebihan NoSQL
daripada SQL .............................. 5
2.6. Kekurangan NoSQL
daripada SQL ........................... 6
2.7. MongoDB
.................................................................. 7
2.8. MySQL
...................................................................... 8
BAB III PENUTUP
....................................................................... 10
3.1. Kesimpulan ................................................................ 10
DAFTAR PUSTAKA
............................................................................. 11
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Perkembangan
internet dan cloud computing telah mendorong ketersediaan
database untuk dapat menyimpan dan memproses data besar secara efektif serta
menuntut kinerja tinggi saat membaca dan menulis. NoSQL Database merupakan
salah satu solusi yang dapat digunakan untuk menangani masalah tersebut. NoSQL
Database berbasis document stored merupakan
salah satu jenis database NoSQL yang terdapat pada saat ini. NoSQL database
dapat bekerja lebih cepat dibandingkan basis data relasional.
1.2.
Batasan Masalah
Agar penekanan
tujuan dalam makalah ini tepat mencapai sasaran, maka batasan masalah sebagai
berikut :
1.
Hanya terdapat penjelasan database NoSQL dan SQL
2.
Hanya terdapat 1 contoh kasus yaitu MongoDB dan MySQL
1.3. Tujuan Pembahasan
Tujuan yang akan
dicapai dalam makalah ini adalah penjelasan tentang database NoSQL
(Nonrelasinal) database.
BAB II
PEMBAHASAN
2.2. Pengertian SQL
SQL adalah akronim
dari Structured Query Language, yaitu sebuah konsep basis data yang tersusun
dari skema, tabel, kolom, dan baris. Query atau sintaks pemanggilan data pada
database SQL memanfaatkan media relasi tabel. Beberapa kelompok data dari
tabel-tabel yang berbeda dapat dipanggil bersamaan secara serentak.
2.2. Pengertian NoSQL
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.
Istilah NoSQL
pertama kali dipublikasikan oleh Carlo Strozzi pada 1998 untuk menamakan basis
data yang sedang ia kembangkan saat itu, ‘Strozzi NoSQL open-source relational
database’. Strozzi mengutarakan bahwa cara kerja NoSQL saat itu ‘sangat
berbeda’ dengan relational-database secara keseluruhan, itulah alasan kenapa ia
menyebutnya ‘NoREL’ yang merujuk pada istilah ‘No Relational’.
Pada akhir tahun
2000, pengembangan NoSQL mulai dilanjutkan lagi, dengan tujuan untuk mengatasi
keterbatasan SQL khususnya pada aspek skalabilitas dan potensi pendataan
multi-struktur-nya.
Pada awal tahun
2009, Johan Oskarsson, salah seorang developer dari Last.fm memperkenalkan
kembali istilah NoSQL ketika ia mengorganisasikan sebuah even untuk
mendiskusikan “open source distributed, non relational databases”
(terdistribusi sebagai sumber terbuka, basis data non relational).
Database NoSQL
dikembangkan sebagai harapan untuk menyelesaikan masalah-masalah klasik pada
database SQL. Database NoSQL berbeda dengan database SQL yang metode
penyimpanan datanya hanya satu tipe saja.
2.3. Struktur NoSQL
Struktur database
NoSQL lebih dinamis dan fleksibel dengan empat (4) jenis model penyimpanan data
yaitu sebagai berikut beserta contoh dan definisi singkatnya.
1. Key-value (KV) store: ArangoDB, Apache Ignite,
Oracle NoSQL Database, Couchbase, Dynamo, Redis, Riak. Penyimpanan KV
menggunakan assosiative array, juga dikenal sebagai map atau dictionary sebagai
dasar data modelnya. Pada model ini, data disajikan sebagai sebuah koleksi KV
yang berpasangan.
2. Document-based: Apache CouchDB, ArangoDB,
BaseX, Clusterpoint, Couchbase, Cosmos DB, IBM Domino, MarkLogic, MongoDB,
OrientDB, Qizx, RethinkDB. Konsep penyimpanan data document-based adalah sebuah
gagasan dari konsep sebuah ‘dokumen’. Dimana setiap implementasi basis data
dari document-based umumnya diasumsikan bahwa dokumen-dokumen tersebut
di-enkapsulasi (encapsulate) dan di-encode ke dalam suatu format standar
encoding.
3. Column-based: Accumulo, Cassandra, Scylla, HBase. Bisa disebut
juga model wide-column, memungkinkan akses data yang sangat cepat dengan
memanfaatkan row key, column name, dan cell timestamp. Fleksibilitas dari skema
dari jenis database ini memungkinkan record pada kolom-kolomnya (column) tidak
harus konsisten. User dapat menambahkan kolom pada satu row yang spesifik tanpa
harus menambahkannya di setiap record.
4. Graph-based: AllegroGraph, ArangoDB, InfiniteGraph, Apache
Giraph, MarkLogic, Neo4J, OrientDB, Virtuoso. Dalam teorinya, struktur
graph-based tediri dari vertices dan edges (data dan connnections) yang bisa
disebut sebagai data relationship. Graphs berperilaku serupa sebagaimana
manusia berpikir, data tersusun dalam relasi yang spesifik di antara unit-unit
data yang memiliki ciri-cirinya tersendiri. Database jenis ini berguna untuk
memvisualisasikan, menganalisa, serta membantu Anda untuk menemukan
keterhubungan di antara data-data yang berbeda-beda.
Gambar 2.1. Model
Penyimpanan Data
2.4. Perbedaan SQL dan NoSQL
Fungsi database
NoSQL sama dengan fungsi database SQL klasik, namun dengan sisi kelebihan dan
kekurangannya sendiri. Seperti RDBMS SQL pada umumnya, NoSQL berguna untuk
mengolah data-data dan menyimpannya untuk dimanfaatkan kembali atau diakses
baik oleh Server maupun Client. Data-data tersebut tersimpan secara konsisten
sehingga baik dari Server maupun Client melihat data yang sama.
NoSQL menganut
kaidah BASE, yaitu Basically Available, Soft state, dan Eventual consistency.
Data di dalamnya dapat berubah meski tidak ada input, ia seperti RDBMS dengan
Trigger yang terpasang secara otomatis. Karena itu NoSQL lebih cocok dan sesuai
digunakan untuk aplikasi yang memerlukan perubahan yang rapidly (cepat) karena
sifatnya yang lebih dinamis dan fleksibel.
Gambar 2.2.
Perbedaan SQL dan NoSQL
2.5. Kelebihan NoSQL daripada SQL
Pada beberapa
kasus NoSQL dinilai dapat bekerja lebih baik daripada SQL yang berbasis
relasional, diantaranya sebagai berikut.
1. Perlu menyimpan
data dalam jumlah yang besar dengan skema yang tidak konsisten.
Skema data pada NoSQL tidak fixed seperti halnya pada
SQL, perubahan struktur dan skema yang sewaktu-waktu bisa berubah bisa
ditangani dengan mudah tanpa harus merubah konsistensi data di database itu
sendiri.
2. Memerlukan
komputasi dan penyimpanan data secara cloud-based. Sebagian besar database
NoSQL dibuat dan dirancang agar bisa bekerja di data-center yang berbeda dan
dijalankan sebagai sistem terdistribusi. Dalam kasus ini Anda sebagai pegguna
NoSQL akan diuntungkan, karena Anda dapat memanfaatkan akses ke berbagai
infrastruktur komputasi berbasis cloud.
3. Tidak perlu
mempersiapkan data sebagaimana apabila Anda menggunakan RDBMS (SQL), Anda
bahkan dapat memigrasikan data yang sudah terstruktur dari satu versi aplikasi
ke versi update setelahnya, kapan saja desain aplikasinya di-update. Sifat
dinamis NoSQL dapat ikut berkembang bersama dengan perubahan aplikasinya.
2.6. Kekurangan NoSQL daripada SQL
Dalam konsep
database RDBMS, terdapat kaidah ACID, yaitu empat (4) kaidah transaksi data.
ACID merupakan akronim dari Atomic, Concistent, Isolated, dan Durable.
1. Atomic artinya setiap record atau row adalah data yang unik,
tidak bisa digantikan data yang lain.
2. Consistent, setiap baris data adalah data yang konsisten,
maksudnya data akan tetap konsisten setelah dieksekusi dengan suatu operasi
tertentu. Server maupun client akan melihat data yang sama.
3. Isolated artinya setiap perubahan satu record adalah satu
transaksi yang independen, tidak ada hubungannya dengan transaksi record
lainnya.
4. Durable, artinya setelah transaksi selesai, efek dari
perubahan record tersebut tersimpan secara solid dan permanen.
2.7. MongoDB
MongoDB merupakan salah satu
basis data NoSQL. Metode yang digunakan oleh MongoDB adalah
document-store/document-oriented dimana penyimpanan data dimasukkan kedalam
dokumen seperti Javascript Object Notation (JSON). Dalam konsep MongoDB tidak
ada yang namanya table, kolom ataupun baris yang ada hanyalah collection
(ibaratkan tabel), document (Ibaratkan record). Data modelnya sendiri disebut
BSON dengan struktur mirip dengan JSON.
2.7. MySQL
MySQL ( MY
Structure Query Language ) Adalah salah satu Basis Data Management System (
DBMS ) dari sekian banyak DBMS seperti Oracle, MS SQL, Postagre SQL, dan
lainnya. MySQL berfungsi untuk mengolah Basis Datamenggunakan bahasa SQL. MySQL
bersifat open source sehingga kita bisa menggunakannya secara gratis.
Pemprograman PHP juga sangat mendukung atau mensupport dengan Basis Data MySQL.
Sedangkan MySQL
merupakan Basis Data yang paling digemari dikalangan programmer web, dengan
alasan bahwa program ini merupakan Basis Data yang sangat kuat dan cukup stabil
untuk digunakan sebagai media penyimpanan data. Sebagai sebuah Basis Data
server yang mampu untuk memenajemen Basis Data dengan baik, mysql terhitung
merupakan Basis Data yang paling digemari dan paling banyak digunakan dibanding
Basis Data lainnya. Selain mysql masih terdapat beberapa jenis Basis Data
server yang juga memiliki kemampuan yang juga tidak bisa dianggap enteng, Basis
Data itu adalah Oracle dan PostgreSQL.
BAB III
PENUTUP
3.1. Kesimpulan
Secara keseluruhan
hasil yang diperoleh dari pembahasan diatas ialah database NoSQL khususnya
MongoDB dan SQL khususnya MySQL. Pada intinya MongoDB tidak memerlukan
relational yang sangat kompleks seperti MySQL, tetapi NoSQL pun mempunyai
performa yang baik daripada MySQL. Penggunaan service database tergantung
kebutuhan dari suatu client.
DAFTAR PUSTAKA
[1] Gunawan Rohmat.
“Pengukuran Query Respon Time Pada NoSQL Database Berbasis Document Stored”, Jurnal Siliwangi, vol. 4, no. 2, 2018.
[2] S.D. Akhmad Aan &
Yustanti Wiyli. “Perbandingan Penggunaan NoSQL MongoDB dan MySQL Pada Basis
Data Forum Komunikasi”, Jurnal Manajemen
Informatika, vol.6, no.1, 2016.
[3] Saputro Nur, 2020. “Apa
itu NoSQL?”, https://www.nesabamedia.com/pengertian-nosql/ (diakses tanggal
7 Maret 2020)
0 Komentar:
Post a Comment