Jenis MODEL DATA RELATIONAL
Model data merupakan kumpulan tools yang secara konseptual untuk mendeskripsikan data, hubungan data, semantic data, dan konsistensi konstrain atau suatu cara untuk menjelaskan bagaimana pemakai dapat melihat data secara logik.
Model basis data Flat-file
Model basis data Hirarki
Model basis data Jaringan
Model basis data Relasional
Model basis data Berorientasi Objek (Object Oriented (OO))
Model basis data Relasional Objek (Object Relational (OR))
3.1 Model basis data Flat-file
Model flat-file (file datar), di mana semua record disimpan dalam bentuk sebuah file biasa/format file text. Informasi pada suatu file-file disimpan sebagai fields, dengan fields-nya memiliki panjang konstan atau bervariasi yang dipisahkan beberapa karakter/delimeter. Pada model ini, tidak ada hubungan (relationship) yang bisa didefinisikan atau dibuat diantara fields tersebut. Dengan tidak adanya hubungan antar fields, maka fields tersebut hanya bisa diakses dengan cara berurutan (sekuansial). Sebagai contoh, jika ingin menemukan suatu fields pelanggan ke-50, maka akan dilakukan pencarian dari field pertama sampai ke field 49 secara berurutan.
Untuk basis data flat-file dengan panjang fields-nya konstan diberikan pada contoh 3.1. Pada contoh 3.1. terdapat 3 fields : identifikasi angka, nama dosen, dan nama program studi. Setiap fields memiliki panjang konstan karena field identifikasi angka selalu dimulai pada kolom #1 dan selalu berakhir pada kolom #4, field nama dosen selalu dimulai pada kolom #6 dan selalu berakhir pada kolom #25, dan seterusnya.
Untuk contoh basis data flat-file dengan panjang fields bervariasi yang dipisahkan dengan delimeter diberikan pada contoh 3.2.
Contoh 3.1.
1234 5 67890123456789012345 6 78901234567890123
0123 Aris Puji Widodo PS. Ilmu Komputer
1234 Djalal ER Riyanto PS. Ilmu Komputer
2345 Kushartantya PS. Ilmu Komputer
3456 Suhartono PS. Ilmu Komputer
4567 Bambang Yismianto PS. Ilmu Komputer
5678 Indriyati PS. Ilmu Komputer
6789 Beta Noranita PS. Ilmu Komputer
7890 Eko Adi Sarwoko PS. Ilmu Komputer
Model basis data Flat-file
Model basis data Hirarki
Model basis data Jaringan
Model basis data Relasional
Model basis data Berorientasi Objek (Object Oriented (OO))
Model basis data Relasional Objek (Object Relational (OR))
3.1 Model basis data Flat-file
Model flat-file (file datar), di mana semua record disimpan dalam bentuk sebuah file biasa/format file text. Informasi pada suatu file-file disimpan sebagai fields, dengan fields-nya memiliki panjang konstan atau bervariasi yang dipisahkan beberapa karakter/delimeter. Pada model ini, tidak ada hubungan (relationship) yang bisa didefinisikan atau dibuat diantara fields tersebut. Dengan tidak adanya hubungan antar fields, maka fields tersebut hanya bisa diakses dengan cara berurutan (sekuansial). Sebagai contoh, jika ingin menemukan suatu fields pelanggan ke-50, maka akan dilakukan pencarian dari field pertama sampai ke field 49 secara berurutan.
Untuk basis data flat-file dengan panjang fields-nya konstan diberikan pada contoh 3.1. Pada contoh 3.1. terdapat 3 fields : identifikasi angka, nama dosen, dan nama program studi. Setiap fields memiliki panjang konstan karena field identifikasi angka selalu dimulai pada kolom #1 dan selalu berakhir pada kolom #4, field nama dosen selalu dimulai pada kolom #6 dan selalu berakhir pada kolom #25, dan seterusnya.
Untuk contoh basis data flat-file dengan panjang fields bervariasi yang dipisahkan dengan delimeter diberikan pada contoh 3.2.
Contoh 3.1.
1234 5 67890123456789012345 6 78901234567890123
0123 Aris Puji Widodo PS. Ilmu Komputer
1234 Djalal ER Riyanto PS. Ilmu Komputer
2345 Kushartantya PS. Ilmu Komputer
3456 Suhartono PS. Ilmu Komputer
4567 Bambang Yismianto PS. Ilmu Komputer
5678 Indriyati PS. Ilmu Komputer
6789 Beta Noranita PS. Ilmu Komputer
7890 Eko Adi Sarwoko PS. Ilmu Komputer
Contoh 3.2.
0123:Aris Puji Widodo:PS.Ilmu Komputer
1234:Djalal ER Riyanto:PS.Ilmu Komputer
2345:Kushartantya:PS.Ilmu Komputer
3456:Suhartono:PS.Ilmu Komputer
4567:Bambang Yismianto:PS.Ilmu Komputer
5678:Indriyati:PS.Ilmu Komputer
6789:Beta Noranita:PS.Ilmu Komputer
7890:Eko Adi Sarwoko:PS.Ilmu Komputer
0123:Aris Puji Widodo:PS.Ilmu Komputer
1234:Djalal ER Riyanto:PS.Ilmu Komputer
2345:Kushartantya:PS.Ilmu Komputer
3456:Suhartono:PS.Ilmu Komputer
4567:Bambang Yismianto:PS.Ilmu Komputer
5678:Indriyati:PS.Ilmu Komputer
6789:Beta Noranita:PS.Ilmu Komputer
7890:Eko Adi Sarwoko:PS.Ilmu Komputer
Pada contoh 3.2. terdapat 3 fields, untuk setiap fields dipisahkan dengan titik dua. Setiap fields memiliki panjang tidak konstan. Pada saat menggunakan fields separator, seharusnya fields seperatornya bukan merupakan karakter yang terdapat pada data.
Kelemahan basis data flat-file:
Flat-file tidak menggunakan struktur data yang dengan mudah dapat direlasikan
Sulit untuk mengatur data secara efisien dan menjamin akurasi
Lokasi fisik fields data dengan file harus diketahui
Program harus dikembangkan untuk mengatur data
Harus sesuai dengan kondisi di mana semua fields akan diproses secara keseluruhan.
Flat-file tidak menggunakan struktur data yang dengan mudah dapat direlasikan
Sulit untuk mengatur data secara efisien dan menjamin akurasi
Lokasi fisik fields data dengan file harus diketahui
Program harus dikembangkan untuk mengatur data
Harus sesuai dengan kondisi di mana semua fields akan diproses secara keseluruhan.
3.2 Model basis data Hirarki
Model basis data hirarki dirancang dengan hubungan yang terstruktur sehingga memungkinkan dan mempermudah akses terhadap suatu data, memiliki kemampuan untuk menemukan dan memelihara relasi antar kelompok data. Hubungan yang terjadi dalam model hirarki ini adalah parent-child dan one-to-many. Setiap tabel parent bisa mempunyai beberapa child tabel, namun setiap child tabel hanya mempunyai satu parent tabel.
Struktur model basis data hirarki terlihat seperti kebalikan dari struktur pohon seperti yang diberikan pada gambar 3.1.
Model basis data hirarki dirancang dengan hubungan yang terstruktur sehingga memungkinkan dan mempermudah akses terhadap suatu data, memiliki kemampuan untuk menemukan dan memelihara relasi antar kelompok data. Hubungan yang terjadi dalam model hirarki ini adalah parent-child dan one-to-many. Setiap tabel parent bisa mempunyai beberapa child tabel, namun setiap child tabel hanya mempunyai satu parent tabel.
Struktur model basis data hirarki terlihat seperti kebalikan dari struktur pohon seperti yang diberikan pada gambar 3.1.
Gambar 3.1. Model Basis Data Hirarki
Pada gambar 3.1 Publishers adalah sebagai root table. Publisher memiliki dua child table : Author dan BookStores. Publisher mempunyai beberapa orang Author yang dikontrak, dan mempunyai beberapa BookStores untuk mensuplai kebutuhan buku-buku. Titles adalah child dari Author, Inventory dan Orders adalah child dari BookStrores. Salah satu masalah yang muncul adalah terjadinya redudansi informasi Titles yang disimpan pada tabel Inventory, karena tidak ada hubungan langsung antara Authors dan BookStores.
Root table dapat memiliki lebih dari satu child table dan child table hanya boleh memiliki satu root table. Untuk mengakses child table, harus dilakukan pengaksesan root table terlebih dahulu. Relasi-relasi tabel dengan struktur hirarki dihubungkan dengan pointer.
Kelebihan basis data hirarki dibandingkan flat-file:
Struktur data permanen dan secara eksplisit terhubung antara satu sama lainnya
Data dapat dengan cepat dilakukan retrieve
Integritas data mudah dilakukan pengaturan
Root table dapat memiliki lebih dari satu child table dan child table hanya boleh memiliki satu root table. Untuk mengakses child table, harus dilakukan pengaksesan root table terlebih dahulu. Relasi-relasi tabel dengan struktur hirarki dihubungkan dengan pointer.
Kelebihan basis data hirarki dibandingkan flat-file:
Struktur data permanen dan secara eksplisit terhubung antara satu sama lainnya
Data dapat dengan cepat dilakukan retrieve
Integritas data mudah dilakukan pengaturan
Kelemahan basis data hirarki dibandingkan flat-file:
Penambahan child tabel tidak dapat dilakukan jika tidak terhubung dengan parent tabel
Pengguna harus sangat familiar dengan struktur basis data
Terjadi redudansi data
Penambahan child tabel tidak dapat dilakukan jika tidak terhubung dengan parent tabel
Pengguna harus sangat familiar dengan struktur basis data
Terjadi redudansi data
3.3 Model basis data jaringan
Model basis data jaringan menerapkan hubungan data yang merupakan perbaikan dari model hirarki, tabel-tabel terhubung dalam sebuah himpunan, di mana suatu tabel owner akan dihubungkan dengan beberapa tabel member. Relasi antar tabel dalam basis data jaringan disebut set structure. Menerapkan konsep dasar relasi parent/child, se structure dapat dipresentasikan sebagai relasi one-0to-many antar tabel. Memiliki kemampuan root tabel untuk melakukan share relationships dengan child table. Program aplikasi dapat mengakses basis data jaringan menggunakan set structure sebagai navigasi ke bagian basis data yang berbeda. Sehingga jika set structure dilakukan modifikasi, maka program aplikasi yang mengakses basis data juga harus dilakukan modifikasi. Untuk set structure dapat dilihat pada gambar 3.2.
Model basis data jaringan menerapkan hubungan data yang merupakan perbaikan dari model hirarki, tabel-tabel terhubung dalam sebuah himpunan, di mana suatu tabel owner akan dihubungkan dengan beberapa tabel member. Relasi antar tabel dalam basis data jaringan disebut set structure. Menerapkan konsep dasar relasi parent/child, se structure dapat dipresentasikan sebagai relasi one-0to-many antar tabel. Memiliki kemampuan root tabel untuk melakukan share relationships dengan child table. Program aplikasi dapat mengakses basis data jaringan menggunakan set structure sebagai navigasi ke bagian basis data yang berbeda. Sehingga jika set structure dilakukan modifikasi, maka program aplikasi yang mengakses basis data juga harus dilakukan modifikasi. Untuk set structure dapat dilihat pada gambar 3.2.
Gambar 3.2. Model Basis Data Jaringan
Pada gambar 3.2. tabel Publishers memiliki 2 tabel : Authors dan BookStores. Authors dan BookStores adalah sebagai member dari tabel Publishers. Publishers meng-contract Authors untuk bekerja, dan Publishers akan men-supply buku-buku yang selesai dikerjakan ke BookStores.
Gambar 3.3. Child Table yang Dilakukan Share
Pada gambar 3.3. memberikan deskripsi child table atau members dapat dilakukan share oleh parent table. Tabel Titles dimiliki oleh Authors dan BookStores, karena Authors dan BookStores membutuhkan relasi dengan Titles. Walaupun 2 set structure dapat digunakan untuk mengakses tabel Titles, informasi book title hanya disimpan pada satu tabel, sehingga redudansi data direduksi.
Kelebihan basis data jaringan:
Data lebih cepat diakses
User dapat mengakses data dimulai dari beberapa tabel
Mudah untuk memodelkan basis data yang komplek
Mudah untuk membentuk query (perintah-perintah untuk mengakses data) yang komplek dalam melakukan retrieve data.
Kelemahan basis data jaringan:
Struktur basis datanya tidak mudah untuk dilakukan modifikasi
Perubahan struktur basis data yang telah didefinisikan akan mempengaruhi program aplikasi yang mengakses basis data
User harus memahami struktur basis data.
Kelebihan basis data jaringan:
Data lebih cepat diakses
User dapat mengakses data dimulai dari beberapa tabel
Mudah untuk memodelkan basis data yang komplek
Mudah untuk membentuk query (perintah-perintah untuk mengakses data) yang komplek dalam melakukan retrieve data.
Kelemahan basis data jaringan:
Struktur basis datanya tidak mudah untuk dilakukan modifikasi
Perubahan struktur basis data yang telah didefinisikan akan mempengaruhi program aplikasi yang mengakses basis data
User harus memahami struktur basis data.
3.4 Model basis data relasional
Model basis data relasional merupakan model basis data yang paling populer banyak digunakan sekarang ini. Beberapa perbaikan ditambahkan pada model ini, yaitu sederhana dalam mengatur data, retrieve data, dan change data. Pada model ini , data disimpan dalam sebuah relations (relasi), biasanya disebut dengan table. Tabel tediri atas baris dan kolom. Baris mempresentasikan record (atau tuples), dan kolom mempresentasikan fields (atau attributes) adalah komponen-komponen dasar yang membentuk suatu relasi database. Setiap data individual, disimpan dalam field di suatu tabel dan setiap record terdiri dari beberapa fiald yang membentuk suatu tabel.
Model basis data relasional tidak memiliki parent/root teble, walaupun relasi antara parent table dan child table diperbolehkan. Parent table dapat memiliki banyak child table, dan demikian juga sebaliknya. Untuk representasi model basis data relasional diberikan pada gambar 3.4.
Model basis data relasional merupakan model basis data yang paling populer banyak digunakan sekarang ini. Beberapa perbaikan ditambahkan pada model ini, yaitu sederhana dalam mengatur data, retrieve data, dan change data. Pada model ini , data disimpan dalam sebuah relations (relasi), biasanya disebut dengan table. Tabel tediri atas baris dan kolom. Baris mempresentasikan record (atau tuples), dan kolom mempresentasikan fields (atau attributes) adalah komponen-komponen dasar yang membentuk suatu relasi database. Setiap data individual, disimpan dalam field di suatu tabel dan setiap record terdiri dari beberapa fiald yang membentuk suatu tabel.
Model basis data relasional tidak memiliki parent/root teble, walaupun relasi antara parent table dan child table diperbolehkan. Parent table dapat memiliki banyak child table, dan demikian juga sebaliknya. Untuk representasi model basis data relasional diberikan pada gambar 3.4.
Gambar 3.4. Model Basis Data Relasiona
Klebihan basis data relasional:
Akses data dapat dilakukan dengan sangat cepat dan lebih akurat
Struktur basis data mudah dilakukan perubahan
Data direpresentasikan secara logik, user tidak membutuhkan bagaimana data disimpan.
Mudah untuk membentuk query yang komplek dalam melakukan retrieve data
Mudah untuk mengimplementasikan integritas data
Mudah untuk membangun dan memodifikasi program aplikasi
Telah dikembangkan Structure Query Language (SQL).
Kelemahan basis data relasional:
Kelompok informasi/tables yang berbeda harus dilakukan joined untuk melakukan retrieve data
User harus familiar dengan relasi antar tabel
User harus belajar SQL.
Klebihan basis data relasional:
Akses data dapat dilakukan dengan sangat cepat dan lebih akurat
Struktur basis data mudah dilakukan perubahan
Data direpresentasikan secara logik, user tidak membutuhkan bagaimana data disimpan.
Mudah untuk membentuk query yang komplek dalam melakukan retrieve data
Mudah untuk mengimplementasikan integritas data
Mudah untuk membangun dan memodifikasi program aplikasi
Telah dikembangkan Structure Query Language (SQL).
Kelemahan basis data relasional:
Kelompok informasi/tables yang berbeda harus dilakukan joined untuk melakukan retrieve data
User harus familiar dengan relasi antar tabel
User harus belajar SQL.
3.5 Model basis data berorientasi objek
Model basis data berorientasi objek didefinisikan dengan bahas pemrograman misalnya bahas JAVA, disimpan dan diakses serta applikasi End User dibangun dengan pemrograman berorientasi objek pula. Untuk membuat link antara basis data dengan applikasi digunakan ODMS (Object Database Management System). Pada gambar 3.5. diberikan ilustrasi mengenai contoh basis data berorientasi objek dan implementasinya.
Model basis data berorientasi objek didefinisikan dengan bahas pemrograman misalnya bahas JAVA, disimpan dan diakses serta applikasi End User dibangun dengan pemrograman berorientasi objek pula. Untuk membuat link antara basis data dengan applikasi digunakan ODMS (Object Database Management System). Pada gambar 3.5. diberikan ilustrasi mengenai contoh basis data berorientasi objek dan implementasinya.
Gambar 3.5. Basis Data Berorientasi Objek
Dua struktur dasar yang terdapat pada basis data berorientasi objek terdiri adalah dari objects dan literals. Objects adalah suatu struktur yang memiliki identifiers, object dapat diasosiasikan dengan object yang lain. Literals adalah nilai-nilai yang diasosiasikan dengan object dan tidak memiliki identifiers. Object dan literals diorganisasikan oleh suatu tipe, dimana setiap elemen memiliki properties yang sama, yang dapat dimodifikasi untuk setiap object. Class adalah ekuivalen dengan tabel pada basis data relasional. Operasi digunakan untuk mengambil nilai-nilai dari class yang lain, menambah nilai, dan untuk menghapus nilai. Ilustrasi bagaimana relasi data pada basis data berorientasi objek diberikan pada gambar 3.6.
Dua struktur dasar yang terdapat pada basis data berorientasi objek terdiri adalah dari objects dan literals. Objects adalah suatu struktur yang memiliki identifiers, object dapat diasosiasikan dengan object yang lain. Literals adalah nilai-nilai yang diasosiasikan dengan object dan tidak memiliki identifiers. Object dan literals diorganisasikan oleh suatu tipe, dimana setiap elemen memiliki properties yang sama, yang dapat dimodifikasi untuk setiap object. Class adalah ekuivalen dengan tabel pada basis data relasional. Operasi digunakan untuk mengambil nilai-nilai dari class yang lain, menambah nilai, dan untuk menghapus nilai. Ilustrasi bagaimana relasi data pada basis data berorientasi objek diberikan pada gambar 3.6.
Gambar 3.6. Model Data Berorientasi Objek
Kelebihan basis data berorientasi objek:
Programmer hanya dibutuhkan memahami konsep berorientasi objek untuk mengkombinasikan konsep berorientasi objek dengan storage basis data relasional
Objek dapat dilakukan sifat pewarisan dari objek yang lain
Secara teoritis mudah untuk mengatur objek
Model data berorientasi objek lebih kompatibel dengan tools pemrograman berorientasi objek.
Programmer hanya dibutuhkan memahami konsep berorientasi objek untuk mengkombinasikan konsep berorientasi objek dengan storage basis data relasional
Objek dapat dilakukan sifat pewarisan dari objek yang lain
Secara teoritis mudah untuk mengatur objek
Model data berorientasi objek lebih kompatibel dengan tools pemrograman berorientasi objek.
Kelemahan basis data berorientasi objek:
User harus memahami konsep berorientasi objek, karena basis data berorientasi objek tidak dapat bekerja dengan metoda pemrograman tradisional
User harus memahami konsep berorientasi objek, karena basis data berorientasi objek tidak dapat bekerja dengan metoda pemrograman tradisional
3.6 Model basis data relasional objek
Model ini digunakan untuk mengkombinasikan antara konsep model relasional dengan pemrograman berorientasi objek, di mana dapat dibuatnya tipe bentukkan. Pada gambar 3.7. memberikan ilustrasi contoh basis data relasional objek. Tabel employee memiliki 2 kolom yang memiliki tipe bentukan, yaitu empInfo yang bertipe Person dan addrInfo yang bertipe Address. Pada empInfo memiliki tipe Person, dimana Person memiliki kategori yang lebih spesifik: noId, firstName, dan lastName.
Model ini digunakan untuk mengkombinasikan antara konsep model relasional dengan pemrograman berorientasi objek, di mana dapat dibuatnya tipe bentukkan. Pada gambar 3.7. memberikan ilustrasi contoh basis data relasional objek. Tabel employee memiliki 2 kolom yang memiliki tipe bentukan, yaitu empInfo yang bertipe Person dan addrInfo yang bertipe Address. Pada empInfo memiliki tipe Person, dimana Person memiliki kategori yang lebih spesifik: noId, firstName, dan lastName.
Gambar 3.7. Basis Data Relasional Objek
Kelebihan basis data relasional objek:
Tipe bentukan dapat dibuat
Kelemahan basis data relasional objek:
User harus memahami antara konsep berorientasi objek dengan relasional
Beberapa vendor mengimplementasikan konsep relasional objek tidak mendukung sifat pewarisan objek
Tipe bentukan dapat dibuat
Kelemahan basis data relasional objek:
User harus memahami antara konsep berorientasi objek dengan relasional
Beberapa vendor mengimplementasikan konsep relasional objek tidak mendukung sifat pewarisan objek
Sanantya Bogora Rizqi
A11.2010.05385
A11.4416