Apa itu database?

Orang yang melihat visualisasi data di depan layar besar

Penyusun

Matthew Kosinski

Staff Editor

IBM Think

Apa itu database? 

Database adalah repositori digital untuk menyimpan, mengelola, dan mengamankan koleksi data yang terorganisir. 

Setiap jenis basis data menyimpan data dengan cara yang berbeda. Misalnya, basis data relasional menyimpan data dalam tabel dengan baris dan kolom, sedangkan basis data nonrelasional menggunakan berbagai struktur, seperti pasangan nilai-kunci atau grafik.

Organisasi menggunakan berbagai jenis basis data ini untuk mengelola berbagai jenis data. Basis data relasional unggul dengan data terstruktur seperti catatan keuangan. Basis data nonrelasional adalah yang terbaik untuk tipe data tidak terstruktur seperti file teks, audio dan video. Basis data vektor menyimpan data sebagai penyematan vektor, format yang digunakan oleh banyak aplikasi generatif AI.

Bisnis mengelola data dalam jumlah besar—sering kali mencapai petabyte atau kuadriliun bit—yang mencakup berbagai informasi seperti transaksi pelanggan, inventaris produk, proses internal, hingga penelitian hak milik. Data ini harus diatur dalam arsitektur data yang koheren agar pengguna dan aplikasi dapat mengaksesnya saat mereka membutuhkannya.  

Basis data adalah dasar untuk membangun arsitektur data semacam itu. Mereka lebih dari sekadar tempat penyimpanan informasi. Sebaliknya, mereka memungkinkan organisasi mengelola data secara terpusat, menjaga integritas data serta standar keamanan data, dan memudahkan akses terhadap data. 

Dengan sistem basis data yang tepat, organisasi dapat memanfaatkan data berkualitas tinggi untuk mendukung inisiatif bisnis utama, seperti intelijen bisnis (BI), kecerdasan buatan (AI), dan machine learning (ML).

Apa yang bukan basis data

Orang sering menggunakan istilah "basis data" secara tidak tepat, yang dapat menimbulkan kebingungan mengenai definisi sebenarnya dari basis data—dan apa yang bukan. 

Basis data adalah sistem yang digunakan untuk menyimpan dan mengelola data, terdiri dari perangkat keras tempat data disimpan serta perangkat lunak yang mengatur dan mengontrol aksesnya. 

Database mendukung banyak infrastruktur TI modern, termasuk situs web, aplikasi, dan platform seperti Amazon dan Google. Layanan ini bukanlah database, tetapi mereka mengandalkan database untuk mengelola informasi, seperti inventaris produk atau hasil pencarian.

Perlu juga dicatat bahwa Microsoft Excel bukanlah basis data, tetapi aplikasi spreadsheet. Spreadsheet Excel mengatur data dalam baris dan kolom seperti halnya basis data relasional, tetapi spreadsheet tersebut merupakan file tunggal. Basis data adalah sistem terpusat yang andal dan mampu menyimpan berbagai jenis data dalam berbagai format, serta mendukung kueri yang kompleks.  

Jenis basis data

Organisasi menggunakan berbagai jenis database untuk mengelola berbagai jenis data dan mendukung aplikasi yang berbeda. Beberapa jenis database yang paling umum meliputi:

  • Database navigasi
  • Database relasional
  • Basis data non-relasional atau basis data NoSQL
  • Database berorientasi objek
  • Basis data vektor
  • Cloud databases

Database navigasi

Basis data navigasi penyimpanan data dalam kumpulan catatan yang ditautkan. Pengguna perlu menelusuri catatan-catatan ini untuk menemukan data yang diinginkan, itulah asal usul namanya.

Dua jenis basis data navigasi yang paling umum adalah basis data hierarkis dan basis data berbasis jaringan.

  • Database hirarkis mengatur data dalam struktur seperti pohon yang terdiri dari catatan induk dan catatan anak. Setiap catatan anak hanya dapat memiliki satu induk, tetapi catatan induk dapat memiliki beberapa anak. Untuk mencapai rekor yang diinginkan, pengguna harus mulai dari puncak pohon dan turun. 

  • Database jaringan berperilaku seperti database hirarkis, kecuali bahwa database jaringan mengizinkan setiap catatan anak untuk ditautkan ke beberapa catatan induk. Pengguna masih harus menavigasi melalui catatan yang ditautkan, biasanya dengan menggunakan pointer untuk sampai pada data yang mereka inginkan.

