Rabu, 14 November 2012

Pertemuan VI: Query Language


Query language merupakan suatu bahasa special yang yang dapat mengakses informasi atau perintah  yang melibatkan data pada database.
Bahasa query dapat dikategorikan sebagai bahasa prosedural & bahasa non-prosedural

  • Bahasa procedural merupakan suatu bahasa yang membuat suatu urutan instruksi. Yang termasuk dalam bahasa procedural adalah aljabar relasional
  • Bahasa non-prosedural  merupakan suatu bahsa yang hanya mendeskripsikan informasi tanpa memberikan urutan informasi. Yang termasuk dalam bahasa non-prosedural adalah kalkulus relasional, dan kalkulus relasional tupel.


ALJABAR  RELASIONAL
Aljabar relasional merupakan suatu bahasa query procedural  yang memiliki satu atu dua masukkan dan menghasilkan sebuah keluaran dari  operasi tersebut. Ada dua operasi pada aljabar relasional yaitu operasi dasar dan operasi tambahan

  • Operasi Dasar             : terdiri atas select, project, cross, union, intersection, subdifference, rename,Cartesian product
  • Operasi Tambahan     : terdiri atas set intersection,tetha join , natural join, division


JENIS-JENIS OPERASI

  • Unary  : suatu operasi yang hanya digunakan pada suatu relasi
  • Binary  : suatu operasi yang memerlukan sepasang relasi


SELECTION
Selection merupakan suatu operasi untuk menyeleksi tupel-tupel yang memenuhi suatu predikat.

PROJECTION
Projection merupakan sebuah operasi unary yang digunakan untuk memperoleh kolom-kolom tertentu.

Pertemuan V: Transformasi Model Data ke Basis Data Fisik


TAHAP-TAHAP TRANSFORMASI

  • Semua entitas dan relasi yang merupakan himpunan dari ERD ditransformasikan ke dalambentuk tabel
  • Pada tabel terdapat field yang merupakan atribut dari suatu entitas dan relasi


TRANSFORMASI DASAR

  • Semua entitas akan di implementasikan sebagai sebuah tabel atau file data
  •  Relasi 1-1 : menghubungkan dua buah himpunan entitas yang direpresentasikan dalam bentuk penambahan atribut relasi pada salah satu tabel yang mewakili.
  • Relasi 1-N : menghubungkan dua buah himpunan entitas yang direpresentasikan dalam pencantuman attribute key dari himpunan tabel berderajat satu sampai yang mewakilii derajat N
  •  Relasi N-N : menghubungkan dua bua buah himounan entitas yang direpresentasikan dalam bentuk tabel khusus yang memiliki foreign key yang berasal dari key himpunan entitas yang menghubungkannya.


IMPLEMENTASI HIMPUNAN ENTITAS LEMAH DAN SUBENTITAS

  • Himpunan entitas lemah dan subentitas digunakan dalam bentuk tabel sebagaimana himpunan entitas kuat hanya saja entitas kuat langsung dapat menjadi tabel utuh tanpa melihat hubungan dengan entitas lain.
  • Himpunan entitas lemah bisa menjadi sebuah tabel utuh jika menyertakan attribute key dari implementasi himpunan entitas lemah.

Rabu, 03 Oktober 2012

Pertemuan IV: Model Data Relasional

Istilah-istilah dalam model data relasional:
Relasi            : Tabel yang terdiri dari attribute(kolom) dan tuple(baris).
Attribute         : Kolom dalam sebuah relasi.
Tuple             : Baris dalam sebuah relasi yang terdiri dari elemen yang saling berkaitan menginformasikan suatu entitas dengan lengkap.
Domain            : Kemungkinan nilai yang dapat diinputkan pada suatu attribute.
Degree            : Jumlah attribute dalam suatu relasi.
Cardinality       : Jumlah tuple dalam suatu relasi.
Candidate Key     : Attribute yang membedakan antara satu baris dengan baris lainnya.
Primary Key       : Candidate key yang digunakan untuk mengidentifikasikan tuple yang unik dalam suatu relasi.
Alternate Key     : Candidate key yang tidak menjadi primary key.
Foreign Key       : Attribute suatu relasi yang merujuk ke primary key dari relasi yang lain.

