Arsip Blog

Kategori

Total Pengunjung

Rudy Octavianto. Diberdayakan oleh Blogger.

About

Rudy Octavianto | FTI UKSW '12 Owner of chrisant movies and Afterschool Photography #GGMU

ERD ( ENTITY RELATIONSHIP DIAGRAM )

Senin, 08 April 2013
Posted by Afterschool Photograph

      



                                           Entity Relationship Diagram

ERD / Entity Relationship Diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan satu dengan penyimpan yang lain. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang memiliki hubungan satu sama lain, semantiknya, serta batasan konsistensi. Model data terdiri dari model hubungan entitas dan model relasional. Diagram hubungan entitas ditemukan oleh Peter Chen dalam buku Entity Relational Model-Toward a Unified of Data. Pada saat itu diagram hubungan entitas dibuat sebagai bagian dari perangkat lunak yang juga merupakan modifikasi khusus, karena tidak ada bentuk tunggal dan standar dari diagram hubungan entitas.

ERD adalah suatu pemodelan dari basisdata relasional yang didasarkan atas persepsi di dalam dunia nyata, dunia ini senantiasa terdiri dari sekumpulan objek yang saling berhubungan antara satu dengan yang lainnya. Suatu objek disebut entity dan hubungan yang dimilikinya disebut relationship. Suatu entity bersifat unik dan memiliki atribut sebagai pembeda dengan entity lainnya. Contoh : entity Mahasiswa, mempunyai atribut nama, umur, alamat, dan nim.

Diagram hubungan entitas digunakan untuk mengkonstruksikan model data konseptual, memodelkan struktur data dan hubungan antar data dan mengimplementasikan basis data secara logika maupun secara fisik dengan DBMS (Database Management system). Dengan diagram hubungan entitas ini kita dapat menguji model dengan mengabaikan proses yang harus dilakukan. Diagram hubungan entitas dapat membantu dalam menjawab persoalan tentang data yang diperlukan dan bagaimana data tersebut saling berhubungan.
Simbol Simbol dalam Entity Relationship Diagram

Simbol–simbol yang digunakan dalam entity relationship diagram adalah sebagai berikut ini :

1. Entity (rectangler)
Digunakan untuk menggambarkan obyek yang diidentifikasikan ke dalam lingkungan.

2. Atribut (oval)
Digunakan untuk menggambarkan elemen-elemen dari suatu entity, yang menggambarkan karakter entity.

3. Hubungan (diamond)
Entity dapat berhubungan satu sama lain. Hubungan ini disebut dengan relationshiP

4. Garis (line)
Digunakan untuk menghubungkan entity dengan relasi/hubungan, maupun entity dengan atribut.

Tahapan Perancangan ERD
1.       Identifikasi dan menetapkan seluruh himpunan Entitas
2.       Menentukan Atribut Key dari masing-masing himpunan entitas.
3.       Identifikasi dan menetapkan seluruh himpunan Relasi di antara himpunan Entitas yang ada beserta kunci tamunya (foreign key).
4.       Derajat relasi untuk setiap himpunan relasi.
5.       Melengkapi himpunan relasi dengan atribut- atribut deskriptif.

1.       Identifikasi dan menetapkan seluruh himpunan Entitas
                Sebagaimana telah disebutkan, himpunan entitas mewakili sebuah kumpulan entitas yang jelas eksistensinya dan dapat berdiri sendiri. Akan tetapi, himpunan entitas mana saja yang kita pilih tidak hanya tergantung pada jenis topik/sistem yang kita tinjau, tetapi juga ditentukan oleh seberapa jauh ruang lingkup yang kita ingin akomodasi dalam rancangan basis data. Dalam lingkup sistem perkuliahan sesungguhnya ada banyak sekali himpunan entitas yang bisa kita libatkan seperti Mahasiswa, Kuliah, Praktikum, Dosen, Asisten, Ruang, Jurusan dll.
Namun dalam lingkup sistem perkuliahan yang sederhana, kita dapat identifikasi adanya tiga buah himpunan entitas , yaitu Mahasiswa, Kuliah dan Dosen


2.       Menentukan Atribut Key dari masing-masing himpunan entitas.
Atribut-atribut key yang kita sertakan di masing-masing himpunan entitas merupakan atribut terpenting yang dapat mengidentifikasi(membedakan) setiap entitas yang ada didalamnya. Keberadaan atribut ini juga akan  memberikan keyakinan tentang kebenaran eksistensi dari setiap himpunan entitas. Salah satu ciri dari himpunan entitas adalah kemandiriannya. Dengan mudah dapat kita sepakati, bahwa pengidentifikasi setiap entitas secara unik, dihimpunan entitas Mahasiswa adalah atribut nim, lalu dihimpunan entitas Kuliah adalah atribut kode_kul, dan dihimpunan entitas Dosen adalah atribut nama_dosen

3.       Identifikasi dan menetapkan seluruh himpunan Relasi di antara himpunan Entitas yang ada beserta kunci tamunya (foreign key).
Langkah ke-3 ini sangat penting dalam pembentukan Diagram E-R. Ketepatan dalam menentukan relasi yang terjadi diantara himpunan entitas akan menentukan kualitas rancangan basis data yang kita bangun. Relasi yang kita tetapkan harus dapat mengakomodasi semua fakta yang ada dan menjamin kebutuhan pengajian data, akan tetapi dalam sisi lain juga harus dibuat seoptimal mungkin agar tidak memakai ruang penyimpanan yang lebih besar. Untuk itulah , relasi yang sifatnya tidak langsung harus ditiadakan. Himpunan relasi mempelajari dan mengajar merupakan relasi langsung yang terjadi diantara himpunan entitas Mahasiswa dan Kuliah serta antara himpunan entitas Dosen dan Kuliah , dapat di gambarkan sebagai berikut:
Himpunan relasi Mempelajari akan dapat mengakomodasi adanya fakta tentang sejumlah Mhs yang menganmbil mata kuliah tertentu, demikian juga dengan himpunan relasi mengajar yang dapat mengakomodasi fakta tentang dosen yang mengajar mata kuliah tertentu.