Basis data navigasi dulunya umum digunakan, tetapi perkembangan teknologi—terutama model data relasional—telah mengurangi popularitasnya.

Database relasional

Basis data relasional menyimpan data dalam tabel baris dan kolom yang diformat. Mereka sering disebut "basis data SQL" karena sebagian besar basis data relasional menggunakan bahasa kueri terstruktur (SQL) untuk kueri dan manipulasi data. (Untuk informasi lebih lanjut, lihat “Bahasa basis data”).

Setiap tabel dalam database relasional berisi informasi tentang satu jenis entitas. Sebagai contoh, sebuah organisasi mungkin memiliki tabel yang berisi informasi tentang semua pelanggannya, ditambah tabel terpisah yang memperinci riwayat pembelian masing-masing pelanggan. 

Ilmuwan IBM Edgar F. Codd mengembangkan model relasional pada 1970-an. Model ini dengan cepat melampaui popularitas model navigasi karena model ini sangat menyederhanakan tindakan pengambilan data. Alih-alih menentukan jalur antar-catatan, pengguna dapat menggunakan pernyataan SQL untuk menyebutkan data yang mereka inginkan. Database mencari cara untuk mengambil catatan yang relevan, sering kali dengan menggunakan indeks alih-alih pemindaian tabel penuh untuk mempercepat prosesnya.

Basis data relasional mengurangi redundansi dengan menyimpan setiap titik data hanya satu kali. Data dari berbagai tabel dapat digabungkan dalam satu tampilan tanpa perlu menduplikasi informasi. 

Basis data relasional adalah salah satu jenis basis data yang paling umum digunakan saat ini. Mereka ideal untuk mengelola kumpulan data terstruktur dengan format standar, seperti transaksi keuangan atau informasi kontak pengguna.

Kelas database relasional yang lebih baru, yang disebut "database NewSQL", bertujuan untuk membuat model relasional lebih dapat diskalakan dengan mengadopsi arsitektur database terdistribusi, yaitu mendistribusikan data di beberapa server database. 

Basis data non-relasional atau basis data NoSQL

"Database nonrelasional" pada dasarnya adalah istilah umum untuk semua database yang tidak menyimpan data dalam format yang kaku, seperti tabel. Mereka kadang-kadang disebut “database NoSQL” karena mereka umumnya tidak memerlukan SQL untuk menavigasi.

Basis data nonrelasional dikembangkan untuk mendukung tipe data tidak terstruktur dan semiterstruktur—seperti teks bebas dan gambar—yang tidak cocok disimpan dalam tabel relasional.

Jenis database nonrelasional yang umum meliputi:

  • Basis data grafik menyimpan data dalam bentuk "node" (mewakili entitas) dan "edge" (mewakili hubungan antar entitas). Basis data grafik sering digunakan untuk melacak hubungan, seperti hubungan antara pengguna situs jejaring sosial. 

  • Database dokumen menyimpan data sebagai dokumen, termasuk format seperti JSON, XML, dan BSON. Database dokumen umum dalam sistem manajemen konten. 

  • Basis data key-value menyimpan informasi dalam bentuk pasangan kunci dan nilai, dimana kunci berfungsi sebagai pengidentifikasi unik (seperti ID keranjang belanja digital) sementara nilai berisi array data (seperti daftar item dalam keranjang tersebut). 

  • Basis data kolom lebar menggunakan baris dan kolom seperti halnya basis data relasional. Perbedaannya adalah setiap baris dapat memiliki kumpulan kolom yang berbeda, dengan masing-masing kolom menyimpan informasi yang tidak selalu sama dengan baris lainnya. Basis data kolom lebar sering digunakan untuk mendukung gudang data, di mana data harus diekstrak dari berbagai sumber dan terpusat.

Database berorientasi objek

Database berorientasi objek, juga disebut database objek, penyimpanan data sebagai objek dalam pengertian pemrograman berorientasi objek. 