Model Data Relasional
Model data relasional merupakan sekumpulan tabel berdimensi dua yang tersusun atas beberapa relasi. Model data relasional meletakkan datanya dalam bentuk relasi. Relasi-relasi tersebut menunjukkan hubungan antar himpunan entitas yang berbeda. Struktur relasi berbentuk tabel yang memiliki skema yang mendeskripsikan nama relasi dan atribut beserta tipe datanya.

Tabel Basis Data Relasional


Cara mendefinisikan Domain:
- Memberi nama domain sesuai dengan nilai yang akan dimiliki domain tersebut.
- Menentukan tipe data dari nilai.
- Menentukan format dari domain.

Batasan-batasan Integritas(Integrity Constraits):
- Batasan diberikan kepada suatu relasi.
- Ditetapkan ketika mendefinisikan skema.
- Dicek ketika relasi dimodifikasi maupun dimanipulasi.

Aturan Integritas Relasi (Relational Integrity Rules):
- Null                  : Nilai suatu attribute yang tidak diketahui dan tidak sesuai dengan tipe data tuple tersebut. Nilai (konstanta) null digunakan untuk menyatakan attribute yang nilainya belum siap.
- Entity Integrity      : Kondisi dimana tidak ada nilai null dalam satu komponen primary key.
- Referential Integrity : Garis yang menghubungkan antara satu tabel dengan tabel lain.

Contoh Model Data Relasional
-Tabel

-ERD


Selasa, 25 September 2012

Pertemuan III: Entity Relationship Diagram

Entity relationship program terdiri dari 2 bagian, yaitu:

  • Entity Relationship Model : Menggambarkan data bentuk entitas, atribut, serta relasi antar entitas.
  • Entity Relationship Diagram : Menggambarkan hubungan antar entitas.

A. Entity
Entity (entitas) adalah objek yang ada dan dibedakan dari objek lain dalam dunia nyata. Entitas memiliki atribut untuk membedakan dirinya dengan objek lain. Entitas digambarkan dengan bentuk persegi. Entitas dengan tipe yang sama disebut juga set entitas.
Contoh : bangunan, mahasiswa, mobil.

B. Attribute
Attribute (atribut) adalah properti deskriptif yang dimiliki oleh semua anggota dari suatu set entitas. Setiap atribut pada entitas memiliki kunci atribut yang bersifat unik yang biasa disebut primary key. Atribut digambarkan dengan bentuk elips.
Kumpulan nilai yang dapat dimasukkan pada setiap atribut disebut value set (domain).
Jenis-jenis atribut:
- Atomic attribute : atribut yang hanya terdiri atas 1 komponen tunggal dengan keberadaan independen, tidak dapat diuraikan lagi. Contoh : NIM.
- Composite attribute : atribut yang terdiri dari beberapa atribut yang lebih mendasar dan bisa diuraikan lagi. Contoh : Alamat.
- Single valued attribute : atribut yang hanya memiliki satu nilai untuk suatu entitas tertentu. Contoh : Jenis kelamin.
- Multivalued attribute : atribut yang memiliki lebih dari satu nilai untuk suatu entitas tertentu. Contoh : Hobi.
- Derivative attribute : atribut yang dihasilkan dari atribut lain, namun tidak pada satu entitas. Contoh : Umur.\

C. Relationship
Relationship (relasi) adalah hubungan satu atau lebih entitas yang dapat memiliki atribut dimana adanya transaksi dengan suatu nilai tertentu. Relasi digambarkan dengan bentuk jajaran genjang.

D. Cardinality Ratio
Cardinality ratio (rasio kardinal) adalah jumlah keterhubungan antara satu entitas dengan entitas lainnya. Rasio kardinal memiliki 3 jenis hubungan, yaitu:
- One to one : satu entitas A paling banyak berhubungan dengan satu entitas B.
- One to many : satu entitas A berhubungan dengan sejumlah entitas B.
- Many to many : sejumlah entitas A berhubungan dengan sejumlah entitas B.


Tahap-tahap pembuatan Entity Relationship Diagram:
- Mengidentifikasi entity yang terlibat.
- Menentukan attribute tiap entity.
- Menentukan primary key tiap entity.
- Menentukan relasi antar entity.
- Menentukan attribute tiap relasi (jika ada).
- Menentukan cardionality ratio.
- Menentukan participation constrait.

Kamis, 20 September 2012

Pertemuan II: Data vs Informasi serta Basis Data

Apa itu data?
Data adalah sekumpulan fakta-fakta mentah yang belum diolah dan belum bisa dipahami oleh manusia.