4.       Menentukan derajat relasi untuk setiap himpunan relasi.
Karena memang fakta memperlihatkan bahwa seseorang mahasiswa boleh mengambil beberapa mata kuliah sekaligus, maka derajat relasi antara himpunan entitas mahasiswa & kuliah adalah banyak ke banyak. Sementar itu fakta yang menunjukan bahwa dosen dapat mengajar beberapa mata kuliah , maka derajat relasi antara himpunan entitas dosen dan kuliah adalah satu ke banyak, maka dapat kita gambarka Diagram E-R sebagai berikut:

5.       Melengkapi himpunan relasi dengan atribut- atribut deskriptif
Langkah terakhir ini merupakan langkah pelengkap sehingga tidak seperti langkah-langkah sebelumnya. Keberadaan atribut deskriptif ini merupakan refleksi pengakomodasian terhadap fakta.

Menurut Al Bahra bin Ladjamudin B (2004:189) ERD adalah suatu model jaringan yang menggunakan susunan data yang disimpan dalam sistem secara abstrak. Jadi, jelaslah bahwa ERD ini berbeda dengan DFD yang merupakan suatu model jaringan fungsi yang dilaksanakan oleh sistem. Sedangkan ERD merupakan model jaringan data yang menekankan pada struktur-struktur dan relationship data.
Diagram hubungan entitas atau yang lebih dikenal dengan sebutan ER diagram, adalah notasi grafik dari sebuah model data atau sebuah model jaringan yang menjelaskan tentang data yang tersimpan (data storage) dalam sistem secara abstrak. Diagram hubungan entitas tidak menyatakan bagaimana memanfaatkan data, membuat data, mengubah data, dan menghapus data.
Elemen-elemen Diagram Hubungan Entitas
  1. Entity
Pada ER diagram, entity digambarkan dengan sebuah bentuk persegi panjang. Entity adalah sesuatu apa saja yang ada di dalam sistem, nyata maupun abstrak dimana data tersimpan atau dimana terdapat data. Entitas diberi nama dengan kata benda dan dapat dikelompokkan dalam empat jenis nama yaitu orang, benda, lokasi, kejadian (terdapat unsur waktu di dalamnya).
  1. Relationship