Objek pada dasarnya adalah kumpulan informasi dan kode terkait. Setiap objek mewakili suatu entitas. Objek dikelompokkan ke dalam kelas-kelas, dengan atribut yang menggambarkan karakteristiknya serta metode yang menentukan perilakunya. 

Sebagai contoh, sebuah objek di kelas "cat" mungkin memiliki atribut "color" dan "weight", serta metode "purr" dan "hunt".

Basis data berorientasi objek mendapatkan popularitas pada 1990-an bersama pemrograman berorientasi objek. Basis data relasional dapat menjadi kendala bagi aplikasi yang dibangun dengan bahasa berorientasi objek, karena data harus dikonversi menjadi tabel sebelum disimpan. Basis data berorientasi objek memungkinkan pengembang untuk menghindari masalah itu. 

Basis data vektor

Basis data vektor menyimpan informasi dalam bentuk susunan angka yang disebut "vektor", yang dikelompokkan berdasarkan kesamaan karakteristik. Misalnya, model cuaca mungkin menggunakan suhu terendah, rata-rata, dan tertinggi untuk satu hari dalam bentuk vektor:[62, 77, 85].

Vektor juga dapat mewakili objek kompleks seperti kata-kata, gambar, video dan audio. Data vektor dimensi tinggi ini sangat penting untuk machine learning, pemrosesan bahasa alami (NLP), dan tugas AI lainnya.    

Basis data vektor umum dalam contoh penggunaan AI dan ML. Misalnya, banyak implementasi kerangka kerja dengan dukungan generasi dengan dukungan pengambilan data (RAG)—memungkinkan model bahasa besar (LLM) mengambil fakta dari basis pengetahuan eksternal—menggunakan basis data vektor. 

Cloud databases

Basis data cloud adalah basis data yang dihosting di cloud. Segala jenis basis data—relasional, nonrelasional, atau lainnya—dapat menjadi basis data cloud.

Ada 2 jenis utama basis data cloud. Yang pertama, dan paling mendasar, adalah sistem basis data yang dikelola sendiri yang berjalan di cloud. Yang kedua disebut basis data sebagai layanan (DBaaS).

DBaaS adalah layanan cloud yang memungkinkan pengguna mengakses dan menggunakan basis data tanpa perlu mengelola infrastrukturnya sendiri. Sesuai namanya, penyedia DBaaS menawarkan berbagai layanan basis data, seperti peningkatan, pencadangan, keamanan, dan lainnya.

Cloud databases lebih dapat diskalakan daripada database on-premise. Jika organisasi membutuhkan lebih banyak ruang penyimpanan atau kinerja mulai menurun, organisasi dapat menambah lebih banyak sumber daya sesuai kebutuhan.  

Jenis basis data lainnya

  • Basis data multimodel dapat menyimpan lebih dari satu jenis data. Misalnya, IBM Db2 cloud basis data dapat mendukung XML, JSON, teks, dan data spasial dalam satu instans basis data. 

  • Basis data dalam memori menyimpan informasi dalam memori utama perangkat atau RAM. Aplikasi biasanya dapat mengakses data dari RAM lebih cepat dibandingkan basis data tradisional. Oleh karena itu, basis data dalam memori sering digunakan untuk menyimpan data dan mendukung pemrosesan real-time. Namun, kapasitas penyimpanan jauh lebih terbatas, dan data dapat dengan mudah hilang karena RAM lebih mudah berubah daripada basis data standar.

Perempuan kulit hitam yang bekerja di laptop

Tetap terdepan dengan berita teknologi terbaru

Insight mingguan, penelitian, dan pandangan pakar tentang AI, keamanan, cloud, dan lebih banyak di Buletin Think.

Basis data vs. danau data, gudang data dan rumah danau data

