Anda di halaman 1dari 12

Database Open Source Database sebuah subjek yang teramat penting. Setuju?

Database ada di mana-mana dar i kita lahir, sekolah, bekerja, sampai pensiun. Seluruh aktivitas komputasi adal ah seputar mengolah data data keuangan, data percobaan ilmiah, data statistik peng unjung. Tanpa database banyak aspek kehidupan yang akan pincang dan akhirnya mat i perorangan, perusahaan, dan negara. Aplikasi apa pun yang Anda buat, entah itu s hopping cart, CRM, portal komunitas, webledger, di jantungnya adalah database. Pasar untuk database pun amat besar. Untuk mendapatkan gambaran, lihatlah Larry Ellison. Dari satu [keluarga] produk saja, yaitu Oracle, pria ini berhasil menge ruk uang hingga menjadi orang terdua terkaya di dunia setelah Bill Gates bahkan se mpat sehari menduduki tampuk pertama pada posisi $53 milyar saat harga saham Mic rosoft turun. Dan meski merajai lebih dari separuh pangsa pasar untuk enterprise besar, tentu saja Oracle bukan satu-satunya produk yang tersedia bagi pengguna database, terlebih di kelas kecil dan menengah. Ukuran pasar database tahun 2002 diperkirakan mencapai $8 milyar, dan telah bert umbuh terus lebih dari 10% dari tahun demi tahun secara konsisten. Saat ini pasa r tersebut memang masih didominasi oleh hanya beberapa pemain besar saja. Selain Oracle yang menjadi brand paling top dan produk paling menguras kocek terdapat pula Microsoft dengan SQL Servernya, IBM dengan DB2-nya, Sybase, NCR dengan produk d ata mart/data warehousingnya, dan Borland dengan Interbasenya. Tapi lambat laun dan pasti, gerakan open source mulai merasuki dunia perusahaan dan menggerogoti penjualan produk-produk komersial ini. Beberapa database open source telah ada s ejak bertahun-tahun lalu dan kini cukup matang untuk siap dipakai. Memang betul, belum ada database open source yang sematang atau selengkap Oracle dalam hal fi tur, tapi: 1) tidak semua orang butuh semua fitur itu; 2) tidak semua orang puny a uang untuk membeli Oracle. Didorong oleh kebutuhan untuk menurunkan biaya dan menaikkan interoperabilitas, beberapa organisasi besar komersial maupun nonkomersi al, sebutlah seperti NASA dan Yahoo! mulai beralih dari modus mahal ke modus grati s. Dalam fokus kali ini kita akan berjalan-jalan dan melihat-lihat produk databa se open source yang ada. MySQL Mengingat banyak pembaca mwmag programer Web, cukuplah aman untuk mengatakan: si apa tak kenal dia? MySQL AB menyebut produknya sebagai database open source terp opuler di dunia. Sangat bisa jadi benar, melihat begitu banyaknya skrip dan situ s yang berpasangan, bahkan menikah , dengan produk yang satu ini. Dan saya mungkin akan mengatakan bahwa di platform Web, dan baik untuk kategori open source maupu n umum, MySQL adalah database yang paling banyak dipakai. Menurut perusahaan pen gembangnya, MySQL telah terpasang di sekitar 3 juta komputer. Puluhan hingga rat usan ribu situs mengandalkan MySQL bekerja siang malam memompa data bagi para pe ngunjungnya. Penyebab utama MySQL begitu popular di kalangan Web adalah karena ia memang coco k bekerja di lingkungan tersebut. Pertama, MySQL tersedia di berbagai platform L inux dan berbagai varian Unix. Sesuatu yang tidak dimiliki Access, misalnya padaha l Access amat popular di platform Windows. Banyak server Web berbasiskan Unix, i ni menjadikan Access otomatis tidak dapat dipakai karena ia pun tidak memiliki k emampuan client-server/networking. Kedua, fitur-fitur yang dimiliki MySQL memang yang biasanya banyak dibutuhkan da lam aplikasi Web. Misalnya, klausa LIMIT SQL-nya, praktis untuk melakukan paging . Atau jenis indeks field FULLTEXT, untuk full text searching. Atau sebutlah kek ayaaan fungsi-fungsi builtinnya, mulai dari memformat dan memanipulasi tanggal, mengolah string, regex, enkripsi dan hashing. Yang terakhir misalnya, praktis un tuk melakukan penyimpanan password anggota situs. Sementara fitur-fitur yang leb ih jarang digunakan belum atau baru muncul saja di versi-versi terakhir. Subsele k misalnya, sampai saat ini tidak ada di MySQL. Atau view, atau stored procedure

