SEJARAH BASIS DATA DAN PERKEMBANGAN
NYA
SEJARAH
BASIS DATA
TAHUN 1960
Dari awal penggunaan komputer, penyimpanan dan
manipulasi data merupakan focus utama aplikasi. Pada awal tahun 1960, Charles
Bachman diperusahaan General Electric mendesain generasi pertama DBMS yang
disebut Penyimpanan Data Terintegrasi (Integrated Data Store). Dasar untuk
model data jaringan dibentuk lalu distandardisasi oleh Conference on Data
System Language (CODASYL). Kemudian, Bachman menerima ACM Turing Award
(Penghargaan semacam nobel pada ilmu komputer ) di tahun 1973.
Pada akhir tahun 1960-an, IBM mengembangkan system
manajemen informasi (Information Manajemen System) DBMS. IMS dibentuk dari
representasi data pada kerangka kerja yang disebut model data hierarki. Dalam
waktu yang sama, hasil kerja sama antara IBM dengan perusahaan penerbangan
Amerika mengembangkan system SABRE. System SABRE memungkinkan user mengakses
data yang sama pada jaringan computer.
TAHUN 1970
Pada tahun 1970, Edgar Codd di laboratorium penelitian
di San Jose mengusulkan suatu representasi data baru yang disebut model data
relational. Pada tahun 1980, model relasional menjadi paradigma DBMS paling
dominan. Bahasa query SQL dikembangkan untuk basis data relasional sebagai
bagian proyek Sistem R dari IBM. SQL di standardisasi di akhir tahun 1980 dan
SQL-92 diadopsi oleh American National Standards Institute (ANSI) dan
International Standards Organization (ISO). Program yang digunakan untuk
eksekusi bersamaan dalam basisdata disebut transaksi. User menulis programnya,
dan bertanggung jawab menjalankan program secara bersamaan terhadap DBMS. Pada
tahun 1999, James Gray memenangkan Turing award untuk kontribusinya pada
manajemen transaksi dalam DBMS.
TAHUN 1980
Pada akhir tahun 1980 dan permulaan tahun 1990, banyak
bidang system basisdata dikembangkan. Penelitian dibidang basisdata meliputi
bahasa query yang powerful, model data yang lengkap, dan penekanan pada
dukungan analisis data yang kompleks semua bagian organisasi. Beberapa vendor
(misalnya IBM, DB2, Oracle8, dan Informix UDS) memperluas sistemnya dengan
kemampuan menyimpan tipe data baru misalnya image dan text serta kemampuan
query yang kompleks. System khusus dikembangkan banyak vendor untuk membuat
data warehouse dan mengonsolidasi data beberapa basis data.
Suatu fenomena menarik adalah munculnya enterprice
resource planning (ERP) dan management resource planning (MRP), yang menambah
lapisan substansial dari fitur berorientasi aplikasi pada DBMS utama. Paket
yang digunakan secara luas meliputi Baan, Oracle, PeopleSoft, SAP, dan Siebel.
Paket tersebut mengidentifikasi kumpulan tugas umum (misalnya manajemen
inventori, perencanaan sumber daya manusia, dan analisis keuangan) yang
dihadapi oleh sejumlah besar organisasi dan menyediakan lapisan aplikasi umum
untuk melaksanakan tugas. Data disimpan dalam DBMS relasional. Kemudian,
lapisan aplikasi dapat disesuaikan pada perusahaan berbeda sehingga biaya
keseluruhan perusahaan menjadi lebih rendah dibanding biaya pembuatan lapisan
aplikasi dari awal. Lebih jauh, DBMS memasuki dunia internet. Saat generasi
pertama, web site menyimpan datanya secara ekskulisif dalam file system
operasi. Pada saat ini, DBMS dapat digunakan untuk menyimpan data yang dapat
diakses melalui web browser. Query dapat dibuat melalui form web dan format
jawabannya dengan menggunakan markup language semisal HTML untuk mempermudah
tampilan pada browser. Semua vendor basis data menambah fitur ini untuk DBMS
mereka.
Manajemen basisdata mempertimbangkan pentingnya suatu
data bersifat online dan dapat diakses melalui jaringan computer. Saat ini,
bidang seperti ini diwujudkan dalam basis data multimedia, video unteraktif,
perpustakaan digital, proyek ilmuwan seperti proyek pemetaan, proyek system
obeservasi bumi milik NASA, dan lain sebagainya (Ramakrishnan and Gehrke,
2003).
PERKEMBANGAN
BASIS DATA
Sejak tahun 1960-an penggunaan basis data sudah
digunakan untuk bidang komersial, dimana pemrosesan file-nya masih berbasis
manajemen file tradisional. Perkembangan komputer yang semakin pesat diikuti
dengan perkembangan perangkat lunak untuk aplikasi bisnis, sejak tahun 1970-an
sampai awal tahun 1980 manajemen berbasis file tradisional berkembang menjadi
manajemen basis data.
Di dalam manajemen basis data dikenal berbagai model
data yang dapat digunakan untuk mendeskripsikan sebuah data dalam merancang
suatu basis data. Manajemen ini memungkinkan banyak user untuk mengakses data
secara bersamaan sehingga fasilitas yang dimiliki oleh manajemen sudah semakin
banyak yaitu fasilitas pemanipulasian data, kontrol konkurensi data, recovery
data, keamanan data dan didukung dengan fasilitas komunikasi data karena
manajemen ini sudah terhubung dengan suatu jaringan .
Perkembangan dunia usaha semakin meningkat ditunjang
dengan perkembangan komunikasi yang mempermudah organisasi atau perusahaan
untuk mengakses data, sehingga mengubah manajemen basis data menjadi manajemen
basis data tingkat lanjut didukung dengan fasilitas data warehousing dan
fasilitas basis data berbasis web sebagai salah satu strategi organisasi dalam meningkatkan
kinerja dan keuntungan organisasi.
Perkembangan komputer yang semakin pesat diikuti
dengan perkembangan perangkat lunak untuk aplikasi bisnis, sejak tahun 1970-an
sampai awal tahun 1980 manajemen berbasis file tradisional berkembang menjadi
manajemen basis data. Di dalam manajemen basis data dikenal berbagai model data
yang dapat digunakan untuk mendeskripsikan sebuah data dalam merancang suatu
basis data. Manajemen ini memungkinkan banyak user untuk mengakses data secara
bersamaan sehingga fasilitas yang dimiliki oleh manajemen sudah semakin banyak
yaitu fasilitas pemanipulasian data, kontrol konkurensi data, recovery data,
keamanan data dan didukung dengan fasilitas komunikasi data karena manajemen
ini sudah terhubung dengan suatu jaringan . Perkembangan dunia usaha semakin
meningkat ditunjang dengan perkembangan komunikasi yang mempermudah organisasi
atau perusahaan untuk mengakses data, sehingga mengubah manajemen basis data
menjadi manajemen basis data tingkat lanjut didukung dengan fasilitas data
warehousing dan fasilitas basis data berbasis web sebagai salah satu strategi
organisasi dalam meningkatkan kinerja dan keuntungan organisasi. Data
Collection and Database Creation (1960s and earlier).
Database Management Systems (1970s – early 1980s)
·
Hierarchical and Network
Database Systems
·
Relational Database Systems
·
Data modeling tools :
entity relationship model, etc
·
Indexing and data
organization techniques : b+ tree, hashing, etc
·
Query language : SQL, etc
·
User interface, forms, and
reports
·
Query processing and query
optimizaztion
·
Advance Database Systems
(mid-1980s-present)
·
Advance data models :
extended relational, object oriented, object relational, deductive
·
Application oriented :
spatial, temporal, multimedia, active, scientific, knowledge bases, Web-Based
Database Systems (1990s – present)
·
XML-based database systems
·
Web mining Data Warehouse
and Data Mining (late 1980s – present)
·
Data warehouse and OLAP
technology
·
Data mining and knowledge
discovery
A. Data Warehousing
Konsep Data Warehousing
Konsep dasar dari data warehousing adalah informasi
yang dikumpulkan dalam suatu gudang penyimpanan dan merepresentasikan solusi
untuk pengaksesan data didalam sistem non relasional. Sehingga data warehousing
dapat disebut sebagai database yang berorientasi pada subyek, terintegrasi,
mempunyai Time Variant dan non-valitile
Empat Karakteristik Data Warehouse
• Subject oriented: Aplikasi untuk operasi perusahaan
(operational system) berorientasi pada proses (mengotomasi fungsi-fungsi dari
proses bersangkutan – function oriented). Misalnya di bank, aplikasi kredit
mengotomasi fungsi-fungsi: verifikasi lamaran dan credit checking, pemeriksaan
kolateral, approval, pendanaan, tagihan, dan seterusnya. Didalam data warehouse
data-data yang dihasilkan dari proses kredit ini, diatur kembali
(dikelompokkan) dan diintegrasikan (digabung) dengan data-data dari
fungsi-fungsi lain, agar berorientasi pada misalnya nasabah dan produk.
• Integrated: Data dari macam-macam aplikasi transaksi
(untuk bank misalnya: tabungan, kredit,rekening koran) semua mengandung data
nasabah, ada yang sama ada yang spesifik (yang sama misalnya: nama dan alamat,
yang spesifik misalnya: untuk kredit ada kolateral, untuk rekening Koran ada
overdraft) – didalam data warehouse data-data yang sama harus diintegrasikan
disatu database, termasuk misalnya diseragamkan formatnya (sederhana tetapi
paling sering terjadi – aplikasi-aplikasi sering dibeli vendor berbeda, dibuat
dengan/dijalankan di teknologi berbeda-beda).
• Time variant: Data warehouse menyimpan sejarah
(historical data). Waktu merupakan tipe atau bagian data yang sangat penting
didalam data warehouse. Didalam data warehouse sering disimpan macam-macam
waktu, seperti waktu suatu transaksi terjadi/dirubah/dibatalkan, kapan
efektifnya,kapan masuk ke komputer, kapan masuk ke data warehouse; juga hampir
selalu disimpan versi,misalnya terjadi perubahan definisi kode pos, maka yang
lama dan yang baru ada semua didalam data warehouse kita. Sekali lagi, data
warehouse yang bagus adalah yang menyimpan sejarah.
• Non-volatile: Sekali masuk kedalam data warehouse,
data-data, terutama data tipe transaksi, tidak akan pernah di update atau
dihapus (delete) Terlihat, bahwa keempat karakteristik ini saling terkait –
kesemuanya harus diimplementasikan agar suatu data warehouse bisa efektif
memiliki data untuk mendukung pengambilan-keputusan. Dan,implementasi keempat
karakteristik ini membutuhkan struktur data dari data warehouse yangberbeda
dengan database sistem operasional.
Keuntungan dari Data Warehousing
1. Hasil yang diperoleh dari investasi lebih tinggi
2. Kompetitif
3. Meningkatkan produktivitas perusahaan
Jenis database yang tersimpan di dalam media
penyimpanan data berdasarkan
penggunaan data :
• Database yang memiliki data sering di-update disebut
data OLTP (Online Transaction Processing). Data OLTP sering juga disebut data
operasional, mencerminkan sifat aplikasi database yang dinamik.
• Database yang memiliki data sering digunakan untuk
query disebut DSS (Decision Support System). Data DSS sering disebut data
analitikal, mencerminkan sifat aplikasi database yang relatif statik.
Data Operasional Data DSS
·
Berorientasi pada aplikasi
: data digunakan untuk proses bisnis. Sebagai contoh : sistem perbankan dengan
fileterpisah yang sudah dalam bentuk normal untuk setiap proses bisnis.
·
Berorientasi pada subyek :
data digunakan untuk subyek bisnis, misalinformasi nasabah. Data dalam bentuk
denormalisasi dimana sebuah record dapat meliputi keseluruhan proses bisnis.
·
Data terperinci Data
ringkas Struktur statik Struktur dinamik Target operator komputer Target
pengambil keputusan pada seluruh tingkatan Volatile (data dapat diubah) Non
volatile (data tidak bisa diubah setelah dimasukkan) Kebutuhan data selalu
diketahui sebelum rancangan system Kebutuhan data sama sekali tidak diketahui
sebelum rancangan system Mengikuti siklus hidup pengembangan klasik dimana
iterasi rancangan diselesaikan melalui normalisasi data, dan memeriksa
kebutuhan pemakai Siklus hidup pengembangan sama sekali berbeda, dimana pemakai
menggunakan aplikasi struktur data yang ada dan membuat rancangan siap untuk
dianalisis Performansi penting karena jumlah pemakai konkuren sangat besar
dalam mengakses data Masalah performansi lebih longgar Karena jumlah pemakai jauh
lebih sedikit dalam mengakses data sehingga tidak ada masalah konkuren yang
perlu diperhatikan. Penggerak-transaksi (Transaction-driven) Penggerak-analisis
(Analysis-driven) Data harus selalu tersedia untuk pemakai akhir (back up dan
recovery harus terencana dengan baik) Tidak mempunyai tingkat kebutuhan
ketersediaan data yang sama (perencanaan back up dan recovery lebih longgar)
Mencerminkan situasi mutakhir Mencerminkan nilai historis.
B. Data Mart
Untuk mencapai suatu data warehouse kelihatannya merupakan
suatu tantangan besar dan memang demikian. Bahkan begitu besarnya sehingga
beberapa pakar menyarankan pendekatan yang lebih sederhana yaitu menerapkan
sesuatu yang dinamakan data mart. Data mart adalah database yang berisikan data
yang menjelaskan satu segmen operasi perusahaan. Misalnya perusahaan mungkin
memiliki data mart pemasaran, data mart sumberdaya manusia, dsb.
C. Data Mining
Istilah yang sering digunakan bersama-sama dengan data
warehouse dan data mart adalah data mining. Data mining adalah proses menemukan
hubungan dalam data yang tidak diketahui oleh pemakai. Data mining membantu
pemakai dengan mengungkapkan berbagai hubungan dan menyajikannya dengan suatu
cara yang dapat dimengerti sehingga dapat menjadi dasar pengambilan keputusan.
Data mining memungkinkan pemakai “menemukan pengetahuan” pada database yang
dalam sepengetahuannya tidak ada. Contoh Data Mining : Sebuah bank telah
memutuskan untuk menawarkan reksadana kepada para pelanggannya. Manajemen bank
ingin mengarahkan materi promosi pada segmen pelanggan yang memberikan potensi
bisnis terbesar.
Data Mining Berdasarkan Verifikasi.
Pendekatan yang dilakukan oleh para manajer adalah
mengidentifikasi karakteristik yang mereka yakin dimiliki oleh pasar sasaran.
Misalkan para manajer ingin mengarah pada pasangan muda, berpenghasilan ganda,
dan kaya. Query dapat dimasukkan ke dalam DBMS, dan catatan yang tepat dapat
dipanggil. Pendekatan yang seperti itu, yang mulai dengan hipotesis pemakai
tentang bagaimana data tersebut terstruktur, disebut data mining berdasarkan
verifikasi (verification-driven data mining). Kekurangan pendekatan ini adalah
proses pemanggilan kembali diarahkan sepenuhnya oleh pemakai. Informasi yang
dipilih tidak lebih baik daripada pandangan pemakai terhadap data tersebut. Ini
merupakan cara tradisional untuk bertanya pada database.
Data Mining Berdasarka Penemuan.
Pendekatan lain memungkinkan sistem data mining
mengidentifikasi pelanggan terbaik untuk promosi tersebut. Sistem itu
menganalisis database, mencari kelompok-kelompok dengan karakteristik umum.
Dalam contoh bank, sistem data mining mungkin mengidentifikasi bukan hanya
kelompok pasangan muda lulusan universitas tetapi juga pasangan yang sudah
pensiun yang bergantungpada jaminan sosial dan pensiun. Sistem data mining
dapat melaksanakan analisis selangkah lebih jauh, dengan merekomendasikan satu
set promosi yang diarahkan pada kedua kelompok tersebut.
• Kombinasi Data Mining Verifikasi dan Penemuan.
Perkembangan data mining di masa depan akan
mengkombinasikan pendekatan hipotesis danpenemuan.erkembangan ini menggunakan
penalaran yang sama yang mendasari konsep Sistem Pendukung Keputusan (Decision
SupportSystem – DSS). Konsep tersebut memungkinkan pemakai dan computer bekerja
sama untuk memecahkan suatu masalah. Pemakai menerapkan keahliannya dalam hal
masalah, dan komputer melakukan analisis data yang canggih untuk memilih data
yang tepat dan menempatkannya dalam format yang tepat untuk pengambilan
keputusan.
.• 1960, Dunia komputerisasi membuat aplikasi individu
yang digunakan pada file utama. General mill mulai mengembangkan istilah
dimensi dan fakta.
• 1970, IRI menyediakan database dimensi untuk pembeli
eceran, tahun untuk memperbaiki, mengembangkan dan mencocokan dengan hardware
yang dimiliki.
• 1983, DBMS diperkenalkan untuk mengambil keputusan.
• 1988, Barry dan Paul mempublikasikan karyanya
tentang Arsitektur Bisnis dan Sistem Informasi.
• 1990, memperkenalkan tool DBMS sebagai alat untuk
datawarehouse.
• 1990-sekarang, banyak bermunculan buku-buku
datawarehouse dan aplikasi-aplikasi datawarehouse.
Tujuan Akhir menggunakan Datawarehouse
• Menyediakan data organisasi yang mudah diakses oleh
manager.
• Data yang berada di datawarehouse bersifat
konsisten, dan merupakan kebenaran.
• Datawarehouse merupakan tempat, dimana data yang
telah digunakan di publikasikan.
• Kualitas data di datawarehouse dapat diandalkan.
D. ORDBMS: ORDBMS (Object Relational Database
Management System)
Penggunaan teknologi RDBMS pada awalnya sangat
dominan, tetapi dikarenakan fasilitas–fasilitas yang ada pada RDBMS tidak lagi
sesuai dengan aplikasi tingkat lanjut, maka RDBMS digantikan dengan OODBMS.
Pada OODBMS terdapat banyak sekali bentuk-bentuk object oriented seperti metode
encapsulation, inheritance, polymorphism, dll.Model data relasional lanjutan
tidak hanya ada satu , tetapi terdapat berbagai macam model data, dimana
karakteristik dan tingkat kebutuhan data yang telah dibuat. Bagaimanapun semua
model data yang akan digunakan mengacu pada konsep objek dan mempunyai
kemampuan untuk menyimpan data di dalam database. Berbagai macam terminologi
yang digunakan untuk sistem model relasional tingkat lanjut yaitu ERDBMS. Tapi
sekarang ini untuk system berbasis objek dapat digunakan OODBMS. Inti dari
kinerja RDBMS yaitu ada pada optimasi queri-nya dan juga pengetahuan mengenai
bagaimana mengeksekusi fungsi dari user-define secara efisien, mengambil
keuntungan dari pengindeksan pada struktur yang baru, memetakan queri dengan
cara baru, dan menavigasi antara data menggunakan referensi data. Penggunaan
OODBMS untuk suatu organisasi yang sangat besar dan universal tidak lagi sesuai
sehingga untuk mendukung kinerja dari organisasi tersebut dibutuhkan suatu
ORDBMS (Objeck Relational Database Management System). ORDBMS memiliki
fasilitas untuk mendefinisikan data yang kompleks, menspesialisasikan struktur
indeks dibutuhkan untuk mengefisienkan pengambilan data. ORDBMS digunakan untuk
dua sampai tiga
dimensional data.
C. Active database
Basis data aktif yang juga disebut Active Database
adalah suatu sistem basis data yang tidak hanya menyimpan data tetapi juga
dapat melakukan suatu aksi tertentu terhadap sebuah event dengan menambahkan
suatu elemen dinamis dan memiliki kemampuan memantau event untuk mendeteksi
ketika data tertentu dimasukkan, dihapus, diubah, atau dipilih kemudian secara
otomatis mengeksekusi suatu aksi sebagai respon dari event yang terjadi dan
kondisi tertentu terpenuhi. Basis data aktif merupakan aspek prosedural dari
keseluruhan lingkungan yang dikelola oleh basis data dan terdeklarasi eksplisit.
Basis data aktif merupakan kombinasi dari basis data statis tradisional dan
active rules , yang berarti mekanisme secara otomatis untuk memelihara
integritas data dan memberi fasilitas dalam memperlengkapi fungsionalitas basis
data. Beberapa hal yang perlu diperhatikan yang menjadi sifat dari tingkah laku
rule dalam sebuah basis data aktif yaitu :
1.Termination, suatu eksekusi dari aksi dapat
menyebabkan terjadinya event yang lain dan bisa jadi event ini merupakan rule
lain yang dijalankan. Apabila tidak ada suatu kondisi terminal, maka hal ini
akan terus berulang menjadi loop tanpa akhir.
2. Priority, jika beberapa rule di-trigger oleh event
yang sama, maka harus dieksekusi berdasarkan urutan rule-nya.
3 Error handling, jika eksekusi dari rule menghasilkan
error maka sistem harus bisa menangani.
Basis data aktif sebagai basis data dengan rule
memiliki beberapa ciri-ciri tertentu, yaitu:
1. Secara alami bersifat algoritmik,
2. Kondisi yang ditetapkan adalah data pengguna
3. Deskripsi kerjanya adalah mengubah dan meng-query
data oleh pengguna sesuai dengan rule yang dijalankan
4. Output yang ditentukan secara lengkap oleh
spesifikasi dari query/perubahan yang dilakukan.
Fasilitas-fasilitas yang dimiliki oleh basis data
aktif antara lain logika pengolahan ada di dalam database dan dikelola oleh
DBMS dan tidak dikelola oleh program aplikasi, bentuk monitoring event dan
kondisi yang mempengaruhi data disediakan oleh DBMS, serta sarana untuk
men-trigger logika ada di dalam DBMS.
Perbedaan Basis Data Aktif dan Pasif
Sistem basis data konvensional disebut basis data
pasif dalam arti manipulasi data bisa dijalankan oleh database hanya dengan
perintah yang diberikan langsung oleh pengguna atau program aplikasi yang
terletak di luar basis data. Sedangkan basis data aktif merupakan pengembangan
dari database yang memindahkan sifat reactive program ke dalam database.
Salah satu contoh fungsi yang secara efisien dapat
dilakukan oleh basis data aktif, akan tetapi di dalam basis data pasif harus
diprogram di dalam aplikasi adalah integrity constraint dan triggers. Basis
data pasif memiliki keterbatasan untuk mengontrol bentuk-bentuk integrity
constraint seperti adanya data tertentu yang harus memenuhi nilai unik atau
beberapa data yang harus berisi keterhubungan dengan data lain. Selain itu pada
penggunaan triggers pada basis data pasif, jika terjadi perubahan pada
konstrain atau triggers itu sendiri maka harus bisa menemukan dan memodifikasi
program atau kode yang relevan di setiap aplikasi. Sedangkan pada basis data
aktif, memiliki kemampuan untuk mengontrol integrity constraint pada
keseluruhan database dan penggunaan triggers yang mampu menjalankan suatu aksi
ketika mendeteksi suatu kejadian tertentu tanpa mencari kode-kode yang relevan
pada program aplikasi untuk ikut diubah.
Arsitektur Basis Data
Arsitektur basis data aktif yang sering digunakan
termasuk dalam sistem arsitektur berlapis ( layered architecture ) dimana semua
komponen basis data aktif terletak “di atas” basis data konvensional. Pada
sistem arsitektur ini, basis data konvensional bisa diubah menjadi basis data
aktif tanpa perlu memodifikasi basis data pasif secara keseluruhan. Bentuk dari
arsitektur basis data pasif.
Komponen Pembangun Basis Data Aktif
Basis data aktif dibangun dengan masih memiliki kemampuan
atau fasilitasfasilitas dari basis data pasif, seperti konkurensi, query
language, konstrain. Hanya saja pada basis data aktif lebih menekankan pada
fungsi-fungsi tertentu yang mampu memberikan mekanisme yang sangat kuat dengan
input atau event yang sederhana tapi bisa melakukan perubahan yang sangat besar
secara otomatis
Client/Server
Dengan makin berkembangnya teknologi jaringan
komputer, sekarang ini ada kecenderungan sebuah sistem yang menggunakan
jaringan untuk saling berhubungan. Dalam jaringan tersebut, biasanya terdapat
sebuah komputer yang disebut server, dan beberapa komputer yang disebut client.
Server adalah komputer yang dapat memberikan service ke server, sedangkan
client adalah komputer yang mengakses beberapa service yang ada di client.
Ketika client membutuhkan suatu service yang ada di server, dia akan mengirim
request kepada server lewat jaringan. Jika request tersebut dapat dilaksanakan,
maka server akan mengirim balasan berupa service yang dibutuhkan untuk saling
berhubungan menggunakan Socket.
Pengertian Client Server
Client-Server adalah arsitektur jaringan yang
memisahkan client(biasanya aplikasi yang menggunakan GUI ) dengan server.
Masing-masing client dapat meminta data atau informasi dari server.
Karakteristik Server
1. Pasif
2. Menunggu request
3. Menerima request, memproses mereka dan mengirimkan
balasan berupa service
Karakteristik Client
1. Aktif
2. Mengirim request
3. Menunggu dan menerima balasan dari server
Socket adalah sebuah endpoint untuk komunikasi didalam
jaringan. Sepasang proses atau thread berkomunikasi dengan membangun sepasang
socket, yang masing-masing proses memilikinya. Socket dibuat dengan
menyambungkan dua buah alamat IP melalui port tertentu. Secara umum socket
digunakan dalam client/server system, dimana sebuah server akan menunggu client
pada port tertentu. Begitu ada client yang menghubungi server maka server akan
menyetujui komunikasi dengan client melalui socket yang dibangun.
Sebagai contoh sebuah program web browser pada host x
(IP 146.86.5.4) ingin berkomunikasi dengan web server (IP 152.118.25.15) yang
sedang menunggu pada port 80. Host x akan menunjuk sebuah port. Dalam hal ini
port yang digunakan ialah port 1655. Sehingga terjadi sebuah hubungan dengan
sepasang socket (146.86.5.4:1655) dengan (152.118.25.15:80). Sistem client
server didefinisikan sebagai sistem terdistribusi, tetapi ada beberapa
perbedaan karakteristik yaitu :
1. Service(layanan)
• Hubungan antara proses yang berjalan pada mesin yang
berbeda
• Pemisahan fungsi berdasarkan ide layanannya.
• Server sebagai provider, client sebagai konsumen
2.Sharing resources (sumber daya)
• Server bisa melayani beberapa client pada waktu yang
sama, dan meregulasi akses bersama untuk share sumber daya dalam menjamin
konsistensinya.
3.Asymmetrical protocol (protokol yang tidak simetris
)
• Many-to-one relationship antara client dan
server.Client selalu menginisiasikan dialog melalui layanan permintaan, dan
server menunggu secara pasif request dari client.
4.Transparansi lokasi
• Proses yang dilakukan server boleh terletak pada
mesin yang sama atau pada mesin yang berbeda melalui jaringan.Lokasi server
harus mudah diakses dari client.
5.Mix-and-Match
• Perbedaan server client platforms
6.Pesan berbasiskan komunikasi
• Interaksi server dan client melalui pengiriman pesan
yang menyertakan permintaan dan jawaban.
7.Pemisahan interface dan implementasi
• Server bisa diupgrade tanpa mempengaruhi client
selama interface pesan yang diterbitkan tidak berubah.
DATA INDEPENDEN/ DATA INDEPENDENCE
Ability/Kemampuan untuk memodifikasi definisiskema
pada suatu level tanpa berakibat pada definisi skema pada level yang lebih
tinggi Interface antar level dan komponen harus didefinisikan dengan baik,
sehingga perubahan pada suatu bagian tidak akan berakibat pada bagian yang
lain.
Dua tipe data independence:
Logical data independence
Conceptual / logical schema dapat diubah tanpa
perubahan external schema dan application programs. Perubahan hanya terjadi
pada interface, yaitu view definition dan mapping pada DBMS. Contoh perubahan:
penambahan atau pengurangan data item atau perubahan constraints.
Perubahan logical schema tidak mengubah external
schema/application programs
Ada penambahan data item pada record Grade_Report –
dengan tanda ——–
Physical data independence
Internal/Physical schema dapat diubah tanpa perubahan
pada conceptual / logical schema.
Physical files selalu perlu di-reorganized, bisa
karena disk space sudah penuh atau perlu penambahan/perubahan access structure
untuk tujuan meningkatkan kinerja pencarian/perbaikan data. Contoh: query untuk
membuat daftar kuliah menurut semester dan tahun tidak perlu berubah, sekalipun
pada physical schema proses ini akan dilaksanakan dengan direct access path
menurut key semester dan tahun.
DBMS Language & Interface
DBMS harus menyediakan language dan interface untuk
setiap kategori pemakai
Dikenal ada beberapa language:
– VDL (View Definition Language)
– DDL (Data Definition Language)
– SDL (Storage Definition Language)
– DML (Data Manipulation Language)
– Data Sub Language
– Host Language
DDL (Data Definition Language)
Bila tidak ada pemisahan antara skema conceptual dan
internal, maka database administrator (DBA) dan database designer akan
menggunakan bahasa DDL untuk mendefinisikan kedua skema. Diperlukan DDL
compiler yang fungsinya menjelaskan setiap schema constructs (object) dan
menyimpan deskripsi tersebut di dalam DBMS catalog.
SDL (Storage Definition Language)
Bila digunakan 2 skema (conceptual dan internal), maka
DDL hanya menspesifikasikan skema conceptual dan diperlukan bahasa SDL untuk
menspesifikasikan internal skema Mapping antar kedua skema dapat dilakukan oleh
salah satu dari keduabahasa.
VDL (View Definition Language)
Bila digunakan 3 skema (view, conceptual dan
internal), maka diperlukan bahasa ketiga VDL) untuk menspesifikasikan user
views dan memetakan (mapping) ke skema conceptual. Pada umumnya DBMS
menggunakan DDL untuk mendefinisikan external dan conceptual skema.
DML (Data Manipulation Language)
DML merupakan bahasa yang digunakan untuk manipulasi
data: retrieval, insertion, deletion, dan modification. DBMS yang baru biasanya
menggunakan integrated language (untuk external, conceptual, dan data
manipulation). Hanya SDL yang terpisah yang biasanya
digunakan oleh DBA.
SQL Relational Database Language
SQL merupakan kombinasi dari VDL, DDL, dan DML. 2 type
DML:
– High-level / non-procedural DML
Disebut juga Data Sub Language bisa dimasukkan melalui
terminal atau – dijadikan satu dengan general purpose language (Host Language)
Dapat mengambil banyak record dengan
spesifikasi tertentu dalam satu DML statement
(set-at-a-time DML) Bisa merupakan query language dimana data retrieval dan
update dapat dilakukan secara interactive pada stand-alone system.
– Low-level / procedural DML
Statement dimasukkan atau dijadikan satu dengan
general purpose language (Host Language)
Hanya dapat mengambil satu record dan memprosesnya
(record-at-a-time), karena itu memerlukan host language agar bisa dibuat suatu
loop untuk ambil record dan proses.
DBMS Interface
Perlu user-friendly interface
– Menu-based interface for browsing
– Forms-based Interface
– Graphical user interface
– Natural language interface
– Interface for parametric user
– Interface for the DBA