Model relasional adalah model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data. Setiap tabel memiliki sejumlah kolom, setiap kolom memiliki nama yang unik. Model relasional memiliki struktur record berformat tertentu dimana masing-masing isinya memiliki tipe-tipe yang berbeda (Misalnya tipe data untuk nomor induk pegawai adalah string, tentu berbeda dengan tipe data untuk nama [misalnya: string] yang panjangnya tidak ditentukan, bergantung pada komputer tempat aplikasi diimplementasikan.
Pada ER diagram, relationship dapat digambarkan dengan sebuah bentuk belah ketupat. Relationship adalah hubungan alamiah yang terjadi antara entitas. Pada umumnya penghubung (Relationship) diberi nama dengan kata kerja dasar, sehingga memudahkan untuk melakukan pmbacaan relasinya (bisa dengan kalimat aktif atau kalimat pasif). Penggambaran hubungan yang terjadi adalah sebuah bentuk belah ketupat dihubungkan dengan dua bentuk empat persegi panjang.
  1. Relationship Degree
Relationship degree atau derajat relationship adalah jumlah entitas yang berpartisipasi dalam satu relationship. Derajat relationship yang sering dipakai di dalam ERD:
· Unary Relationship
Unary relationship adalah model relationship yang terjadi diantara entity yang berasal dari entity set yang sama. Sering juga disebut sebagai Recursive Relationship atau Reflective Relationship.
· Binary Relationship
Binary relationship adalah model relationship antara instance-instance dari suatu tipe entitas (dua entity yang berasal dari entity yang sama). Relationship ini paling umum digunakan dalam pembuatan model data.
· Ternary Relationship
Ternary relationship merupakan antara instance-instance dari tiga tipe entitas secara serentak.
  1. Atribut Value
Atribut value atau nilai attribute adalah suatu occurrence tertentu dari sebuah attribute di dalam suatu entity atau relationship. Ada dua jenis atribut:
· Identifier (key) digunakan untuk menentukan suatu entity secara unik (primary key).
· Descriptor (nonkey attribute) digunakan untuk menspesifikasikan karakteristik dari suatu entity yang tidak unik.
  1. Kardinalitas (Cardinality)
Kardinalitas relasi menunjukkan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain. Terdapat tiga macam kardinalitas relasi yaitu:
· One to One
Tingkat hubungan satu ke satu, dinyatakan dengan satu kejadian pada entitas pertama, hanya mempunyai satu hubungan dengan satu kejadian pada entitas yang kedua dan sebaliknya.
Yang berarti setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B, dan begitu juga sebaliknya setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
· One to Many atau Many to One
Tingkat hubungan satu ke banyak adalah sama dengan banyak ke satu. Tergantung dari arah mana hubungan tersebut dilihat. Untuk satu kejadian pada entitas yang pertama dapat mempunyai banyak hubungan dengan kejadian pada entitas yang kedua. Sebaliknya satu kejadian pada entitas yang kedua hanya dapat mempunyai satu hubungan dengan satu kejadian pada entitas yang pertama.
o    One to Many (satu ke banyak)
Yang berarti satu tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
o    Many to One (banyak ke satu)
Yang berarti setiap tupel pada entitas A dapat berhubungan dengan paling banyak satu tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B.
· Many to Many
Tingkat hubungan kebanyakan terjadi jika tiap kejadian pada sebuah entitas akan mempunyai banyak hubungan dengan kejadian pada entitas lainnya. Baik dilihat dari sisi intitas yang pertama, maupun dilihat dari sisi yang kedua.
Yang berarti setiap tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, dan demikian juga sebaliknya, dimana setiap tupel pada entitas B dapat berhubungan dengan banyak tupel pada entitas A.
Macam – macam kunci Relasional
Antara data base dengan relasional merupakan data yang saling berhubungan. Pada dasar nya basis data menggunakan model Relasional karena pada model ini menggunakan kunci untuk membedakan antara satu table dengan table lainnya. Kunci-kunci yang digunakan memiliki fungsi masing-masing dalam membedakan nya. Dibawah ini macam-macam kunci pada sebuah model relasional.

1.       Super Key
Super key merupakan salah satu atau lebih atribut yang dimiliki agar dapat membedakan setiap baris data dalam table secara unik. Seperti contoh nya untuk melihat akademik suatu kampus dbutuhkan yang dapat membuka database akademik tersebut. Kata kunci nya seperti npm, nama, mhs, tanggal lahir.

2.       Candidate Key
Dalam candidate key ini merupakan atribut yang mempunyai nilai unik dan memiliki satu atribut yang dapat mengidentifikasi secara unik suatu kejadian nyata. Ada satu atribut juga yang menyatakan secara tidak langsung dimana tidak dapat membuang atribut tanpa merusak kepemilikan. Contohnya seperti npm dan nama mhs.

3.       Primary Key
Dapat mengidentifikasi secara unik suatu kejadian tapi dapat juga mewakili setiap kejadian dari suatu data. Candidate key dapat mewakili secara menyeluruh terhadap data yang ada karna dapat menjadi peluang Primary Key. Contohnya : npm

4.       Foreign Key
Atribut dengan menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya atribut biasa dari suatu relasi memiliki atribut yg menuju ke Primary Key dari relasi lain. Contohnya : npm, kode_matkul

5.       Alternate Key
Atribut yang tidak terpilih atau tidak dipakai sebagai Primary Key dan Candidate Key

6.       Composite Key
Merupakan atribut gabungan dua key atau lebih yang secara unik dapat mengidentifikasi sebuah tupel.

Untukmelakukanmapping (pemetaan) dariskema ER Diagram keskemarelasiterdapatlangkah-langkah yang harusdiperhatikan.
Langkah-langkah mapping:
-          Untuksetiapentitasskemarelasi R yang menyertakanseluruhSimpleAtributedanSimpleAttributedariCompositeAttribute yang ada, pilihsalahsatuatributkuncisebagaiPrimary Key.
-          Untuk setiap Entitas Lemah, buatlah skema relasi R dengan mengikutsertakan seluruh Simple Attribute. Tambahkan Primary Key dari entitas kuatnya(Owner Entity type) yang akan digunakan sebagai Primary Key bersama-sama Partial Key dari Entitas Lemah (digabung).
-          Untuk setiap relasibinary1:1, tambahkan Primary Key dari sisi yang lebih ”ringan” ke sisi (entitas) yang lebih ”berat”. Suatu sisi dianggap lebih ”berat” timbangannya apabila mempunyai partisipasitotal. Tambahkan juga Simple Attribute yang terdapat pada relasi tersebut ke sisi yang lebih ”berat”.

Apabila kedua partisipasi adalah samatotal, maka kedua entitas tersebut boleh digabung menjadi satu skema relasi.

-          Untuk setiap relasi binary 1:N yang tidak melibatkan entitas lemah, tentukan mana sisi yang lebih ”berat”. Sisi dianggap lebih ”berat” timbangannya adalah sisi-N. Tambahkan Primary Key dari sisi yang ”ringan” ke skema relasi sisi yang lebih ”berat”. Tambahkan juga seluruhsimple attribute yang terdapat pada relasi biner tersebut.
-          Untuk setiap relasi binaryM:N, buatlah skema relasi baru R dengan menyertakan seluruh simple attribute yang terdapat padarelasibiner tersebut. Tambahkan masing-masing primary key dari kedua sisi ke skema relasi R tersebut (sbg foreign key), lalu digabungmenjadi satu membentuk Primary Keydari skema relasi R.
-          Untuk setiap Multivalued Attribute, buatlah skema relasi R yang menyertakan atribut dari multivalue tersebut. Tambahkan Primary Key dari relasi yang memiliki multivalued tersebut. Kedua atribut tersebut membentuk Primary Key dari skema relasi R.
-          Untuk setiap relasi n-ary dengan n>2, buatlah skema relasi R yang menyertakan seluruh Primary Key dari entitas yang ikut serta. Sejumlah n Foreign Key  tersebut akan membentuk Primary Key untuk skema relasi R. Tambahkan seluruh Simple Attribute yang terdapat pada relasi n-ary tersebut.

NORMALISASI DAN DENORMALISASI DATA

Posted by Afterschool Photograph

BAB 1
NORMALISASI DATA

      A.      PengertianNormalisasi Data

Definisi
Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.

Tujuan dari normalisasi
 Untuk menghilangkan kerangkapan data
 Untuk mengurangi kompleksitas
 Untuk mempermudah pemodifikasian data

Proses Normalisasi
 Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.
 Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

B.    Tahapan Normalisasi

Bentuk Tidak Normal
Menghilangkan perulangan group

Bentuk Normal Pertama (1NF)
Menghilangkan ketergantungan sebagian
Bentuk Normal Kedua (2NF)
Menghilangkan ketergantungan transitif
Bentuk Normal Ketiga (3NF)
Menghilangkan anomali-anomali hasil dari
ketergantungan fungsional
Bentuk Normal Boyce-Codd (BCNF)
Menghilangkan Ketergantungan Multivalue
Bentuk Normal Keempat (4NF)
Menghilangkan anomali-anomali yang tersisa
Bentuk Normal Kelima


Petunjuk normalisasi ini adalah bersifat komulatif. Untuk suatu database menjadi bentuk normal kedua (2NF), pertama harus terpenuhi dahulu seluruh kriteria bentuk normal kesatu (1NF).
Sebuah tabel dikatakan baik (efisien) / normal jika memenuhi 3 kriteria sbb :
1.      Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless – Join - Decomposition). Artinya,  setelah tabel tersebut diuraikan / didekomposisi menjadi tabel – tabel baru, tabel – tabel baru tersebut bisa menghasilkan tabel semula dengan nama yang sama persis.
2.      Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation).
3.      Tidak melanggar Boyce – Codd Normal Form (akan dijelaskan kemudian)

C.      Tujuan Normalisasi Data
1.      Untuk Menghilangkan Kerangkapan Data
2.      Untuk Mengurangi Kompleksitas
3.      Untuk Mempermudah Pemodifikasian Data

D.     Proses Normalisasi
-        Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.
-        Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.