Apa itu informasi?
Informasi adalah kumpulan dari data-data yang telah diolah, sehingga dapat dimengerti oleh manusia.

Tujuan penggunaan Basis Data

  • Pengoperasian yang lebih mudah dan cepat.
  • Penggunaan data yang terintegrasi
  • Mengurangi kemungkinan duplikasi data
  • Dapat menampung data dalam jumlah yang besar
  • Lebih efisien dan lebih aman


Komponen-komponen yang dibutuhkan dalam Basis Data

  • Hardware (perangkat keras)
  • Operating System (OS) untuk mengoperasikan komputer
  • Software Database Management System (DBMS) untuk mengelola data
  • Software pendukung DBMS
  • User yang mengendalikan program
Arsitektur Basis Data
  1. Stand Alone (Sistem Tunggal): Sistem basis data yang hanya bisa digunakan pada komputer itu sendiri.
  2. Centralized System (Sistem Terpusat): Sistem basis data yang terdiri dari server dan beberapa terminal
  3. Client-Server System (Sistem Klien-Server) : Sistem yang terdiri dari server sebagai administrator dan pengguna sebagai klien. Sistem ini lebih baik dari sistem lainnya.

Bahasa pada Basis Data
  1. DDL (Data Definition Language) : Data yang digunakan administrator maupun user untuk mendeskripsikan nama suatu entitas, atribut, serta relasi data secara terintegrasi
  2. DML (Data Manipulation Language): Bahasa yang digunakan untuk mengubah dan memperbaiki data, meliputi penambahan, pengeditan, pengambilan, dan penghapusan

Senin, 10 September 2012

Alasan Menggunakan Basis Data


Sebelum manusia mengenal istilah basis data, data yang diolah oleh suatu perusahaan masih kurang terintegrasi karena data-datanya terpisah. Sehingga terpikirkan untuk menciptakan suatu sistem manajemen data base (DBMS). Data diterjemahkan kedalam sebuah aplikasi program, sehingga kontrol akses luas dan manipulasi pada data dapat dilakukan oleh sebuah aplikasi program.

Basis Data dapat diistilahkan sebagai sebuah lemari besar yang terdiri dari rak-rak yang berisi dokumen. Dimana dokumen tersebut telah diidentifikasi terlebih dahulu untuk membedakan antara dokumen satu dengan dokumen yang lainnya. Sebuah basis data dibuat untuk mewakili sebuah semesta data yang spesifik. Misalnya basis data kepegawaian, basis data akademik, basis data inventori, dan sebagainya. Dalam basis data akademik, misalnya kita dapat menempatkan file mata pelajaran, file guru, file jadwal, file nilai dan seterusnya. Operasi awal berkaitan dengan pembuatan objek(basis data dan tabel) sehingga hanya perlu dilakukan sekali dan berlaku seterusnya. Sedangkan operasi yang berkaitan dengan pengisian tabel merupakan operasi rutin yang dilakukan berulang-ulang, karena operasi inilah yang mewakili aktivitas manajemen dan memproses data pada basis data.

Tujuan utama dari sistem basis data adalah menyediakan pemakai melalui suatu pandangan abstrak mengenai data, dengan menyembunyikan detail dari bagaimana data disimpan dan dimanipulasikan. Oleh karena itu, titik awal untuk perancangan sebuah basis data haruslah abstrak dan deskripsi umum dari kebutuhan-kebutuhan informasi suatu organisasi harus digambarkan di dalam basis data. Lebih jauh lagi, jika sebuah basis data merupakan suatu sumber yang bisa digunakan bersama maka setiap pemakai membutuhkan pandangan yang berbeda-beda terhadap data di dalam basis data.


Keuntungan DBMS
• Data terkontrol secara terpusat, sehingga mempermudah pengolahan basisdata.
• Meminimalisir redudansi(pengulangan data).
• Mencapai indepedensi data.
• Mengambil data dan informasi dengan cepat.
• Keamanan yang lebih baik, terutama pada pemberian hak akses kepada user.


Kerugian DBMS
• Membutuhkan biaya yang mahal untuk perangkat-perangkat yang dibutuhkan.
• Administrator basis data (DBA) harus handal karena sangat dibutuhkan kemampuan manajemen data yang baik dan memahami kinerja sistem basis data yang rumit.
• Jika terjadi kerusakan, maka dapat mengacaukan sistem pada departemen terkait.
• Kapasitas memori yang besar.