Sejarah
Database
1. Database pertama yang tersimpan di komputer mainframe
besar terpusat yang diakses pengguna dari terminal.
2. Sebagai komputasi terdistribusi dan mikrokomputer
menjadi populer pada 1980-an, dua tahu jenis database muncul: database pribadi
dan klien / server database.
v Database (definisi, software dan tehnologi)
- Database adalah kumpulan informasi yang disimpan di
dalam komputer secara
sistematik/teratur sehingga dapat diakses/diperiksa/digunakan menggunakan suatu
program komputer untuk
memperoleh informasi dari basis data tersebut.
- Software database merupakan aplikasi perangkat lunak
yang digunakan oleh user untuk mengelola dan memanggil database tersebut.
Pengelolaan dan pemanggilan kueri (query)
basis data disebut dengan sistem manajemen basis data (database management system).
Contoh software database diantaranya adalah DB2,
Microsoft SQL Server, Oracle, Sybase, Interbase, XBase, MySQL, Microsoft
Access, dBase III, FoxPro, dan lain-lain.
- Perkembangan tehnologi database saat ini berkembang
sangat pesat, banyak bentuk-bentuk yang dulu hanya mempunyai tehnologi sebagai
tempat penyimpanan data yang terdiri dari Field, record dan diolah serta
ditampilkan menjadi informasi dalam berbagai format tampilan yang sederhana;
kemudian dari bentuk yang sederhana tersebut maka didapatkan suatu metoda untuk
menampilkan suatu database yang berguna untuk menganalisa data untuk suatu
keperluan tertentu. . Dengan memanfaatkan relational database yang sudah ada
maka didapat suatu cara untuk mengantisipasi kebutuhan guna menganalisa data
secara cepat untuk membantu mendapatkan keputusan dalam suatu aplikasi atau
organisasi.
- Salah satu contoh tehnologi database saat ini adalah
dimana seorang design web dapat membuat web dengan menarik karena sudah ada
tehnologi database generasi baru yang biasa di sebut oracle. Dengan oracle
inilah para pendesign web bisa membuat webnya dengan penuh keunikan.
Pemrosesan Database
Beberapa prinsip pemrosesan data pada server termasuk
didalamnya adalah integritas, sekuriti, dan recovery data. Enterprise data yang
dibutuhkan oleh sebuah perusahaan membutuhkan sebuah integrasi, pengaksesan
data yang di kendalikan dan kelola dengan securiti yang baik, dan recovery data
dapat dilakukan jika terjadi kegagalan sistem.
Beberapa data management dilakukan secara otomatis. Biasanya dilakukan oleh
DBMS yang berada di Server yang mengontrol akses diantara pemprosesan multiple
sistem dan mengintegrasikan akses data melalui network management.
Pemrosesan Applikasi
Data digunakan oleh program applikasi yang mana
sebagian besarnya berada di server. Ada beberapa applikasi client server yang disediakan
oleh vendor. Tools applikasi ini menjadikan pengembangan sistem client-server
menjadi lebih kompetitif. Pengembangan applikasi client-server dapat dilakukan
dengan beberapa cara yakni :
· Fungsi pemprosesan
didistribusikan diantara client dan server. Porsi dari client dijalankan oleh
end user dengan menggunakan bahasa pemrograman database seperti SQL yang
memberikan semacam request data dan kemudian mengekstrak data tersebut dari
lokasinya dimana semua proses tersebut dikontrol oleh sistem operasi.
· UI dan GUI menjadi
lebih sering digunakan karena tingkat kemudahan penggunaan menjadi lebih
penting.
· Digunakannya Advance
networking seperti LAN
· Code generator juga
digunakan, Metodelogi Objeck Oriented akan menambah tingkat penggunan.
· Tools pengembangan
seperti SQL Server, FLOWMARK, Progress, ObjectView, Oracle menjadi sangat
diperlukan
Ketika sebuah applikasi diproses dan permintaan akan data dilakukan oleh
client, maka hasilnya dikirimkan melalui LAN. Hasil dari applikasi tersebut
dapat saja dilakukan perubahan bentuk untuk mendapatkan tampilan yang lebih
baik. Semuanya ini dilakukan di sisi client oleh end user melalui UI (User
Interface).
Struktur
Database
Struktur
hirarki dalam database terdiri dari:
- Karakter
- Field
- Record
- Tabel
- Database
Pentingnya
Database bagi organisasi/perusahaan
Basis
data menyediakan fasilitas atau memudahkan dalam memproduksi informasi yang
digunakan oleh pemakai untuk mendukung pengambilan keputusan. Hal inilah yang
menjadikan alasan dari penggunaan tehnologi basis data pada saat sekarang
(dunia bisnis).
Berikut
ini contoh penggunaan Aplikasi database dalam dunia bisnis :
Bank
: Pengelolaan data nasabah, akunting, semua transaksi perbankan
Bandara:
Pengelolaan data reservasi, penjadualan
Universitas:
Pengelolaan pendaftaran, alumni
Penjualan:
Pengelolaan data customer, produk, penjualan
Pabrik:
Pengelolaan data produksi, persediaan barang, pemesanan, agen
Kepegawaian:
Pengelolaan data karyawan, gaji, pajak
Telekomunikasi
: Pengelolaan data tagihan, jumlah pulsa
Salah satu contoh kegiatan bisnis yang memerlukan
database:
Penjualan
Informasi
yang ada dari penjualan adalah: (berdasarkan invoice)
· Tanggal penjualan
· Nama pembeli dan
informasinya
· Barang yang dijual
(No Kode barang, deskripsi barang)
· Jumlah barang yang
dijual
· Total harga dari
barang yang dijual
Berdasarkan data yang kita dapatkan dari kegiatan
Penjualan, kita bisa mendapatkan informasi misalnya seperti:
- Daftar Pelanggan
- Daftar Penjualan per bulan/tahun
- Produk mana yang paling tinggi atau paling rendah
penjualannya
- Daftar persediaan barang
Dari data tersebut di atas maka kita bisa
mengelompokkan ke dalam:
1. Tabel Customer/pelanggan, yang terdiri dari:
- Nama
- Alamat
- Phone
- Produk yang dibeli
2. Tabel penjualan, yang terdiri dari:
- Tanggal penjualan
- Barang yang dijual
- Jumlah barang yang terjual
- Total harga barang yang terjual
- Total penjualan perbulan
3. Tabel Persediaan barang, terdiri dari:
- Nama produk
- Jumlah penjualan
- Sisa barang
Penggunaan Database Server
Pada sistem-sistem retail yang terdahulu, terutama
yang berjalan pada system operasi DOS, database yang biasa dipakai adalah
database desktop atau file-based database. Seiring dengan perkembangan teknologi
informasi, penggunaan file-based database telah ditinggalkan dan digantikan
oleh system database server yang lebih handal.
Sebagai default Retail Manager menggunakan Adaptive
Server Anywhere sebagai Database Servernya. Selain Adaptive Server Anywhere,
Retail Manager juga dapat menggunakan MS SQL sebagai database server.
Perbedaan dari keduanya terletak dari provider
database server tersebut. MS SQL adalah produk dari Microsoft sedangkan
Adaptive Server Anywhere diproduksi oleh Sybase. Adaptive Server Anywhere milik
Sybase ditujukan untuk perusahaan kecil yang menggunakan komputer dalam
jaringan yang kurang dari 10 client LAN dan memiliki transaksi bulanan dengan
omzet kurang lebih 30 juta rupiah. Untuk perusahaan dengan skala yang lebih
dari itu disarankan menggunakan MS SQL Server sebagai database servernya.
Keunggulan Database Server
a. Client/Server
Technology
Tidak seperti file-based database yang menggunakan
sharing file (penggunaan file secara bersama-sama) untuk mengaplikasikan multi
user, database server menggunakan pendekatan client-server dimana semua user
yang akan mengakses database terkoneksi dan berkomunikasi dengan database
server. Semua permintaan dari user akan diatur dan diolah oleh database server
secara bergantian maupun bersamaan.
File-file data yang disimpan dan diatur oleh database
server tidak diakses secara langsung oleh user. Hal ini merupakan penerapan
dari Security yang dimiliki oleh database server.
Karena semua komunikasi harus melalui server, maka
pengaturan hak akses dapat dilakukan pada level server. Hak akses akan
menentukan siapa saja yang dapat mengakses database dan mengolah data
didalamnya. Tanpa adanya hak akses ini seorang user tidak bisa untuk megakses
sebuah database.
Karena user diatur pada level server dan tidak
mempunyai akses langsung ke file-file data, maka kemungkinan seorang user yang
tidak berwenang untuk mengcopy file data dapat dihindari.
Pada sistem dengan file-based database, bila sebuah
komputer crash, hang atau reboot karena sesuatu hal, ada kemungkinan besar file
data akan rusak atau hilang. Hal ini dapat disamakan bila kita sedang membuka
aplikasi pengolah kata, dimana ada kemungkinan dokumen yang sedang dibuka dan
diedit menjadi rusak atau hilang bila komputer crash, hang atau reboot. Problem
ini akan semakin tampak seiring dengan bertambah besarnya file data.
Lain halnya dengan database server, pada saat sebuah
komputer yang merupakan database server mengalami crash, hang atau reboot
kemungkinan besar hal yang tejadi hanyalah semua koneksi ke database server
akan terputus sampai database server berjalan kembali.
Walaupun demikian, kemungkinan hilangnya atau rusaknya
data akan selalu ada. Untuk itu, proses backup data merupakan hal yang wajib
dilakukan.
Database server memberikan fasilitas proses backup
data dengan cara yang lebih fleksibel dibandingkan file-based database. Backup
data pada database server dapat dilakukan dengan menerapkan penjadwalan,
misalnya secara otomatis dilakukan setiap hari jam 10 malam. Media backup juga
dapat dipilih mulai dari harddisk sampai ke Tape Backup. Selain itu, file
backup bisa ditempatkan pada komputer yang ada di tempat lain.
Database server didesain dan dioptimasi untuk melayani
permintaan dari banyak user dan tidak terpengaruh dengan besarnya data yang
telah ada. Lalu lintas data pada jaringan jauh lebih rendah dibandingkan
file-based desktop.
v Client / Server Database
1. Sebaliknya database client server , seperti
Oracle, split DBMS dan mengakses aplikasi DBMS ke dalam suatu proses
"" berjalan di server dan "aplikasi" pada klien.
2. Aplikasi klien mengirimkan permintaan data melalui
jaringan. Ketika server menerima permintaan, proses DBMS server mengambil data
dari database, melakukan fungsi yang diminta pada data (sorting, filtering,
dll) dan hanya mengirimkan hasil akhir query (bukan seluruh
database) kembali melalui jaringan klien.
Perkembangan client server
Diawal perkembangannya perangkat komputer adalah
barang yang mahal dan mewah. Pengembangan dan pengoperasiannya rumit dan
terpusat. Namun seiring dengan berjalannya waktu yang tadinya proses
tersentralisasi dikembangakan menjadi proses terdistribusi sampai pada end user
. Hal ini sangat dipengaruhi oleh adanya perkembangan teknologi LAN (
Local Area Network ) di pertengahan tahun 1980 an.
Dengan LAN sebuah PC dapat melakukan komunikasi satu
dengan lainnya dan dapat saling berbagi resource baik perangkat keras ataupun
database . LAN mampu memberikan interkonektivitas yang tidak pernah ada
sebelumnya. Untuk dapat melakukan hal tersebut dibutuhkan sebuah komputer
pemproses yang memfasilitasi dan melayani proses sharing semua resource yang
ada. Perangkat ini disebut dengan Server .
Untuk melakukan Sharing File biasanya dibutuhkan
sebuah File Server begitu juga untuk sharing Printer dibutuhkan sebuah Printer
Server. Namun ternyata hal seperti ini belumlah cukup. Jumlah PC yang bertambah
dengan sangat cepat seiring dengan berkembangnya sebuah organisasi. Jumlah end
user dan client juga bertambah banyak. Kebutuhan akan perangkat menjadi
bertambah pula, tidak hanya membutuhkan sebuah printer server, juga dibutuhkan
server-server lainnya seperti server pengolahan gambar, server pengolahan suara,
dan lainnya. Server-server ini dengan database dan applikasinya harus dapat
diakses oleh beberapa PC, ataupun diakses oleh sebuah komputer mainframe
melalui sebuah LAN. Sistem seperti ini disebut Sistem
Komponen dan Fungsi Sistem Client Server
Gambaran umum konfigurasi Client Server diperlihatkan
pada gambar 2. Dengan pendekatan Client Server setiap PC dapat melakukan secara
independen sebuah pemrosesan lokal dan mensharing perangkat enterprise melalui
LAN. Untuk kasus yang lebih luas kemampuan akses dapat dilakukan melalui MAN (
Metropolita Area Network ) atau WAN ( Wide Area Network ). Sebuah database dan
program applikasi enterprise misalnya diletakan pada sebuah server dimana
setiap end user dapat melakukan akses melalui Client Processo r, LAN dan Server.
· User
User disini adalah end user yang mengakses client
untuk mendapatkan sebuah layanan. End user bisa saja seorang manager
perusahaan, professional, karyawan di sebuah perusahaan, atau pelanggan. Ada
timbul sedikit kerancuan. Pelanggan dalam sebuah bisnis atau perdagangan
disebut dengan client , tapi client ini adalah manusia, jangan dibingungkan
dengan istilah client pada pemrosesan komputer. Dapat kita katakan sebuah user
atau end user adalah ketika melakukan proses akhir menggunakan sistem client
server.
· Client
Client dapat berupa sebuah pemproses yang powerful
atau dapat juga berupa terminal tua dengan kemampuan proses yang terbatas.
Secara mendasar client adalah sebuah PC dengan sistem operasinya sendiri.
Sebagian besar pemrosesan banyak dilakukan di sebuah server dimana
bagian-bagian dalam lingkup pekerjaannya ditentukan oleh program komputer,
inilah yang menyebabkan sistem client server berbeda dengan sistem transaksi
tradisional. Sistem client server memungkinkan sebuah teknologi dan applikasinya
digunakan bersamaan.
Applikasi disini termasuk didalamnya adalah pemroses
pesan seperti e-mail, pemproses file lokal seperti DBMS untuk browsing dan
penghitungan, atau sharing resource seperti sistem image processing, sistem
optical character, sistem advance grafic processing, plotter warna, atau sebuah
printer. Perangkat-perangkat ini bisa saja berasal dari berbagai vendor yang
ada.
Untuk memfasilitasi query pemprosesan dari client,
sebagian besar sistem client server menggunkaan Structured Query Language (SQL)
yang merupakan struktur bahasa tingkat tinggi. SQL dengan database
relationalnya adalah standar de facto untuk hampir sebagian besar sistem client
server. Salah satu komponen terpenting sistem client server adalah User
Interface (UI), yang digunakan user untuk berkomunikasi. Bagi user yang seorang
programmer, UI tidak mesti user friendly, tapi untuk end user yang bukan
programmer sangat dibutuhkan UI yang user friendly. Dibutuhkan Graphical User
Interface (GUI) untuk end user karena GUI menampilkan grafis untuk melakukan
akses dengan icon-icon tanpa perlu memasukan perintah pemrograman. Kedepannya
GUI tidak hanya digunakan untuk menggantikan akses perintah pemprograman tapi
juga digunakan untuk grafik, voice, video, animasi, untuk selanjutnya menjadi
sebuah teminal multimedia.
· Network dan Transmisi
Server dan client dapat terkoneksi dengan sebuah media
transmisi. Media transmisi ini dapat berupa kabel, wireless, atau fiber. Dengan
media ini memungkinkan sebuah perusahaan untuk melakukan enterprice network
lebih besar dalam sebuah workgroup atau departemen. Untuk itu dibutuhkan
interoperability sebagai contoh operasi dan pertukaran informasi yang heterogen
melalui berbagai perangkat software dalam jaringan. Esensinya adalah
keterbukaan dalam melakukan pertukaran baik komponen dan software yang berasal
dari vendor yang berbeda-beda. Dengan interoperability baik vendor dan customer
akan mendapatkan keuntungan.
Interoperability memberikan dampak pada arsitektur
jaringan. Awal sebuah arsitektur jaringan adalah SNA namun arsitektur ini
bersifar proprietary dan tidak terbuka dengan vendor lainnya. Kemudian sebagian
besar orang beralih ke OSI yang di standarkan oleh ISO ( International
Standards Organization ). OSI banyak di gunakan di Eropa namun kurang
berkembang di Amerika Serikat. Di Amerika Serikat muncul TCP/IP yang kemudian
di dukung oleh Unix User Group.
· Servers
Konektivitas adalah hal yang terpenting namun bukan
satu-satunya faktor untuk mendapatkan efisiensi dan efektivitas sharing resource
yang dimiliki. Dibutuhkan sebuah perangkat yang memiliki kemampuan mengontrol
software, menjalankan program applikasi, dan mengakses database dengan mudah
dan cepat. Untuk itulah diperlukan sebuah Server. Sebuah Server harus mendukung
spesifikasi yang mendukung resource sharing seperti Network Server Operating
System, Multiple User Interface, GUI ( Graphic User Interface ), dialog
oriented cleint – server languange seperti SQL dan database arsitektur. Saat
ini resuorce bisa tersebar secara spasial tidak hanya berada dalam batasan
sebuah negara namun sudah antar negara yang membutuhkan interkoneksi yang
tinggi.
Beberapa software dapat diperoleh dari vendor atau
software house. Software tersebut bisa bersifat mainframe centric (sentral)
atau PC server centric. Namun selain semua hal yang tersedia pada paket
software tersebut tetap dibutuhkan in house sofware development. Juga perlu
untuk mengintegrasikan sistem client server dengan sistem informasi yang telah
ada dan menggunakan sistem tersebut tidak hanya sebagai end user tapi juga
bekerja diantara group end user.
Server melakukan pemprosesan mirip dengan pemrosesan
yang ada disisi client. Namun ada sedikit perbedaan, biasanya sebuah server
tidak mempunyai User Interface karena didesain untuk networking, memproses
database dan memproses applikasi. Pembeda antara pemrosesan client dan server
ada pada tanggungjawab dan fungsi dari pemrosesan yang dilakukan. Sebagai
contoh sebuah server dapat bertindak sebagai repository dan penyimpanan
informasi dalam kasus pada file server. Tipe dari Server tergantung pada
kebutuhan dan tujuan sistem. Dalam beberapa kasus sebuah server harus mampu
melakukan multitaskting (membentuk multi fungsi secara simultan), menggunakan
multiple operating system, lebih portable, memiliki skalabilitas, dan memiliki
waktu respon yang cepat untuk melakukan teleprosesing . Dengan kapabilitas
seperti itu menjadikan server memiliki harga yang relatif mahal. Penyebab
mahalnya harga server adalah :
1. Network Management
2. Gateway function termasuk akses keluar dan e-mail
publik
3. Penyimpanan
4. File Sharing
5. Batch processing
6. Bulletin Board access
7. Facsimile transmission
MANAJEMENT DATA SISI CLIENT-SERVER
Client server diaplikasikan pada aplikasi mainframe
yang sangat besar untuk membagi beban proses loading antara client dan server.
Dalam perkembangannya, client server dikembangkan oleh dominasi
perusahaan-perusahaan software yaitu Baan, Informix, Microsoft, Novell, Oracle,
SAP, PeopleSoft, Sun, dan Sybase.
Awalnya pengertian client server adalah sebuah system
yang saling berhunungan dalam sebuah jaringan yang memiliki dua komponen utama
yang satu berfungsi sebagai client dan satunya lagi sebagai server atau biasa
disebut 2-Tier. Definisi lain dari client server adalah pembagian kerja antara
server dan client yg mengakses server dalam suatu jaringan. Jadi arsitektur
client-server adalah desain sebuah aplikasi terdiri dari client dan server yang
saling berkomunikasi ketika mengakses server dalam suatu jaringan.
Istilah tier dalam server adalah untuk menjelaskan
pembagian sebuah aplikasi yang melalui client dan server. Pembagian proses
kerja adalah bagian uatama dari konsep client/ server saat ini. Jadi saat ini
pembagian kerja pada client dan server telah diatur secara lebih spesifik.
Ø 2-tier
Membagi proses load ke dalam dua bagaian. Aplikasi
utama secara logika dijalankan atau berjalan pada sisi client yang biasanya
mengirimkan request dalam bentuk sintaks SQL ke sebuah database server yang
berfungsi sebagai media penyimpanan data.
Ø 3-tier
Membagi proses loading antara : komputer client
menjalankan graphical user interface (GUI) logic, aplikasi server menjalankan
business logic, dan database atau legacy application. Karena 3-tier memindahkan
application logic ke server sehingga sering juga disebut sebagai arsitektur fat
server.
Macam-macam arsitektur aplikasi Client-Server beserta
kelebihan dan kekurangannya yaitu:
1. Standalone (one-tier)
Pada arsitektur ini semua pemrosesan dilakukan pada
mainframe. Kode aplikasi, data dan semua komponen sistem ditempatkan dan
dijalankan pada host.
§ Kelebihan arsitektur one-tier :
- Cepat dalam merancang dan mengaplikasikannya.
- Mudah digunakan.
§ Kelemahan arsitektur one-tier :
- Tingkat kemanannya sulit.
- Skala kecil.
- Tidak memungkinkan adanya re-usable component dan
code.
2. Client/Server
(two tier)
Dalam model client/server, pemrosesan pada sebuah
aplikasi terjadi pada client dan server. Client/server adalah tipikal sebuah
aplikasi two-tier dengan banyakclient dan sebuah server yang dihubungkan
melalui sebuah jaringan.
¨ Kelebihan dari model client/server :
- Menangani database server secara khusus.
- Mudah digunakan.
- Lebih cocok digunakan untuk bisnis kecil.
¨ Kekurangan dari model client/server :
- Tidak ada keterbaharuan kode.
- Kurangnya skalabilitas.
- Skala kecil.
- Dari segi pengamanan sulit.
3. Three Tier
Arsitektur Three Tier ini banyak sekali
diimplementasikan dengan menggunakan Web Application. Karena dengan menggunakan
Web Application, Client Side (Komputer Client) hanya akan melakukan instalasi
Web Browser. Dan saat komputer client melakukan inputan data, maka data
tersebut dikirimkan ke Application Server dan diolah berdasarkan business
process-nya. Selanjutnya Application Server akan melakukan komunikasi dengan
database server.
· Kelebihan arsitektur
Three Tier :
Skala besar.
Transfer informasi antara web server dan server
database optimal.
Apabila terjadi kesalahan pada salah satu lapisan
tidak akan menyebabkan lapisan lain ikut salah.
· Kekurangan arsitektur
Three Tier :
Lebih susah untuk merancang.
Lebih susah untuk mengatur.
Lebih mahal.
Sumber :http://agustinadewic.blogspot.com/2010/04/perkembangan-data-base-dan-client.html