, atau trigger. Ini membuat MySQL tetap langsing dan cepat, tapi pengembang apli kasi bisnis mungkin jadi berkerut muka mengetahui ini, karena fitur-fitur yang h ilang ini seringkali mereka pakai untuk menyederhanakan logika aplikasi mereka. Jangankan itu, sebelum sekitar versi 3.23.15 yang berarti sekitar dua tahun lalu MyS QL tidak bisa melakukan transaksi sama sekali! Ketiga, MySQL memiliki overhead koneksi yang rendah. Soal kecepatan melakukan tr ansaksi atau kinerja di kondisi load tinggi mungkin bisa diperdebatkan dengan be rbagai benchmark berbeda, tapi kalau soal yang satu ini MySQL-lah juaranya. Kara kteristik ini membuat MySQL cocok bekerja dengan aplikasi CGI, di mana di setiap request skrip akan melakukan koneksi, mengirimkan satu atau lebih perintah SQL, lalu memutuskan koneksi lagi. Cobalah melakukan hal ini dengan Interbase atau b ahkan Oracle. Maka dengan load beberapa request per detik saja server Web/databa se Anda mungkin akan segera menyerah karena tidak bisa mengimbangi beban ini. Sejarah MySQL MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang kala itu bernama TcX DataKonsult AB, sejak sekitar 1994 1995, meski cikal bakal kodenya bi sa disebut sudah ada sejak 1979. Tujuan mula-mula TcX membuat MySQL pada waktu i tu juga memang untuk mengembangkan aplikasi Web untuk klien TcX adalah perusahaan pengembang software dan konsultan database. Kala itu Michael Widenius, atau Monty , pengembang satu-satunya di TcX, memiliki aplikasi UNIREG dan rutin ISAM yang di buat sendiri dan sedang mencari antarmuka SQL untuk ditempelkan di atasnya. Mula -mula TcX memakai mSQL, atau mini SQL (akan kita kunjungi nanti). Barangkali mSQL adalah satu-satunya kode database open source yang tersedia dan cukup sederhana saat itu, meskipun sudah ada Postgres (juga akan dibahas sesaat lagi). Namun ter nyata, menurut Monty, mSQL tidaklah cukup cepat maupun fleksibel. Versi pertama mSQL bahkan tidak memiliki indeks. Setelah mencoba menghubungi David Hughes pembua t mSQL dan ternyata mengetahui bahwa David tengah sibuk mengembangkan versi dua, m aka keputusan yang diambil Monty yaitu membuat sendiri mesin SQL yang antarmukan ya mirip dengan mSQL tapi memiliki kemampuan yang lebih sesuai kebutuhan. Lahirl ah MySQL. Nama MySQL (baca: mai s kju l) tidak jelas diambil dari mana. Ada yang bilang ini diambil dari huruf pertama dan terakhir nama panggilan Michael Widenius, Monty. Ada lagi yang bilang kata My diambil dari nama putri Monty, yang memang diberi n ama My karena Monty memang aslinya seorang Finlandia. Tapi sebetulnya kalau source code MySQL dilirik, prefiks my memang sudah terbubuhi di mana-mana prefiks ini se ring menjadi prefiks umum kalau seseorang membuat kode kustom tersendiri untuk s esuatu. Kalau Anda betul-betul penasaran mana yang benar, mungkin bisa bertanya langsung kepada Monty. MySQL versi 1.0 dirilis Mei 1996 secara terbatas kepada empat orang. Baru di bul an Oktober versi 3.11.0 dilepas ke publik. Namun mula-mula kode ini tidak diberi kan di bawah lisensi General Public License, melainkan lisensi khusus yang intin ya kurang lebih begini: Source code MySQL dapat dilihat dan gratis, serta server MySQL dapat dipakai tanpa biaya tapi hanya untuk kebutuhan nonkomersial. Untuk k ebutuhan komersial (mis: mengemas dan menjual MySQL, atau menyertakan MySQL dala m program komersial lain) Anda harus bayar lisensi. Sementara distribusi Windows MySQL sendiri dirilis secara shareware. Barulah pada Juni 2000 MySQL AB mengumum kan bahwa sejak versi 3.23.19, MySQL adalah software bebas berlisensi GPL. Artin ya, Source code MySQL dapat dilihat dan gratis, serta server MySQL dapat dipakai tanpa biaya untuk kebutuhan apa pun. Tapi jika Anda memodifikasi source code, An da juga harus melepasnya di bawah lisensi yang sama, yaitu GPL. Kini perusahaan M ySQL AB, yang beranggotakan sekitar 10 programer dan 10 karyawan lain itu, mempe roleh pemasukan terutama dari jasa konsultasi seputar MySQL. Versi publik pertama, yang hanya berjalan di Linux dan Solaris serta sebagian be sar masih belum terdokumentasi itu, dengan berangsur-angsur diperbaiki dan ditam bah fitur demi fiturnya tapi tetap dengan fokus utama pengembangan pada kelangsing

an dan kecepatan. Artinya, fitur yang menyebabkan MySQL menjadi lambat tidaklah ditambahkan, atau ditunda dulu, atau ditambahkan tapi menjadi fitur yang opsiona l. Versi awal MySQL ini, meski sudah bisa dipakai untuk aplikasi Web sederhana, bel umlah memadai sama sekali untuk aplikasi bisnis. Contohnya, JOIN sederhana sudah ada, tapi tidak ada HAVING baru di bulan Desember ditambahkan. Sudah ada tipe dat a TIMESTAMP dan kolom autoupdate, tapi tidak ada system-generated number (sequen ce) baru di akhir 1996 juga ditambahkan modifier kolom AUTO_INCREMENT. Sudah ada L IMIT tapi GROUP BY dan ORDER BY memiliki keterbatasan. Dan seterusnya. Barulah di versi-versi akhir 3.22 sepanjang 1998 1999 MySQL menjadi semakin popular da n dilirik orang. Stabilitasnya sudah baik. Kecepatannya meningkat. Sudah tersedi a di berbagai platform, termasuk Windows. Seri 3.22 ini banyak dipakai di berbag ai instalasi, mungkin hingga sekarang, sehingga MySQL AB tetap memberikan dukung an technical support untuk seri ini. MySQL Terus Berkembang Kalau di seri 3.22 MySQL mulai diadopsi banyak orang dan meningkat populasi peng gunanya, maka di seri 3.23 dan 4.0-lah terjadi banyak peningkatan dari sisi tekn ologi. Ini tidak terlepas dari tuntutan pemakai yang semakin mengandalkan MySQL, namun membutuhkan fitur-fitur yang lebih banyak lagi. Sejak dari sebelum 3.22 d an awal 3.23, MySQL terus dikritik praktisi database maupun penggunanya mengenai tidak adanya fasilitas transaksi (COMMIT dan ROLLBACK). Pengembang MySQL menyar ankan penggunaan LOCK TABLES untuk mengatasi masalah update atomik, tapi ini ten tu saja bukan pengganti transaksi, karena tidak adanya kemampuan membatalkan efe k perubahan di tengah jalan. Di seri 3.23-lah MySQL mulai memiliki kemampuan tra nsaksi, row-level locking, dan foreign key constraint. Meski beberapa fasilitas popular lainnya masih belum ada seperti subselek, view, dan trigger ini sudah direnc anakan dan akan mulai ditambahkan di seri 4.x. Seri 3.23. Di seri 3.23 MySQL menambahkan tiga jenis tabel baru: pertama MyISAM, yang sampai sekarang menjadi tipe tabel default; kedua BerkeleyDB, yang pertama kali menambahkan kemampuan transaksi pada MySQL; dan ketiga InnoDB, primadona b aru yang potensial. MySQL memang memiliki arsitektur yang memungkinkan tiap tabe l ditangani oleh handler yang berbeda. Handler ini menerima perintah akses dan m odifikasi dari lapisan MySQL yang lebih atas dan mewujudkannya secara fisik dari dan ke disk. Tabel tipe MyISAM merupakan tabel yang lebih cepat dari tabel ISAM , karena pola aksesnya telah disesuaikan dan dioptimasi untuk pola akses SQL. Se lain itu MyISAM mendukung indeks pada kolom bertipe TEXT dan BLOB, serta menduku ng tipe indeks FULLTEXT. Tabel tipe BerkeleyDB, atau BDB, menggunakan database e mbedded BerkeleyDB yang sudah terkenal itu untuk memanfaatkan kemampuan transaks inya. Sejak memiliki handler BDB, MySQL naik statusnya menjadi database yang ACI D compliant, sesuatu yang amat penting bagi keamanan data. Namun BerkeleyDB tida klah terlalu optimal untuk sebuah database SQL, sehingga akhirnya sebuah perusah aan Finlandia Innobase Oy membuat handler table baru bagi MySQL yang menggunakan database embedded InnoDB-nya kala itu bernama Innobase, namun berganti nama karen a masalah trademark produk Innobase yang sudah ada sebelumnya. InnoDB membuat MySQL menarik karena peningkatan kecepatan dan kemampuan tambahan yang dimungkinkannya. Pertama-tama, InnoDB memiliki fitur transaksi dengan sist em multiversi. Artinya, jika sebuah klien memulai transaksi, maka perubahan yang dilakukan klien tersebut tidak akan terlihat oleh klien lain. Klien lain akan m elihat kondisi tabel sebelum transaksi. Barulah jika transaksi oleh klien pertam a dicommit, perubahan ini menjadi terlihat di semua klien lain. Bandingkan ini d engan tabel BDB misalnya, di mana klien yang ingin mengakses sebuah tabel yang s edang dipakai dalam sebuah transaksi akan diblok. Dengan kata lain, multiversi m enghindari bloking yang tidak perlu. Ini ditambah lagi dengan row-level locking yang disediakan InnoDB, sehingga mempertinggi konkurensi dan mencegah terlalu ba nyak bloking. Handler tabel MySQL yang lain hanya mendukung table-level locking,