Basis data bukan satu-satunya metode untuk mengelola data; organisasi sering menggunakan berbagai jenis penyimpanan data untuk mendukung kebutuhan dan inisiatif yang berbeda.

  • Basis data terutama dibuat untuk pengambilan data otomatis, kueri cepat, dan pemrosesan transaksi.  

  • Data lake adalah solusi penyimpanan berbiaya rendah yang dirancang untuk mengelola volume besar data mentah, baik yang terstruktur maupun tidak terstruktur. Tidak seperti basis data, data lake umumnya tidak membersihkan, memvalidasi, atau menormalkan data. Data tersebut biasanya disimpan dalam jumlah besar untuk mendukung aktivitas seperti pelatihan kecerdasan buatan (AI) dan analitik big data, di mana kinerja waktu nyata tidak menjadi prioritas utama.

  • Gudang data dibangun untuk mendukung upaya analitik data, intelijen bisnis, dan ilmu data. Mereka mengintegrasikan data dari berbagai sumber, membersihkannya, dan memprosesnya hingga siap digunakan. 

  • Data lakehouses menggabungkan kemampuan gudang dan danau menjadi satu solusi manajemen data. Lakehouse menggabungkan penyimpanan berbiaya rendah dengan mesin kueri kinerja tinggi dan tata kelola metadata yang cerdas. Ini memungkinkan organisasi menyimpan data terstruktur dan tidak terstruktur dalam jumlah besar serta menggunakannya dengan mudah untuk keperluan AI, pembelajaran mesin (ML), dan analitik.

Cara kerja basis data

Pada tingkat tinggi, sistem database memiliki 2 komponen utama: sistem penyimpanan data, yang secara fisik atau logis menampung data, dan sistem manajemen basis data (DMBS), yang memungkinkan pengguna untuk berinteraksi dengan kumpulan data yang disimpan.

Kita dapat menganalisis lebih dalam komponen sistem basis data untuk memahami cara kerjanya secara lebih jelas.

Perangkat keras basis data

Basis data harus menyimpan datanya di suatu media penyimpanan, seperti perangkat keras tertentu. Meskipun demikian, basis data tidak memerlukan mesin khusus.

Sebaliknya, sebagian besar sistem basis data terdiri dari perangkat lunak basis data yang berjalan di komputer, server atau perangkat lain. Mesin menawarkan perangkat keras fisik tempat basis data berjalan. Perangkat lunak ini menangani pengaturan logis data. Misalnya, memformat data sebagai tabel dalam basis data relasional atau grafik dalam basis data grafik. 

Database dan aplikasi yang menggunakannya dapat berjalan pada perangkat keras yang sama, tetapi saat ini, sebagian besar sistem database menggunakan arsitektur bertingkat yang memisahkan server aplikasi dan server database. Pengaturan ini menawarkan lebih banyak skalabilitas dan keandalan. Server aplikasi dan database dapat diskalakan secara independen satu sama lain, dan penghentian pada satu tingkatan tidak perlu memengaruhi tingkatan lainnya. 

Model data dan model basis data

Model data adalah representasi visual dari sistem informasi. Model adalah alat bantu konseptual yang digunakan oleh administrator dan perancang basis data untuk memahami jenis data yang harus mereka lacak, hubungan antar titik data, dan cara terbaik untuk mengatur data.

Bagan pemodelan data logis

Model data membantu mengidentifikasi model basis data yang tepat, yaitu implementasi praktis sistem basis data, termasuk persyaratan teknis dan format penyimpanan. Misalnya, model data logis sebelumnya mungkin Hasil dalam basis data relasional yang terlihat seperti ini: 

Bagan pemodelan data fisik

Skema-skema basis data

Skema database secara teknis dan logis mendefinisikan cara data diatur dalam database. Dengan kata lain, ini menerjemahkan model data ke dalam seperangkat aturan untuk diikuti database. 

Sebagai contoh, skema database relasional akan mendefinisikan hal-hal seperti nama tabel, bidang, tipe data, dan hubungan di antara hal-hal tersebut.

Skema dapat direpresentasikan melalui bagan visual, ditulis dengan pernyataan SQL atau bahasa pemrograman lain atau didefinisikan dengan cara lain. Itu tergantung pada jenis skema dan sistem database yang dimaksud.

Semua sistem database relasional memiliki skema. Beberapa database nonrelasional memiliki skema, beberapa tidak dan beberapa mengizinkan tetapi tidak memerlukannya. 

Sistem manajemen database (DBMS)

