Desain Sistem dan Struktur Basis Data


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 dalamentitas itu objek (benda) di dunia nyata yang dapat dibedakan dari objek 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 saling berkaitan menginformasikan tentang suatu entitas secara lengkap. Dan suatu tuple (record) mewakili satu data atau informasi.

Contoh : Record entry mahasiswa adalah kumpulan data value dari field nobp, nama, jurusan, dan alamat per-barisnya. Dalam database, record disebut juga baris.

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 relasionalRow-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.

RelasiOneToOne
~ 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.

RelasiManyToMany
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.



http://publib.boulder.ibm.com/infocenter/cicsts/v3r1/index.jsp?topic=%2Fcom.ibm.cics.ts31.doc%2Fdfhp3%2Fdfhp3at.htm
http://msdn.microsoft.com/en-us/library/windows/desktop/aa373864%28v=vs.85%29.aspx
en.wikipedia.org/wiki/Attribute_(computing)
id.wikipedia.org/wiki/Entitas
en.wikipedia.org/wiki/Entity
www.businessdictionary.com/definition/entity.html
www.merriam-webster.com/dictionary/entity
www.britannica.com/EBchecked/topic/493773/record
en.wikipedia.org/wiki/Record_(computer_science)
en.wikipedia.org/wiki/Relation
www.merriam-webster.com/medical/relation

Tidak ada komentar:

Posting Komentar