sehingga sebuah klien hanya bisa memblok dengan tingkat granulasi tabel dan ber potensi memblok banyak klien lain yang ingin mengakses tabel yang sama. PostgreS QL dan beberapa database komersial sudah memiliki kemampuan-kemampuan ini. Berka t InnoDB, MySQL pun kini memiliki keduanya. Selain itu, InnoDB menambahkan forei gn key constraint, sesuatu yang sering didambakan pengguna MySQL karena bisa men yederhanakan logika pemrograman dan menjaga kekonsistenan database mereka. Seri 4.x. Di seri yang baru berjalan hingga 4.0 tahap alfa ini, pengembang MySQL berjanji akan menjadikan MySQL satu derajat lebih tinggi lagi. Fitur-fitur yang sejak dulu diminta akan dikabulkan, seperti subselek (di 4.1), union (4.0), for eign key constraint (4.0 atau 4.1 meski InnoDB sudah menyediakan ini di 3.23.x), s tored procedure (4.1), view (4.2), cursor (4.1 atau 4.2), trigger (4.1). MySQL A B tetap berdedikasi mengembangkan dan memperbaiki MySQL, serta mempertahankan My SQL sebagai database open source terpopuler. Di versi 3.23 dan selanjutnya MySQL semakin menarik untuk dilirik oleh pengguna non-Web. Situs mysql.com di halaman depannya dengan bangga memajang profil para pengguna MySQL yang terkenal, seperti Yahoo! Finance (yang mulai mengaku menggun akan MySQL beberapa waktu lalu di milis mysql), NASA (yang membuang Oracle demi memotong budget), atau perusahaan sekuritas Jepang Aizawa. MySQL tidak lagi seke dar dipercaya menyimpan data posting komentar pengunjung situs Web (seperti di s lashdot.org, pengguna veteran MySQL) atau hit atau log Web, tapi juga kini sebag ai tempat menyimpan data keuangan dan transaksi bisnis. Meskipun demikian, karak teristik pengguna database yang biasanya terdiri dari perusahaan adalah cenderung ko nvensional dalam mengadopsi produk baru. Jadi jangan terkejut kalau misalnya sam pai sekarang Anda akan masih menjumpai orang yang menganggap MySQL belum ACID-co mpliant atau belum bisa melakukan transaksi. Padahal sudah dua tahun fitur ini a da di MySQL. Kerikil Di Tengah Jalan Sebetulnya babak baru pengembangan MySQL yaitu saat MySQL dirilis sebagai produk o pen source sejati dimulai saat perusahaan kecil MySQL AB ini menjalin kerja sama d engan sebuah perusahaan database Amerika bernama Progress Software di tahun 2000 . Progress membantu meyakinkan Monty dkk agar mengganti lisensi produk MySQL men jadi GPL. Selain itu, Progress juga memasuki bisnis open source dengan membentuk NuSphere, yang akan menjual distribusi MySQL khusus. Model bisnis mengemas soft ware open source nampaknya cukup laik di mata Progress, melihat kesuksesan distr o-distro Linux dan perusahaan seperti Red Hat. Karena itu Progress juga berencan a menyuntikkan dana hingga $2,5 juta dolar kepada MySQL AB, dengan tujuan agar M ySQL bisa menjadi lebih baik lagi. Satu lagi, Nusphere juga akan membuat table h andler baru bernama Gemini, yang didasarkan pada software database Progress. Gem ini akan menambahkan row-level locking dan transaksi pada MySQL. So far so good. Tapi ternyata, beberapa tindakan yang dilakukan oleh Nusphere me mbuat MySQL AB kesal. Pertama, Nusphere mengambil domain mysql.org (MySQL AB sen diri memiliki mysql.com hasil pemberian Patrick Lynch) dan tidak membuat pernyat aan yang jelas di situs tersebut bahwa MySQL dikembangkan oleh MySQL AB, bukan o leh Nusphere. Dengan kata lain Nusphere memakai nama MySQL dan seolah mengaku me njadi pengembang MySQL, padahal MySQL sejak awal dikembangkan oleh MySQL AB. Ked ua, Nusphere dengan distribusinya yang bernama Nusphere MySQL Advantage melanggar GPL. Ini ironis, karena perusahaan induknya Progress-lah yang setahun sebelumnya membantu MySQL menjadi GPL. Distribusi binary Nusphere ini megandung kode Gemin i yang dilink statik ke MySQL. Menurut lisensi GPL, ini memang berarti kode Gemi ni pun harus dirilis sebagai GPL. Nyatanya, Nusphere tidak memberikan source cod e Gemini, tapi hanya berjanji akan melepasnya nanti. MySQL AB mencoba meminta ke mbali domain mysql.org dan mendesak Nusphere merilis source code Gemini, tanpa h asil. Perselisihan kemudian menjadi memanas ketika pada tanggal 15 Juni 2001 Nusphere dan Progress mengajukan tuntutan ke pengadilan atas David Axmark (salah satu kar

yawan awal dan penginjil MySQL), Monty, dan MySQL AB, dengan tuduhan melanggar kon trak perjanjian. MySQL AB tidak mau kalah, ia menuntut balik Nusphere atas tuduh an pelanggaran trademark, perjanjian, dan lisensi GPL. Hingga hari artikel ini d itulis, proses pengadilan masih berlangsung. Oleh beberapa pihak keputusan akhir pengadilan akan sangat dinanti, karena jika MySQL AB menang maka supremasi dan validitas lisensi GPL akan benar-benar terbukti di lapangan. Ingin mengetahui lebi h lanjut mengenai hal ini? Coba lihat FAQ MySQL AB di www.mysql.com/news/article -75.html. Kalau ada waktu, kunjungi juga slashdot.org dan carilah kata kunci nusp here . Di luar masalah ini, MySQL terus dikembangkan secara aktif oleh MySQL AB. Dan un tung bagi para pemakai, Gemini kini praktis telah digantikan oleh InnoDB yang me mberikan kemampuan serupa. Saat ini domain mysql.org juga telah diambil alih ole h MySQL AB. PostgreSQL Di bawah popularitas MySQL, membayanglah PostgreSQL. Kalau MySQL disebut-sebut s ebagai database open source paling popular, maka PostgreSQL sering dijuluki data base open source paling mutakhir (advanced). Kedua database ini kadang begitu te rlihat kontras satu sama lain, sehingga tidaklah mewakili sama sekali kalau kita katakan keduanya bersaing. Kalau MySQL dikembangkan terutama di Eropa, PostgreSQL mula-mula di Amerika (di Universitas of California di Berkeley, sama seperti si stem operasi Unix). Kalau latar belakang pengembangan MySQL adalah untuk kebutuh an bisnis klien, maka PostgreSQL berawal dari proyek akademik. Kalau MySQL berfo kus pada kelangsingan dan kecepatan, maka PostgreSQL pada kelengkapan fitur, por tabilitas, dan reliabilitas (meski ironis bahwa kini MySQL lebih portabel dalam hal ketersediaan di Windows). Kalau MySQL merupakan sebuah database relasional ( RDBMS), maka PostgreSQL disebut objek-relasional (ORDBMS) karena fitur OO-nya se perti pewarisan tabel dan tipe data. [Lihat artikel MySQL vs PostgreSQL]. PostgreSQL memiliki sejarah yang lebih panjang dan berliku. Pertama memulai hidu pnya dalam wujud bernama Ingres ( Interactive Graphics and Retrieval System ), yang dikembangkan di Universitas Berkeley mulai tahun 1977 hingga 1985. Pemimpin proy ek Ingres adalah Profesor Michael Stonebraker dan Eugene Wong. Ingres mula-mula dikembangkan di atas platform komputer mini PDP-11. Belum ada SQL waktu itu, dan Ingres memiliki bahasa query tersendiri yang disebut QUEL. Kode Ingres kemudian dikomersilkan sehingga berdirilah Relational Technologies ( yang lalu berganti nama menjadi Ingres Corporation, dan kini berada di bawah per usahaan Computer Associates). Sementara itu, dari universitas yang sama, didirik an pulalah perusahaan Sybase dan Illustra (yang lalu bernama Informix, dan kini telah dibeli oleh IBM) oleh para alumninya. Profesor Stonebraker sempat terlibat di ketiga perusahaan ini. Salah satu pendiri Ingres juga merupakan pendiri Illu stra. Jadi dari Ingres lahir berbagai produk database: Ingres sendiri, Sybase, d an Informix. Database komersial Ingres (yang mengalami berbagai metamorfosis nam a, mulai dari Ingres II, Ingres NET, CA-Ingres, CA-OpenIngres, CA Advantage Ingr es) masih ada dan dijual hingga kini. Dari proyek Ingres juga lahirlah proyek penerusnya, Postgres (1986 1994). Dipimpin juga oleh Stonebraker, proyek ini bertujuan membuat Ingres agar menjadi lebih b erorientasi objek. Kode Postgres inilah yang diambil menjadi Illustra dan Inform ix. Tahun 1995 dua mahasiswa S2 di universitas yang sama, Jolly Chen dan Andrew Yu, menambahkan SQL pada Postgres untuk menggantikan QUEL. Hasilnya adalah Postgres9 5. Akhirnya kedua mahasiswa pun lulus dan meninggalkan Berkeley, namun Chen masi h terus memaintain Postgres95. Produk ini memiliki komunitas yang aktif berdisku si di mailing list. Setahun berikutnya, Postgres95 jadi bertambah popular. Anggo ta mailing list telah mencapai 1000 orang. Seseorang bernama Marc G. Fournier da ri Kanada menawarkan sebuah server untuk dipakai menjadi host mailing list dan C

