Meskipun tidak semua perangkat lunak menggunakan database atau basis data, namun basis data sendiri sering dikaitkan dengan perangkat lunak. Kali ini kita akan membahas apa itu database beserta hubungannya dengan perangkat lunak.
Pengertian Database
Database atau basis data merupakan suatu penyimpanan data secara sistematis yang disimpan didalam komputer sehingga data dapat terukur, dimanipulasi, pembatasan (constraint) dan dapat digunakan dengan berbagai kebutuhan perangkat lunak. Tugas utama dari basis data yaitu adalah menyimpan data. Sehingga ketika perangkat lunak digunakan kembali, data yang telah dimasukan sebelumnya bisa ditampilkan kembali. Selain itu kegunaan basis data yang lainya adalah merubah atau menghapus data yang telah tersimpan sebelumnya.
Struktur Database
Seperti dalam pengertiannya, database memiliki struktur yang berbeda-beda tergantung model databasenya. Namun pada dasarnya, database dibagikan kedalam 3 bagian penting yaitu database, tabel, dan data. Database merupakan tempat penyimpanan utama yang didalamnya terdiri atas banyak tabel. Dari tabel terdiri atas struktur data (tipe data) beserta datanya itu sendiri. Adapun kegunaan dari tabel ini ialah untuk memisahkan data supaya memiliki ruangan khusus sehingga mudah dikenali oleh pembuat perangkat lunak.
Kolom, tipe data dan Constraint (batasan)
Setiap kolom dari tabel akan memiliki nama, dan juga batasan seperti tipe data dari kolom tersebut serta relasi (constraint) antar tabel atau kolom tergantung dari jenis databasenya. Contoh, jika tabel A memiliki 1 kolom dengan tipe data integer (bilangan bulat), maka jika kita memasukan data terhadap table A kolom pertama hanya akan menerima bilangan bulat. Jika diisi dengan selain bilangan bulat, maka data akan dipaksa menjadi 0 atau berubah menjadi bilangan bulat jika bilangan pecahan.
Baca Juga: Mengenal Tipe Data dalam pemrograman dan database
Notasi Database
Database memiliki beberapa notasi sebagai gambaran awal dari pembangunan penyimpanan data. Secara umum database digambarkan sebagai tabung. Sementara tabel digambarkan sebagai kotak dengan 2 baris yang berbeda. Baris pertama merupakan nama tabel, baris kedua merupakan kolom dari masing-masing tabel.
Jenis Database
Database akan dibagikan berdasarkan jenisnya yaitu database Flat File (database file biasa), DataBase Relasional, Dan Database NoSQL. Dari masing-masing database ini memiliki kelemahan dan kekuatan tersendiri.
Database FlatFile
Database dengan flat file atau file biasa, digunakan untuk menyimpan data yang sederhana dan hampir tidak mememrlukan proses yang rumit. Data base ini dimanfaatkan sebagai cache untuk berbagai kegunaan tertentu. Database ini memiliki keunggulan penulisan dan pembacaan data yang sangat cepat, namun tidak dapat mengelola proses yang rumit dan tidak dapat direlasikan dengan kondisi transaksi tertentu.
Database Relasional
Database Relasional digunakan untuk penggunaan perangkat lunak dengan skala kecil sampai besar. Dalam database relasional, setiap data yang ditampung akan memiliki ruangan khusus yang biasa dinamakan dengan tabel. Dari setiap tabel ini akan menyimpan data beserta dengan batasanya. Dalam database relasional juga dikenal dengan proses transaksi (transaction process) yang mampu mengecek kesesuaian data (data integrity check). Transaksi disini bukan berarti proses transaki jual beli, melainkan proses penulisan dan pembacaan data yang lebih akurat, sitematis dan terstruktur. Contoh penggunaan dari transaksi ini adalah ketika akan menambahkan banyak data terhadap beberapa tabel yang berbeda, namun sebelum selesai semua data ditambahkan koneksi terputus. Maka proses transaksi akan memeriksa sejauh mana data yang tersimpan dan akan melakukan proses pembatalan (rollback) jika datanya tidak sesuai.
Database NoSQL
Database NoSQL merupakan database yang memberikan kecepatan tulis dan baca data dengan sangat cepat, namun tidak dapat memiliki sifat dari transaksi. Sehingga jika ingin melakukan proses pemeriksaan kesesuaian data, maka harus dilakukan secara manual atau dibuatkan logika didalam perangkat lunak yang akan dibuat.
Komunikasi antara Database dan Perangkat lunak
Database tidak dapat berhubungan langsung dengan perangkat lunak tanpa adanya driver. Driver disini bukan berarti supir, melainkan sebuah aplikasi yang digunakan untuk menjebatani antara perangkat lunak yang kita buat dengan database. Proses komunikasi data pada database relasional akan dilakukan dengan bahasa pemgrograman SQL (dibaca Sequel). Dengan SQL ini kita bisa membuat database, membuat tabel, menambahkan data, merubah data, menghapus data, dan juga melakukan proses transaksi data beserta fungsi lainnya. Sementara untuk database noSQL akan dilakukan langsung dengan pemanggilan kode tertentu.
Demikian. Semoga membantu.