Showing posts with label SISTEM BASIS DATA. Show all posts
Showing posts with label SISTEM BASIS DATA. Show all posts

Wednesday, August 3, 2016

NORMALISASI & DENORMALISASI

Normalisasi adalah proses pengelompokan data-data ke dalam tabel berupa entitasnya dan juga relasinya. Saat melakukan proses dekomposisi (pemecahan ke dalam bentuk yang lebih sederhana) yang keliru, maka akan berdampak kehilangan informasi saat perancangan. Normalisasi bertujuan menyempurnakan struktur tabel untuk memperkecil perubahan database, memudahkan perubahan struktur tabel, eliminasi duplikat informasi, dan lain-lain. Beberapa bentuk normalisasi adalah Bentuk Normal Pertama (1NF) , Bentuk Normal Kedua (2NF), Bentuk Normal Ketiga (3NF), Bentuk Normal Boyce-codd (BCNF), Bentuk Normal Keempat (4NF), Bentuk Normal Kelima (5NF) dan Bentuk Normal Domain-key (DKNF).


  TAHAPAN NORMALISASI


Anomali atau penyimpangan adalah proses proses pada basis data yang menyebabkan data tidak konsisten atau dapat membuat data hilang apabila ada data lain yang dihapus. Berikut adalah beberapa jenis anomali :
- Anomali pembaharuan adalah proses merubah nilai data yang mengakibatkan perlunya merubah nilai data lain yang tidak secara logik tidak memiliki relasi atau hubungan.
- Anomali penyisipan adalah proses penyisipan nilai data yang mengakibatkan perlunya perubahan pada nilai data lain yang secara logik tidak memliki relasi atau hubungannya.
- Anomali penghapusan adalah proses penghapusan nilai data yang mengakibatkan hilangnya nilai data lain yang secara logik tidak memiliki relasi.

Ketergantungan Fungsional terjadi apabila atribut A yang berelasi dengan Atribut B memiliki nilai tepat pada satu atribut B.Contoh tabel dokter :



Ketergantungan Transitif terjadi apabila terdapat atribut A,B dan C yang saling berhubungan, dimana atribut C mempunyai tepat satu nilai pada atribut B dan atribut B memiliki tepat satu nilai pada atribut A, sehingga secara tidak langsung atribut C mamliki tepat satu nilai pada atribut A. Contoh tabel pemeriksaan:










DENORMALISASI

Denormalisasi adalah kebalikan dari normalisasi. Mengapa Denormalisasi juga perlu ? Bukankah yang tidak normal harus dibuat normal, mengapa dilakukan denormalisasi lagi? Jawabannya cuma satu yaitu untuk performance. Apabila performance yang didapatkan lebih baik setelah dilakukan denormalisasi, maka denormalisasi dapat dilakukan atau normalisasi boleh dilanggar.

Perbedaan Normalisasi dan Denormalisasi adalah Normalisasi akan meningkatkan data integrity tetapi juga akan meningkatkan query complexity. Sedangkan Denormalisasi akan mengurangi data integrity dan juga akan mengurangi query complexity.

Beberapa bentuk Denormalisasi sebagai berikut:

1. Atribut turunan (terderivasi) adalah atribut yang nilainya dapat diambil dari nilai-nilai yang ada pada atribut lain.

2. Atribut berlebihan terdiri dari :
  - Atribut tercodekan adalah atribut memiliki kode tambahan yang menunjukkan kondisi lainnya.
  - Atribut gabungan adalah atribut didalam domain komposit.
  - Atribut tumpang-tindih adalah nilai atribut tidak sepenuhnya ekslusif.
  - Atribut berlebihan adalah atribut memiliki arti berbeda-beda sesuai entitasnya.

3. Tabel rekapitulasi adalah hasil pengolahan semua tabel. Apabila tabel sering di akses maka perlu dibuat tabel khusus untuk menyimpan data hasil rekapitulasi.
sumber: http://elearning.amikom.ac.id


BACA JUGA MENGENAI :

 PENGERTIAN SISTEM BASIS DATA & ARSITEKTUR BASIS DATA


PEMODELAN DATA & DIAGRAM KONTEKS, DFD dan ERD

Model data dibuat berdasarkan data yang diperlukan dan bagaimana data diorganisasikan. Model data merupakan suatu gambaran perencanaan yang dibuat oleh arsitek. Model data disini sebagai penghubung konsep dunia nyata dengan proses serta tampilan fisik didalam basis data.

