Basis data relasional adalah jenis basis data yang mengatur data ke dalam baris dan kolom, yang secara kolektif membentuk tabel di mana titik-titik data terkait satu sama lain.
Data biasanya terstruktur di beberapa tabel, yang dapat digabungkan bersama melalui kunci utama atau kunci asing. Pengidentifikasi unik ini menunjukkan hubungan yang berbeda yang ada antara tabel, dan hubungan ini biasanya diilustrasikan melalui berbagai jenis model data. Analis menggunakan kueri SQL untuk menggabungkan berbagai titik data dan meringkas kinerja bisnis, sehingga memungkinkan organisasi untuk mendapatkan wawasan, mengoptimalkan alur kerja, dan mengidentifikasi peluang baru.
Sebagai contoh, bayangkan perusahaan Anda mengelola tabel database dengan informasi pelanggan, yang berisi data perusahaan di tingkat akun. Mungkin juga ada tabel yang berbeda, yang menjelaskan semua transaksi individu yang selaras dengan akun itu. Bersama-sama, tabel-tabel ini dapat memberikan informasi tentang berbagai industri yang membeli produk perangkat lunak tertentu.
Kolom (atau field) untuk tabel pelanggan dapat berupa ID Pelanggan, Nama Perusahaan, Alamat Perusahaan, Industri, dll.; kolom untuk tabel transaksi dapat berupa Tanggal Transaksi, ID Pelanggan, Jumlah Transaksi, Metode Pembayaran, dll. Tabel-tabel tersebut dapat digabungkan bersama dengan field ID Pelanggan yang sama. Oleh karena itu, Anda dapat melakukan kueri pada tabel untuk menghasilkan laporan yang berharga, seperti laporan penjualan berdasarkan industri atau perusahaan, yang dapat menginformasikan pesan kepada calon klien.
Basis data relasional juga biasanya diasosiasikan dengan basis data transaksional, yang menjalankan perintah, atau transaksi, secara kolektif. Contoh populer yang digunakan untuk menggambarkan ini adalah transfer bank. Jumlah yang ditentukan ditarik dari satu akun, dan kemudian disimpan di akun lain. Jumlah total uang ditarik dan disetorkan, dan transaksi ini tidak dapat terjadi dalam arti parSIAL apa pun. Transaksi memiliki properti tertentu. Diwakili oleh akronim, ACID, sifat ACID didefinisikan sebagai:
Properti ini memungkinkan pemrosesan transaksi yang andal.
Sementara database relasional mengatur data berdasarkan model data relasional, sistem manajemen database relasional (RDBMS) adalah referensi yang lebih spesifik untuk perangkat lunak database yang mendasarinya yang memungkinkan pengguna untuk memeliharanya. Program-program ini memungkinkan pengguna untuk membuat, memperbarui, menyisipkan, atau menghapus data dalam sistem, dan mereka menyediakan:
Contoh sistem RDBMS populer termasuk MySQL, PostgreSQL, dan IBM DB2. Selain itu, sistem basis data relasional berbeda dari sistem manajemen basis data dasar (DBMS) karena sistem ini menyimpan data dalam tabel sementara DBMS menyimpan informasi sebagai file.
Pelajari manfaat utama AI generatif dan bagaimana organisasi dapat menggabungkan AI generatif dan pembelajaran mesin ke dalam bisnis mereka.
Baca panduan untuk pemimpin data
Diciptakan oleh Don Chamberlin dan Ray Boyce di IBM, Structured Query Language (SQL) adalah bahasa pemrograman standar untuk berinteraksi dengan sistem manajemen basis data relasional, yang memungkinkan administrator basis data untuk menambah, memperbarui, atau menghapus baris data dengan mudah. Awalnya dikenal sebagai SEQUEL, itu disederhanakan menjadi SQL karena masalah merek dagang. SQL query juga memungkinkan pengguna untuk mengambil data dari database hanya menggunakan beberapa baris kode. Mengingat hubungan ini, mudah untuk melihat mengapa database relasional juga disebut sebagai “database SQL” pada waktu-waktu tertentu.
Dengan menggunakan contoh di atas, Anda dapat membuat kueri untuk menemukan 10 transaksi teratas berdasarkan perusahaan untuk tahun tertentu dengan kode berikut:
PILIH COMPANY_NAME, JUMLAH(TRANSACTION_AMOUNT)
DARI TRANSACTION_TABLE A
KIRI GABUNG CUSTOMER_TABLE B
ON A.CUSTOMER_ID = B.CUSTOMER_ID
DI MANA TAHUN (TANGGAL) = 2022
KELOMPOK MENURUT 1
PESAN DENGAN 2 DESC
BATAS 10
Kemampuan untuk menggabungkan data dengan cara ini membantu kami mengurangi redundansi dalam sistem data kami, sehingga tim data dapat mempertahankan satu tabel master untuk pelanggan daripada menduplikasi informasi ini jika ada transaksi lain di masa mendatang. Untuk mempelajari lebih lanjut, Don merinci lebih banyak sejarah SQL dalam makalahnya di sini (tautan berada di luar IBM).
Sebelum database relasional, perusahaan menggunakan sistem database hirarkis dengan struktur seperti pohon untuk tabel data. Sistem manajemen basis data awal (DBMS) ini memungkinkan pengguna untuk mengatur data dalam jumlah besar. Namun, mereka rumit, sering kali merupakan hak milik untuk aplikasi tertentu, dan terbatas dalam hal yang dapat mereka temukan di dalam data. Keterbatasan ini akhirnya membuat peneliti IBM, Edgar F. Codd, menerbitkan sebuah mak alah (tautan berada di luar IBM) (PDF, 1,5 MB) pada tahun 1970, berjudul " A Relational Model of Data for Large Shared Data Banks,” yang berteori model database relasional. Dalam model yang diusulkan ini, informasi dapat diambil tanpa pengetahuan komputer khusus. Dia mengusulkan pengaturan data berdasarkan hubungan yang bermakna sebagai tupel, atau pasangan atribut-nilai. Kumpulan tupel disebut sebagai relasi, yang pada akhirnya memungkinkan penggabungan data di seluruh tabel.
Pada tahun 1973, San Jose Research Laboratory — sekarang dikenal sebagai Almaden Research Center — memulai sebuah program yang disebut Sistem R (R untuk relasional) untuk membuktikan teori relasional ini dengan apa yang disebutnya "implementasi kekuatan industri." Ini akhirnya menjadi tempat pengujian untuk SQL juga, memungkinkannya untuk menjadi lebih banyak diadopsi dalam waktu singkat. Namun, adopsi Oracle terhadap SQL juga tidak merusak popularitasnya dengan administrator basis data.
Pada tahun 1983, IBM memperkenalkan keluarga database relasional DB2, dinamakan demikian karena ini adalah keluarga kedua perangkat lunak manajemen database IBM. Saat ini, ini adalah salah satu produk IBM yang paling sukses, yang terus menangani miliaran transaksi setiap hari di infrastruktur cloud dan menetapkan lapisan dasar untuk aplikasi pembelajaran mesin.
Sementara database relasional menyusun data ke dalam format tabel, database non-relasional tidak memiliki skema database yang kaku. Faktanya, database non-relasional mengatur data secara berbeda berdasarkan jenis database. Terlepas dari jenis database non-relasional, semuanya bertujuan untuk menyelesaikan masalah fleksibilitas dan skalabilitas yang melekat pada model relasional yang tidak ideal untuk format data yang tidak terstruktur, seperti teks, video, dan gambar. Jenis-jenis database ini meliputi:
Basis data NoSQL juga memprioritaskan ketersediaan daripada konsistensi.
Ketika komputer berjalan melalui jaringan, mereka selalu perlu memutuskan untuk memprioritaskan hasil yang konsisten (di mana setiap jawaban selalu sama) atau waktu aktif yang tinggi, yang disebut "ketersediaan". Ini disebut “Teori CAP”, yang merupakan singkatan dari Konsistensi, Ketersediaan, atau Toleransi Partisi. Basis data relasional memastikan informasi selalu sinkron dan konsisten. Beberapa database NoSQL, seperti Redis, lebih memilih untuk selalu memberikan respons. Artinya, informasi yang Anda terima dari kueri mungkin salah dalam beberapa detik—mungkin hingga setengah menit. Di situs media sosial, ini berarti melihat gambar profil lama padahal yang terbaru hanya berumur beberapa saat. Alternatifnya bisa berupa batas waktu atau kesalahan. Di sisi lain, dalam transaksi perbankan dan keuangan, kesalahan dan pengiriman ulang mungkin lebih baik daripada informasi lama yang salah.
Untuk ikhtisar lengkap perbedaan antara SQL dan NoSQL, lihat " SQL vs NoSQL Database: ApaPerbedaannya? "
Manfaat utama dari pendekatan basis data relasional adalah kemampuan untuk menciptakan informasi yang berarti dengan menggabungkan tabel-tabel. Menggabungkan tabel memungkinkan Anda untuk memahami hubungan antara data, atau bagaimana tabel terhubung. SQL mencakup kemampuan untuk menghitung, menambah, mengelompokkan, dan juga menggabungkan kueri. SQL dapat melakukan matematika dasar dan fungsi subtotal dan transformasi logis. Analis dapat mengurutkan hasil berdasarkan tanggal, nama, atau kolom apa pun. Fitur-fitur ini menjadikan pendekatan relasional satu-satunya alat kueri paling populer dalam bisnis saat ini.
Database relasional memiliki beberapa keunggulan dibandingkan dengan format database lainnya:
Berdasarkan umur produknya, terdapat lebih banyak komunitas di sekitar database relasional, yang sebagian melanggengkan penggunaannya. SQL juga memudahkan pengambilan kumpulan data dari beberapa tabel dan melakukan transformasi sederhana seperti pemfilteran dan agregasi. Penggunaan indeks dalam database relasional juga memungkinkan mereka menemukan informasi ini dengan cepat tanpa mencari setiap baris dalam tabel yang dipilih.
Meskipun database relasional secara historis dipandang sebagai opsi penyimpanan data yang lebih kaku dan tidak fleksibel, kemajuan teknologi dan opsi DBaaS mengubah persepsi tersebut. Meskipun masih ada lebih banyak biaya tambahan untuk mengembangkan skema dibandingkan dengan penawaran database NoSQL, database relasional menjadi lebih fleksibel saat bermigrasi ke lingkungan cloud.
Database relasional dapat menghilangkan redundansi dengan dua cara. Model relasional itu sendiri mengurangi redundansi data melalui proses yang dikenal sebagai normalisasi. Seperti yang telah disebutkan sebelumnya, tabel pelanggan seharusnya hanya mencatat catatan unik dari informasi pelanggan dibandingkan dengan menduplikasi informasi ini untuk beberapa transaksi.
Prosedur yang disimpan juga membantu mengurangi pekerjaan berulang. Sebagai contoh, jika akses database dibatasi pada peran, fungsi atau tim tertentu, prosedur tersimpan dapat membantu mengelola kontrol akses. Fungsi yang dapat digunakan kembali ini membebaskan waktu pengembang aplikasi yang didambakan untuk menangani pekerjaan berdampak tinggi.
Database relasional bersifat transaksional—mereka menjamin keadaan seluruh sistem konsisten setiap saat. Sebagian besar database relasional menawarkan opsi ekspor dan impor yang mudah, membuat cadangan dan pemulihan menjadi sepele. Ekspor ini dapat terjadi bahkan saat database sedang berjalan, membuat pemulihan pada kegagalan menjadi mudah. Database relasional modern berbasis cloud dapat melakukan pencerminan terus menerus, sehingga kehilangan data saat pemulihan dapat diukur dalam hitungan detik atau kurang. Sebagian besar layanan yang dikelola cloud memungkinkan Anda membuat Read Replica, seperti di IBM Cloud® Databases for PostgreSQL. Read Replica ini memungkinkan Anda menyimpan salinan read-only data Anda di pusat data cloud. Replika dapat dipromosikan ke instans Baca/Tulis untuk pemulihan bencana juga.
Pelajari tentang IBM Db2, basis data cloud-native yang dibangun untuk mendukung transaksi dengan latensi rendah dan analitik real-time dalam skala besar.
Temukan PostgreSQL sebagai layanan, dibangun untuk perusahaan dengan integrasi asli ke IBM Cloud.
Hyper Protect Virtual Server untuk Virtual Private Cloud (VPC) adalah runtime kontainer komputasi rahasia yang dikelola sepenuhnya yang memungkinkan penyebaran beban kerja dalam kontainer yang sensitif dalam lingkungan yang sangat terisolasi dengan jaminan teknis.
Kembangkan dan jalankan aplikasi pada database kelas enterprise yang kaya akan keamanan dan berbasis open source PostgreSQL.