Sistem manajemen basis data (DBMS) adalah perangkat lunak yang memfasilitasi interaksi antara administrator, pengguna, dan aplikasi dengan data dalam basis data.  

Sistem DBMS memungkinkan pengguna untuk melakukan tugas-tugas manajemen data utama seperti memformat database, mengelola metadata, menanyakan kumpulan data dan menambahkan, memperbarui atau menghapus data.

Beberapa DBMS mendukung keamanan data dengan menerapkan kontrol akses dan pencatatan aktivitas pengguna. Mereka mungkin juga melacak kinerja basis data.

Seperti basis datanya, DBMS juga memiliki berbagai jenis model. Misalnya, sistem manajemen basis data relasional (RDBMS) dirancang untuk mengelola basis data relasional, sementara sistem manajemen basis data berorientasi objek (OODBMS) digunakan untuk basis data berorientasi objek.  

Beberapa sistem manajemen basis data yang umum meliputi:

  • MySQL adalah RDBMS sumber terbuka yang banyak digunakan untuk situs e-commerce dan berbagai aplikasi web.

  • PostgreSQL dikenal karena penekanannya pada ekstensibilitas dan keandalan transaksi.

  • Microsoft SQL Server banyak digunakan oleh organisasi dengan jaringan Microsoft. 

  • Oracle Database adalah DBMS multimodel yang dapat mengelola data terstruktur dan tidak terstruktur. 

  • IBM Db2 adalah sistem basis data cloud-native yang menyediakan manajemen basis data, pergudangan, penyimpanan, dan berbagai fitur lainnya untuk mendukung analisis real-time serta aplikasi AI.  

Bahasa database

Bahasa basis data adalah jenis bahasa pemrograman khusus yang dirancang untuk memungkinkan pengguna berinteraksi dengan dan mengelola basis data. Mereka memberi pengguna sintaks untuk menulis kueri untuk mengambil, menggabungkan, memperbarui, atau menggunakan data. 

Bahasa basis data yang paling umum adalah bahasa query terstruktur (SQL), yang digunakan sebagian besar basis data relasional. Dikembangkan oleh para ilmuwan IBM pada tahun 1970-an, SQL membantu administrator basis data, pengembang, dan analis data melakukan tugas-tugas seperti definisi data, kontrol akses, berbagi data, integrasi data, dan kueri analitis.

Bahasa database lainnya termasuk object query language (OQL), yang bekerja dengan database berorientasi objek dan XQuery, yang bekerja dengan database dokumen XML. 

Ada juga bahasa khusus basis data seperti MongoDB query language (MQL) untuk MongoDB dan bahasa query Cassandra (CQL) untuk Apache Cassandra. 

Mengapa basis data penting

Database sangat penting untuk banyak teknologi yang diandalkan orang saat ini, mulai dari aplikasi perbankan yang melacak transaksi keuangan dalam database relasional hingga asisten AI yang menggunakan database vektor untuk meningkatkan akurasi. Database sangat umum justru karena mereka adalah kunci untuk mendukung:

  •  Kegunaan data
  •  Integritas data
  •  Keamanan dan kepatuhan data

Kegunaan data

Organisasi saat ini memiliki sejumlah besar data, tetapi itu tidak berarti banyak jika orang tidak dapat menggunakan data itu. Faktanya, IBM Data Differentiator melaporkan bahwa sebanyak 68% data perusahaan tidak pernah dianalisis. Seringkali, itu karena orang tidak tahu itu ada di sana atau silo menghalangi mereka untuk mengaksesnya.

Basis data memungkinkan organisasi mengelola dan mengkurasi data secara terpusat. Selain itu, basis data dapat mengotomatiskan banyak proses pengumpulan data, termasuk pencatatan peristiwa dan transaksi secara real-time.

Cara organisasi memilih, mendesain, dan mengimplementasikan aplikasi database dapat membuat atau menghancurkan inisiatif bisnis utama. Ketika data diatur dan mudah diakses, data dapat mendorong pengambilan keputusan, mendorong intelijen bisnis, dan mendukung proyek AI dan ML.

Integritas data

Basis data memiliki keunggulan signifikan dibandingkan spreadsheet dan pencatatan manual, yang sering kali rentan terhadap kesalahan, duplikasi data, dan ketidakakuratan.