Berikut adalah beberapa model data :
1. Model Hierarki adalah model data yang dibuat secara hierarki  (model pohon) yang mirip dengan filesystem linux yaitu terdapat root sebagai titik puncaknya





2. Model jaringan adalah pointer yang digunakan untuk menghubungkan suatu data dengan data yang lainnya. Bisa juga disebut dengan model CODASYL dimana anak bisa memiliki lebih dari satu orangtua.



3. Model Relasional adalah model semantik yang sering digunakan dalam menjabarkan entitas dan relasinya, kumpulan satu atau lebih relasi dimana relasi dalam bentuk tabel (baris dan kolom). Model disini merupakan tabel berdimensi dua, menggunakan foreign key untuk menghubungkan ke tabel lain.



Terdapat 5 langkah perencanaan basisdata yaitu:

1. Perencanaan dan analisis
2. Perencanaan konseptual
    - Diagram konteks
    - DFD  (Data Flow Diagram)
    - Model ER (Entity Relationship)
3. Perencanaan logis
    - Translasi model ER ke Model Relasional
4. Perencanaan fisik
    - Pembuatan database, relasi dan sebagainya (bentuk fisik).
5. Implementasi


DIAGRAM KONTEKS, DFD dan ERD

Diagram Konteks adalah diagram yang menjelaskan secara umum aliran atau arus data dari sistem database yang akan dibuat, dalam penggambaran diagram konteks dibuat satu proses dengan beberapa entitas dan  tidak dibuatkan data store.



DFD (Data Flow Diagram) adalah penggambaran secara lengkap dan detail dari diagram konteks pada database yang akan dibuat, disinilah semua proses dijabarkan dan digambarkan data store nya.


ERD (Entity Relationship Diagram)  adalah diagram yang menggambarkan hubungan antar entitas. Semua data store di DFD dijadikan entitas di ERD. Tiga bagian dalam pembuatan ERD adalah entitas, relasi dan atribut.

Entitas adalah objek yang memiliki beberapa atribut. Entitas ini merupakan entitas dari ERD. Entitas ERD merupakan data store dari DFD. Contoh Entitas : Penjualan, Mahasiswa, Dosen, Motor dan lain-lain.
Entitas terbagi menjadi dua yaitu Entitas lemah dan Entitas kuat. Entitas kuat atau strong entity merupakan entitas yang tidak memilki ketergantungan dengan entitas lain contoh entitas pengarang. Sedangkan Entitas lemah atau weak entity merupakan entitas yang tercipta dari entitas lain contoh  entitas item_pengarang.

Atribut adalah karakteristik dari entity yang menjabarkan karakteristik dari entity. Contoh : Entitas Mahasiswa memiliki atribut NIM, Nama, Agama, Jurusan, dan lain-lain.
Ada beberapa macam atribut sebegai berikut:
* Simple Attribute dan Composite Attribute
   Simple Attribute merupakan Atribut Sederhana yang tidak dapat dibagi-bagi lagi.
   Contoh atribut harga dari entitas barang.
   Composite Attribute merupakan atribut yang terdiri dari beberapa atribut dasar.
   Contoh atribut nama depan, nama belakang dari entitas Mahasiswa.

* Single Valued Attribute dan Multi Valued Attribute
   Single Valued Attribute merupakan atribut yang hanya memiliki satu nilai untuk suatu entitas tertentu.
   Contoh atribut golongan darah (satu orang untuk satu golongan darah)
   Multi Valued Attribute yang memiliki beberapa nilai dari suatu entitas tertentu.
   Contoh atribut hobi (satu orang banyak hobi)

* Mandatory Attribute
   Merupakan atribut yang harus diisi, tidak boleh kosong yaitu atribut yang menjadi key.

* Derived Attribute (Atribut Turunan)
   Merupakan atribut yang tercipta dari atribut lain. Contoh atribut umur dapat menghasilkan tgl_lahir.

* Key Attribute (Atribut Kunci)
   Merupakan atribut yang memiliki nilai unique sehingga digunakan untuk membedakan tiap baris (record).
   Macam-macam key atribut adaalah Super Key, Candidat Key, dan Primary Key.

Relasi adalah hubungan antara entitas. Relasi ada tiga macam yaitu Unary adalah relasi dengan satu entitsa, Binary adalah relasi antara dua entitas (one to one, one to many, many to many), dan Ternary adalah hubungan antara tiga entitas atau lebih.
Contoh:
- one to one adalah satu manager memimpin satu perusahaan dan sebaliknya.
- one to many adalah satu perusahaan memiliki banyak karyawan.
- many to many adalah satu proyek dikerjakan banyak karyawan , satu karyawan boleh lebih dari satu proyek.

