Rabu, 05 April 2017

Database



Pengenalan Database
Hasil gambar untuk database

DBMS  adalah suatu sistem atau perangkat lunak yang dirancang untuk mengelola suatu basis data dan menjalankan operasi terhadap data yang diminta banyak pengguna. Database merupakan salah satu komponen dalam teknologi informasi yang mutlak diperlukan oleh semua organisasi yang ingin mempunyai suatu sistem informasi yang terpadu untuk menunjang kegiatan organisasi demi mencapai tujuannya. Karena pentingnya peran database dalam sistem informasi, tidaklah mengherankan bahwa terdapat banyak pilihan software Database Management System (DBMS) dari berbagai vendor baik yang gratis maupun yang komersial.

Database atau basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil query basis data disebut DBMS (database management system). Sistem basis data dipelajari dalam ilmu informasi.
 
Istilah "basis data" berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai basis data komputer. Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Skema adalah sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom

Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.

Macam - Macam Database
Beberapa contoh DBMS yang populer adalah sebagai berikut :  

a)   MySQL
MySQL merupakan sebuah perangkat lunak system manajemen basis data SQL atau DNMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis di bawah lisensi GNU General Public Licenci (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL . Tidak seperti Apache yang merupakan software yang dikembangkan oleh komunitas umum, dan cipta untuk code sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia yaitu MySQL AB. MySQL AB memegang penuh hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB yaitu David Axmark, Allan Larsson, dan Michael “Monthy Widenius.

Kelebihan MySQL antara lain :
(1)   free (bebas didownload)
(2)   stabil dan tangguh
(3)   fleksibel dengan berbagai pemrograman
(4)   Security yang baik
(5)   dukungan dari banyak komunitas
(6)   kemudahan management database
(7)   mendukung transaksi
(8)   perkembangan software yang cukup cepat.

b)   Oracle
Oracle adalah relational database management system (RDBMS) untuk mengelola informasi secara terbuka, komprehensif dan terintegrasi. Oracle merupakan database yang paling rumit dan paling mahal di dunia, namun banyak orang memiliki kesan yang negatif terhadap Oracle. Jika dibandingkan dengan MySQL yang bersifat gratis, maka Oracle lebih terlihat tidak kompetitif karena berjalan lebih lambat daripada MySQL meskipun harganya sangat mahal. 

Namun yang mereka tidak perhitungkan adalah bahwa Oracle dirancang khusus untuk organisasi berukuran besar, bukan untuk ukuran kecil dan menengah. Organisasi yang berukuran besar membutuhkan fleksibilitas dan skalabilitas agar dapat memenuhi tuntutan akan data dan informasi yang bervolume besar dan terus menerus bertambah besar.
 
Jika dijalankan hanya pada satu server saja, MySQL memang bisa berjalan lebih cepat daripada Oracle. Namun jika satu server sudah tidakh besar, maka kinerja MySQL mengalami stagnasi karena keterbatasan server tersebut. Namun Oracle mendukung fitur Grid yang dapat menambahkan server atau data storage ke dalam Oracle Grid, maka kinerja dan kapasitas Oracle dapat terus berkembang untuk mengikuti beban kerja yang terus meningkat.

Kelebihan Oracle :
(1)   Mampu menyesuaikan diri dengan berbagai kebutuhan dan kondisi khusus yang berubah-ubah.
(2)   Memiliki berbagai fitur yang dapat memenuhi tuntutan organisasi besar, sebagai contoh organisasi yang besar membutuhkan server yang terdistribusi dan memiliki redundancy sehingga pelayanan bisa diberikan secara cepat dan tidak terganggu jika ada server yang mati, Oracle dapat memenuhi tuntutan tersebut.  

Kekurangan Oracle :
(1)   Rumit dan sangat sulit dipelajari.
(2)   Merupakan database termahal di dunia karena besarnya fleksibilitas dan skalabilitas dalam sistem informasi yang dimiliki oleh Oracle.

