Apa itu Relationship pada ERD, Mengapa many to many tidak baik digunakan pada ERD

Muhammad Ikbal Mauladi
2 min readNov 19, 2023

--

APA ITU RELATIONSHIP PADA ERD

· Relasi
Komponen ketiga adalah relasi atau relation. Relasi dalam ERD adalah hubungan yang terjadi antara satu atau lebih entitas. Relasi sendiri sering disebut dengan proses. Komponen ini digambarkan dengan lambang belah ketupat. Terdapat tiga jenis relasi yang digunakan dalam ERD dan perlu kamu ketahui, berikut adalah jenisnya.

o One to one
One to one berarti setiap entitas hanya dapat memiliki relasi dengan satu entitas lain. Contohnya seperti data mahasiswa dengan NIM (Nomor Induk Siswa).

o One to many
One to many memiliki arti satu entitas dapat memiliki relasi dengan beberapa entitas, begitu pula sebaliknya. Contoh dari implementasi one to many ini adalah jurusan dengan mahasiswanya.

o Many to many
Many to many memiliki arti setiap entitas yang ada dapat memiliki relasi dengan entitas lain, begitu pula sebaliknya. Contoh dari brelasi ini adalah mahasiswa dengan data terkait UKM (Unit Kegiatan Mahasiswa).

Mengapa Many to Many tidak baik digunakan pada ERD

Many-to-many relationships dalam Entity-Relationship Diagrams (ERD) dapat memunculkan beberapa masalah dan kompleksitas yang sulit ditangani. Beberapa alasan mengapa many-to-many tidak diinginkan dalam ERD melibatkan kesulitan dalam implementasi dan pemeliharaan basis data. Berikut adalah beberapa alasan utama:

1. Kesulitan Implementasi:

· Tabel Asosiasi: Untuk merepresentasikan many-to-many, seringkali diperlukan tabel asosiasi (atau junction table) yang memiliki kunci primer gabungan dari kedua entitas yang terlibat. Implementasi ini dapat meningkatkan kompleksitas struktur basis data.

· Ketidakjelasan Aturan Bisnis: Beberapa aturan bisnis mungkin tidak terwakili dengan baik dalam model many-to-many. Misalnya, jika sebuah buku dapat memiliki banyak penulis dan seorang penulis dapat menulis banyak buku, aturan seperti “setiap buku memiliki satu penulis utama” mungkin tidak dapat dengan jelas diwakili.

2. Ketidakefisienan Pencarian dan Pemutakhiran:

· Query yang Rumit: Many-to-many sering memerlukan query yang lebih kompleks untuk mencari atau memutakhirkan data, terutama jika terlibat banyak tabel terkait.

· Pemutakhiran Data: Memutakhirkan atau menghapus data pada many-to-many relationships bisa menjadi tugas yang rumit dan memakan waktu.

3. Ketidak konsistenan dan Masalah Integritas Referensial:

· Ketidaksesuaian Integritas Referensial: Beberapa sistem basis data mungkin mengalami kesulitan dalam menangani integritas referensial pada many-to-many relationships, yang dapat menyebabkan ketidaksesuaian data.

4. Pemahaman yang Sulit:

· Kesulitan Pemahaman Model: Untuk orang yang tidak terbiasa dengan model many-to-many, dapat menjadi sulit untuk memahami hubungan antar entitas dan bagaimana data terkait.

5. Kesulitan Pemeliharaan dan Pengembangan:

· Pemeliharaan Tabel Asosiasi: Jika terdapat perubahan dalam struktur many-to-many, seperti penambahan atribut pada relasi antar entitas, perlu dilakukan pemeliharaan pada tabel asosiasi, yang dapat menjadi tugas yang kompleks.

Dalam beberapa kasus, desain ulang atau penggunaan teknik lain seperti normalisasi atau penggunaan entitas terpisah untuk mengelola many-to-many relationships dapat membantu mengatasi masalah ini.

Backlink : Ubpkarawang.ac.id & Adirp.ac.id

--

--