Karena database dapat dikelola secara terpusat, database dapat mempermudah penerapan aturan pembersihan dan pemformatan, pemantauan penggunaan, dan pelacakan silsilah data. Database juga menghilangkan kebutuhan untuk mengedarkan banyak salinan kumpulan data, yang dapat menjadi tidak sinkron seiring berjalannya waktu. Sebaliknya, setiap aplikasi dan pengguna dapat bekerja pada repositori bersama yang sama. 

Pada akhirnya, basis data dapat membantu menghubungkan pengguna dari semua jenis—orang, aplikasi, API—dengan data yang bersih dan dapat dipercaya. 

Keamanan dan kepatuhan data

Tergantung pada lokasi dan industrinya, setiap organisasi harus mematuhi peraturan perlindungan dan privasi data, seperti Undang-Undang Portabilitas dan Akuntabilitas Asuransi Kesehatan (HIPAA) di Amerika Serikat dan Peraturan Perlindungan Data Umum (GDPR) di Uni Eropa.

Di luar persyaratan hukum, organisasi memiliki kepentingan bisnis dalam mencegah akses data yang tidak sah. Menurut Laporan Biaya Pelanggaran Data IBM, rata-rata pelanggaran data mengakibatkan kerugian sebesar USD 4,88 juta, mencakup kehilangan bisnis, waktu henti sistem, upaya remediasi, dan biaya lainnya.

Database dapat membantu melindungi data dan menjaga kepatuhan dengan menerapkan langkah-langkah keamanan data seperti kontrol akses berbasis peran (RBAC) untuk membantu memastikan bahwa hanya pengguna yang tepat yang dapat mengakses data yang tepat. 

Peran basis data dalam inisiatif AI

75% CEO percaya bahwa memiliki AI generatif paling canggih akan menjadi faktor penentu dalam keunggulan kompetitif organisasi ke depan. Untuk mendukung AI canggih, organisasi harus mampu menyimpan, mengelola, dan mengatur data dalam jumlah besar, baik yang terstruktur maupun tidak terstruktur. Mereka hanya dapat melakukannya dengan sistem basis data yang tepat.

Berbagai jenis basis data dapat mendukung upaya AI dan ML dengan cara yang berbeda. Misalnya, basis data vektor biasanya digunakan untuk mengimplementasikan kerangka kerja RAG yang dapat membantu mengurangi halusinasi. Basis data nilai kunci dapat mempercepat pengambilan dan pemrosesan data. Basis data dalam memori dapat mendukung caching dan streaming analytics.

Pertimbangan basis data

Beberapa faktor dapat mempengaruhi jenis basis data yang dipilih organisasi untuk inisiatif tertentu. Beberapa yang paling menonjol antara lain:

  • Jenis data: Setiap jenis basis data lebih efektif dalam menangani jenis data tertentu dibandingkan yang lain. Misalnya, basis data grafik sering kali lebih efektif dalam memetakan hubungan dibandingkan SQL database.

  • Tujuan: Berbagai jenis database juga lebih cocok untuk aplikasi yang berbeda. Misalnya, database vektor sering kali merupakan pilihan terbaik untuk kerangka kerja RAG.  

  • Persyaratan kinerja: Jika sebuah aplikasi terus-menerus mengambil data secara real-time, organisasi memerlukan basis data yang dioptimalkan untuk kecepatan kueri. Namun, jika organisasi hanya memerlukan tempat penyimpanan sementara sebelum data dikirim ke gudang, kinerja bukanlah faktor utama.

  • Harga: Biaya basis data dipengaruhi oleh jumlah data yang perlu disimpan oleh organisasi, format data yang digunakan, serta persyaratan kinerja yang dibutuhkan.

  • Skalabilitas: Beberapa basis data hanya mendukung skalabilitas vertikal, yang berarti kapasitas server atau mesin yang ada harus ditingkatkan dengan menambah sumber daya seperti CPU, RAM, atau penyimpanan. Sebagian lainnya mendukung skalabilitas horizontal, yaitu dengan menambahkan lebih banyak server untuk membagi beban kerja dan mengelola data secara terdistribusi.