c)    Firebird
Firebird adalah salah satu aplikasi RDBMS (Relational Database Management System) yang bersifat open source. Firebird (juga disebut FirebirdSQL) adalah RDBMS yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan SQL-2003. Firebird ini diarahkan dan di-maintain oleh FirebirdSQL Foundation. Ia merupakan turunan dari Interbase versi open source milik Borland. Karena itulah Interbase dan Firebird sebenarnya mempunyai CORE yang sama karena awalnya sama” dikembangkan oleh Borland. 

Namun dalam perkembangannya, Interbase yang komersial di-bundle oleh Borland menjadi Phoenix, sedangkan Firebird adalah interbase yang dikembangkan oleh komunitas Open Source, sehingga menjadikannya sebagai produk Database Server yang FREE. Kalau dikaitkan dengan support, tentunya jelas beda karena produk komersial dan free. Dalam konsep teknik programmingnya, ada banyak yang sama, namun pengayaan Firebird lebih banyak dan menjadikannya lebih luwes, terutama dalam koneksi client-server (port) dan integritasnya. Modul-modul kode baru ditambahkan pada Firebird dan berlisensi di bawah Initial Developer’s Public License (IDPL), sementara modul-modul aslinya dirilis oleh Inprise berlisensi di bawah InterBase Public License 1.0. Kedua lisensi tersebut merupakan versi modifikasi dari Mozilla Public License 1.1. 

Kelebihan Firebird :
(1)   Firebird support dengan transaksi layaknya pada database komersial lainnya. Sebuah transaksi bisa di-commit atau di-rollback dengan mudah. Bahkan Firebird support dengan savepoint pada suatu transaksi dan kita bisa melakukan rollback kembali ke savepoint yang kita tentukan tadi (ini mirip seperti fasilitas pada Oracle).
(2)   Firebird menggunakan sintaks standard untuk menciptakan suatu foreign key.
(3)   Firebird support row level locks, secara default Firebird menggunakan apa yang disebut dengan multi-version concurrency system. Ini artinya bahwa semua session pada database akan melihat data yang lama sampai data yang baru sudah di-commit ke dalam database.
(4)   Firebird support stored procedure dan triggers dengan bahasa yang standard sehingga tidak akan membingungkan bagi Anda yang ingin belajar. Triggers pada Firebird mirip seperti yang dijumpai dalam Oracle yaitu menggunakan before atau after insert, update atau delete. Ini berbeda dengan sistem trigger pada Sybase atau MS SQL Server yang menggunakan tabel virtual inserted dan deleted.
(5)   Firebird bisa melakukan replikasi, solusi untuk replikasi kebanyakan dibuat oleh pihak ketiga, tetapi sebenarnya teknik replikasi ini seperti konsep trigger yang selalu memonitor adanya operasi insert, update atau delete ke dalam database.
(6)   Firebird support dengan multiple data file, ya, Firebird bisa menggunakan lebih dari satu file sebagai single logic database. Ini sangat berguna bagi para DBA (Database Administrator) untuk mengadministrasi database.
(7)   Software untuk mengadministrasi mudah didapat karena banyak sekali software untuk mengadministrasi database Firebird, misalnya saja EMS IB Manager, IBConsole, isql, FBManager, Marathon dan banyak lagi yang lainnya. Aplikasi tersebut ada yang komersial atau bahkan ada yang open source.  
(8)   Banyaknya fasilitas support dan maintenance karena banyaknya komunitas Firebird. Di Indonesia sendiri komunitas yang sering menggunakan Firebird biasanya adalah programmer Delphi.

d)   Microsoft SQL server 2000
Microsoft SQL Server 2000 adalah perangkat lunak relational database management system (RDBMS) yang didesain untuk melakukan proses manipulasi database berukuran besar dengan berbagai fasilitas. Kemampuannya dalam manajemen data dan kemudahan dalam pengoperasiannya membuat RDBMS ini menjadi pilihan para database administrator.
 
