Uploaded by User22584

SLIDE Basis Data Spasial

advertisement
Basis Data Spasial
Modul 1
1. Basisdata
 Pengantar Basisdata
 DBMS (Database Management System)
 Normalisasi
 Pemodelan E-R
 Perancangan Basisdata
2. Pengenalan PostgreSQL dan PostGIS
 SQL (Structure Query Language)
 PostgreSQL
 PostGIS
Basisdata (1)
Beberapa Definisi tentang basis data (database) :
• Basis data adalah koleksi atau kumpulan data yang
mekanis, terbagi / shared, terdefinisi secara formal dan
dikontrol terpusat pada organisasi (Gordon C. Everest)
• Basis data adalah sebuah sistem file-file yang
terintegrasi yang mempunyai minimal primary key untuk
pengulangan data (Toni Fabbri)
• Basis data adalah koleksi data-data yang saling
berhubungan mengenai suatu organisasi / enterprise
dengan macam-macam pemakaiannya. (S. Attre)
Basisdata (2)
Komponen penyusun utama dari sebuah basis data terdiri dari
:
– Hardware
– Operating System
– Database
– DBMS (Database Management System)
– User (pengguna sistem basis data)
– Optional Software
Basisdata (3)
Abstraksi data pada basis data terdiri dari 3 level
yaitu level eksternal, level konseptual, dan level
internal.
Basisdata (4)
Manfaat dari pembentukan basis data ini sendiri adalah sebagai
berikut:
• Sebagai komponen utama atau penting dalam sistem
informasi, karena merupakan dasar dalam menyediakan
informasi.
• Menentukan kualitas informasi yaitu cepat, akurat, dan
relevan, sehingga infromasi yang disajikan tidak basi. Informasi
dapat dikatakan bernilai bila manfaatnya lebih efektif
dibandingkan dengan biaya mendapatkanya.
• Mengatasi kerangkapan data (redundancy data).
• Menghindari terjadinya inkonsistensi data.
• Mengatasi kesulitan dalam mengakses data.
• Menyusun format yang standar dari sebuah data.
DBMS
Database Management System (DBMS) adalah
suatu sistem atau perangkat lunak yang
dirancang untuk mengelola suatu basis
data
dan
menjalankan
operasi
terhadap data yang diminta banyak pengguna.
DBMS merupakan perangkat lunak yang
dirancang untuk dapat melakukan utilisasi dan
mengelola koleksi data dalam jumlah yang
besar. DBMS juga dirancang untuk dapat
melakukan manipulasi data secara lebih
mudah.
DBMS (1)
DBMS juga memiliki beberapa fungsi, diantaranya
adalah :






Data Definition
Data Manipulation
Data Security & Integrity
Data Recovery & Concurency
Data Dictionary
Performance
Perangkat Lunak DBMS
Perangkat lunak basis data yang banyak digunakan
dalam pemrograman dan merupakan perangkat
basis data arus tinggi (high level) antara lain
Microsoft SQL Server, Oracle, Sybase, Interbase,
XBase, Firebird, MySQL, PostgreSQL, Microsoft
Access, dBase III, Paradox, FoxPro, Visual FoxPro,
dll
Normalisasi (1)
• Proses normalisasi adalah proses pengelompokan data
elemen menjadi tabel-tabel yang menunjukkan entity dan
relasinya.
• Pada proses normalisasi dilakukan pengujian pada
beberapa kondisi apakah ada kesulitan pada saat
menambah/menyisipkan, menghapus, mengubah dan
mengakses pada suatu basis data.
• Bila terdapat kesulitan pada pengujian tersebut maka
perlu dipecahkan relasi pada beberapa tabel lagi atau
dengan kata lain perancangan basis data belum optimal.
Normalisasi (2)
Proses normalisasi ini memiliki beberapa tahapan,
yaitu:
Bentuk Normal Kesatu (1 NF/First Normal
Form)
• Bentuk normal 1NF terpenuhi jika sebuah tabel
tidak memiliki
atribut
bernilai
banyak
(multivalued attribute), atribut composite.
• Setiap atribut dalam tabel tersebut harus bernilai
atomic (tidak dapat dibagi-bagi lagi)
NIM
15113008
15113009
15113010
NIM
Nama
Hobi
15113008
Nina
Memasak
Nina
Berenang
Nina
Membaca
Raditya
Membaca
Raditya
Melukis
Galuh
Membaca komik
Galuh
Menonton film
Nama
Hobi
Nina
Memasak, berenang, membaca
15113008
Raditya
Membaca, melukis
15113008
Galuh
Membaca komik, menonton film
15113009
15113009
15113010
15113010
Bentuk Normal Tahap Kedua (2nd Normal
Form)
 Bentuk normal 2NF terpenuhi dalam sebuah