BAB II
DENORMALISASI DATA
A.      PENGERITAN DENORMALISASI DATA
Denormalisasi database adalah pelanggaran aturan normalisasi atau menjabarkan suatu tataan database yang telah normal untuk meningkatkan performa pengaksesan data pada database. Database yang telah normal disini dimaksudkan database yang redundansi datanya minim sehingga data yang disimpan tidak mengalami kerancuan dalam proses pengaksesan.
Apakah perbedaan normalisasi dan denormalisasi? perbedaan normalisasi dan denormalisasi adalah terletak pada redundansi data dan kompleksitas query. Pada redundansi data normalisasi lebih strik atau harus dihilangkan sebisa mungkin sehingga mengakibatkan apabila kita akan mengakses data dalam suatu database membutuhkan query yang kompleks. Berbeda dengan denormalisasi, denormalisasi disini tidak terlalu memikirkan tentang data yang redundan sehingga dalam mengakses data lebih cepat.
Mengapa Denormalisasi begitu penting?

Apabila kita menilik lebih lanjut tentang proses pengaksesan yang dilakukan database sewaktu data yang berada dalam suatu tabel ada 1000 baris dengan 100 juta baris. Hal itu akan terasa sangat beda proses kita menunggu untuk dapat melihat data. Itupun apabila kita mengaksesnya dari beberapa tabel yang setiap tabel berisikan jutaan data dan kita hanya menginginkan sebagian saja. Dari situ denormalisasi diperlukan, untuk menjaga kestabilan performa suatu sistem.
Bagaimanakah cara melakukan denormalisasi? Kita dapat melakukan denormalisasi dalam 2 jenis :
  1. melalui pembuatan kolom baru pada tabel / mengabungkan kolom pada tabel satu dengan yang lain.
  2. melalui pembuatan tabel baru.
Cara yang pertama dilakukan apabila data yang didenormalisasi hanya kecil dan digunakan untuk mempermudah pengaksesan data apabila diakses dalam satu tabel. Sedangkan yang kedua dilakukan apabila data yang terdapat dalam tabel tersebut merupakan rangkuman / rekapitulasi dari satu atau beberapa tabel yang pengaksesannya terpisah dari tabel yang ada.
contoh :
denormalisasi pertama : total sks yang telah diambil seorang mahasiswa. ini dibentuk dari jumlah sks matakuliah yang pernah diambil.
denormalisasi kedua : pembuatan tabel jumlah kehadiran mahasiswa dalam satu semester. data ini dibentuk dari penjumlahan data harian mahasiswa.
B.      BENTUK – BENTUK DENORMALISASI
-   Atribut yang terderivasi (atribut turunan)
Atribut yang nilainya bisa diperoleh dari nilai – nilai yang sudah ada pada atribut lain

-   Atribut yang berlebihan
1.       Atribut Terkodekan (encoded attribute)
Atribut yang memiliki kode tambahan yang menunjukkan beberapa kondisi lainnya.
Contoh : id_mk di tabel matakuliah yang didalamnya sudah terkandung data program studi. Data origram studi ini sebenarnya tidak diperlukan lagi karena sudah ada atribut prog_studi di tabelkuliah
Kode kuliah SBD : ST022


2.       Atribut Gabungan (concatenated attribute)
Atribut dalam domain komposit
Contoh : atribut nim di tabel mahasiswa merupakan gabungan dari tahun masuk / angkatan dengan prigram studi dan no urut mahasiswa. Dengan demikian atribut ini sebenarnya tidak atomik karena masih bisa dibagi lagi
     NIM : 09.51.0062
Ket : angkatan.jurusan.no urut
3.       Atribut Tumpang tindih (overlapping attribute)
Atribut dengan nilai yang tidak spenuhnya ekslusif
Contoh :
Atribut semester di tabel kuliah berisikan :
1.       : matakuliah ganjil
2.       : matakuliah genap
3.       : matakuliah ganjil dan genap
Nilai 3 mencakup semester genap dan ganjil sekaligus (jadi tidak ekslusif)
4.       Atribut Bermakna Ganda (Alternate attribute)
Atribut yang memiliki arti berbeda tergantung kelompok entitasnya

-   Tabel Rekapitulasi (summary table)
Laporan hasil rekapitulasi akan selalu merupakan hasil pengolahan datri semua tabel yang ada, pengolahan tersebut meilbatkan banyak tabel sebhingga akan membutuhkan waktu yang lama. Jika hal tersebut sering diakses dan diperlukan, maka perlu dibuat tabel khusus untuk menyimpan data hasil rekapitulasi tersebut.

C.      TAHAPAN DENORMALISASI
Databasedimaksudkanuntukproses transaksi online(OLTP) biasanyalebihnormaldari databasedimaksudkanuntukpengolahananalisis online(OLAP). AplikasiOLTPditandaidenganvolume tinggitransaksikecilsepertimemperbaruirekorpenjualandi counterkasirsupermarket. Harapannyaadalahbahwasetiaptransaksiakanmeninggalkandatabasedalamkeadaankonsisten. Sebaliknya, databasedimaksudkanuntukoperasiOLAPterutama"membacasebagianbesar" database.AplikasiOLAPcenderunguntukmengambil datahistoris yangtelahterakumulasiselamajangkawaktu yang panjang.Untuk databasetersebut, berlebihanatau"denormalized" data dapatmemfasilitasiaplikasibisnisintelijen. Secarakhusus, tabeldimensidalamskemabintangseringmengandungdata denormalized. Datadenormalizedatauberlebihanharushati-hatidikontrolselamaekstrak, mengubah, beban(ETL) pengolahan,danpenggunatidakdiijinkanuntukmelihatdatasampaidalamkeadaankonsisten. Alternatifdinormalisasidenganskemabintangadalahskemakepingansalju.Dalambanyakkasus, kebutuhanuntukdenormalizationtelahberkurangsebagaikomputerdanRDBMSperangkatlunaktelahmenjadilebihkuat, tapikarenavolumedata yangumumnyameningkatseiringdengan hardwaredankinerjaperangkatlunak, databaseOLAPseringkalimasihmenggunakanskemadenormalized.

Denormalizationjugadigunakanuntukmeningkatkankinerjapadakomputeryang lebihkecilsepertipadaperangkatcash-register dan mobilekomputerisasi, karenainidapatmenggunakandata untukmelihat-upsaja (lookup hargamisalnya). DenormalizationjugadapatdigunakanketikatidakadaRDBMSadauntukplatform(sepertiPalm), atautidakadaperubahan yangharusdibuatuntukdatadanresponcepatsangatpenting.

