Modul 2 : Pemodelan Data - IvanSholana/PerancanganBasisData GitHub Wiki
Definisi Pemodelan Data
Model data adalah sebuah struktur yang mendasari basis data berupa alat konseptual yang mendeskripsikan data, hubungan antar data, dan batasan-batasan dari data. Pemodelan data digunakan karena memiliki beberapa manfaat seperti :
- Mengurangi kesalahan dalam pengembangan perangkat lunak.
- Efisiensi kecepatan dalam mendesain dan membuat basis data.
- Mencipatakan konsistensi dalam dokumentasi data dan seluruh sistemnya.
- Mempermudah pemahaman terhadap database.
Secara umum, pemodelan data terbagi menjadi 3 kelompok yaitu
Object-Based Data Model
,Record-Based Data Model
, danPyhsical Data Model
.
Object-Based Data Model
Object based data model merupakan pemodelan data yang memiliki konsep-konsep objek di dalamnya seperti entitas
, atribut
, dan relasi
atau hubungan antar entitas. Selain itu juga terdapat penggunaan konsep encapsulasi
atau suatu objek seakan berupa sebuah kapsul berisikan komponen data sehingga satu objek akan terpisah satu sama lain. Pada Object based data model, terbagi kembali menjadi 3 jenis data model yaitu Entity Relationship Model
, Semantic Data Model
, dan Object Oriented Data Model
-
Entity Relationship Model
ER Model
merupakan model data yang mendeskripsikan data berdasarkanentity
,atribut
danrelationship
- Entity merupakan sebuah keberadaan sesuatu secara fisik atau konseptual yang berada di dunia nyata. Contoh
Entity
secara fisik dapat berupa mahluk atau benda, dan contohEntity
secara konseptual dapat berupa sebuah pekerjaan, kursus, atau mata pelajaran. - Atribut merupakan sebuah properti atau ciri yang dimiliki dan mendiskripsikan sebuah
entity
. Atribut memiliki beberapa tipa yang terdiri dari :Composite Atribute
, merupakan atribut yang dapat dibagi menjadi beberapa atribut atau terdiri dari beberapa atribut. Contohnya adalah atribut nama yang dapat memiliki atribut nama depan, nama belakang, dan nama tengah.Simple Atribute
, merupakan atribut yang tidak dapat dibadi lagi. Contoh simple atribut adalah umur.Single Valued Atribute
, merupakan atribut yang hanya dapat memiliki satu buah nilai atau value. Contoh single value atribute adalah umur.Multi Valued Atribute
, merupakan atribut yang dapat memiliki lebih dari satu nilai atau value. Contoh multi valued atribute adalah gelar.Derived Atribute
, merupakan atribut yang nilai atau valuenya dapat diambil dari atribut lain. Contoh dari derived atribute adalah umur yang nilainya dapat diambil dari atribut tanggal lahir.Stored Atribute
, merupakan atribut asal dari nilai milik derived valued atribute.Complex Atribute
, merupakan atribut yang memiliki multi valued atribut yang dilambangkan dengan tanda{}
dan composite atribut yang dilambangkan dengan()
. Contoh :{CollageDegree(Collage, Year, Degree, Field)}
.Key Atribute
, merupakan atribut yang memiliki nilai yang uniqe dan bertugas untuk membedakan satu data dengan data yang lain.
- Entity merupakan sebuah keberadaan sesuatu secara fisik atau konseptual yang berada di dunia nyata. Contoh
-
Semantic Data Model
Semantic Data Model
merupakan pemodelan data yang mirip denganER Model
, namun dalam relasinya ditambahkan penjelasan mengenai keterhubungan yang terjadi antaraentity
denganentity
lainnya. -
Object Oriented Data Model
Object Oriented Data Model
adalah pemodelan data yang berorientasikan terhadap objek untuk merepresentasikan struktur model datanya. Oleh karena itu, dalam pemodelannyaobject oriented data model
menggunakanobject
,atribut
,class
, danmethod
dalam struktur model datanya. Selain itu, juga terdapat konsep/metode sepertiencapsulation
daninheritence
.
Record Based Data Model
Pemodelan data yang menggunakan record
atau baris kolom untuk menjelaskan hubungan antar datanya. Dalam record based data model
terdapat beberapa tipe pemodelannya, yaitu :
-
Model Hirarki
Dalam pemodelan data menggunakan model hirarki, digunakan pemodelan hubugan antar data secara bertingkat dalam bentuk pohon atau
tree
dan tiap-tiap datanya digambarkan dalam bentuknode
. Dalam model hierarkinode
dengan kedudukan tertinggi disebut denganroot
dannode
yang lebih tinggi darinode
lainnya dan masih ada keterhubungan disebutparrent
sedangkan yang lebih rendah disebutchild
. Dalam pemodelan hirarki relation yang dapat terjadi hanyalahone-to-one
danone-to-many
sehingga dengan metode ini dapat terjadi redudancy data. -
Model Jaringan
Dalam pemodelan ini mirip dengan
model hirarki
namun menyelesaikan permasalahan redudancy data yang terjadi karena menerapkan metode relasimany-to-many
. -
Model Relasional
Model data ini merepresentasikan data dalam kumpulan tabel. Tabel di dalam relasional model disebut juga dengan
relation
, sehingga model relasional merepresentasikan data dalam bentuk kumpulan relasi. Tiap tabel terdiri dari baris dan kolom. Kolom disebut denganatributes
dan baris disebut dengantuple
. Selain itu juga terdapat istilahdomain
yaitu rentang nilai yang dapat digunakan untuk sebuah atribut dan entity.
-
Contoh dari
domain
adalah : Untuk menyusun sebuah nama maka domainnya adalah seluruh character alfabet yang memungkinkan untuk menyusun string dari nama.Kemudian juga terdapat
atomic value
yaitu nilai yang tidak dapat dibagi lagi,atomic value
mirip dengansimple atribute
. Kemudian adalahrelation schema
yang merupakan deskripsi darirelation
atau tabel, dinotasikan denganR
untuk nama darirelation schema
dan(A1,A2,....An)
untuk list dari atributnya dan terdapat juga istilahdegree
atau jumlah dari atribut suatu relation. -
Contoh Relation Schema :
Student(Name,NIM,IPK)
, memilikidegree 6
.Istilah lain yang terdapat di dalam relational data model adalah
kardinasilatas
atau jumlah darituple
pada sebuahrelation
. Contoh darikardinalitas
adalah sebagai berikut :NO NAMA LENGKAP 1 IVAN SHOLANA 2 SOEHARTO 3 JOKO WIDODO 4 MEGA WATI Pada
relation
di atas nilai darikardinalitas
adalah 4 karena jumlah darituple
adalah 4. Terdapat juga istilahRelation of Schema
atau kumpulan relation dan schema dari sebuahrelational database
. Berikut merupakan contoh dari Relational Database secara keseluruhan :
ER Diagram (Entity Relationship Diagram)
ER Diagram merupakan diagram yang digunakan untuk melakukan pemodelan data dalam metode Entity Relationship Model. Dalam diagram ini, unsur-unsur penyusun pemodelan data disimbolkan menggunakan bentuk bangun dasar sebagai berikut :
-
Entintas, merupakan segala sesuatu yang datanya dapat disimpan yang terdiri dari bentuk fisik atau sebuah konsep. Dalam ERD entitas disimbolkan dengan bentuk persegi panjang. Entitas secara tingkatan terbagi menjadi 2 yaitu :
entity super type
yang merupakan perent darientity sub type
yang merupakan child. Kemudian, secara sifat entity juga terbagi menjadientitas reguler
yang keberadaannya tidak bergantung pada entitas lain, sebaliknyaentitas dependen
memiliki ketergantungan dengan entitas lain. -
Atribut, merupakan keterangan atau ciri yang mendekripsikan sebuah entitas. Atribut merupaka bagian yang disimpan di dalam sebuah entitas. Pada ERD, atribut disimbolkan dengan
elips
. -
Relationship, merupakan hubungan antar satu atau lebih entitas. Pada ERD,
relationshop
disimbolkan dengan bentuk belah ketupat.Pada ERD, relationship terbagi menjadi beberapa macam yaitu antara lain
-
One-to-One, hubungan antar entity dengan satu entity hanya dapat terhubung dengan satu entity lain. Contoh : Satu orang hanya dapat memiliki satu pasport.
-
One-to-Many dan Many-to-One, hubungan antar entity dengan satu entity dapat terhubung dengan banyak entity lain, namun entity lain tersebut hanya dapat terhubung dengan satu entity saja. Contoh : Satu dosen dapat mengajar banyak mata kuliah, namun satu mata kuliah hanya dapat diajar oleh satu dosen.
-
Many-to-Many, hubungan antar entity yang mana antar entity dapat terhubung lebih dari satu entity. Contoh : Satu jenis barang dapat dipesan oleh banyak customer dan customer dapat memesan banyak jenis barang.
-
Berikut merupakan contoh diagram ERD secara lengkap :