tabel jika telah memenuhi bentuk 1NF
 Sebuah tabel tidak memenuhi 2NF, jika ada
atribut yang ketergantungannya (Functional
Dependency) hanya tergantung pada sebagian
dari primary key
 Jika terdapat atribut yang tidak memiliki
ketergantungan terhadap primary key, maka
atribut tersebut harus dipindah atau dihilangkan
Contoh tabel yang sudah memenuhi normal 1NF, tetapi belum memenuhi
normal kedua (2NF):
mhs_nr
p
mhs_na
ma
mhs_alam
at
mk_kod
e
mk_nama
mk_sks
nihuruf
Tabel di atas belum memenuhi normal 2NF karena dari kolom {mhs_nrp dan
mk_kode} yang dianggap sebagai primary key, hanya kolom {nihuruf} yang
bergantung kepada kedua kolom primary key tersebut.
• {mhs_nrp dan mk_kode} --/->{mhs_nama}
• {mhs_nrp dan mk_kode} --/->{mhs_alamat}
• {mhs_nrp dan mk_kode} --/->{mk_nama}
• {mhs_nrp dan mk_kode} --/->{mk_sks}
• {mhs_nrp dan mk_kode} ---> {nihuruf}
Sehingga tabel diatas harus didekomposisi menjadi beberapa tabel yang
memenuhi syarat tabel normal 2NF, yang terdiri dari :
• Tabel Nilai  {mhs_nrp, mk_kode, nihuruf}
• Tabel Mahasiswa  {mhs_nrp, mhs_nama, mhs_alamat}
• Tabel Matakuliah  {mk_kode, mk_nama, mk_sks}
Bentuk Normal Tahap Ketiga (3rd Normal
Form /3NF)
• Bentuk normal 3NF terpenuhi jika telah memenuhi
bentuk 2NF, dan jika tidak ada atribut non primary key
yang memiliki ketergantungan terhadap atribut non
primary key yang lainnya.
• Contoh tabel yang memenuhi 2NF, tetapi tidak memenuhi
3NF, Tabel Mahasiswa :
nrp
nama
alm_jalan
alm_kota
alm_provinsi
alm_kodepos
Sehingga tabel diatas harus didekomposisi menjadi :
– Tabel Mahasiswa  {nrp, nama, alm_jalan, alm_kodepos}
– Tabel kodepos  {alm_kodepos, alm_provinsi, alm_kota}
Bentuk Normal Tahap Keempat (4rd Normal
Form /4NF)
4NF terpenuhi jika :
• Telah memenuhi bentuk BCNF,
• Tidak mengandung dua atribut atau lebih yang
bernilai banyak
Bentuk Normal Tahap Kelima (5rd Normal
Form /5NF)
• Suatu tabel dikatakan tidak memenuhi 5NF jika ia
atributnya saling bergantung dengan atribut lain
• Bentuk normal 5NF terpenuhi jika data yang ada padanya
tidak dapat didekomposisi lagi menjadi tabel yang lebih
kecil
• Jika 4 bentuk normal sebelumnya dibentuk berdasarkan
functional dependency, 5NF dibentuk berdasarkan konsep
join dependence. Yakni apabila sebuah tabel telah didekomposisi menjadi tabel-tabel lebih kecil, harus bisa
digabungkan lagi (join) untuk membentuk tabel semula
Pemodelan E-R
• Model data Entity-Relationship (E-R) terdiri dari
sekumpulan objek-objek yang disebut dengan
entitas dan hubungan yang terjadi diantara objekobjek tersebut.
• Model data E-R terbagi menjadi tiga konsep dasar,
yaitu himpunan entitas, himpunan relasi, dan
atribut.
Entitas dan Atribut
• Suatu entitas merupakan suatu objek dasar atau individu yang
mewakili sesuatu yang nyata eksistensinya dan dapat dibedakan
dari objek-objek lain.
• Suatu entitas mempunyai sekumpulan sifat, dan nilai beberapa sifat
tersebut adalah unik yang dapat mengidentifikasi entitas tersebut.
• Artibut merupakan sifat atau properti yang dimiliki oleh entitas.
Atribut inilah yang membedakan antara satu entitas dengan entitas
lainnya.
• Sebagai contoh entitas mahasiswa memiliki atribut berupa NIM,
nama mahasiswa, alamat mahasiswa, dan tanggal lahir dari
mahasiswa tersebut.
NIM
Nama_mhs
Alamat_mhs
Tgl_lahir
15107001
Arini
Cisitu Lama
12/04/1989
15107012
Dianrina
Tubagus Ismail
15/08/1989
15107032
Fandrio
Plesiran
25/01/1990
Relasi
• Relasi menunjukkan adanya hubungan diantara sejumlah
entitas yang berasal dari sejumlah himpunan entitas yang
berbeda.
Kardinalitas Relasi
Kardinalitas merupakan jumlah maksimum entitas dimana
entitas tersebut dapat berelasi dengan entitas pada himpunan
entitas yang lain.
 Satu ke satu (One to one)
 Satu ke banyak (One to many)
 Banyak ke banyak (Many to many)
 Banyak ke satu (Many to one)