Contoh ERD :





sumber: http://elearning.amikom.ac.id



BACA JUGA MENGENAI:

BAGIAN SQL & TIPE DATA



a. DDL (Data Definition Language)

   Untuk mendefinisikan suatu data dalam pembuatan dan penghapusan object.

   Perintah yang digunakan dalam SQL sebagai berikut:
    - CREATE (membuat)
    - ALTER   (merubah)
    - DROP     (menghapus)


b. DML (Data Manipulation Language)

   Untuk memanipulasi data pada tabel dengan menambahkan, menghapus, merubah data.

   Perintah yang digunakan dalam SQL sebagai berikut:
   - INSERT  (memasukkan)
   - DELETE ( menghapus)
   - UPDATE (merubah)


c. DCL (Data Control Language)

   Untuk pengendalian akses database

   Perintah yang digunakan dalam SQL sebagai berikut:
   - GRANT  (memberikan akses)
   - REVOKE ( mencabut akses)


d. DTL (Data Transaction Language)

   Untuk mengelola transaksi data.

   Perintah yang digunakan dalam SQL sebagai berikut:
   - COMMIT  (setuju)
   - ROLLBACK (batal)


e. Retrieving Data

   Untuk menampilkan data.

   Perintah yang digunakan dalam SQL sebagai berikut:
   - SELECT  (menampilkan)


TIPE DATA

Tipe data : Bigint
Isi           : bilangan bulat dari -263 sampai 263
Ukuran    : 8 byte

Tipe data : Binary
Isi           : panjang tetap dengan maksimal 8000 byte
Ukuran    : jumlah byte yang ditetapkan +4 byte


Tipe data : Bit
Isi           : integer
Ukuran    : nilai 0 dan 1

Tipe data : Char
Isi           : data karakter dengan panjang tetap, maksimal 8000 byte
Ukuran    : 1 byte perkarakter

Tipe data : Datetime
Isi           : 1 Januari 1753 sampai 31 Desember 9999
Ukuran    : 8 byte

Tipe data : Decimal
Isi           : bilangan bulat dari 10 ^38 +1  sampai 10^38-1
Ukuran    : 5 sampai 12 byte tergantung panjangnya

Tipe data : Float
Isi           : -1.79E +308 sampai 1.79E +308
Ukuran    : 4 sampai 8 byte

Tipe data : Image
Isi           : Data biner dengan panjang tidak tetap
Ukuran    : -

Tipe data : Int
Isi           : Bilangan bulat -2 31 sampai 2 31-1
Ukuran    : 4 byte

Tipe data : Money
Isi           : Bilangan bulat -2 63 sampai 2 63-1
Ukuran    : 8 byte

Tipe data : Nchar
Isi           : Data unicode dengan panjang tidak tetap, max 4000 karakter
Ukuran    : N kali 2 byte, dengan N jumlah karakter

Tipe data : Ntext
Isi           : Data unicode dengan panjang tidak tetap, max 2030-1
Ukuran    : 2 kali jumlah karakter yang ditetapkan

Tipe data : Numeric
Isi           : Sama dengan type Decimal
Ukuran    : -

Tipe data : Nvarchar
Isi           : Data unicode dengan panjang tidak tetap, max 4000 karakter
Ukuran    : N kali 2 byte, dengan N jumlah karakter

Tipe data : Real
Isi           : -3.40E +38 sampai 3.40E +38
Ukuran    : 4 byte

Tipe data : Smalldatetime
Isi           : 1 Januari 1900 sampai 6juni 2079
Ukuran    : 4 byte

Tipe data : Smallint
Isi           : Bilangan bulat -2 15 sampai 2 15-1
Ukuran    : 2 byte

Tipe data : Smallmoney
Isi           : -214.748.3648 sampai +214.748.3647
Ukuran    : 4 byte

Tipe data : Tinyint
Isi           : Bilangan bulat 0 samapai 255
Ukuran    : 1 byte

Tipe data : Text
Isi           : Data non-unicode panjang tidak tetap, max 2 31-1 karakter
Ukuran    : 1 byte  perkarakter

Tipe data : Varbinary
Isi           : Data biner panjang tidak tetap, max  2 31-1
Ukuran    : N byte yang dimasukkan +4

Tipe data : Varchar
Isi           : Data karakter non-unicode dengan panjang tidak tetap, max 8000
Ukuran    : 1 byte perkarakter sejumlah isi data



sumber: http://elearning.amikom.ac.id