VS. Hingga saat itu, ada empat orang yang menjadi pengembang utama Postgres95: C hen, Fournier, dan dua orang lain yaitu Thomas Lockhart di California, AS dan Va dim Mikheev di Rusia. Namun Postgres95 dikembangkan bersama-sama lewat Internet dan sumbangan patch dan berbagai orang di seluruh pelosok dunia. Sayangnya, proyek ini belum terkelola secara baik, apalagi profesional. Semua pe ngembang utamanya punya karir masing-masing. Mereka hanya mengembangkan Postgres 95 sebagai kerja hobi atau sampingan. Padahal jumlah pemakai sudah cukup banyak. Laporan-laporan bug banyak yang tidak tertangani dengan baik. Menurut Chen, kel uarga Postgres secara tradisional dikembangkan dalam suasana akademik, dan belum siap untuk menerima sumbangan kode dan laporan bug yang begitu banyak. Lagipula , kode turun-temurun dari Ingres dan Postgres ini belum sepenuhnya dimengerti, b ahkan oleh Chen. Untungnya, para pengembang Postgres95 berdedikasi untuk berbena h diri. Pertengahan 1996, nama Postgres95 sepakat dianggap sudah basi, maka lahirlah Pos tgreSQL (baca: post-grs-kju-l), dengan label versi dimulai dari angka 6.0 (versi t erakhir dari Postgres/Berkeley adalah 4.2, dan Postgres95 dianggap versi 5.x). D i sinilah, dan juga berlanjut di keluarga 7.0 7.1, banyak terjadi peningkatan dala m hal skalabilitas, fitur, dan kecepatan. Meskipun demikian, perbaikan berlangsung tidak secara tiba-tiba, melainkan beran gsur-angsur. Para pengembangnya perlu terlebih dulu masih perlu membenahi kode-k ode lama dan kode yang belum sepenuhnya dimengerti. Hingga versi 6.4 (1998) misa lnya di mana banyak ditambahkan fitur baru seperti dukungan karakter internasional , bahasa stored procedure baru, view, dan beberapa sintaks SQL tambahan banyak ter jadi masalah stabilitas. Beberapa pemakai melaporkan menjalankan proses server P ostgreSQL yang lalu secara misterius tiba-tiba mati tanpa laporan apa-apa di log a lias crash. Sebagian yang lain melaporkan diskonek secara acak. Dan sebagian lag i mengeluhkan kurang memuaskannya kinerja PostgreSQL. Bahkan ada pemakai yang me mbelot ke MySQL. Periode ini merupakan saat-saat yang cukup mengkhawatirkan bagi popularitas PostgreSQL. Contohnya, lihat www.phpbuilder.com/columns/tim20000705 .php3 di mana Tim Perdue menceritakan bahwa di tahun 1999, ia terpaksa beralih k e MySQL dalam membangun SourceForge. Kinerja PostgreSQL terlalu berbeda dengan M ySQL sehingga mau tak mau pengguna setia PostgreSQL ini harus berganti database. Versi 6.5 menurut pengembang PostgreSQL merupakan babak baru pemahaman mereka te rhadap keseluruhan source code PostgreSQL. Versi ini juga merupakan versi perbai kan bug yang penting; ada banyak bug seperti berbagai kasus crash, kebocoran mem ori, dan kejanggalan/kekurangan pada sintaks SQL-nya diperbaiki. Selain itu, di versi 6.5 ditambahkan MVCC oleh Vadim, yang berpotensi meningkatkan kinerja Post greSQL secara signifikan. MVCC, atau Multi Version Concurrency Control, serupa d engan InnoDB pada MySQL dalam hal memberikan kemampuan PostgreSQL memperlihatkan lebih dari satu versi tampilan data bagi klien. Perubahan data yang dibuat oleh klien yang sedang melakukan transaksi tidak akan terlihat dulu oleh klien lain sebelum transaksi dicommit. Ini menghindari locking yang tidak perlu. Versi 6.5.x (1999, seri terakhir dari 6.x) cukup berhasil dan memuaskan bagi par a pemakainya. Namun masih ada beberapa kekurangan PostgreSQL yang dirasakan meng ganjal bagi banyak orang. Kekurangan-kekurangan ini lambat laun diperbaiki di se ri 7.x, dan menurut Bruce Momjian, di seri 7.3 ia berharap PostgreSQL akan sepen uhnya layak dan sebanding dengan database komersial dalam hal fitur penting. Sat u keterbatasan yang paling menyebalkan yaitu ukuran data maksimum sebuah field h anya 8 32KB. Ini menyebabkan orang sulit menyimpan teks panjang atau gambar di dal am database. Keterbatasan ini akhirnya dihapuskan di 7.1. Penambahan penting lai nnya antara lain foreign key constraint (ditambahkan di 7.0), write-ahead loggin g untuk peningkatan keamanan dan kinerja (7.1), serta OUTER JOIN. Masih ada lagi fitur seperti replikasi yang rencananya akan ditambahkan setelah 7.2. Pengguna setia PostgreSQL boleh berbangga dengan seri 7.x. Di seri ini PostgreSQ