Kelas Keanggotaan
• Kelas keanggotaan menunjukkan apakah semua
anggota entitas memiliki hubungan dengan
anggota entitas lagi secara pasti atau tidak.
• Kelas keanggotaan terdiri dari dua jenis, yaitu
• Obligatory adalah jika semua anggota entitas secara pasti
berhubungan dengan anggota entitas lainnya.
• Non-obligatory adalah jika semua anggota entitas secara
pasti berhubungan dengan anggota entitas lainnya .
Kelas Keanggotaan
Berikut beberapa contoh penggunaan kelas keanggotaan.
1. Obligatori dan Obligatori
 Enterprise rules :


Seorang guru pasti mengajar mata pelajaran
Satu mata pelajaran pasti diajar oleh guru
2. Obligatori dan Non Obligatori
 Enterprise rules :


Seorang guru pasti mengajar mata pelajaran
Satu mata pelajaran belum tentu diajar oleh guru
3. Non Obligatori dan Non Obligatori
 Enterprise rules :


Seorang guru belum tentu mengajar mata pelajaran
Satu mata pelajaran belum tentu diajar oleh guru
Diagram E-R
Sebuah basis data bisa digambarkan secara grafik dengan
menggunakan diagram E-R. Adapun komponen-komponen
dari suatu diagram E-R adalah sebagai berikut :
• Persegi panjang, menggambarkan himpunan entitas.
• Belah ketupat, menggambarkan himpunan relasi.
• Elips, menggambarkan atribut-atribut.
• Garis, menggambarkan hubungan atribut ke entitas dan
himpunan entitas ke himpunan relasi.
Perancangan Basisdata (1)
Dalam melakukan perancangan basis data, terdapat
beberapa tujuan yaitu :
• Untuk memenuhi kebutuhan akan informasi dari
pengguna dan aplikasi yang digunakan.
• Menyediakan struktur informasi yang natural dan mudah
dimengerti oleh pengguna.
• Mendukung kebutuhan pemrosesan dan objektifitas
kinerja (waktu respon, waktu pemrosesan, dan ruang
penyimpanan)
Proses dalam metodologi perancangan dibagi menjadi 3
tahap :
Desain Konseptual
Desain Logikal
Desain Fisikal
Perancangan Basisdata (2)
1. Desain Konseptual adalah proses membangun suatu model
berdasarkan informasi yang digunakan oleh perusahaan atau
organisasi, tanpa pertimbangan perencanaan fisik (Connolly,
2002:p419).
2. Desain Logikal adalah proses pembuatan suatu model informasi
yang digunakan pada perusahan berdasarkan pada model data
yang spesifik, tetapi tidak tergantung dari Database
Management System (DBMS) yang khusus dan pertimbangan
fisik yang lain (Connolly, 2002L:p441).
3. Desain Fisikal adalah proses pembuatan deskripsi dari suatu
impelmentasi basis data pada secondary storge. Tujuan utama
dari physical database design adalah untuk mendeskripsikan
bagaimana desainer bermaksud untuk mengimplementasikan
secara fisik dari logical database design.
SQL (Structure Query Language)
SQL adalah suatu bahasa komputer yang mengikuti
standard ANSI (American National Standard
Institute), yaitu sebuah bahasa standar yang
digunakan untuk mengakses dan melakukan
manipulasi suatu sistem database.
Mengenal DDL pada SQL
• Data Definition Language (DDL), merujuk pada kumpulan
perintah yang dapat digunakan untuk mendefinisikan objek –
objek basis data, seperti membuat sebuah tabel basis data atau
indeks primer atau sekunder.
• Berikut penjelasan singkat beberapa sintaks yang sering
dijumpai dalam DDL.
–
–
–
–
–
–
CREATE DATABASE, yang digunakan untuk membuat basis data.
CREATE TABLE, yang digunakan untuk membuat tabel.
ALTER TABLE, yang digunakan untuk merubah struktur suatu tabel.
DROP TABLE, yang digunakan untuk menghapus suatu tabel.
CREATE INDEX, yang digunakan untuk membuat suatu index dalam tabel.
DROP INDEX, yang digunakan untuk menghapus suatu index dalam tabel.
Mengenal DML pada SQL
• Data Manipulation Language (DML), mengacu pada kumpulan
perintah yang dapat digunakan untuk melakukan manipulasi
data, seperti penyimpanan data ke suatu tabel, kemudian
mengubahnya dan menghapusnya atau hanya sekedar
menampilkannya kembali.
• Berikut merupakan penjelasan singkat dari sintaks-sintaks DML.
– SELECT, yang digunakan untuk mengakses data dari suatu tabel
dalam basis data.
– UPDATE, yang digunakan untuk melakukan update data dalam
suatu tabel pada basis data.
– DELETE, yang digunakan untuk menghapus data dari suatu tabel
dalam basis data.
– INSERT, yang digunakan untuk menambahkan data ke dalam suatu
tabel dalam basis data.
Pengenalan PostgreSQL
PostgreSQL sebuah produk database relasional yang termasuk
dalam kategori free open source software (FOSS).
PostgreSQL terkenal karena fitur-fitur yang advanced dan
pendekatan rancangan modelnya menggunakan paradigma
object-oriented, sehingga sering dikategorikan sebagai Object
Relational Database Management System (ORDBMS).
Pengenalan PostGIS
Postgis merupakan sebuah teknologi
database yang dapat menyimpan data
spasial (keruangan).
PostGIS menyediakan sejumlah fungsi
penting dari Sistem Informasi
Geografis
(SIG),
termasuk
membangun hubungan topologi,
tampilan antar muka untuk melihat
dan mengedit SIG, dan juga dapat
diakses dengan perangkat yang
berbasis web.
Download