1. Dokumen tersebut membahas pengertian dan struktur database serta perbedaan antara database relasional dan non-relasional (NoSQL).
2. Database adalah kumpulan data yang terorganisasi yang memungkinkan pengambilan informasi secara cepat, sementara ORM digunakan untuk menghubungkan database dengan bahasa pemrograman berorientasi objek.
3. Laravel mendukung penggunaan ORM untuk mengakses database secara lebih fleksibel melalui model.
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
Tugas 4 – 0317 (individu)
1. TUGAS 4 – 0317 (INDIVIDU)
NAMA : LINDA LESTARI
NIM : 1411511668
KELOMPOK : KA, TB
MATA KULIAH: REKAYASA WEB
2. PENGERTIAN DATABASE
• Kumpulan file-file yang saling berelasi, relasi tersebut ditunjukkan dengan kunci
dari tiap file yang ada untuk digunakan dalam satu lingkup perusahaan, instansi
(Kristanto, 1994).
• Kumpulan file data yang terorganisasi, terintegrasi, dan bisa dipakai bersama (C.J
Date, 1981).
• Kumpulan rekaman data berbagai tipe yang memiliki relasi satu sama lain
(Martin, 1977).
• Sekumpulan data organisasi untuk melayani banyak aplikasi secara efisien dengan
memusatkan data dan mengendalikan redundansi data. (Kenneth C. Laudon. Jane
P. Louden, 2010).
• Kumpulan dari data yang saling terintegrasi satu dengan yang lainnya tersimpan
dalam perangkat keras komputer dan menggunakan perangkat lunak untuk
bantuan dalam mengoperasikannya ( ICT Database/Data Resources Management,
Dr. Syopiansyah Jaya Putra, M.Sis, 2010)
3. Database / Basisdata adalah sekumpulan informasi yang diatur dalam cara tertentu
hingga sebuah program komputer dapat dengan cepat memilih data yang diinginkan. Basisdata
dapat diibaratkan sebagai sistem pengarsipan elektronis. Basisdata tradisional terdiri dari field,
record, dan file. Field adalah item tertentu dari informasi; record adalah sekumpulan field; dan
file adalah kumpulan record. Sebagai contoh, buku telepon dapat dianalogikan sebuah file yang
terdiri dari banyak record dan setiap record terdiri dari tiga field, yaitu nama, alamat, dan
nomor telepon. Konsep alternatif rancangan basisdata disebut hypertext. Dalam basisdata
hypertext, setiap obyek, apakah itu merupakan teks, gambar atau film, dapat dihubungkan
dengan obyek lainnya. Basisdata hypertext sangat berguna untuk mengatur informasi yang
sangat besar tetapi tidak digunakan dalam analisis numerik. Untuk mengakses informasi dari
basisdata, diperlukan data base management system (DBMS). DBMS adalah kumpulan
program yang memungkinkan pengguna memasukan, mengatur, atau memilih data dari
basisdata.
4. SIFAT-SIFAT DATABASE
• Internal
Kesatuan (integritas) dari file-file yang terlibat
• Terbagi/share
Elemen-elemen database dapat dibagikan pada para user
baik secara sendiri-sendiri maupun secara serentak dan pada
waktu yang sama (concurrent sharing).
5. TIPE DATABASE
• Operational database
Database ini menyimpan data rinci yang diperlukan untuk mendukung operasi dari seluruh
organisasi. Mereka juga disebut subject-area databases (SADB), transaksi database, dan produksi database.
Contoh: database pelanggan, database pribadi, database inventaris, akuntansi database.
• Analytical database
Database ini menyimpan data dan informasi yang diambil dari operasional yang dipilih dan
eksternal database. Mereka terdiri dari data dan informasi yang dirangkum paling dibutuhkan oleh sebuah
organisasi manajemen dan End-user lainnya. Beberapa orang menyebut analitis multidimensi database
sebagai database, manajemen database, atau informasi database.
• Data warehouse
Sebuah data warehouse menyimpan data dari saat ini dan tahun- tahun sebelumnya - data yang
diambil dari berbagai database operasional dari sebuah organisasi.
• Distributed database
Ini adalah database-kelompok kerja lokal dan departemen di kantor regional, kantor cabang,
pabrik-pabrik dan lokasi kerja lainnya. Database ini dapat mencakup kedua segmen yaitu operasional dan
user database, serta data yang dihasilkan dan digunakan hanya pada pengguna situs sendiri.
6. • End-user database
Database ini terdiri dari berbagai file data yang dikembangkan oleh end-user di
workstation mereka. Contoh dari ini adalah koleksi dokumen dalam spreadsheet, word
processing dan bahkan download file.
• External database
Database ini menyediakan akses ke eksternal, data milik pribadi online - tersedia
untuk biaya kepada pengguna akhir dan organisasi dari layanan komersial. Akses ke kekayaan
informasi dari database eksternal yang tersedia untuk biaya dari layanan online komersial dan
dengan atau tanpa biaya dari banyak sumber di Internet.
• Hypermedia databases on the web
Ini adalah kumpulan dari halaman-halaman multimedia yang saling berhubungan di
sebuah situs web. Mereka terdiri dari home page dan halaman hyperlink lain dari multimedia
atau campuran media seperti teks, grafik, gambar foto, klip video, audio dll.
• Navigational database
Dalam navigasi database, queries menemukan benda terutama dengan mengikuti
referensi dari objek lain.
7. • In-memory databases
Database di memori terutama bergantung pada memori utama untuk penyimpanan data komputer.
Ini berbeda dengan sistem manajemen database yang menggunakan disk berbasis mekanisme penyimpanan.
Database memori utama lebih cepat daripada dioptimalkan disk database sejak Optimasi algoritma internal
menjadi lebih sederhana dan lebih sedikit CPU mengeksekusi instruksi.
• Document-oriented databases
Merupakan program komputer yang dirancang untuk aplikasi berorientasi dokumen. Sistem ini
bisa diimplementasikan sebagai lapisan di atas sebuah database relasional atau objek database. Sebagai
lawan dari database relasional, dokumen berbasis database tidak menyimpan data dalam tabel dengan
ukuran seragam kolom untuk setiap record. Sebaliknya, mereka menyimpan setiap catatan sebagai dokumen
yang memiliki karakteristik tertentu. Sejumlah bidang panjang apapun dapat ditambahkan ke dokumen.
Bidang yang dapat juga berisi beberapa bagian data.
• Real-time databases Real-time
Database adalah sistem pengolahan dirancang untuk menangani beban kerja negara yang dapat
berubah terus- menerus. Ini berbeda dari database tradisional yang mengandung data yang terus- menerus,
sebagian besar tidak terpengaruh oleh waktu.
• Relational Database
Database yang paling umum digunakan saat ini. Menggunakan meja untuk informasi struktur
sehingga mudah untuk mencari.
8. STRUKTUR DATABASE
• Data
Sekumpulan fakta mengenai objek tertentu, orang dan lain-lain yang dinyatakan
dengan angka, huruf, gambar, film, suara dan sebagainya yang relevan dan belum mempunyai
arti.
• Informasi
Hasil pengolahan data yang konkrit dan sudah mempunyai arti untuk mencapai suatu
tujuan tertentu.
• Tabel
Merupakan hal yang paling mendasar dalam hal penyimpanan data yang terdiri dari
field dan record.
• Field (kolom)
Merupakan elemen dari tabel yang berisikan informasi tertentu yang spesifik tentang
sub judul tabel pada sebuah item data. Syarat-syarat pembentukan Field Name pada tabel:
· Harus Unik atau Spesifik
· Boleh disingkat
· Pemisah sebagai pengganti spasi dalam pembentuk field adalah tanda lambang "_" Contoh:
Kode Barang menjadi KdBarang, KodeBrg, Kd_Brg, Kd_Barang.
9. TUJUAN DATABASE
• Salah satu komponen penting dalam sistem informasi, karena merupakan
dasar dalammenyediakan informasi
• Menentukan kualitas informasi: akurat, tepat pada waktunya dan relevan.
Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif
dibandingkan dengan biaya mendapatkannya.
• Mengurangi duplikasi data (data redudancy)
• Hubungan data dapat ditingkatkan (data relatability)
• Mengurangi pemborosan tempat simpanan luar1.
10. KEUNGGULAN DATABASE
1. mengurangi kerangkapan data
2. mencapai independensi data
3. mengintegrasi data dari beberapa file
4. mengambil data dan informasi secara cepat
5. meningkatkan keamanan data
11. KELEMAHAN DATABASE
1. perangkat lunak yang mahal
2. konfigurasi perangkat keras yang besar
3. mempertahankan staff Database Administrator
13. RELATIONALDATABASE
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.
14. 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.
15. UNRELATIONALDATABASE (NOSQL)
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).
16. 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.
17. ORM (Object Relational Mapping)
ORM (Object Relational Mapping) 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.
18. ORM memiliki kemampuan untuk menciptakan objek database
virtual, yaitu suatu model database yang di representasikan kedalam sebuah
objek pada bahasa pemrograman OOP. Berikut ini adalah beberapa
kelebihan yang dimiliki ORM, yaitu:
• Mempercepat pengembangan program. Contohnya, mengurangi
perulangan kode query, memudahkan pemakaian karena tabel-tabel ter-
representasikan dalam bentuk objek
• Membuat akses data menjadi lebih abstrak dan portable. Hal ini
dikarenakan ORM menghandle pen-generate-an syntax SQL berdasarkan
vendor database-nya.
• Mensupport pengkapsulan business rule pada lapisan Data Access.
• Mengenerate boilerplate code (unit kode yang reusable) untuk fungsi
dasar CRUD (Create,Read,Update,Delete).
19. LARAVELMENDUKUNG ORM
Perhatikan contoh contoh berikut:
// raw query
$posts = DB::select('select * from post');
// query builder
$posts = DB::table('post')->get();
Kedua query di atas sama-sama menghasilkan array yang elemennya
bertipe stdClass (stdClass adalah kelas bawaan PHP, biasanya
digunakan untuk membuat obyek sederhana yang hanya berisi setter
dan getter).
21. Bagaimana jika kita ingin
mengganti stdClass dengan Kelas buatan sendiri, apakah bisa?
Nah, itulah salah satu peran ORM (Object Relational
Mapper), yaitu memetakan hasil query dari database ke dalam
bentuk obyek yang sudah kita definisikan sebelumnya. Bentuk yang
sudah kita definisikan sebelumnya ini biasa disebut dengan Model
(M dari MVC).
22. Kesimpulan
Sekarang kita sudah bisa melakukan query ke database
memanfaatkan fitur-fitur yang sudah disediakan oleh laravel.
Dari ketiga cara tersebut, menggunakan ORM adalah cara yang
paling direkomendasikan karena lebih fleksibel, kode lebih
terorganisir dan mudah dipahami, dan tentunya lebih OOP.
Tetapi terkadang ada kasus dimana ORM memiliki
kelemahan, terutama dalam segi performansi, yaitu ketika
berhubungan dengan data yang sangat banyak (jutaan row).
Untuk kasus tersebut, Anda selalu memiliki pilihan untuk
menggunakan dua metode lainnya.