- Non-pertamaBentuk normal (NF ² atau N1NF)

Denormalization adalah kata kebalikan dari normalisasi. Dalam pengakuan bahwa denormalization dapat disengaja dan berguna, bentuk non-normal pertama adalah definisi dari desain database yang tidak sesuai dengan bentuk normal pertama, dengan memungkinkan "set dan set set menjadi atribut domain" (Schek 1982). Bahasa yang digunakan untuk query dan memanipulasi data dalam model harus diperluas sesuai untuk mendukung nilai-nilai tersebut.


Salah satu cara untuk melihat hal ini adalah dengan mempertimbangkan nilai-nilai terstrukturs eperti menjadi jenis khusus nilai (domain), dengan mereka sendiri domain-spesifik bahasa. Namun, apa yang biasanya dimaksudd engan non-1NF model adalah pendekatan di mana model relasional dan bahasa yang digunakan untuk query itu diperluas dengan mekanisme umum untuk struktur tersebut, misalnya, model relasional bersarang mendukung penggunaan hubungan sebagai domain nilai-nilai, dengan menambahkan dua operator tambahan (sarangdanunnest) ke aljabar relasional yang dapat membuat dan meratakan hubungan bersarang, masing-masing.


Bentuk Pertama
Orang                 Favorite Colour
Bob                     Blue
Bob                     Red
Jane                    Green
Jane                    Yellow
Jane                    Red