L mulai menantang dan bahkan mengungguli MySQL dalam hal kecepatan, terutama di query-query kompleks dan pada kondisi load tinggi. Dalam artikelnya Tim Perdue m elaporkan hasil benchmark MySQL 3.23 dan PostgreSQL 7.0 dan kesimpulannya adalah : PostgreSQL memang telah menjadi semakin baik. Dan kecepatannya cukup mengagumk an. Stabil pula. Versi terbaru PostgreSQL saat artikel ini ditulis yaitu 7.2 (dirilis Februari la lu). PostgreSQL dikembangkan dengan siklus rilis sekitar 4 bulan, jadi kita bisa mengharapkan rilis berikutnya sekitar bulan Juni 2002. Hingga sekarang, di anta ra pengembang inti PostgreSQL yang paling aktif antara lain Thomas, Vadim, Tom L ane (AS), Tatsuo Ishii (Jepang), Hiroshi Inoue (Jepang), Philip Warner (Australi a), dan Bruce Momjian (AS). Fitur OO PostgreSQL Yang membedakan PostgreSQL dan MySQL adalah kemampuan OO. Di PostgreSQL, kita da pat mendefinisikan sebuah tabel yang mewarisi definisi tabel lain. Misalnya, ada tabel Karyawan yang memiliki field partyId dan currentSalary. Kita dapat mendef inisikan tabel KaryawanDivisiA dengan hanya mendefinisikan field tambahan postId dan ditambah klausa SQL INHERITS (Karyawan). Field-field lain akan otomatis dia mbil dari tabel induknya, Karyawan. Bukan tabel saja, tipe data baru pun dapat d idefinisikan. Dan uniknya, PostgreSQL pun memiliki tipe data geometri (seperti t itik, garis, lingkaran, poligon) yang mungkin berguna bagi aplikasi ilmiah terte ntu. Satu lagi, anehnya, PostgreSQL memberikan kita kemampuan mendefinisikan seb uah field sebagai array. MySQL mungkin tidak akan memiliki semua ini dalam waktu dekat. Dari segi kekayaan SQL, para pengembang database mungkin akan lebih tergiur. Pos tgreSQL memiliki hampir semua fasilitas standar yang biasanya diinginkan: view ( tabel virtual), trigger, subselek, stored procedure (dalam beberapa bahasa), dan foreign key constraint. PostgreSQL juga memiliki apa yang disebut rule, yaitu t indakan custom yang bisa kita definisikan dieksekusi saat sebuah tabel di-INSERT , UPDATE, atau DELETE. Sistem rule ini memungkinkan kita mengendalikan bagaimana data kita diubah atau diambil. Misalnya, kita dapat membuat sebuah tabel mernja di bersifat append-only dengan membuat rule yang membatalkan efek DELETE dan UPD ATE. Atau kita bisa melakukan pengecekan data sebelum terjadinya perubahan pada tabel. Atau melindungi row tertentu agar tidak bisa diambil datanya, dsb. Rule i ni dipakai untuk mengimplementasi view. Meski begitu mungkin Anda perlu menghind ari menggunakan rule secara eksplisit karena fasilitas ini tidak ada dalam stand ar (SQL92). Lebih jauh mengenai perbandingan MySQL dan PostgreSQL bisa dilihat di artikel mw mag MySQL vs PostgreSQL. Bisnis Database Open Source Juga Keluarga Ingres/Postgres telah melahirkan beberapa perusahaan penjual produk kom ersial yang sukses meski saat ini semua perusahaan tersebut telah dimakan oleh rak sasa IBM/Microsoft dan CA. Lisensi Ingres/Postgres/Postgres95/PostgreSQL memang sejak dulu amat liberal, ala BSD. Artinya, dibandingkan dengan GPL yang mewajibk an produk turunan menjadi GPL pula, maka lisensi Postgres membolehkan kita memak ai produk tersebut untuk tujuan apa pun, termasuk mengemas dan menjualnya sebaga i produk komersial yang closed-source. Syaratnya hanya dua: pertama, nama penuli s aslinya tetap disebutkan; dan kedua, pengembang awal termasuk University of Cali fornia, Berkeley dibebaskan dari segala tanggung jawab yang terjadi akibat penggun aan software. Di awal tahun 2000, sebuah perusahaan bernama Landmark Communications Inc. di Am erika mendirikan Great Bridge, yang bertujuan mengembangkan sebuah versi Postgre SQL komersial untuk dijual. Great Bridge merekrut Bruce Momjian menjadi wakil pr esiden di perusahaan tersebut. Selain itu dua pengembang inti PostgreSQL lainnya juga ikut bergabung. Total tim sekitar 25 orang.