BACA JUGA MENGENAI :

 PENGERTIAN SISTEM BASIS DATA & ARSITEKTUR BASIS DATA

PENGERTIAN SISTEM BASIS DATA & ARSITEKTUR BASIS DATA


Basis adalah induk atau pusat tempat berkumpul , sedangkan data adalah suatu fakta yang ditulis dalam huruf, karakter, angka maupun simbol.

Data terdiri dari:
- Elemen data : merupakan data terkecil yang tidak dapat dipecah lagi
- Rekaman : merupakan kumpulan dari elemen data yang saling berhubungan
- Berkas atau file : merupakan sekumpulan dari rekaman  yang bertipe sama.


Basis Data adalah kumpulan data-data yang terorganisir dan saling berhubungan sesuai struktur tertentu, yang disimpan di dalam hardware dan dilakukan manipulasi oleh pengguna melalui software. Jadi Sistem Basis Data merupakan sistem yang terdiri dari data yang saling berhubungan dan program untuk mengakses data tersebut.

Apabila diibaratkan sebuah box besar yang bersekat. Didalamnya diletakkan data dengan berbagai pengaturan seperti sesuai abjad yang bertujuan untuk kemudahan dan kecepatan saat data tersebut dibutuhkan. Basis data dan box tersebut memiliki tujuan yang sama.
CONTOH:



Tujuan dari database :
- Speed (Kecepatan dan kemudahan)
- Space (Efisiensi ruang penyimpanan)
- Accuracy (Keakuratan data)
- Availability (Ketersediaan data)
- Completenes (Kelengkapan data)
- Security (Keamanan data)
- Sharability (Kebersamaan Pemakai)

Penerapan database digunakan:
- Universitas
- Sekolahan
- Kantoran
- Rumah Sakit
- Penjualan, dll.


Komponen Utama Sistem BasisData terdiri dari:
- Hardware
- Sistem Operasi
- Basis Data
- DBMS (Database Management System)
- User
- Aplikasi

Beberapa vendor DBMS antara lain :
- Microsoft SQL Server
- Sybase
- MySQL
- PostgreSQL
- Oracle
- dbase , dll.

Arsitektur Basis Data

Terdiri dari tiga yaitu:
1. Lapisan Internal (physical level)
2. Lapisan Konseptual (logical level)
3. Lapisan Ekternal (view level)


Penjelasan

1. Lapisan Internal (physical level) adalah berkaitan dengan penyimpanan secara fisik. Biasanya juga dikenal dengan sebutan physical schema yang merupakan gamabaran relasi data yang telah dideskripsikan dalam logical schema dan disimpan dalam penyimpanan sekunder seperti disk Proses untuk membuat lapisan internal ini disebut physical database design. Lapisan internal ini merupakan level terendah dalam abstraksi level. Contoh obyek  MOTOR pada basisdata MOTOGP direpresentasikan oleh STORED_MOTOR dengan panjang 33 byte.

2. Lapisan Konseptual (logical level) adalah penjelasan dari simpanan data dalam database dan relasi antar data. Biasanya juga dikenal dengan sebutan logical schema yang merupakan lapisan logik dari definisi basisdata, model dan skema. Lapisan Konseptual menjelaskan data yang disimpan dalam basisdata maupun secara fungsional dan mendeskripsikan hubungan antar data. Contoh tabel MOTOGP direpreresentasikan dalam tabel ban, tabel rem, tabel oli, tabel body, dan sebagainya.

3.Lapisan Ekternal (view level) adalah  lapisan yang akan dilihat oleh end users (pemakai akhir). Biasanya juga dikenal dengan sebutan external schema yang merupakan lapisan yang hubungan dengan pengguna baik aplikasi maupun end users. Karena kebutuhan data dari user yang berbeda-beda, tidak semua data dibutuhkan oleh user oleh karena itulah data tersebut diatur oleh aplikasi end user. Contoh kode DOSEN yang digunakan DS001 = Budi, DS002 = Badu. Maka akan ditampillkan nama DOSEN saja, kode tidak akan ditampilkan. Seperti Budi, Badu.

Sejarah Bahasa SQL

SQL pertamakali disebut dengan sequel . Pertamakali SQL dikembangkan pada tahun 1970 oleh IBM. Kepanjangan SQL adalah Structured Query Language.Basisdata menggunakan bahasa query pada umumnya. Dari beberapa bahasa pemrograman , bahasa Query lah yang merupakan bahasa pemrograman termudah dan mudah dipahami.


sumber: http://elearning.amikom.ac.id


BACA JUGA MENGENAI :
                                             

SISTEM BASIS DATA