DBMS merupakan suatu system perangkat lunak untuk memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan efisien. Dengan DBMS, user akan lebih mudah mengontrol dan mamanipulasi data yang ada. Sedangkan RDBMS atau Relationship Database Management System merupakan salah satu jenis DBMS yang mendukung adanya relationship atau hubungan antar table. RDBMS (Relational Database Management System) adalah perangkat lunak untuk membuat dan mengelola database, sering juga disebut sebagai database engine. Istilah RDBMS, database server-software, dan database engine mengacu ke hal yang sama; sedangkan RDBMS bukanlah database. Beberapa contoh dari RDBMS diantaranya Oracle, Ms SQL Server, MySQL, DB2, Ms Access.

e)    Visual Foxpro 6.0
Pada tahun 1984, Fox Software memperkenalkan FoxBase untuk menyaingi dBase II Ashton-Tate. Pada saat itu FoxBase hanyalah perangkat lunak kecil yang berisi bahasa pemrograman dan mesin pengolah data. FoxPro memperkenalkan GUI (Graphical Unit Interface) pada tahun 1989. FoxPro berkembang menjadi Visul FoxPro pada tahun 1995. kemampuan pemrogrman prosural tetap dipertahankan dan dilengkapi dengan pemrograman berorietasi objek. Visual FoxPro 6.0 dilengkapi dengan kemampuan untuk berinteraksi dengan produk desktop dan client/server lain dan juga dapat membangun aplikasi yang berbasis Web. Dengan adanya Visual Studio, FoxPro menjadi anggotanya. Sasaran utama Visual Studio adalah menyediakan alat bantu pemrogrman dan database untuk mengembangka perangkat lunak yang memenuhi tuntutan zaman.
 
Model data yang digunakan Visual FoxPro yaitu model relasional. Model Relasional merupakan model yang paling sederhana sehingga mudah di pahami oleh pengguna, serta merupakan paling popular saat ini. Model ini menggunakan sekumpulan table berdimensi dua (yang disebut relasi atau table), dengan masing-masing relasi tersusun atas tupel atau baris dan atribut. Relasi dirancang sedemikian rupa sehingga dapat menghilangkan kemubajiran data dan mengunakan kunci tamu untuk berhubungan dengan relasi lain.

f)    Database Desktop Paradox
Database desktop merupakan suatu program “Add-Ins”, yaitu program terpisah yang langsung terdapat pada Borland Delphi. Pada database desktop terdapat beberapa DBMS yang terintegrasi di dalamnya antara lain Paradox 7, Paradox 4, Visual dBase, Foxpro, Ms. SQL, Oracle, Ms. Acces, db2 dan interbase. Dalam Paradox 7, pada 1 file database hanya mengizinkan 1 tabel, berbeda dengan DBMS lain yang mengizinkan beberapa tabel pada 1 file database seperti pada Ms. Acces.
Struktur field pada Paradox 7 :
 
a)      Field Name
Field Name merupakan nama pengenal kolom pada suatu tabel. Terdapat beberapa aturan dalam penulisan field name antara lain :
a)        Panjang maksimum 25 karakter
b)        Tidak boleh diawai dengan spasi tapi boleh mengandung spasi
c)        Tidak ada nama kolom yang sama
d)       Tidak boleh menggunakan tanda koma (,), tanda pipe (|), dan tanda seru (!)

b)      Type
Digunakan untuk menetukan tipe data yang dapat ditampung dalam field.
 
c)      Size
Size merupakan ukuran dari panjang data yang diizinkan untuk suatu field.
 
d)     Key
Dapat berupa primary key sebagai key yang membedakan untuk setiap baris kolom. Syarat untuk primary key adalah tidak boleh ada data yang memiliki primary key yang sama.



 https://upload.wikimedia.org/wikipedia/en/thumb/6/62/MySQL.svg/1280px-MySQL.svg.png
      
Hal paling mendasar yang menjadikan MySQL pilihan utama sebagai database yang digunakan adalah karena MySQL menggunakan Lisensi GPL dan multiplatform, sehingga lebih disukai karena tidak membutuhkan biaya besar dalam membuat aplikasi serta tidak harus tergantung pada OS Windows ataupun Linux karena dapat dijalankan pada kedua OS tersebut dan beberapa OS lainnya. Tapi alasan tersebut tidaklah cukup untuk menjadikan MySQL sebagai RDBMS yang akan digunakan.

