Rabu, 22 Januari 2014

Data Base IBM : DB2

Logo DB2 IBM

Tak banyak yang tahu ternyata IBM raksasa perangkat keras yng terkenal dengan produk servernya memiliki produk data base. IBM memiliki data base DB2 yang mestinya patut diperhitungkan melihat reputasi IBM sebagai perusahaan raksasa.

IBM DB2 Enterprise Server Edition merupakan sebuah perangkat lunak sistem manajemen basisdata relasional yang dikembangkan oleh IBM. Perangkat lunak tersebut utamanya berjalan pada sistem operasi Unix (sebut saja AIX), Solaris, Linux, IBM i/OS/400, z/OS, dan Microsoft Windows. DB2 juga diketahui digunakan sebagai sistem basis data pada IBM InfoSphere Warehouse edition.

DB2 memiliki sejarah panjang dan ditenggarai sebagai perangkat lunak basisdata pertama yang mengimplementasikan SQL, meski demikian, umumnya Oracle lebih dikenal sebagai perangkat lunak basisdata pertama yang dikomersilkan secara luas dengan menyertakan dukungan atas SQL.

Penamaan DB2 pertama kali diberikan pada tahun 1983 untuk produk sistem manajemen basis data milik IBM saat merilis produk tersebut untuk platform peladen kelas mainframe. Sebelumnya, produk sejenis dinamai sebagai SQL/DS. Sistem 38 yang muncul lebih awal sebenarnya juga telah membawa paket perangkat lunak basis data relasional yang dinamai System Relational. Asal muasal DB2 bermula pada era tahun 1970an saat Edgar F. Codd yang saat itu merupakan karyawan IBM, menjabarkan teori basisdata relasional yang dipublikasikannya pada bulan juni 1970. Untuk mengimplementasikan model tersebut, Codd membutuhkan suatu bahasa basisdata relasional yang kemudian dinamainya sebagai Alpha. Pada masa itu, IBM bahkan tidak yakin atas potensi dari ide yang dicetuskan oleh Codd, dan cenderung membiarkan implementasinya dilakukan oleh sekelompok programmer IBM tanpa dipandu oleh Codd, merekalah yang kemudian melanggar beberapa kaidah mendasar dari model relasional yang dicetuskan oleh Codd. Hasil kerja dari sekelompok programmer ini dinamai oleh mereka sebagai "Structured English QUEry Language" atau singkat SEQUEL. Saat IBM bermaksud merilis produk sistem basisdata yang pertama, mereka membutuhkan bahasa yang bisa digunakan untuk pengaksesan data, SEQUEL akhirnya dimodifikasi ulang dan dinamai sebagai System Query Language atau disingkat SQL untuk membedakannya dengan SEQUEL.

Saat Informix mengakuisisi Illustra dan membuat produk basis data mereka menjadi object-SQL DBMS dengan diperkenalkan produk Universal Server, baik Oracle dan IBM mengikuti jejak tersebut dengan menambahkan dukungan yang sama atas produk basis data yang ada. Tahun 2001, IBM mengakuisisi Informix dan berhasil menggabungkan teknologi basis data pada produk basis data IBM DB2.

Selama beberapa tahun, DB2 umumnya hanya tersedia secara eksklusif pada jajaran produk komputer mainframe milik IBM. Baru pada beberapa tahun terakhir, IBM menyediakan pula versi DB2 yang mendukung sistem operasi lain, termasuk dalam hal ini Linux, Unix, dan server Windows. Sebab itu rilis produk DB2 yang mendukung platform-platform tersebut dikenal pula sebagai IBM DB2 LUW.

IBM DB2 tersedia dalam beberapa edisi; Express Edition, Workgroup Server Edition, serta Enterprise Server Edition. Masing-masing edisi memiliki sejumlah perbedaan atas fitur serta kapabilitas yang ditujukan untuk lingkungan serta intensitas kerja yang berbeda. Namun, perangkat lunak aplikasi yang dibuat untuk DB2 edisi tertentu dapat berjalan tanpa modifikasi apapun pada produk-produk DB2 edisi yang lainnya.

Sementara itu, DB2 for z/OS (versi untuk mainframe) tersedia baik sebagai paket bawaan ataupun dalam bentuk produk tambahan atas paket perangkat lunak yang menyertai setiap pembelian mainframe IBM.

DB2 for i atau sebelumnya dikenali sebagai DB2/400 merupakan bentuk varian lain dari IBM DB2, namun berbeda halnya dengan varian lainnya, versi DB2 for i terintegrasi sangat erat dengan sistem operasi IBM System i.

Rabu, 15 Januari 2014

Mengenal Data Base: Postgre SQL

Kepala Gajah, Logo PostgreSQL

Untuk mengembangkan aplikasi database, salah satunya untuk keperluan Sistem Informasi Kesehatan pasti menggunakan database. Salah satu alternatif database gratis (not free, tapi harga relatif terjangkau) adalah dengan menggunakan database PostgreSQl.

PostgreSQL merupakan database server cukup dikenal di kalangan administrator database, programer aplikasi, maupun pengembang web. Popularitasnya ikut menanjak mengikuti saudaranya “MySQL” yang telah lebih dulu merebut hati jutaan pengguna di seluruh dunia. Sifatnya yang open source dan lisensi bebas, serta sama-sama berawal dari platform Unix ikut menunjang penyebarannya. Paket PostgreSQL juga dapat ditemukan dikekemas bersama beberapa distro Linux.

