1. 1.Apa yang anda ketahui menganai database?jelaskan!
Data Base (basis data) merupakan kumpulan data yang saling berhubungan. Hubungan antar data dapat
ditunjukan dengan adanya field/kolom kunci dari tiap file/tabel yang ada. Dalam satu file atau table terdapat
record-record yang sejenis, sama besar, sama bentuk, yang merupakan satu kumpulan entitas yang
seragam. Satu record (umumnya digambarkan sebagai baris data) terdiri dari field yang saling berhubungan
menunjukan bahwa field tersebut dalam satu pengertian yang lengkap dan disimpan dalam satu record.
2.Apakah perbedaan Relational database dengan Unrelational database(NoSql)?Jelaskan dan berikan
contohnya?
•Database relasional adalah koleksi data terstruktur yang disajikan lewat tabel², dimana tabel² tersebut dapat
saling berhubungan (relasi). Tipe ini adalah bentuk basis data yang konvensional. Saat seseorang menyebut
kata database, kemungkinan besar orang umum akan membayangkan database relasional (sekumpulan
tabel²).contohnya MySQL, PostGreSQL, SqlLite, Microsoft Sql Server, dll.
RDBMS (Relasional Database Management System) fokus pada konsep ACID:
1. Atomicity: Suatu proses selesai secara menyeluruh/tidak.
2. Consistency: Semua proses (transaction) yang terjadi di database harus memiliki state yang jelas. Setiap
data yang disimpan harus memenuhi semua constraint,Cascades, dan triggers.
3. Isolation: Sebuah proses tidak boleh mempengaruhi proses lain.
4. Durability: Proses yang telah selesai harus bersifat permanen, walau aplikasinya di restart.
2. •Sedangkan NoSQL adalah tipe penyimpanan data selain yang berwujud tabular(tabel²), NoSQL tidak mengikuti
prinsip (ACID) RDBMS sepenuhnya. Lalu kalau bukan ACID, apakah prinsip utama NoSQL ?
NoSQL, menurut Eric Brewer menganut prinsip BASE:
1. Basic Availability: Setiap request sekedar mendapat garansi “response”: Sukses/Gagal.
2. Soft State: State NoSQL bisa berubah secara dinamis tanpa input manual untuk meyakinkan eventual
consistency.
3. Eventual Consistency: Untuk “sementara” waktu NoSQL mungkin tidak konsisten (Akan diabahas kemudian
maksud & contohnya).
NoSQL bukan berarti “No SQL” atau “bukan SQL”/tidak mendukung bahasa Query, tapi “Not-Only SQL”.
Masudnya database NoSQL tetap memiliki (support) ‘semacam’ bahasa Query, namun dalam bentuk (terminology
yang berbeda). Beberapa literature bahkan tidak menggolongkan NoSQL sebagai suatu bentuk database. NoSQL
bisa berupa Document (e.g. MongoDB), Key-Value (e.g. CouchDB), Graph (e.g. Neo4J), dsb.
3. 3.Jelaskan konsep ORM(Object Relational Model) pada database!
ORM (Object Relational Mapping) [Wiki] adalah suatu metode/teknik pemrograman yang digunakan untuk
mengkonversi data dari lingkungan bahasa pemrograman berorientasi objek (OOP) dengan lingkungan
database relasional. Seperti kita ketahui, dalam aplikasi enterprise kedua lingkungan tersebut berada pada
sistem yang berbeda, yaitu OOP berada pada sisi pemrograman aplikasi, sedangkan database relasional
berada pada sisi sistem database. Misi utama dari ORM ini adalah menjembatani kedua sistem yang berbeda
tersebut.
ORM memiliki kemampuan untuk menciptakan objek database virtual, yaitu suatu model database yang di
representasikan kedalam sebuah objek pada bahasa pemrograman OOP.
4. 4.Apakan laravel mendukung ORM?jika iya berikan contohnya !
Konsep Eloquent ORM pada Laravel laravel pada dasarnya mendukung konsep OOP, maka bukan hal yang
mustahil bila kita juga memanfaatkan konsep ORM ini pada framework Laravel. Di laravel kita akan mengenal
yang namanya Eloquent. Eloquent merupakan sebuah ORM yang dapat dikatakan sangat membantu sekali
bagi web developer pengguna laravel. Pada laravel, setiap model hasil turunan dari Eloquent akan mewakili
sebuah table pada database. Tapi anda perlu memperhatikan 1 hal yakni, meskipun sebuah model mewakili
sebuah tabal, namun dalam pratiknya terkadang kita seringkali menggunakan beberapa model untuk
mengambil data dari database. Kita bisa memanfaatkan relationship pada database untuk mengambil data dari
banyak tabel sekaligus. Jadi kesimpulannya adalah kita dapat memanfaatkan fitur-fitur yang sudah
disediakan oleh laravel untuk melakukan query ke database dengan memanfaatkan konsep ORM itu tadi,
sehingga akan terasa lebih fleksibel. Selain itu kita juga lebih gampang dalam memahaminya dan kode
programpun akan tampak lebih terorganisir