Model hierarkis

Model database Hierarki merupakan model data yang di mana data tersebut diatur dengan struktur data tree. Struktur ini dapat mewakili informasi menggunakan hubungan child/parent: setiap parent dapat memiliki banyak child, tetapi setiap child hanya boleh memiliki satu parent (yang dikenal juga dengan hubungan 1-ke-banyak). Seluruh atribut dari record yang ditentukan telah diatur dengan tipe entitas.
jmpl|320px|Contoh dari Model hierarki
Pada database tipe entiti sama dengan tabel. Setiap record individual diwakili sebagai baris, dan setiap atribut sebagai kolom. Tipe entiti berhubungan satu sama lain dengan menggunakan pemetaan 1:N, juga dikenal sebagai hubungan satu-ke-banyak. Model ini dikenal sebagai model database awal yang diciptakan oleh IBM pada tahun 1960-an.

Database hierarki yang paling banyak digunakan saat ini ialah IMS dikembangkan oleh IBM dan Registry Windows oleh Microsoft.

 Sejarah 
Model data hierarki kehilangan daya tariknya sebagai Model Relasional Edgar F.Codd menjadi standar de facto yang digunakan secara virtual oleh seluruh sistem manajemen database saat ini. Implementasi Database Relasional dari model hierarki pertama sekali dipublikasikan pada tahun 1992.Michael J. Kamfonas/Recursive Hierarchies: The Relational Taboo! --The Relation Journal, October/November 1992

 Contoh dari data hierarki yang diwakili sebagai tabel relasi 
Sebuah organisasi dapat menyimpan informasi pegawai pada tabel yang mengandung atribut/kolom seperti nomor pegawai, nama awal, nama akhir, dan kode departemen. Organisasi menyediakan setiap pegawai dengan hardware computer seperti yang dibutuhkan, tetapi peralatan komputer hanya dapat digunakan dari pegawai yang telah disetujui. Organisasi dapat menyimpan informasi hardware komputer pada tabel terpisah yang termasuk setiap bagian dari nomor serial, tipe, dan pegawai yang menggunakannya. Bentuk tabel akan tampak seperti ini:
 Nomor  Nama Awal  Nama Akhir  Kode Departemen 100  Sally  Baker  10-L 101  Jack  Douglas  10-L 102  Sarah  Schultz  20-B 103  David  Drachmeier  20-B Nomor Serial  Tipe  Nomor Pegawai 3009734-4  Komputer  100 3-23-283742  Monitor  100 2-22-723423  Monitor  100 232342  Printer  100

Pada model ini, tabel data pegawai mewakili bagian "parent" dari hierarki, sedang tabel komputer mewakili bagian "child" dari hierarki.
Secara kontras dari stuktur tree biasanya ditemukan pada algoritma software komputer, pada model ini child menuju parent. Seperti yang diperlihatkan, setiap pegawai dapat memiliki beberapa peralatan komputer, tetapi setiap peralatan komputer hanya boleh dimiliki satu pegawai.

Consider the following structure:
 No Pegawai  Pangkat  Laporan ke 10  Direktur   20  Manager Senior  10 30  Juru Ketik  20 40  Programmer  20

Pada tabel ini, "child" memiliki tipe yang sama seperti "parent". Hierarki yang menunjukka Nomor Pegawai 10 merupakan atasan dari 20, serta setiap laporan 30 dan 40 pada 20 diwakili dengan kolom "Laporan Ke". Pada bahasan database Relasional, kolom Laporan Ke merupakan foreign key yang mereferensikan kolom Nomor Pegawai. Jika tipe data "child" berbeda, maka "child" berada pada tabel yang berbeda, tetapi harus terdapat foreign key yang mereferensikan kolom Nomor Pegawai dari tabel pegawai.

Model sederhana ini biasa nya dikenal sebagai Model Adjacency list, yang diperkenalkan oleh Dr. Edgar F Codd setelah kritik awal muncul yang mengatakan bahwa model relasional tidak dapat memodelkan data hierarki. Registry Windows merupakan salah satu database hierarki yang menyimpan pengaturan konfigurasi dan pilihan dari sistem operasi Microsoft Windows.

 Referensi 

 Pranala luar 

 Troels' links to Hierarchical data in RDBMSs
 Managing Hierarchical Data in MySQL (This page is from archive.org as the page has been removed from MySQL.com)
 Hierarchical data in MySQL: parents and children in one query
 Create Hierarchy Chart from Hierarchical Database

Kategori:Model Database