Gerakan ini diikuti sekitar satu tahun kemudian oleh Red Hat, distributor Linux terbesar. Sebelumnya Frank Batten, salah satu investor di Red Hat dan yang lalu menjadi komisaris di Great Bridge, telah menyarankan agar Red Hat memasuki pasar database sejak akhir 1999. Namun waktu itu Red Hat memutuskan untuk tidak masuk ke dalam persaingan dengan Oracle dan IBM, sehingga akhirnya Frank pun keluar. Namun bulan Juni 2001, Red Hat menyatakan akan meluncurkan produk dan solusi dat abase open source. Database yang akan dipakai masih dirahasiakan ketika itu, tap i banyak yang sudah bisa menebak bahwa PostgreSQL-lah yang akan dipakai. Dan ben ar, sebelumnya memang Red Hat sudah sempat menghubungi Great Bridge untuk mendis kusikan kemungkinan kerja sama (Red Hat mensubkontrak Great Bridge). Namun perun dingan gagal, dan Red Hat akhirnya membentuk tim sendiri di bawah tajuk Red Hat Database Project. Tujuannya, ikut mengembangkan PostgreSQL dan menawarkan solusi database open source komersial. Sayangnya, komersialisasi database open source nampaknya tidak, atau belum, berh asil. Setelah 16 bulan beroperasi dan tidak menghasilkan pemasukan yang memadai, akhirnya pada bulan September 2001 Great Bridge tutup. Ini menunjukkan kembali bahwa pasar database adalah pasar yang konvensional, yang belum akan mengadopsi sesuatu yang baru secara cepat. Bukan berarti database open source tidak bisa di komersilkan, hanya saja. Dan bukan berarti PostgreSQL gagal secara komersial. Pr oduk ini sudah dipakai secara meluas di industri; hanya saja, untuk masuk ke pasa r komersial dibutuhkan waktu dan kesabaran. Masih ada Red Hat dengan RHDB-nya, k ita masih menunggu bagaimana prospek usaha tersebut. Interbase Para pembaca yang suka menggunakan Delphi mungkin tidak asing lagi dengan Interb ase. Ya, produk Borland yang satu ini memang dekat dengan Delphi, karena menjadi database default dan disertakan bersama dalam satu distribusi. Delphi amat popu lar di Eropa, dan banyak dipakai untuk membuat aplikasi-aplikasi perbankan dan b isnis. Untuk banyak aplikasi tersebut besar, menengah, maupun kecil Interbase-lah ya ng diserahi tanggung jawab menyimpan dan mengelola datanya. Bahkan perusahaan se besar Motorola, Boeing, dan MCI juga merupakan pemakai Interbase. Jadi dari sini Anda sudah bisa melihat bukti bahwa Interbase memang andal dan stabil. Fokus pe ngembangan Interbase adalah pada kesederhanaan, terutama bagi pemakai akhir dan pengembang aplikasi. Seperti rekan-rekan pendahulunya MySQL dan PostgreSQL saya sebut pendahulu sebab I nterbase baru masuk arena open source dalam dua tahun terakhir, dan itu pun akhi rnya kandas (ceritanya sesaat lagi) Interbase pun punya sejarah panjang yang dimul ai dari era pra-Intel/PC. Situs firebird.sourceforge.net mengisahkan lika-liku p erjalanan Interbase dari awal hingga sekarang, tapi berikut ini saya sarikan dal am lima paragraf. Tersebutlah tiga orang bernama Jim Starkey, Don DePalma, dan Ann Harrison, yang pada tahun 1984 mendirikan Groton Database Systems. Sebelumnya mereka bertiga ad alah karyawan DEC (alias Digital Equipment Corporation, yang pada 1997 akhirnya dibeli oleh Compaq) dan terlibat dalam sebuah proyek database relasional bernama Rdb. Arsitektur database Interbase sendiri memang didasarkan pada Rdb. Interbas e berjalan di platform Apollo, kodenya ekstensibel dan portabel. Dua tahun kemudian, para pendiri Groton menjual sahamnya kepada Ashton-Tate (ing at dBase III+, yang sempat merajai pasar database PC sebelum era client-server?) . Ashton-Tate terlibat juga dalam kepemilikan saham perusahaan database lain yai tu Sybase. Di masa ini, karena campur tangan Ashton-Tate, pengembangan Interbase tidak berjalan dengan baik. Pada tahun 1992, Borland membeli Ashton-Tate dan memperoleh kode Interbase versi 3. Untunglah, di bawah perusahaan yang berbasis di Silicon Valley ini, Interbas e seperti mendapatkan denyut jantung kehidupan yang baru. Di bawah kendali Borla