PostgreSQL merupakan database RDMBS ‘bebas” yang powerful dan tidak kalah dengan database komersil sekelasnya Oracle, maupun Sybase, dan Informix, seperti Blue Elephant yang menjadi gambar logonya. Pengembang PostgreSQL selama kurun waktu 15 tahun ini adalah ratusan orang di banyak universitas dan organisasi yang melakukan kominikasi lewat internet.
Berbagai fitur yang ada di PostgreSQL semacam transaction, merupakan jawaban untuk mereka yang memerlukan fasilitas tersebut tapi belum menemukannya di MySQL. Anda akan diajak pula dari melakukan instalasi sampai mempergunakan tool-tool berbasis gratis untuk melakukan pemeliharaan database dan sebagai user PostgreSQL.

Database Server PostgreSQL yang kini mendukung platform NT, Solaris, Sun OS, HPUX, AIX, Linux, Irix, FreeBSD dan kebanyakan Unix lainnya telah dikembangkan sejak 1985.
Database ini diturunkan dari INGRES dan POSTGRES, proyek database akademis pada University of California di Berkeley. Selama ini PostgreSQL telah dipelihara, ditingkatkan dan didukung oleh sekelompok pengembang yang stabil serta sejumlah kontributor.

PostgreSQL didisain untuk skala besar, memiliki ciri berorientasi objek, namun tetap dapat digunakan layaknya RDBMS pada umumnya. Para pengembangnya (dulu) mengutamakan kelengkapan feature ketimbang dukungan penuh akan standar SQL. Dalam perjalanannya, kelebihan feature ini justru membuat Postgres semakin powerful dan membuatnya dapat disejajarkan dengan database besar lainnya seperti Oracle. Salah satu contoh standar SQL yang belum dipenuhi oleh PostgreSQL saat ini (versi 6.5.3) adalah referential integrity dan outer-join. Meski demikian, programmer Postgres tetap merencanakan untuk membuatnya memiliki standar SQL yang sudah ditetapkan. Fasilitas standar lain yang telah didukung adalah trigger dan function.

Function dalam PostgreSQL sangat unik karena PostgreSQL tidak menetapkan built-in language untuk penulisan function. PostgreSQL menyerahkan kepada pemakai untuk memilih sendiri bahasa yang diinginkan yang disebut Procedural Language. Pada saat deklarasi function, Anda harus menyebutkan bahasa yang digunakan. Pada versi 6.5.3 procedural language yang tersedia adalah pgSQL dan Tcl. Jadi script function yang dideklarasikan akan diterjemahkan oleh library yang bersangkutan (tergantung bahasa yang dipilih) untuk selanjutnya library tersebut melakukan koordinasi dengan library PostgreSQL.

Kelebihan PostgreSQL
  1. PostgreSQL memiliki arsitektur multiproses (forking) yang berarti memiliki stabilitas yang lebih tinggi, sebab satu proses anak yang mati tidak akan menyebabkan seluruh daemon mati—meskipun pada kenyataannya, dulu ini sering terjadi.
  2. Dalam kondisi load tinggi (jumlah koneksi simultan besar), kecepatan PostgreSQL sering mengalahkan MySQL untuk query dengan klausa JOIN yang kompleks, hal ini dikarenakan PostgreSQL mendukung locking di level yang lebih rendah, yaitu row.
  3. PostgreSQL memiliki fitur OO seperti pewarisan tabel dan tipe data, atau tipe data array yang kadang praktis untuk menyimpan banyak item data di dalam satu record.Dengan adanya kemampuan OO ini maka di PostgreSQL, kita dapat mendefinisikan sebuah tabel yang mewarisi definisi tabel lain.
  4. PostgreSQL menyediakan hampir seluruh fitur-fitur database seperti yang terdapat dalam produk database komersial pada umumnya.
  5. PostgreSQL pun memiliki tipe data geometri (seperti titik, garis, lingkaran, poligon) yang mungkin berguna bagi aplikasi ilmiah tertentu
  6. PostgreSQL memberikan kita kemampuan mendefinisikan sebuah field sebagai array.
  7. PostgreSQL memiliki hampir semua fasilitas standar yang biasanya diinginkan: view (tabel virtual), trigger, subselek, stored procedure (dalam beberapa bahasa), dan foreign key constraint
  8. PostgreSQL juga memiliki apa yang disebut rule, yaitu tindakan custom yang bisa kita definisikan dieksekusi saat sebuah tabel di-INSERT, UPDATE, atau DELETE
  9. Postgres juga mempunayai kemampuan untuk membuat konektifitas dengan database lain seperti pgdump, Interbase, pgaccess dan hampir semua database pada Linux.
  10. kemampuannya menampung data spasial, sehingga ia bisa digunakan dalam pembuatan situs yang berbasis Web GIS untuk pemetaan dan sebagainya.
  11. PostgreSQL memiliki lisensi GPL (General Public License) dan oleh karena itu PostgreSQL dapat digunakan, dimodifikasi dan didistribusikan oleh setiap orang tanpaperlu membayar lisensi (free of charge) baik untuk keperluan pribadi, pendidikan maupun komersil.
  12. PostgreSQL mendukung banyak jenis bahasa pemrograman,antara lain: SQL, C, C++, Java, PHP, etc.
  13. PostgreSQL juga merupakan alternative untuk sistem database open-source lainnya seperti MySQL dan Firebird, terutama sistem proprietari seperti Oracle, Sybase, IBM’s DB2dan Microsoft SQL Server.
Tools yang tersedia cukup banyak dan sangat berguna seperti:
  1. pg_dump: konversi objek database menjadi script SQL
  2. pgaccess: drag & drop-nya cukup menyenangkan
  3. PostgreSQL didukung oleh banyak bahasa (atau Postgres mendukung banyak bahasa?), antara lain: C++, Java, Perl, Tcl, PHP3 dan Python. Library untuk ODBC dan JDBC juga telah tersedia, sehingga bahasa lainnya yang mendukung keduanya dapat mengakses PostgreSQL