Apa itu Relation dalam ERD, dan mengapa many-to-many tidak baik digunakan pada ERD

Nursyahiira Hanum S
2 min readOct 21, 2023

--

Apa itu Relation ?

Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Gambar relasi diwakili oleh simbol belah ketupat. Relasi juga terbagi menjadi beberapa jenis:

  1. One to one: setiap entitas hanya bisa mempunyai relasi dengan satu entitas lain. Contoh: siswa dengan nomor induk siswa
  2. One to many: hubungan antara satu entitas dengan beberapa entitas dan sebaliknya. Contoh: guru dengan murid dan sebaliknya.
  3. Many to many: setiap entitas bisa mempunyai relasi dengan entitas lain, dan sebaliknya. Contoh: siswa dan ekstrakurikuler.

Mengapa many to many tidak baik digunakan pada ERD ?

Model many-to-many (banyak-ke-banyak) dalam Entity-Relationship Diagrams (ERD) seringkali tidak disarankan karena dapat memunculkan sejumlah masalah yang dapat sulit dikelola. Beberapa alasan mengapa many-to-many tidak baik digunakan dalam ERD antara lain:

1. Ambiguitas Data: Saat kita memiliki hubungan many-to-many, sulit untuk menentukan bagaimana data seharusnya terorganisasi. Ini dapat menghasilkan ambiguitas dalam desain database dan membuat sulit untuk mengambil informasi yang konsisten dari basis data.

2. Kesulitan dalam Implementasi: Implementasi hubungan many-to-many dalam basis data biasanya melibatkan penggunaan tabel perantara (junction table) untuk mengatasi masalah tersebut. Hal ini dapat mengkomplekskan struktur database dan membuat operasi pengambilan data lebih rumit.

3. Kinerja Database yang Buruk: Tabel perantara dalam hubungan many-to-many dapat menyebabkan masalah kinerja dalam database, terutama ketika berurusan dengan banyak data. Joining tabel-tabel tersebut dapat memperlambat kueri database.

4. Keterbatasan Dalam Analisis dan Pelaporan: Ketika kita memiliki hubungan many-to-many, analisis dan pelaporan data bisa menjadi lebih sulit. Anda mungkin perlu melakukan banyak operasi gabungan (joins) untuk mengambil informasi yang bergantung pada hubungan tersebut.

5. Kesulitan dalam Memahami dan Memelihara: ERD yang menggunakan hubungan many-to-many seringkali lebih sulit dipahami oleh orang yang tidak terlibat dalam desain awalnya. Hal ini dapat menyulitkan pemeliharaan dan pengembangan lebih lanjut.

Untuk menghindari masalah-masalah ini, seringkali lebih baik untuk menghindari hubungan many-to-many dalam ERD. Sebagai alternatif, Kita dapat menggunakan teknik normalisasi untuk merancang basis data yang lebih baik, yang menghindari banyak dari masalah di atas dengan memecah hubungan many-to-many menjadi dua hubungan one-to-many yang terpisah melalui tabel perantara.

--

--