nd, Interbase mendapatkan tambahan fitur antara lain stored procedure dan port W indows (sebelumnya Interbase hanya berjalan terutama di Unix). Interbase juga se gera dikemas bersama Delphi dan produk RAD lainnya. Hingga tiba pada Interbase v 5.5. Apa boleh dikata, memang sulit menjadi lawan main sebuah perusahaan sebesar Micr osoft. Dalam kebingungannya, Borland sempat berusaha mengganti fokus, beralih na ma menjadi Inprise, lalu menjadi Inprise/Borland, lalu kembali lagi memeluk nama semula Borland sekitar satu tahun kemudian. Salah satu langkah lain setengah bi mbang dan putus asa yang dilakukan Borland yaitu melepas Interbase 6.0 sebagai p roduk open source, dengan tujuan mengurangi beban gaji karyawan dan barangkali j uga untuk masuk ke pasar baru Linux dan open source (Pertarungan di Windows terl alu berat dan melelahkan!) Borland juga berjanji akan mendirikan satu perusahaan baru sebagai pendukung Interbase open source ini. Sayangnya, semua ini tidak berjalan mulus. Pertama, tim pengembang Interbase sem ula tidaklah menyukai keputusan Borland ini. Ini secara cukup dramatis ditunjukk an ketika manajer proyeknya, Bill Karwin, mengundurkan diri dari divisi Interbas e. Ann Harrison sendiri, yang masih terlibat dalam pengembangan Interbase, meras a bahwa komunitas pengguna Interbase perlu memiliki wadah resource yang dapat di andalkan. Perlu diketahui bahwa inisiatif open source Borland sendiri akhirnya t idak jalan, karena nampaknya Borland (saat itu masih menyandang nama Inprise) ke mbali berubah pikiran dan ingin masuk ke bisnis database lagi. Benar saja, Inter base versi 6.5 kembali jadi produk closed-source dan komersial. Apa yang akan te rjadi dengan Interbase 6.0? Firebird Berdirilah grup IBPhoenix yang diprakarsai oleh Ann dan Paul Beach, yang terakhi r menjabat sebagai GM unit bisnis divisi Interbase di Borland. Grup ini menyedia kan layanan support Interbase dan berdedikasi terus memperbaiki Interbase open s ource. Dan lahir pulalah proyek baru yang merupakan fork Interbase, bernama Fire bird. Firebird adalah proyek yang bermula dari source code Interbase 6.0 namun d ikembangkan oleh para pengembang di luar Borland. Keduanya masih memiliki banyak persamaan hingga sekarang, namun sejak versi 6.0 dan seterusnya keduanya akan b erjalan masing-masing. Saat ini bisa dikatakan bahwa Interbase open source = Fir ebird, dan Interbase semula (milik Borland) telah menjadi produk komersial lagi. Firebird dirilis dengan lisensi IPL yang serupa dengan GPL. Anda diperbolehkan m elihat dan memodifikasi source codenya, tapi dengan catatan perubahan tersebut h arus juga dirilis dengan source code di bawah lisensi yang sama. Fitur dan Stabilitas Interbase adalah sebuah produk database yang matang, terbukti stabil, dan telah malang-melintang di industri selama belasan tahun. Interbase juga tersedia di Wi ndows maupun Unix. Semua fitur standar yang Anda perlukan dimilikinya: view, sto red procedure, trigger, dan dukungan SQL yang cukup kuat. Bahkan IBPhoenix menga takan MySQL dan PostgreSQL belumlah jadi database tingkat komersial seperti Inte rbase. Meskipun demikian, Interbase belum tentu cocok bagi aplikasi Web Anda, ka rena pemakaian resource dan overhead koneksinya relatif lebih tinggi. SAP DB Database open source relasional keempat yang penting disebutkan adalah SAP DB. D atabase ini tidak begitu popular di Web, karena tidak terlalu cocok untuk aplika si kecil hingga menengah. Namun jika Anda mencari database yang skalabel menduku ng jumlah data dan kompleksitas yang tinggi, SAP menjanjikan database yang satu ini tidak akan mengecewakan. Seperti kita ketahui, SAP AG (kepanjangan: Systems, Applications, and Products i n Data Processing), berbasis di Jerman, adalah perusahaan ERP terbesar di dunia. Perusahaan-perusahaan besar internasional menggunakan produk SAP R/3 untuk meng

elola proses bisnis mereka. SAP R/3 ini adalah sebuah produk yang besar dan komp leks. Meskipun arsitekturnya menggunakan database tunggal karena inilah konsep das ar SAP R/3: satu database untuk satu perusahaan namun jumlah tabelnya mencapai leb ih dari 8000 buah. Pada umumnya database yang digunakan oleh SAP R/3 adalah Orac le, namun untuk menekan ongkos total implementasi SAP R/3 bagi sebagian klien, a khirnya SAP mengembangkan sendiri databasenya. Tidak dari nol, tentu saja, karena itu akan membutuhkan waktu yang terlampau lam a. Melainkan, SAP melisensi produk ADABAS yang dibuat oleh perusahaan Jerman jug a, Software AG. ADABAS sendiri cikal bakalnya sudah ada sejak tahun 1977, sejak menjadi proyek riset di sebuah universitas di Berlin. Kode hasil proyek ini diko mersilkan menjadi produk DDB/4 oleh Nixdorf Computer AG. Nixdorf dibeli oleh Sie mens beberapa tahun kemudian, dan Siemens melisensi database ini kepada Software AG. Maka jadilah ADABAS-D. Hingga saat ini, menurut SAP, ada lebih dari 100 pen gembang yang mengerjakan SAP DB. Sekitar setahun yang lalu, SAP memutuskan untuk melepas source code SAP DB 7.2. Dengan ini maka bertambah lagilah satu alternatif. Yang menarik dari SAP DB adal ah skalabilitas dan fitur-fiturnya untuk menangani aplikasi kompleks, buktinya: SAP DB mampu digunakan untuk aplikasi sekompleks SAP R/3. Beberapa fitur yang ti dak dimiliki MySQL dan PostgreSQL misalnya, yaitu view yang dapat di-UPDATE, tid ak sekedar di-SELECT. Sama seperti PostgreSQL, SAP DB juga memiliki fitur OO. Ka lau MySQL baru merencanakan HotBackup pada InnoDB, maka SAP telah memiliki fitur online backup ini. Seperti halnya Interbase, SAP DB pun dilengkapi dengan tooltool grafis. Satu-satunya alasan utama untuk tidak menggunakan SAP DB barangkali karena komunitasnya jauh lebih kecil dibandingkan MySQL dan PostgreSQL. SAP DB dirilis di bawah lisensi GPL. Database Lain Empat database yang telah dibahas sebelumnya ini secara umum menjadi pilihan uta ma kebanyakan orang. Namun nasih ada beberapa database open source yang ada di l uar sana dan akan saya sebutkan sebagian di antaranya satu persatu. GNU SQL. Inilah proyek database dari GNU, superproyek yang bertujuan akhir membe ntuk sistem operasi lengkap yang sepenuhnya dibangun dari software bebas (GPL). Banyak software yang dikembangkan GNU berhasil menjadi popular. Di antaranya ada lah gcc (kompiler C), bash (shell Unix), emacs (editor teks), dan GNOME (lingkun gan GUI untuk Unix). Ada juga beberapa yang gagal atau terhenti. GNU SQL boleh d ibilang masuk ke dalam kategori kedua. Produk ini tidak pernah popular dan penge mbangannya telah tertunda/berhenti sama sekali tahun-tahun terakhir ini. Tujuan proyek GNU SQL adalah untuk membuat server database yang portabel dan mendukung dialek SQL89 SQL92 (sebagian). Tidak ada alasan bagi Anda untuk menggunakan databa se ini, kecuali untuk bermain-main atau jika Anda berminat terlibat dalam pengem bangannya. www.gnusql.org. mSQL. Alias mini-SQL . Produk ini bermula dari tesis doktoral seorang mahasiswa di Australia bernama David Hughes di awal 1990-an. Meski hingga saat ini mSQL tidak lah berkembang dari segi tim, fitur, maupun skalabilitas bagaikan anak kecil yang tidak lagi tumbuh menjadi dewasa namun produk ini sempat berjasa, antara lain kare na mendorong Michael Widenius mengembangkan MySQL. Kala itu memang tidak ada dat abase SQL gratis yang tersedia. Postgres sudah ada, tapi belum memiliki bahasa S QL. www.hughes.com.au. Gadfly. Sebuah database SQL in-memory yang diimplementasi dalam Python. Bukan un tuk keperluan generik memang, tapi lebih untuk diembed dan mengolah data aplikas i yang muat seluruhnya di memori. Uniknya, meskipun kecil tapi Gadfly mendukung cukup banyak subset SQL dan juga memiliki fitur transaksi. Sekarang tidak lagi d ikembangkan secara aktif. Barangkali karena sedikit penggunanya. www.chordate.co m/gadfly.html.

