Modul Sistem Basis Data - Universitas Semarang BAB 3 Tujuan Instruksional Umum Mahasiswa dapat mengerti Model–Model dalam Sistem Basis Data. Tujuan Instruksional Khusus Mahasiswa dapat mengerti model data objek. Mahasiswa dapat mengerti model data record. MODEL DALAM SISTEM BASIS DATA C ara untuk lebih memudahkan didalam usaha memahami sesuatu hal atau konsep adalah dengan cara menggunakan model. Demikian juga dilakukan didalam memahami suatu rancangan basis data. Model data dapat didefinisikan sebagai kumpulan perangkat konseptual untuk menggambarkan data, hubungan data, semantik data dan batasan data. Oleh karena yang ingin ditunjukkan adalah makna dari data dan keterhubungannya dengan data lain sehingga model ini sering disebut sebagai Model Logik. Ada sejumlah cara dalam mepresentasikan model data dalam perancangan basis data yang secara umum dapat dibagi dalam 2 (dua) kelompok model data : A. Model Data Berbasis Objek Merupakan himpunan data dan prosedur/relasi yang menjelaskan hubungan logik antar data dalam suatu basis data berdasarkan pada objek datanya. Ada tiga macam jenis model data berbasis objek, yaitu : 1. Entity Relational Model merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan suatu persepsi bahwa real word terdiri dari objek–objek dasar yang mempunyai hubungan/kerelasian antar objek–objek dasar tersebut yang dilukiskan dengan menggunakan simbol–simbol grafis tertentu. 2. Semantik Model hampir sama dengan entity relationship model perbedaannya adalah korelasi antar objek dasar tidak dinyatakan dengan simbol tetapi secara semantic yaitu menggunakan kata–kata (semantic) 3. Binary Model merupakan model data yang memperluas definisi dari entity, bukan hanya atribut–atributnya tetapi juga tindakan–tindakannya. 14 Modul Sistem Basis Data - Universitas Semarang B. Model Data Berbasis Record Pada model data berbasis record, basis data terdiri dari sejumlah record dalam bentuk yang tetap yang dapat dibedakan dari bentuknya. Terdapat tiga macam jenis model data berbasis record, yaitu : 1. Relational Model, data–data disajikan dalam bentuk tabel (baris dan kolom). Setiap tabel mempunyai key yang unik serta setiap tabel harus berelasi dengan minimal satu tabel lain. 2. Hierarchical Model, data–data disajikan dengan bentuk pohon (tree) dan mempunyai root dan beberapa subtree. Level yang lebih atas disebut parent. Level yang dibawahnya disebut child. 3. Network Model, data–data disajikan dalam bentuk jaringan dan record–recordnya biasa disebut member dan owner. 3.1 Model Entity Relationalship Merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan suatu persepsi bahwa real word terdiri dari objek–objek dasar yang mempunyai hubungan atau relasi antar objek–objek tersebut. Relasi antar objek dilukiskan dengan menggunakan simbol–simbol grafis tertentu. Mengapa diperlukan model E-R : 1. Dapat menggambarkan hubungan antar entity dengan jelas. 2. Dapat menggambarkan batasan jumlah entity dan partisipasi antar entity 3. Mudah dimengerti oleh pemakai 4. Mudah disajikan oleh perancang database. Komponen–komponen yang terdapat di dalam Entity Relationship Model : 1. Entity, adalah sesuatu yang dapat dibedakan dalam dunia nyata di mana informasi yang berkaitan dengannya dikumpulkan. Entity set adalah kumpulan entity yang sejenis. Entity set dapat berupa : Entity yang bersifat fisik, yaitu entity yang dapat dilihat. Contohnya : dosen, mahasiswa, rumah, kendaraan dan lain–lain. Entity yang bersifat konsep atau logic, yaitu entity yang tidak dapat dilihat. Contohnya : pekerjaan, perusahaan, rencana, matakuliah dan lain–lain. Simbol yang digunakan untuk entity adalah persegi panjang. Simbol Entity 2. Relationship, adalah hubungan yang terjadi antara satu atau lebih entity. Relationship tidak mempunyai keberadaan fisik, kecuali yang mewarisi hubungan antara entity tersebut. Relationship set adalah kumpulan relationship yang sejenis. Simbol yang digunakan untuk relationship adalah bentuk belah ketupat, diamond atau rectangle. Simbol Relationship 15 Modul Sistem Basis Data - Universitas Semarang Contoh : dosen mengajar mahasiswa 3. Atribut, adalah karakteristik dari entity atau relationship yang menyediakan penjelasan detail tentang suatu relationship tersebut. Attribute value (nilai atribut) adalah suatu data aktual atau informasi yang disimpan di suatu atribut di dalam suatu entity atau relationship. Terdapat dua jenis atribut, yaitu : Identifer (key), untuk menentukan suatu entity secara unik. (dengan memberi garis bawah) Descriptor (nonkey attribute), untuk menentukan karakteristik dari suatu entity yang tidak unik. Simbol yang digunakan untuk atribut adalah bentuk oval. Simbol Atribute Contoh : NIM Jurusan Mahasiswa Nama 4. Indicator Tipe a. Indicator tipe associative object, berfungsi sebagai suatu objek dan suatu relationship. Contoh : pelanggan beli barang Menjadi : pelanggan barang beli 16 Modul Sistem Basis Data - Universitas Semarang b. Indicator tipe supertipe, terdiri dari suatu object dan satu subkategori atau lebih yang dihubungkan dengan satu relationship yang tidak bernama. Contoh : pegawai pegawai harian pegawai bulanan Keterangan : Pegawai dikategorikan menjadi 2, yaitu : - pegawai harian - pegawai bulanan Pegawai mempunyai : NIP, Nama, Tahun Masuk, Alamat, Nama Supervisor Pegawai Harian : - Upah perjam - Upah Lembur - Waktu mulai bekerja Pegawai Bulanan : - Gaji perbulan - Presentasi bonus tahunan 5. Cardinality Ratio atau Mapping Cardinality, adalah menjelaskan hubungan batasan jumlah keterhubungan satu entity dengan entity lainnya atau banyaknya entity yang bersesuaian dengan entity yang lain melalui relationship. Jenis Cardinality Ratio : 1. One to One (1:1), adalah hubungan satu entity dengan satu entity Yang berarti setiap entitas pada himpunan X berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas Y dan begitu juga sebaliknya setiap entitas pada himpunan entitas Y berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas X X1 Y1 X2 Y2 X3 Y3 X4 Y4 17 Modul Sistem Basis Data - Universitas Semarang Contoh : nm_dos alamat_dos 1 dosen kode_jur 1 mengepalai m nm_jur jurusan kode_dos kode_dos kode_jur 2. One to Many (1:N) adalah hubungan satu entity dengan banyak entity. Yang berarti setiap entitas pada himpunan entitas X berhubungan dengan banyak entitas pada himpunan entitas Y, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas Y berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas X. Y1 X1 Y2 X2 Y3 Y4 X3 Y5 Contoh : kode_kul alamat_dos nm_dos dosen 1 mengajar N nm_kul mata kuliah kode_dos kode_dos tempat kode_kul 18 waktu sks Modul Sistem Basis Data - Universitas Semarang 3. Many to One (N:1), adalah hubungan banyak entity dengan satu entity. Yang berarti setiap entitas pada himpunan entitas X berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas Y, tetapi tidak sebaliknya dimana setiap entitas pada himpunan Y berhubungan dengan banyak entitas pada himpunan entitas X X1 Y1 X2 Y2 X3 X4 Y3 X5 Contoh : nm_mhs kode_dos alamat_mhs N 1 mempunyai mahasiswa nm_dos e Dosen wali nim alamat_dos kode_dos e nim 4. Many to Many (N:N), adalah hubungan banyak entity dengan banyak entity. Yang berarti setiap entitas pada himpunan entitas X dapat berhubungan dengan banyak entitas pada himpunan entitas Y dan begitu juga sebaliknya setiap entitas pada himpunan entitas Y dapat berhubungan dengan banyak entitas pada himpunan entitas X. X1 Y1 X2 Y2 X3 Y3 X4 Y4 19 Modul Sistem Basis Data - Universitas Semarang Contoh : kode_kul nama_mhs nim nm_kul N N mempelajari mahasiswa mata kuliah sks nim kode_kul indeks_nil 6. Diagram E–R dalam notasi lain Pilihan 1 Jenis Kerelasian Simbol yang digunakan 1–ke–1 1–ke–n n–ke–1 n–ke–n Pilihan 2 Jenis Kerelasian 1–ke–1 1–ke–n n–ke–1 n–ke–n Simbol yang digunakan 1 1 1 n n 1 n n 20 Modul Sistem Basis Data - Universitas Semarang Pilihan 3 Jenis Kerelasian Simbol yang digunakan 1–ke–1 1–ke–n n–ke–1 n–ke–n 7. Diagram E–R dengan Kamus Data Pada sebuah sistem yang ruang lingkupnya lebar dan kompleks, penggambaran atribut–atribut dalam sebuah Diagram E–R seringkali malah mengganggu hubungan (relasi) terjadi antara objek–objek (himpunan entitas) tersebut. Kita dapat memisahkan pendeklarasian atribut–atribut ini dari Diagram E–R dan menyatakan dalam sebuah kamus data. Kamus data berisi daftar atribut yang diapit kurang kurawal. Atribut yang berfungsi sebagai key juga dibedakan dengan atribut yang bukan key dengan menggaris bawahi atribut tersebut. Karena itu, diperbolehkan untuk menggambar Diagram E–R dengan tambahan Kamus Data seperti berikut ini: mahasiswa N mempelajari N matakuliah N mengajar 1 dosen Kamus Data : mahasiswa = {nim, nama_mhs, alamat, tgl_lhr} matakuliah = {kode_kul, nama, sks} dosen = {kode_dos, nama_dos, alamat_dos} mempelajari = {nim, kode_kul} mengajar = {kode_kul, kode_dos, waktu, tempat} 8. Representasi dari entity set Entity set direpresentasikan dalam bentuk tabel dan nama yang unique. Setiap tabel terdiri dari sejumlah kolom. Masing–masing kolom diberi nama yang unique pula. Entity set terbagi atas : 21 Modul Sistem Basis Data - Universitas Semarang a. Strong Entity Sets (Himpunan Entitas Kuat), himpunan entitas yang dilibatkan dalam ERD adalah himpunan entitas kuat/bebas. Himpunan entitas demikian tidak memiliki ketergantungan dengan himpunan entitas lainnya. Himpunan entitas mahasiswa, dosen dan kuliah sebagaimana ditunjukkan dalam contoh sebelumnya merupakan himpunan entitas kuat yang masing–masing dapat berdiri sendiri. Sebagai himpunan entitas yang kuat/bebas, kemunculan entitas–entitas di dalamnya tidak tergantung pada keberadaan entitas di himpunan entitas yang lain. Ketiga himpunan entitas tersebut juga bukan merupakan bagian (sub) dari himpunan entitas yang lain. Namun demikian dalam pembuatan ERD tidak selalu dapat melibatkan himpunan entitas seperti itu. Ada kalanya juga melibatkan himpunan entitas lemah (weak entity sets). Strong Entity Sets digambarkan dengan empat persegi panjang. b. Weak Entity Sets (Himpunan Entitas Lemah), himpunan entitas lemah berisi entitas–entitas yang kemunculannya tergantung pada eksistensinya dalam sebuah relasi terhadap entitas lain (strong entity). Himpunan entitas lemah biasanya tidak memiliki atribut yang dapat berfungsi sebagai key, yang benar–benar unik. Weak entity sets digambarkan dengan persegi panjang bertumpuk. Sebagai contoh, untuk melengkapi data mahasiswa kita juga ingin mengelola data hobi dan orang tua.. Dari fakta, dapat kita lihat bahwa entitas mahasiswa berelasi satu ke satu dengan entitas orang tua dan berelasi satu ke banyak dengan entitas hobi, sehingga dapat digambarkan ERD sebagai berikut : nim orang tua memiliki 1 nama ` 1 nim nama_ortu Nama_ortu alm_ortu mahasiswa hobi nim alamat hobi 1 tlahir N menyenangi 22 hobi Modul Sistem Basis Data - Universitas Semarang 9. Spesialisasi dan Generalisasi Entitas–entitas yang ada pada Himpunan Entitas Dosen dapat dibagi menjadi dua kelompok yaitu Dosen Tetap dan Dosen Tidak Tetap. Kelompok Dosen Tetap bisa memiliki atribut–atribut tambahan seperti nip, pangkat dan tgl_masuk. Bagi kelompok Dosen Tidak Tetap atribut–atribut tersebut tidak relevan. Atribut tambahan bagi dosen tidak tetap adalah nama_kantor dan alamat_kantor yang menujukkan lokasi tempat dosen bekerja secara permanen. Adanya perbedaan atribut ini menyebabkan entitas–entitas dosen tersebut tidak mungkin disatukan dalam sebuah himpunan entitas saja. Karena itu, pemisahan (spresialisasi) entitas bisa dilakukan. Jika kita memulai dari sebuah himpunan entitas lalu kemudian melakukan pengelompokan yang melahirkan himpunan entitas baru (proses top down) maka kita sedang melakukan SPESIALISASI. dosen Top-down ISA Dosen tidak tetap Dosen tetap Gambar Spesialisasi Bisa juga yang terjadi sebaliknya, diketahui entitas–entitas dalam himpunan entitas mahasiswa sebenarnya dapat dibagi menjadi dua kelompok, yaitu mahasiswa S1 dan D3. Tetapi pengelompokan ini tidak dipertegas dengan adanya perbedaan atribut. Karena tidak tegasnya perbedaan atribut dari dua kelompok, maka kelompok–kelompok entitas tersebut akan disatukan dalam sebuah himpunan entitas dengan atribut–atribut yang sama. Jadi pendekatannya bersifat bottom-up, mula–mula terpisah kemudian menjadi satu. Proses demikian disebut GENERALISASI. Mahaiswa Bottom-up ISA Mahasiswa S1 Mahasiswa D3 Gambar Generalisasi 23 Modul Sistem Basis Data - Universitas Semarang Dengan demikian, spesialisasi dan generalisasi merupakan dua proses yang berlawanan. Yang ditekan dalam spesialisasi adalah perbedaan antar kelompok entitas, sedang dalam generalisasi yang ditekakan adalah persamaannya. 10. Agregasi Dalam realitas dapat dijumpai adanya relasi yang secara kronologis mensyaratkan telah adanya relasi lain. Dengan kata lain, sebuah relasi terbentuk tidak hanya dari entitas tapi juga mengandung unsur dari relasi lain. Hal ini yang disebut Agregasi. Agregasi menggambarkan sebuah himpunan relasi yang secara langsung menghubungkan sebuah himpunan entitas dengan sebuah himpunan relasi dalam Diangan E–R N mahasiswa nenpelajari N kuliah N kode_kul nim mengikuti nilai kode_pra N praktikum kode_pra nama_pra jumlah_jam 11. Pengkodean Internal Ada 3 (tiga) bentuk pengkodean yang dapat kita pilih, yaitu : Sekuensial Di mana pengkodean dilakukan dengan mengasosiasikan data dengan kode terurut (biasanya berupa bilangan asli atau abjad). Misalnya data nilai mutu kuliah (“Memuaskan”, “Baik”, “Cukup”, “Kurang”, “Buruk”) dikodekan dengan “A”, “B”, “C”, “D” dan “E”) Mnemonic Di mana pengkodean dilakukan dengan membentuk suatu singkatan dari data yang ingin dikodekan, misalnya jenis kelamin (“Laki–Laki” dan “Perempuan”) dikodekan dengan “L” dan “P”. 24 Modul Sistem Basis Data - Universitas Semarang Blok Di mana pengkodean dinyatakan dalam format tertentu, misalnya data No Induk Mahasiswa (NIM) dengan format XXYYYY yang terbentuk atas XX = dua digit terakhir angka tahun masuk dan YYYY = no urut mahasiswa. 12. Langkah–langkah membuat E–R Diagram : Tentukan entity–entity yang diperlukan. Tentukan relationship antar entity–entity. Tentukan cardinality ratio dan participation constraint. Tentukan atribut–atribut yang diperlukan dari tiap entity. Tentukan key di antara atribut–atribut. Hindari penamaan entity, relationship dan atribut yang sama. 3.2 Semantic Model Hampir sama dengan entity relationship model. Relasi antar objek dasar tidak dinyatakan dengan simbol tetapi menggunakan kata–kata (semantic). Sebagai contoh, dengan menggunakan relasi di bank X sebagaimana contoh sebelumnya, dalam semantic model adalah seperti terlihat pada gambar berikut : Bank A adalah nasabah Melayani adalah Mempunyai Customer Tabungan Saldo No Tabungan No Tabungan Andika Alamat Tanda – tanda yang digunakan dalam semantic model adalah sebagai berikut : Menunjukkan adanya relasi Menunjukkan atribut 3.3 Model Relational Model basis data relational sering pula disebut sebagai model relational atau basis data relasional. Model basis data ini ditemukan/diperkenalkan pertama kali oleh E. F. Codd. Model basis data menujukkan suatu cara/mekanisme yang digunakan untuk mengelola/mengorganisasi data secara fisik dalam memori sekunder yang 25 Modul Sistem Basis Data - Universitas Semarang akan berdampak pula pada bagaimana kita mengelompokkan dan membentuk keseluruhan data yang terkait dalam sistem yang sedang kita tinjau. Hingga saat ini, model basis data yang paling diterapkan digunakan adalah model basis data relasional. Kemudahan dalam penerapan dan kemampuannya dalam mengakomudasi berbagai kebutuhan pengelolaan basis data yang ada di dunia nyata (real world) merupakan alasan mengapa model ini lebih populer untuk diterapkan. Kemudahan merupakan sesuatu yang sangat penting, karena di samping aspek pemodelan yang harus digunakan, masih banyak aspek lain di dalam lingkup pengelolaan basis data yang juga menuntut perhatian serius dari siapa saja yang berkecimpung dalam kegiatan itu. Definisi Basis Data Relational Pada model relational, basis data akan “disebar” (dipilah–pilah) ke dalam berbagai tabel 2 dimensi. Setiap tabel selalu terdiri atas lajur mendatar yang disebut dengan baris data (row/record) dan lajur vertikal yang biasa disebut dengan kolom (column/field). Di setiap pertemuan basis data dan kolom itulah , item–item data (satuan data terkecil) ditempatkan. Dalam kehidupan kita sehari–hari, tabel merupakan bentuk natural (alamiah) dalam menyatakan fakta/data yang sering kita gunakan. Itulah sebabnya, model ini lebih mudah kita terapkan ketimbang model basis data yang lain. Contoh : Model Data Relational Relasi antara Tabel Mahasiswa dan Tabel Mata Kuliah NIM G.211.0105 G.211.0106 G.211.0107 G.211.0108 G.211.0109 G.211.0110 NAMA Eka Riana Dedi Wijayanto Eka Indrayana Roosmalia Indah Tenny Widiana Winda Astuti KODE_MK SI4001 SI4002 SI4003 SI4004 SI4002 SI4003 KODE_MK SI4001 SI4002 SI4003 SI4004 NAMA_MK Komunikasi Data Sistem Basis Data Multimedia Struktur Data Istilah dalam model data relational : 1. Relasi (file/tabel/entitas) adalah sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris. Datanya berisi sekumpulan tuple yang bervariasi pada setiap waktu. 26 Modul Sistem Basis Data - Universitas Semarang 2. Atribut (field/kolom) adalah kolom di sebuah relasi. 3. Tuple/record adalah baris di sebuah relasi 4. Domain adalah sekumpulan nilai data yang mempunyai arti dan tipe yang sama, setiap atributnya harus didefinisikan tepat satu domain. 5. Degree/derajat adalah jumlah atribut atau kolom dalam sebuah relasi. 6. Cardinality adalah jumlah tuple atau baris dalam sebuah relasi. Relasi Mahasiswa Mahasiswa NIM G.211.0105 G.211.0106 G.211.0107 G.211.0108 G.211.0109 G.211.0110 Atribute (NIM, NAMA, ALAMAT, KOTA) Tuple (1) NAMA Eka Riana Dedi Wijayanto Eka Indrayana Roosmalia Indah Tenny Widiana Winda Astuti ALAMAT Jl. Mawar No. 20 Jl. Melati No. 30 Jl. Tulip No. 45 Jl. Flamboyan No. 55 Jl. Anggrek No. 15 Jl. Krisan No. 25 KOTA Semarang Semarang Semarang Salatiga Solo Semarang Cardinality (6) Domain, misalnya : Domain NIM memiliki character ((10), Domain NAMA memiliki character (20) Derajat atau degree (4) Relation Key : 1. Candidate Key yaitu satu atau gabungan minimal atribut yang bersifat unik yang dapat digunakan untuk mengidentifikasi/membedakan setiap record dalam relasi. Dalam setiap relasi minimal mempunyai sebuah kunci kandidat. 2. Primary Key yaitu bagian/salah satu dari candidat key yang dipilih/digunakan sebagai kunci utama untuk mengidentifikasi/membedakan setiap record dalam relasi. Dalam setiap relasi harus mempunyai primary key dan jumlahnya hanya satu buah. Primary key harus unik dan tidak boleh null. 3. Alternative Key yaitu bagian dari candidat key yang tidak dipilih/digunakan sebagai primary key. Dalam setiap relasi tidak harus mempunyai alternatif key. Hal ini bergantung pada jumlah candidat key yang ada. Jika jumah dalam sebuah relasi lebih dari satu, maka salah satu akan digunakan sebagai primary key dan satu yang lainnya menjadi alternatif key. Tetapi apabila sebuah relasi hanya memiliki sebuah candidat key, maka ia akan digunakan sebagai primary key dan tidak ada alternatif key. 4. Foreign Key yaitu satu atau gabungan sembarang atribut yang menjadi primary key dalam relasi lain yang mempunyai hubungan secara logik. Foreign key tidak harus dimiliki dalam sebuah relasi. Jika foreign key muncul dalam sebuah relasi, 27 Modul Sistem Basis Data - Universitas Semarang maka foreign key tersebut akan menunjukkan adanya kerelasian antar relasi dalam basis data. 3.4 Model Jaringan Sebuah basis data dengan model jaringan akan terdiri atas sekumpulan record yang dihubungkan satu sama lain melalui link. Sebuah record setara dengan entitas. Setiap record adalah sekumpulan field (atribut), yang masing–masing hanya berisi sebuah nilai data. Sebuah link merupakan sebuah gabungan diantar dua record. Jadi, sebuah link bisa dianggap sebagai bentuk terbatas (biner) relasi. Contoh data dan link yang terjadi antara record mahasiswa dan record matakuliah : G.211.0105 G.211.0106 G.211.0107 Eka Riana SI4001 Komunikasi Data SI4002 Sistem Basis Data Dedi Wijayanto SI4004 Struktur Data SI4003 Multimedia Eka Indrayana Link diatas menunjukkan bahwa mahasiswa ”Eka Riana” mengambil matakuliah “Komunikasi Data’, mahasiswa “Dedi Wijayanto” mengambil matakuliah “Sistem Basis Data” dan “Struktur Data”, mahasiswa “Eka Indrayana” mengambil matakuliah “Struktur Data” dan “Multimedia”. Diagram struktur data merupakan skema yang menyatakan desain basis data jaringan. Diagram tersebut terdiri atas dua komponen utama : kotak yang menunjukkan tipe record dan garis yang menunjukkan link. 3.5 Model Hierarki Sebuah basis data dengan model Hierarki akan terdiri atas sekumpulan record yang dihubungkan satu sama lain melalui link yang membentuk suatu struktur hierarki. Pengertian record dan link di sini sama dengan pengertian record pada model jaringan. Dengan memanfaatkan pedeklarasian struktur yang sama dengan yang ditunjukkan sebelumnya. A B E D C F G 28 H I Modul Sistem Basis Data - Universitas Semarang Parent A adalah B, C dan D B adalah E dan F D adalah G, H dan I Child B, C dan D adalah A E dan F adalah B G, H dan I adalah D Berikut ini adalah contoh yang mengilustrasikan hubungan antara record–record mahasiswa dan record–record matakuliah : G.211.0105 Eka Riana G.211.0107 G.211.0106 SI4001 Dedi Wijayanto SI4004 Komunikasi Data SI4002 Sistem Basis Data Eka Indrayana SI4004 Struktur Data SI4003 Multimedia Struktur Data Dapat dilihat bahwa himpunan record–record mahasiswa dan matakuliah diorganisasi dalam sebuah struktur pohon (tree–structur) dengan root yang merupakan record dummy. Dari struktur pohon tersebut dapat disimpulkan bahwa tipe record matakuliah berada dibawah tipe record mahasiswa secara hierarki. Seiring pula disebutkan, tipe record matakuliah merupakan child dan tipe record mahasiswa merupakan parent dalam struktur tersebut. Diagram struktur pohon (tree – structur diagram) merupakan skema yang digunakan untuk basis data hierarki. Diagram tersebut terdiri atas dua komponen utama : kotak yang menunjukkan tipe record dan garis yang menunjukkan link. 29