PERKEMBANGAN DATA BASE DAN CLIENT SERVER SAAT INI


v 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.

b. Security

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.

c. Data Integrity

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.

d. Performance

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.

Komentar

Postingan Populer