ArunaDB. Kalau Python punya Gadfly, bahasa skripting Ruby pun punya ArunaDB. Aru naDB direncanakan akan menjadi database yang cukup generik dan memiliki fitur-fi tur dari transaksi hingga view, dari trigger hingga stored procedure (yang akan Anda tulis dalam Ruby, tentu saja). Hingga artikel proyek ini belum rampung. www .arunadb.com. Database Non-SQL Kalau kita melihat keluar konteks database relasional, maka pilihan yang akan An da dapatkan lebih banyak lagi. Mulai dari mesin persistensi, database objek (mes ki tidak terlalu banyak pilihan untuk yang ini), hingga database khusus. Berikut ini saya sebutkan beberapa yang [setidaknya menurut pandangan saya] menarik unt uk dilihat: BerkeleyDB. Meskipun mungkin tidak sefamiliar di telinga kita seperti halnya MyS QL atau PostgreSQL, tapi database ini punya track record yang cukup banyak, sepe rti dipakai oleh BIND (software name server paling dominan di Internet), Sendmai l (mail server yang juga paling banyak ada di Internet hingga saat ini), dan jug a oleh perusahaan dari mulai Amazon hingga Netscape hingga Motorola. Sleepycat, perusahaan vendor BerkeleyDB, dengan bangga menyebut produknya: database yang ada di mana-mana. Ingat bahwa MySQL pun memakai BerkeleyDB untuk mendapatkan kemampu an transaksi pertamanya. BerkeleyDB, atau BDB singkatnya, adalah sebuah library database yang ringan, dengan tujuan utama untuk diembed di dalam aplikasi lain. Dengan library ini, sebuah aplikasi dapat menangani data berukuran besar lengkap dengan kemampuan transaksi. Hingga kini BDB didistribusikan dengan lisensi gand a (seperti halnya MySQL dulu). Penggunaan komersial harus bayar, sementara nonko mersial tidak. Tapi jika aplikasi kita tidak melink BDB secara statik, maka kita tidak diwajibkan membayar. www.sleepycat.com. Keluarga DBM (gdbm, ndbm, sdbm). Jika Anda membutuhkan hash table yang disimpan di disk, maka sejak dahulu telah tersedia library DBM di Unix. Yang paling banya k digunakan sekarang adalah gdbm dari GNU. Sebagai pemakai akhir mungkin kita ja rang berurusan dengan library ini, karena dbm umumnya dipakai sebagai backend ol eh aplikasi lain. Sebutlah htdig (full text indexer dan search engine) misalnya, atau praktis berbagai aplikasi lain yang ingin melakukan lookup tabel secara ce pat (mis: Apache, Postfix, Squid, database lain, dsb). www.gnu.org/software/gdbm /gdbm.html. rdfDB. Sebuah proyek menarik oleh mantan CTO Epinions.com. Tujuan database ini y aitu untuk menyimpan data graph yang nanti dapat diekstrak melalui bahasa query mirip SQL. Backendnya saat ini menggunakan DBM. www.guha.com/rdfdb. FastDB. Library lain untuk mengolah in-memory database, tapi kali ini dalam C++. www.geocities.com/SiliconValley/Orchard/5802/fastdb.html. ZODB. Sebuah mesin persistensi untuk Python. www.amk.ca/zodb/. Penutup Sebuah produk database nampaknya membutuhkan kematangan dan waktu yang lama untu k diadopsi, karena para pengguna database seperti perusahaan lambat dan hati-hat i dalam mengadopsi sesuatu yang baru yang mana merupakan tindakan yang cukup tepat menimbang bahwa upgrade atau pergantian database memakan biaya serta berisiko b esar. Katakanlah Oracle misalnya, yang mempunyai sejarah yang panjang sejak 1977 di platform komputer mini dan mainframe. Demikian juga DB2, yang memulai kehidu pannya di mainframe dan barisan hardware IBM sendiri. Microsoft SQL Server meman g relatif baru, tapi jangan lupa bahwa produk ini sebelumnya sudah ada dalam wuj ud Sybase. Jika Anda melirik open source hari ini, setidaknya sudah ada empat RDBMS open so urce yang amat layak untuk dipertimbangkan: MySQL, PostgreSQL, Interbase (Firebi

rd), dan SAP DB. Keempatnya bukan produk hari kemarin, melainkan telah dikembang kan sejak bertahun-tahun silam dan dipakai banyak orang. Keempatnya memiliki kar akteristik yang berbeda, sehingga memberikan pilihan bagi Anda untuk menggunakan yang paling sesuai dengan kebutuhan. Di tingkat yang lebih low-level, ada Berke leyDB yang telah terbukti keandalannya. Jika Anda pengguna Python, ZODB bisa jad i tool yang berguna untuk menyimpan objek-objek Anda. Jangan lupa juga Metakit, yang praktis untuk katalog atau data 2 dimensi yang sering berubah skemanya. Pen dek kata, open source dapat memberi Anda solusi database sesuai kebutuhan. Perta nyaannya tinggallah: siapkah sumber daya manusia Anda mengelola sistem databasen ya? (sh)