Asumsikan seseorang memiliki beberapa warna favorit.  Jelas, warna favorit terdiri dari satu set warna, dimodelkan oleh tabel yang diberikan. Untuk mengubah 1NF ke dalam tabel ² NF ("sarang” Operator) diperlukan sesuatu yang memperluas aljabar relasional dari bentuk normal yang lebih tinggi. Menerapkan ("sarang" operator) untuk tabel 1NF menghasilkan tabel berikut NF ²:
Non Bentuk Pertama

Orang                 Favorite Colour
Bob                     Blue, Red
Jane                    Green, Yellow,Red

Untuk mengubah ini kembali NF ² tabel menjadi 1NF suatu “perombakan”, Operator diperlukan untuk memperluas aljabar relasional dari bentuk normal lebih tinggi. Unnest, dalam hal ini, akan membuat "warna" ke dalam tabel sendiri.

Meskipun "perombakan" adalah invers matematika untuk "sarang", operator "sarang" tidak selalu kebalikan matematis "unnest". Kendala lain yang dibutuhkan adalah untuk operator untuk menjadi bijektif, yang ditutupi oleh Bentuk Normal partisi (PNF).



DESAIN SISTEM DAN STRUKTUR BASIS DATA

Posted by Afterschool Photograph

BAB 1
DESAIN SISTEM BASIS DATA

Dalam sebuah sistem basis data ada sebuah istilah bernama entitas yang berarti :
Entitas adalah sesuatu yang ada dengan sendirinya, meskipun tidak perlu eksistensi material. Secara khusus, abstraksi dan fiksi hukum biasanya dianggap sebagai entitas. Secara umum, ada juga ada anggapan bahwa suatu entitas itu bernyawa.
Dalam bisnis, suatu entitas adalah orang, departemen, tim, perusahaan, koperasi, kemitraan, atau kelompok lain dengan siapa adalah mungkin untuk melakukan bisnis.
Kadang-kadang, entitas digunakan dalam pengertian umum makhluk, iya atau tidak memiliki rujukan keberadaan materi, misalnya, sering disebut sebagai entitas tanpa bentuk jasmani (non-fisik entitas), seperti bahasa.
The entitative adalah bentuk kata sifat dari entitas benda. Sesuatu yang entitative adalah "dianggap sebagai entitas murni, disarikan dari semua keadaan", yaitu, dianggap sebagai entitas sendiri, terpisah dari keadaan petugas.
Entitas adalah sesuatu yang memiliki keberadaan yang unik dan berbeda, walaupun tidak harus dalam bentuk fisik. Abstraksi, misalnya, biasanya dianggap juga sebagai suatu entitas. Dalam pengembangan sistem, entitas digunakan sebagai model yang menggambarkan komunikasi dan pemrosesan internal seperti misalnya membedakan dokumen dengan pemrosesan pesanan.

Entitas dalam informatika

1.      Analisis Data, Informasi
Sebuah database dapat dimodelkan sebagai
-          Sekumpulan entitas
-          Hubungan antarentitas
Entitas (entity) adalah sebuah objek yang keberadaannya dapat dibedakan terhadap objek lain
Entitas dapat berupa orang, benda, tempat, kejadian, konsep
            Contoh:
                Orang: MAHASISWA, DOSEN, PEMASOK, PENJUAL
                Benda: MOBIL, MESIN, RUANGAN
                Tempat: NEGARA, DESA, KAMPUNG
                Kejadian: PENJUALAN, REGISTRASI
                Konsep: REKENING, KURSUS
    Sebuah entitas memiliki sejumlah atribut
        Contoh: mahasiswa memiliki nama dan alamat
    Himpunan entitas adalah sekumpulan entitas yang berbagi atribut yang sama
        Contoh: sekumpulan mahasiswa, dosen, atau perusahan.
Entitas adalah sesuatu yang ada dan dapat melaksanakan suatu kegiatan dan dapa berupa subyek hukum tersendiri.
entitas itu suatu bagian dari suatu proses yang meliputi data dan informasi dimana entitas itusendiri terlibat dalam suatu proses pembuatan data berubah menjadi sebuah informasi  yang dibutuhkan, entitas itu sendiri dibagi menjadi 2 yaitu entitas luar dan dalam. entitasituobjek (benda) di dunianyata yang dapatdibedakandariobjek lain. Entitas adalah orang, tempat, objek, kejadian, atau konsep tentang data yang tercatat

RECORD / TUPEL
Dalam ilmu komputer, record (juga disebut tupel, struct, atau senyawa data) adalah salah satu struktur data sederhana. Sebuah record adalah nilai yang berisi nilai-nilai lain, biasanya dalam jumlah tetap dan berurutan dan biasanya diindeks oleh nama. Unsur-unsur catatan biasanya disebut anggota.
Record (basis data) merupakan kumpulan dari elemen-elemen data yang terkait dalam sebuah basis data. Secara ringkas, database dapat dikatakan sebagai sebuah tabe yang memiliki baris alias record dan kolom atau field. Setiap baris menyatakan elemen-elemen data yang saling berkaitan. Sebagai contoh dalam suatu tabel memiliki kolom nama, alamat, tanggal lahir, pekerjaan. Maka satu record adalah data sau orang yang terdiri atas nama, alamat, tanggal lahir dan pekerjaan.
Kumpulan elemen-elemen yang salingberkaitanmenginformasikantentangsuatuentitassecaralengkap. Dan suatu tuple (record) mewakilisatu data atauinformasi.

Contoh : Record entry mahasiswaadalahkumpulan data value dari field nobp, nama, jurusan, danalamat per-barisnya. Dalam database, record disebutjugabaris.

Misalnya, tanggal dapat disimpan sebagai catatan yang mengandung medan tahun numerik, bidang sebulan direpresentasikan sebagai string, dan lapangan sehari-of-bulan numerik. Sebagai contoh lain, record Personil mungkin berisi nama, gaji, dan pangkat. Sebagai contoh lain, rekor Lingkaran mungkin berisi pusat dan radius. Dalam hal ini, pusat sendiri mungkin direpresentasikan sebagai record titik yang mengandung koordinat x dan y.
record dibedakan dari array oleh fakta bahwa jumlah mereka bidang biasanya tetap, masing-masing bidang memiliki nama, dan bahwa setiap bidang mungkin memiliki jenis yang berbeda.
Sebuah tipe record adalah tipe data yang menggambarkan nilai-nilai tersebut dan variabel. Bahasa komputer yang paling modern memungkinkan programmer untuk menentukan jenis catatan baru. Definisi ini mencakup menentukan tipe data setiap field dan sebuah identifier (nama atau label) dengan yang dapat diakses. Dalam teori tipe, jenis produk (tanpa nama field) umumnya lebih disukai karena kesederhanaan mereka, tetapi tipe catatan yang layak dipelajari dalam bahasa seperti F-sub Sistem. Karena jenis-teoritis mungkin berisi catatan kelas fungsi-diketik bidang selain data, mereka dapat mengekspresikan banyak fitur dari pemrograman berorientasi objek.
Rekaman dapat ditemui di media penyimpanan, termasuk memori utama dan perangkat penyimpanan massal seperti pita magnetik atau hard disk. Rekaman adalah komponen fundamental dari struktur data yang paling, struktur data terutama terkait. Banyak file komputer diatur sebagai array dari catatan logis, sering dikelompokkan menjadi catatan fisik yang lebih besar atau blok untuk efisiensi.
Parameter dari suatu fungsi atau prosedur sering bisa dilihat sebagai bidang variabel catatan, dan argumen dilewatkan ke fungsi yang dapat dipandang sebagai nilai tertinggi yang akan ditugaskan untuk variabel yang pada saat panggilan. Juga, dalam panggilan stack yang sering digunakan untuk menerapkan prosedur panggilan, setiap entri adalah record aktivasi atau frame panggilan, yang berisi parameter prosedur dan variabel lokal, alamat pengirim, dan bidang internal lainnya.
Sebuah objek dalam berorientasi obyek bahasa pada dasarnya adalah sebuah catatan yang berisi prosedur khusus untuk menangani rekaman itu, dan objek tipe data (sering disebut kelas obyek) merupakan elaborasi dari jenis catatan. Memang, di sebagian besar bahasa berorientasi objek, catatan kasus hanya khusus dari objek.
Sebuah record dapat dilihat sebagai analog komputer dari matematika tupel. Dalam nada yang sama, tipe record dapat dilihat sebagai analog bahasa komputer dari produk Cartesian dari dua atau lebih set matematis, atau pelaksanaan suatu jenis produk abstrak dalam bahasa tertentu.
Dalam konteks database relasional, Row-juga disebut record atau tupel, item tunggal implisit terstruktur data dalam tabel. Dalam istilah sederhana, tabel database dapat dianggap sebagai terdiri dari baris dan kolom atau bidang. Setiap baris dalam tabel merupakan sekumpulan data terkait, dan setiap baris dalam tabel memiliki struktur yang sama.
Misalnya, dalam sebuah tabel yang mewakili perusahaan, setiap baris akan mewakili satu perusahaan. Kolom mungkin mewakili hal-hal seperti nama perusahaan, perusahaan alamat jalan, apakah perusahaan publik yang dimiliki, nomor PPN, dll. Dalam tabel yang mewakili asosiasi karyawan dengan departemen, setiap baris akan mengasosiasikan satu karyawan dengan satu departemen.
Dalam penggunaan kurang formal, misalnya untuk database yang tidak formal relasional, sebuah record setara dengan baris seperti yang dijelaskan di atas, tetapi biasanya tidak disebut sebagai berturut-turut.
Struktur implisit berturut-turut, dan makna dari nilai-nilai data yang berturut-turut, mensyaratkan bahwa baris dipahami sebagai menyediakan suksesi nilai data, satu di setiap kolom tabel. Baris tersebut kemudian ditafsirkan sebagai relvar terdiri dari satu set tupel, dengan masing-masing tuple yang terdiri dari dua item: nama kolom yang relevan dan nilai baris ini menyediakan untuk kolom tersebut.

FIELD / ATTRIBUTE
Dalam komputasi, atribut adalah spesifikasi yang mendefinisikan properti dari sebuah, elemen file objek, atau. Hal ini juga dapat merujuk atau menetapkan nilai tertentu untuk contoh yang diberikan tersebut.
Field adalah sebuah unit data yang berisi satu atau lebih karakter (byte). Ia merupakan unit terkecil dari informasi berharga dalam database. setiap field memiliki nama field yang menggambarkan jenis data yang harus dimasukkan ke dalam field. Contoh field adalah nama pertama Anda, alamat jalan, atau jenis kelamin Anda.
Untuk kejelasan, atribut harus lebih tepat dianggap metadata. Namun, dalam penggunaan aktual, atribut panjang dapat dan sering diperlakukan sebagai setara dengan properti tergantung pada teknologi yang sedang dibahas.
Atribut dari sebuah objek biasanya terdiri dari nama dan nilai, dari suatu elemen, jenis atau nama kelas, dari sebuah file, nama dan ekstensi.
     Setiap atribut bernama memiliki seperangkat aturan yang disebut terkait operasi: satu tidak menambahkan karakter atau memanipulasi dan memproses array integer sebagai objek foto-satu tidak memproses teks sebagai titik jenis floating (angka desimal).
     Oleh karena itu, definisi objek dapat diperpanjang dengan memaksakan mengetik data: format representasi, nilai default, dan operasi hukum (aturan) dan pembatasan ("Pembagian dengan nol tidak akan ditoleransi!") Semua berpotensi terlibat dalam mendefinisikan atribut, atau sebaliknya, dapat dikatakan sebagai atribut dari tipe tersebut objek. Sebuah file JPEG tidak diterjemahkan oleh operasi yang sama (namun sama mereka mungkin-ini semua grafis format data) sebagai file PNG atau BMP, juga adalah nomor floating point diketik dioperasikan pada aturan diterapkan pada bilangan bulat panjang diketik.
Sebagai contoh, dalam komputer grafis, obyek garis dapat memiliki atribut seperti ketebalan (dengan nilai riil), warna (dengan nilai deskriptif seperti cokelat atau hijau atau nilai-nilai yang didefinisikan dalam model warna tertentu, misalnya RGB), atribut gagah, dll sebuah objek lingkaran dapat didefinisikan dalam atribut yang sama ditambah asal dan jari-jari.


Field dapat didesain dengan panjang maksimun terntentu. Field juga dapat didesain dengan tipe data berbeda, semisal hanya teks, atau hanya angka, tanggal, waktu, atau bahkan hanya jawaban “ya” dan “tidak”, link web, gambar, suara dan video.
Contoh Penggunaan Atribut

C #
Dalam bahasa pemrograman C #, atribut metadata melekat lapangan atau blok kode seperti majelis, anggota dan jenis, dan setara dengan penjelasan di Jawa. Atribut dapat diakses untuk kedua compiler dan pemrograman melalui refleksi.
Pengguna bahasa melihat banyak contoh di mana atribut yang digunakan untuk mengatasi masalah lintas sektoral dan mekanistik lain atau menggunakan platform. Hal ini menciptakan kesan palsu bahwa ini adalah satu-satunya tujuan mereka dimaksudkan. Dengan atribut, adalah mungkin untuk memperpanjang atribut seperti abstrak, disegel, atau publik.
Penggunaan khusus mereka sebagai metadata yang tersisa untuk pengembang dan dapat mencakup berbagai jenis informasi tentang setiap kelas aplikasi yang diberikan, dan anggota yang tidak contoh spesifik. Keputusan untuk mengekspos setiap atribut yang diberikan sebagai properti juga diserahkan kepada pengembang seperti keputusan untuk menggunakannya sebagai bagian dari kerangka aplikasi yang lebih besar.
Atribut diimplementasikan sebagai kelas yang berasal dari System.Attribute. Mereka sering digunakan oleh layanan CLR, seperti COM, serialisasi Remoting interoperabilitas, dan dapat dilihat pada saat runtime.
Contoh ini menunjukkan bagaimana atribut didefinisikan di C #:
[Obsolete("Use class C1 instead", IsError = true)] 
public class C {...}                    

public class ObsoleteAttribute: Attribute {        
public string Message{ get; }                    
public bool IsError{ get; set; }
public ObsoleteAttribute() {...}
public ObsoleteAttribute(string msg) {...}
public ObsoleteAttribute(string msg, bool error) {...}}

[Obsolete]
[Obsolete("This is obsolete")]
[Obsolete("This is obsolete", false)]
[Obsolete("This is obsolete", IsError = false)]
Parameter posisi seperti parameter pertama dari tipe string di atas adalah parameter konstruktor atribut itu. Nama parameter seperti parameter Boolean pada contoh adalah properti dari atribut dan harus menjadi nilai konstan.
Atribut harus kontras terhadap dokumentasi XML yang juga mendefinisikan metadata, tetapi tidak termasuk dalam perakitan dikompilasi dan karena itu tidak dapat diakses pemrograman.

Multi-nilai database
Pada banyak sistem database relasional pasca-atau multi-nilai, relatif terhadap SQL, tabel file, baris item, dan kolom adalah atribut. Baik dalam database dan kode, atribut ini identik dengan properti dan variabel meskipun atribut dapat dijelaskan lebih jauh mengandung nilai-nilai dan subvalues??.
Yang pertama dari database ini adalah sistem operasi memilih. Dua platform saat ini termasuk Universe Rocket U2 dan 'Caché InterSystems.

XML
Dalam XML, atribut adalah markup membangun terdiri dari pasangan nama / nilai yang ada dalam tag-tag awal atau kosong-elemen. Bahasa markup, seperti HTML dan XML, gunakan atribut untuk menggambarkan data dan format data.
Sebuah contoh yang baik adalah proses nilai XML menugaskan ke properti (unsur). Perhatikan bahwa nilai elemen ditemukan sebelum tag akhir (terpisah), bukan dalam elemen itu sendiri. Unsur itu sendiri mungkin memiliki sejumlah atribut yang ditetapkan (NAMA = "IAMAPROPERTY").
Jika elemen tersebut dapat dianggap sebagai properti (CUSTOMER_NAME) dari entitas lain (katakanlah PELANGGAN), elemen dapat memiliki nol atau lebih atribut (sifat) sendiri (CUSTOMER_NAME adalah TYPE = "KINDOFTEXT").

RELASI
Dalam teori database relasional, relasi adalah satu set tupel (d1, d2, ..., dj), di mana setiap elemen dn adalah anggota Dn, domain data Setiap domain yang berbeda yang digunakan dalam definisi. hubungan disebut atribut, dan setiap atribut biasanya bernama.
Satu set atribut (atribut nama dengan domain mereka terkait) disebut skema relasi (atau skema relasi). Kadang-kadang skema relasi diambil untuk memasukkan nama untuk hubungan itu sendiri. Sebuah skema relasi juga disebut skema tabel (atau skema tabel). Suatu relasi sehingga dipandang sebagai suatu Instansiasi dari skema relasi.
Namun perlu dicatat bahwa skema relasional dapat merujuk ke skema satu seluruh (relasional) database.
Dalam implementasi, domain dari setiap atribut secara efektif tipe data.
Dalam SQL, bahasa query untuk database relasional, hubungan diwakili oleh tabel, di mana setiap baris tabel merupakan tuple tunggal, dan di mana nilai-nilai dari masing-masing bentuk atribut kolom.

EF Codd awalnya digunakan istilah dalam arti matematika dari hubungan finitary, satu set tupel pada beberapa set n set S1, S2, .... , Sn.
Dimana semua nilai dari setiap atribut relasi adalah atom, hubungan yang dikatakan dalam bentuk normal pertama.
Contoh:
Di bawah ini adalah contoh dari sebuah hubungan yang tiga atribut bernama: 'ID' dari domain bilangan bulat, dan 'Nama' dan 'Alamat' dari domain string:
ID (Integer) Nama (String) Alamat (String)
102 Yonezawa Akinori Naha, Okinawa
202 Murata Makoto Sendai, Miyagi
104 Sakamura Ken Kumamoto, Kumamoto
152 Matsumoto Yukihiro Okinawa, Okinawa

Dalam teori relasional, tapi tidak di SQL, tupel yang unordered - salah satu tidak bisa mengatakan "The tuple dari 'Murata Makoto' berada di atas tupel dari 'Matsumoto Yukihiro'", atau dapat dikatakan "The tuple dari 'Yonezawa Akinori' adalah pertama tuple. "
Basis variabel dan diturunkan hubungan hubungan variabel (tampilan)

Hubungan variabel (relvars) diklasifikasikan menjadi dua kelas: variabel hubungan dasar dan variabel hubungan diturunkan. Dengan menerapkan ekspresi aljabar relasional atau ekspresi kalkulus relasional untuk satu atau lebih variabel hubungan, satu nilai hubungan baru berasal.
Sebuah variabel hubungan dasar adalah hubungan sumber variabel yang tidak berasal dari setiap variabel hubungan lain. Dalam SQL, bahasa database database relasional, tabel basis jangka secara kasar dapat dianggap sebagai variabel relasi dasar. Dengan menggunakan Bahasa Definisi Data (DDL), ia mampu mendefinisikan variabel dasar hubungan. Dalam SQL, dengan menggunakan membuat sintaks TABLE, ia mampu mendefinisikan variabel dasar hubungan. Berikut ini adalah contoh.

CREATE TABLE List_of_people (
 ID INTEGER,
 Name CHAR(40),
 Address CHAR(200),
 PRIMARY KEY (ID)
)
Sebuah variabel hubungan diturunkan adalah variabel hubungan yang berasal dari satu atau lebih variabel hubungan dengan menerapkan ekspresi aljabar relasional atau ekspresi kalkulus relasional. A View dianggap sebagai variabel hubungan diturunkan. A Data Definition Language (DDL) digunakan untuk mendefinisikan variabel hubungan berasal. Dalam SQL, CREATE VIEW sintaks yang digunakan untuk mendefinisikan variabel hubungan diturunkan. Berikut ini adalah contoh.
CREATE VIEW List_of_Okinawa_people AS (
 SELECT ID, Name, Address
  FROM List_of_people
  WHERE Address LIKE '%, Okinawa'   )


A. Primary Key dan Foreign Key :
Primary Key adalah merupakan attribute yang paling sedikit yang dapat membedakan  setiap baris data dalam sebuah table secara unik yang dipilih berdasarkan seringnya diadikan acuan, lebih ringkas, dan lebih menjamin keunikan key.
Foreign Key adalah kolom yang diambil dari primary key entitas lain yang menunjukkan hubungan antar dua table tersebut.
B. Jenis-jenis Key Atribut dan Contohnya :
~ Super Key :
Merupakan satu atau gabungan attribute yang dapat membedakan setiap baris data dalam sebuah table secara unik.
Contoh :
Super Key untuk entitas Anggota
- No Anggota, Nama, Alamat, JenisKel
- No Anggota, Nama, Alamat
- No Anggota, Nama
- Nama (jika dijamin bahwa tidak ada yang sama)
- No Anggota
~ Candidat Key : Super Key yang jumlah attributnya paling sedikit
Contoh :
Candidat Key pada entitas Anggota
- Nama (jika dijamin tidak ada nama yang sama)
- No Anggota
~ Primary Key : Candidat key yang dipilih berdasarkan seringnya dijadikan acuan, lebih ringkas, dan lebih menjamin keunikan key.
Contoh :
Primary Key untuk entitas Anggota
- No Anggota
C. Relasi Entitas
Relasi menyatakan hubungan antar entitas, termasuk terhadap entitas itu sendiri (rekursif)

D. Jenis – jenis Relasi antar Entitas berdasarkan Derajat Kardinalitas dan Derajat Relasi Maksimum – Minimum
~ Satu ke satu (one to one)
Setiap data pada entitas A berhubungan dengan maksimal satu data pada entitas B, begitu pula sebaliknya.
~ Satu ke banyak (one to many) atau Banyak ke satu (many to one)
Setiap data pada entitas A bisa berhubungan dengan banyak data pada entitas B, tetapi data pada entitas B berhubungan maksimal hanya dengan sebuah data di A.

~ Banyak ke banyak (many to many)

Setiap data pada entitas A bisa berhubungan dengan banyak data pada entitas B, demikian pula sebaliknya.
Derajat Relasi Minimum-Maximum
Menunjukkan hubungan (korespondensi) minimum yang boleh terjadi dalam sebuah relasi antar entitas.
Misalnya: pada relasi “bekerja untuk” pada entitas pegawai terhadap departemen Derajat relasi minimumnya adalah satu. Dalam arti lain, setiap pegawai minimal harus memiliki sebuah relasi terhadap Departemen, atau setiap pegawai selalu memiliki tempat di mana dia bekerja.
Notasi (x,y) pada relasi menunjukkan derajat minimum (x) dan derajat maksimum (y) pada sebuah relasi.
Partisipasi total bisa dinotasikan dengan memberikan derajat relasi minimum (x) = 1.