Sejarah MySql 

MySQL pada awalnya diciptakan pada tahun 1979, oleh Michael "Monty" Widenius, seorang programmer komputer asal Swedia. Monty mengembangkan sebuah sistem database sederhana yang dinamakan UNIREG yang menggunakan koneksi low-level ISAM database engine dengan indexing. Pada saat itu Monty bekerja pada perusahaan bernama TcX di Swedia.
 
TcX pada tahun 1994 mulai mengembangkan aplikasi berbasis web, dan berencana menggunakan UNIREG sebagai sistem database. Namun sayangnya, UNIREG dianggagap tidak cocok untuk database yang dinamis seperti web. TcX kemudian mencoba mencari alternatif sistem database lainnya, salah satunya adalah mSQL (miniSQL). Namun mSQL versi 1 ini juga memiliki kekurangan, yaitu tidak mendukung indexing, sehingga performanya tidak terlalu bagus.
 
Dengan tujuan memperbaiki performa mSQL, Monty mencoba menghubungi David Hughes (programmer yang mengembangkan mSQL) untuk menanyakan apakah ia tertarik mengembangkan sebuah konektor di mSQL yang dapat dihubungkan dengan UNIREG ISAM sehingga mendukung indexing. Namun saat itu Hughes menolak, dengan alasan sedang mengembangkan teknologi indexing yang independen untuk mSQL versi 2. Dikarenakan penolakan tersebut, David Hughes, TcX (dan juga Monty) akhirnya memutuskan untuk merancang dan mengembangkan sendiri konsep sistem database baru. Sistem ini merupakan gabungan dari UNIREG dan mSQL (yang source codenya dapat bebas digunakan).
 
Sehingga pada May 1995, sebuah RDBMS baru, yang dinamakan MySQL dirilis. David Axmark dari Detron HB, rekanan TcX mengusulkan agar MySQL di ‘jual’ dengan model bisnis baru. Ia mengusulkan agar MySQL dikembangkan dan dirilis dengan gratis. Pendapatan perusahaan selanjutnya di dapat dari menjual jasa “support” untuk perusahaan yang ingin mengimplementasikan MySQL. Konsep bisnis ini sekarang dikenal dengan istilah Open Source.
 
Pada tahun 1995 itu juga, TcX berubah nama menjadi MySQL AB, dengan Michael Widenius, David Axmark dan Allan Larsson sebagai pendirinya. Titel “AB” dibelakang MySQL, adalah singkatan dari “Aktiebolag”, istilah PT (Perseroan Terbatas) bagi perusahaan Swedia.


MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus di mana penggunaannya tidak cocok dengan penggunaan GPL.
 
Tidak sama dengan proyek-proyek seperti Apache, di mana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, di mana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius.

 
Adapun kelebihannya :
(1)   Berlisensi GPL dan Multi Platform.
(2)   Dapat diintegrasikan dengan beberapa bahasa pemrograman seperti .Net, Java, Python, Perl yang merupakan bahasa pemrograman yang paling dominan di kalangan programmer.
(3)   Mendukung ODBC untuk sistem operasi Windows sehingga bisa digunakan aplikasi yang berjalan diwindows.
(4)   Bisa dijalankan pada spesifikasi hardware yang rendah karena lebih hemat resource memory (dibandingkan database lain) sehingga mudah digunakan untuk bahan pembelajaran.
(5)   MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari 20 bahasa meskipun bahasa indonesia belum termasuk didalamnya.

Adapun kekurangannya :
(1)   Banyak mengklaim kurang support terhadap pemrograman Visual/Desktop, sehingga sedikit yang menggunakan untuk aplikasi visual.
(2)   Karena berlisensi GPL sehingga sulit mendapatkan update untuk problem yang urgent, sehingga perusahaan skala menengah keatas lebih memilih RDBMS berlisensi dan disupport seperti Oracle dan MS SQL Server
(3)   Sangat diragukan dalam menangani data skala besar, karena ada beberapa opini yang pro dan kontra terhadap kemampuan MySQL terhadap pengolahan data yang besar.




0 komentar:

Posting Komentar