Mengenal Firebird dalam 2 menit

Logo Firebird

Indonesian Translation [id]

Disusun oleh: Carlos H. Cantu
Revisi berkas: 1.2 – April 2008

Terjemahan bahasa lain: Inggris, Ceko, Portugis ala Brasil, Polandia, Jerman, Turki, Portugis, Spanyol, Swedia, Perancis, Italia, Hungaria, Bulgaria, Rusia, Jepang.

Berkas ini juga tersedia dalam format PDF (dalam bahasa Inggris).

Pendahuluan

Jika Anda membaca makalah ini, mungkin ini adalah pertemuan Anda yang pertama dengan SMBDR Firebird. Makalah ini akan menjelaskan pada Anda keistimewaan-keistimewaan yang dimiliki database Firebird. Di akhir makalah, saya yakin Anda akan penasaran untuk segera mengunduh installer-nya yg kecil dan ringan serta mencobanya sendiri.

Sejarah

Firebird diturunkan dari kode sumber Borland Interbase 6.0 yang kemudian dikembangkan lebih lanjut. Firebird bersifat open source (kode sumber terbuka) dan tidak berlisensi ganda. Tak peduli Anda akan menggunakannya untuk tujuan aplikasi komersil atau sumber terbuka atau gratis, Anda tak perlu bingung apalagi khawatir, Firebird sepenuhnya BEBAS digunakan!

Teknologi Firebird, berdasarkan kode asalnya, telah digunakan selama lebih dari 20 tahun. Hal ini menjadikan Firebird sebagai produk yang mapan dan stabil.

Keistimewaan Utama

Jangan tertipu dengan ukuran installer-nya! Firebird adalah sebuah SMBDR yang hebat dan penuh keistimewaan. Firebird mampu menangani database dari yang cuma berukuran beberapa KB hingga gigabita dengan unjuk kerja yang baik dan nyaris tidak membutuhkan perawatan selama bekerja!

Berikut daftar beberapa keistimewaan utama yang dimiliki Firebird:

  • Mendukung penuh Stored Procedure dan Trigger
  • Sepenuhnya mengikuti aturan transaksi yang ACID
  • Mendukung integritas keterhubungan
  • Dibangun dengan arsitektur multigenerasi
  • Kebutuhan sumber daya yang relatif sangat kecil
  • Mendukung penuh pemrograman berbasis bahasa SQL (PSQL)
  • Mendukung pustaka fungsi luar
  • Membutuhkan sedikit atau tanpa campur tangan Admin Database
  • Nyaris tidak perlu konfigurasi, tinggal install dan gunakan!
  • Komunitas yang besar sehingga ada banyak tempat untuk bertanya dan meminta bantuan
  • Tersedia versi yang tidak membutuhkan server (embedded), cocok untuk membuat katalog di CDROM, aplikasi pengguna-tunggal, atau aplikasi evaluasi
  • Ada lusinan aplikasi bantu dari pihak ketiga, termasuk aplikasi GUI untuk pengelolaan, aplikasi penggandaan (replikasi), dlsb
  • Teknik penyimpanan yang hati-hati, pemulihan yang cepat, tidak membutuhkan catatan (log) transaksi!
  • Tersedia banyak cara untuk mengakses database, bisa melalui API langsung, dbExpress, ODBC, OLEDB, penyedia .Net, JDBC langsung tipe 4, modul Python, pustaka PHP, Perl, dlsb
  • Mendukung banyak sistem operasi, seperti Windows, Linux, Solaris, MacOS
  • Mendukung pencadangan berkelanjutan
  • Tersedia versi untuk arsitektur CPU 64 bit
  • Sepenuhnya menerapkan kursor dalam PSQL
  • Tersedia tabel untuk memantau database
  • Mendukung Trigger untuk koneksi dan transaksi
  • Mendukung tabel sementara

Coba Sekarang Juga!

Mencoba Firebird adalah pekerjaan yang mudah. Ukuran installer-nya biasanya kurang dari 5 MB (tergantung pilihan sistem operasi Anda) dan sepenuhnya otomatis. Anda bisa mengunduhnya dari situs utama Firebird. Lepasan stabil paling akhir adalah versi 2.1.

Anda akan melihat bahwa Firebird tersedia dalam 3 jenis: SuperServer, Classic, dan Embedded. Anda lebih baik memulai dari SuperServer. Saat ini, Classic disarankan untuk digunakan di mesin yang mendukung SMP atau beberapa situasi khusus lain. SuperServer berbagi sumber daya untuk banyak koneksi dan menggunakan thread untuk menangani setiap koneksi. Sedangkan Classic menggunakan satu proses server yang mandiri dan terpisah untuk setiap koneksi yang ditangani.

Jenis Embedded adalah variasi yang mencengangkan. Jenis ini memiliki seluruh keistimewaan server Firebird yang dibungkus hanya dalam beberapa berkas saja. Sangat mudah disebarkan, karena tidak perlu dipasang di server. Ideal untuk katalog di CDROM, aplikasi demo, atau aplikasi desktop tunggal.

Firebird dilengkapi dengan seperangkat aplikasi yang bisa membantu Anda membuat database baru, membaca statistik database, menjalankan perintah SQL, melakukan pencadangan dan pengembalian, dlsb. Jika Anda lebih suka menggunakan aplikasi basis GUI (antarmuka grafis), tersedia banyak sekali pilihan untuk itu, termasuk yang gratis. Daftar aplikasi pada akhir makalah ini bisa menjadi awalan yang bagus.

Di Windows, Anda bisa menjalankan Firebird sebagai service atau aplikasi biasa. Installer bisa menyediakan ikon di Control Panel yang bisa Anda gunakan untuk mengelola server (mulai, hentikan, dlsb).

Dokumentasi

Ada banyak sekali makalah, tanya-jawab, dan artikel yang mungkin Anda ingin baca di situs utama Firebird. Anda mungkin juga perlu mencari tahu apakah ada situs komunitas atau milis lokal di negara Anda, sehingga Anda bisa memperoleh bantuan dalam bahasa asli Anda.

Seluruh informasi dapat Anda cari di lingkungan situs utama Firebird. Anda juga bisa mengakses situs Firebird News untuk memperoleh berita terbaru terkait Firebird.

Untuk Segala Ukuran Database

Beberapa orang mengira bahwa Firebird adalah SMDBR yang hanya cocok untuk database kecil dan hanya diakses beberapa pengguna saja. Mereka salah! Firebird digunakan di banyak perusahaan besar dengan akses pengguna yang tinggi. Salah satu contoh yang bagus adalah seperti yang ditunjukkan di Softool’06 dimana Avarda (aplikasi ERP buatan Rusia) beroperasi menggunakan Firebird 2.0 jenis Classic dengan rata-rata 100 koneksi berkesinambungan mengakses database berukuran 120 GB berisi 700 juta record! Servernya adalah mesin SMP (2 prosesor, Dell PowerEdge 2950) dengan RAM 6 GB.

Aplikasi Bantu dan Komponen

Berikut adalah daftar aplikasi yang menarik seperti aplikasi bantu, driver, dlsb. Silakan periksa situs resmi Firebird untuk daftar yang lebih lengkap dan terbarui.

Aplikasi Administrasi GUI

Driver dan Komponen Akses

Aplikasi Penggandaan

Dukungan dan Tautan Sumber Daya

Lain-Lain

Makalah dan Dokumentasi

Anda berniat membantu?

Sebagaimana umumnya proyek open source, setiap orang boleh menyumbang dengan cara membantu mengembangkan kode program Firebird atau memperbaiki kesalahan program yang ada. Jika Anda ingin menjadi anggota Tim Pengembang Firebird, unduh kode program Firebird dari SourceForge dan pelajarilah. Anda juga boleh bergabung dalam milis fbdevel untuk bertemu dengan para pengembang yang lain (catatan: fbdevel bukan milis bantuan umum, jadi jangan meminta bantuan di situ, sebaiknya gunakan milis firebird-support untuk mendapatkan bantuan gratis dari komunitas).

Anda tidak perlu menjadi penulis program untuk bisa membantu proyek ini. Menjadi anggota Yayasan Firebird atau memberi sumbangan uang berarti Anda telah membantu pendanaan para pengembang inti sehingga mereka bisa mencurahkan waktu dan tenaga mereka untuk proyek ini.

Terima kasih atas waktu 2 menit Anda…

31 Responses to Mengenal Firebird dalam 2 menit

  1. WishKnew says:

    Good posting about great database. I’ve left MDB for my project since last year, and replaced by Firebird. Embedded firebird is the next thing I’d like to try. (If you have a simple package / demo how to use it, I’d be grateful).

  2. bee says:

    @wishknew:
    Walaupun FB terdiri dari berbagai jenis, namun cara penggunaannya nyaris gak ada bedanya. Krn jenis2 tsb hanya membedakan perilaku engine di sisi server, sedang di sisi client nyaris gak ada perbedaan, sebab ketiganya memiliki API yg sama.

    Satu2-nya yg berbeda di jenis Embedded adalah connection string. Khusus untuk jenis ini, gak boleh ada alamat host (walaupun itu localhost), tapi langsung ke path atau alias file database yg akan diakses. Selebihnya, sama saja.

    Ini artinya, FB juga memiliki tingkat skalabilitas yg cukup tinggi. Kita bisa berpindah jenis engine hanya dengan sedikit atau tanpa perubahan program di sisi client. Misal untuk aplikasi demo, kita pake Embedded, tapi untuk aplikasi riil, kita pake Classic atau SuperServer.

    Krn FB adalah turunan dari Interbase, sebagian besar contoh2 aplikasi yg disertakan di Delphi untuk Interbase bisa juga untuk mengakses FB. Mungkin bung WishKnew bisa mulai dari situ. 😉

    Namun perlu diperhatikan, bagaimanapun juga FB bukan Interbase dan Interbase juga bukan FB. Untuk aplikasi riil, silakan pelajari lebih lanjut dokumentasi teknis FB.

    Semoga bisa membantu. 🙂

  3. Contoh koneksi ke embedded firebird menggunakan Delphi dan Zeos. Kemudian program dan database-nya ditaruh di CD (perhatikan property -> ReadOnly := True;).

    Sebelum di taruh di CD database harus dibikin read only dulu dengan cara:

    gbak -v -t -user SYSDBA -password “masterkey” dbserver:/db/warehouse.fdb c:\backups\database.fbk

    gbak -c -v -mode read_only -use_all_space -user SYSDBA -password masterkey c:\backups\database.fbk c:\data\database_ro.fdb

    procedure Tdm.DBConnect();
    begin
    with ZConnection1 do
    begin
    Protocol := ‘firebird-2.0’;
    HostName := ”;
    Database := ‘.\data\database_ro.fdb’;
    User := ‘sysdba’;
    Password := ‘masterkey’;
    ReadOnly := True;
    Connected := True;
    end;
    ZReadOnlyQuery1.Close;
    end;

  4. bprasetio says:

    Firebird emang top, saya menggunakan versi Embedded untuk menyimpan log aktivitas Aplikasi Server yang saya buat. Sampai dengan saat ini tidak ada masalah, walaupun jumlah recod nya sudah lebih dari ratusan ribu dan ukurannya sudah cukup besar… 😀

    Ah tapi sayang ditempatku gak bisa dipake sebagai server database, bos malah berpendapat FB itu tidak murni ‘free’, seperti MySQL. Ah dapat dari mana ya infonya, mana tetap bersikukuh lagi, gara2 dapat info komparasi antara MySQL, FB dan SQLite.. 😦

    Tapi yang penting AppServer ku masih tetap pake FB…

  5. bee says:

    @bprasetio:
    > bos malah berpendapat FB itu tidak murni ‘free’, seperti MySQL.
    Suruh bosmu baca posting ini. Kalo dia bos yg baik harusnya bisa mencari referensi yg valid, gak cuman sekedar katanya orang. Kalo keukeuh ama pendapat gak jelas seperti itu, tandanya dia bukan bos yg baik, bukan bos yg open mind. Mungkin perlu diganti? 😆

    Aku malah sekarang mulai menghindari mySQL. Kalo pake pun milih versi2 lama yg lebih “aman” secara lisensi. Mending sekalian beli yg mahal, macam Oracle atau DB2, daripada dipermainkan lisensi gak jelas macam mySQL itu. mySQL emang open source, tapi ati2… open source gak selalu berarti gratis, apalagi mbulet gak jelas dan ber-ubah2 macam lisensi mySQL. Apalagi setelah dibeli SUN, kayaknya bakalan tambah gak jelas lagi tuh lisensinya. Mbok ya gak usah nanggung2, kalo mau open source ya sekalian gratis, kalo gak ya sekalian komersil. 😛

    Aku pribadi menilai mySQL itu bukan sebuah RDBMS yg baik mengingat dia gak mendukung konsep ACID. Tapi justru krn itu, mySQL jadi lebih mudah digunakan, gak ribet, sehingga banyak org pake. Ketika pengguna mySQL beralih ke db engine yg sebenarnya, macem Postgre atau Firebird, biasanya mereka kebingungan dan komplain. Soalnya timbul kesan lebih ribet dan strict, yg harus pake transaksi lah, yg error constraint lah, dlsb. Sementara di mySQL (dgn myISAM) gak ada hal2 seperti itu. Sedikit banyak ini juga membuat konsep database yg baik jadi rancu buat para pengguna mySQL. 😛

    Kalo untuk storage data berukuran kecil hingga menengah, dgn tingkat kerumitan struktur db yg gak terlalu tinggi, masih okelah pake mySQL. Aku juga masih menggunakan mySQL untuk hal2 seperti itu. Tapi ketika kebutuhannya udah lebih dari itu, lebih baik beralih ke db yg bener2 RDBMS. 😉

    Sudah saatnya akronim LAMP (linux, apache, mysql, php) diubah jadi LAPP (postgre) atau LAFP (firebird). 🙂

  6. bprasetio says:

    @bee:
    udah aku diemin aja, rasanya aku udah cukup banyak nunjukin bukti, yo wis..

    dari awal tahun tim udah ada rencana migrasi, baru terealisir mulai sekarang, migrasi dari MySQL ke Postgre, permasalahan inti terletak pada lisensi dan harga. Lumayan pegel juga migrasi ratusan storedprocedure dan function…. 😀

    oiya bro, udah ada belum ya language pascal untuk bikin function di Postgre.. 🙂

  7. bee says:

    > udah ada belum ya language pascal untuk bikin function di Postgre

    UDF?

  8. bprasetio says:

    procedural language pascal (PL/Pascal)

    wah kok malah ngelantur ke Postgre ya.. hihihi.. sorry bro…

  9. bee says:

    Silakan ke situs Postgre ya. 😀 Aku kurang begitu paham soalnya aku gak pake langsung, walaupun timku pake, DBA-nya ada sendiri. Beda dgn Pascal dan Firebird, aku sendiri pake langsung, jadi bisa ngerti banyak. 🙂

  10. irdix says:

    euwh… tambah teknis aja.. :p

  11. dheche says:

    @bee:
    sedikit komentar, mohon jgn dibaca sbg pembelaan ke mysql (lagian gw jg bukan dba, dah lama gak ngikutin perkembangan dunia db)
    1. Masak mysql gak ngedukung acid ? innodb anyone ? (ya, ente udah bilang dibandingin dg myisam, mosok mbandinginnya dg myisam 🙂

    2. Ttg perubahan lisensi, itu normal2 aja di dunia bisnis. terutama apabila suatu perusahaan sedang berkembang, dia pasti masih mencari2 jati dirinya, apalagi kalo sampe kena merger/akuisisi/something like that lah, mesti ada perubahan kebijakan. Tapi setauku, sekali sebuah produk pernah berlisensi open, apabila kemudian di versi selanjutnya dia berubah jd closed, dan kebetulan penggunanya banyak (banyak yg suka), biasanya dg sendirinya akan muncul forking project dr project tsb (banyak kok kejadian kyk gini). ini lah salah satu keuntungannya kita memanfaatkan produk open, kita jd tdk terjebak dg vendor lockin. Apapun produknya mo fb,mysql,postgre sing penting open 😛

    3. ttg SUN, sepertinya perusahaan yg satu ini cukup commit ke software free/open. di link yg kau tulis pun sdh ada penjelasannya kan, kalo mereka tetep commit unt core engine mysql akan tetep gpl. kalo pun tiba2 sun kesantet dan berubah pikiran, kembali ke point 2.

    4. scr pribadi, gw makin gak respek ama oracle. perusahaan yg satu sdh menciderai hubungannya dg komunitas linux 😦

    5. disamping mysql dan sqlite, saya prefer postgre … kakakakakaka, maklum hanya make db unt keperluan nyimpen data blog 😀
    tapi memang fb layak diperhatikan perkembangannya.

  12. stey says:

    huhuhuhu..saya ga mudeng..:((

  13. bee says:

    @dheche:
    1. Keunggulan utama mySQL adalah speed. Dan ini hanya bisa diperoleh dgn backend myISAM, makanya mode myISAM adalah yg paling sering digunakan. Speed myISAM mengorbankan suatu hal yg menurutku lebih penting dalam sebuah db engine, yaitu: ACID. Begitu backend-nya diganti yg lain seperti InnoDB, yg sekarang jadi milik Oracle, atau berkeley, maka keunggulan itu hilang. Saat mySQL menggunakan InnoDB, performance-nya gak lebih baik dari Firebird SuperServer. 😛

    2. Setuju, berubah lisensi sah2 aja, dan itu memang hak mereka. Itu sebabnya aku lebih suka produk open source yg sifatnya community-driven (seperti Firebird) daripada company-driven. Masa depannya lebih jelas gitu loh. 😀

    3. SUN menurutku gak beda jauh dgn mySQL AB. Kalo diperhatikan produk2-nya, seperti StarOffice dan OpenOffice, Java, kemudian yg terbaru mySQL, SUN menerapkan standar ganda: opensource sekaligus closed source. Untuk yg sifatnya “basic” dibikin open source, sedang yg “advanced” dibikin closed source. Aku malah lebih respek sama RedHat atau Firebird Foundation dalam hal ini, yaitu menjual support bukan produk. Prinsip knowledge belongs to the world-nya masih kepegang.

    4. Yup, setuju. Walaupun aku gak suka SUN, tapi cara SUN menurutku bisa bermain lebih “cantik”. 😀

    5. Postgre juga bagus. Tapi dalam performance, menurutku Firebird lebih baik. Dari logonya sebenarnya udah jelas kok. Postgre itu gajah. Yg namanya gajah, ya… jalannya kurang cepat, tapi powernya besar, apa aja dia mampu bawa. Firebird itu burung. Yg namanya burung, ya… dia terbang lebih cepat dari gajah, tapi powernya terbatas dan kemampuannya membawa barang juga terbatas walaupun dia mampu bawa barang berat. Seperti burung Phoenix-nya Dumbledore di kisah Harry Potter lah. 😀 Dan satu hal yg gak ada di Postgre, yaitu versi embedded. Untuk kepentingan single development, ini bermanfaat banget. 😉

  14. somat says:

    Do’a saya semoga Firebird tetap Free dan Open Source, tidak menjadi proprietary, meskipun nanti kedepannya kepopulerannya melebihi MySQL, (hah…. akankah seperti itu ?)

  15. bee says:

    @somat:
    > Do’a saya semoga Firebird tetap Free dan Open Source, tidak menjadi proprietary,
    Gak mungkin Firebird akan berbayar dan closed source, krn project ini benar2 community project, bukan produk open source dari perusahaan tertentu. Andai ada yg mengclosed-sourcekannya, itu pasti branch project dari Firebird, bukan Firebird itu sendiri. 😉

    > nanti kedepannya kepopulerannya melebihi MySQL, (hah…. akankah seperti itu ?)
    Knp tidak? Microsoft dulu juga gak dianggep dan ditertawakan banyak org, sapa sangka sekarang jadi raja OS dan office? 🙂

  16. somat84 says:

    ouw…. iya ya…. klo lihat – lihat produk yang tadinya free & opensource kemudian menjadi proprietary mySQL punya perusahaan sebelum di beli SUN juga, Interbase punya Borland ya… Hm…… ngono tho….

  17. Aenal says:

    mas??? nanayak dong?? gimana pakai fb di delphi dengan menggunakan IB Objects
    coalnya, lok yang ada pakai bahasa daerah orang doank??? yang bahasa daerah orang kagak ngerti ane Heee……(())))(((()

  18. Dedy says:

    bee:
    {postgre juga bagus. Tapi dalam performance, menurutku Firebird lebih baik. Dari logonya sebenarnya udah jelas kok. Postgre itu gajah. Yg namanya gajah, ya… jalannya kurang cepat, tapi powernya besar, apa aja dia mampu bawa. Firebird itu burung. Yg namanya burung, ya… dia terbang lebih cepat dari gajah, tapi powernya terbatas dan kemampuannya membawa barang juga terbatas walaupun dia mampu bawa barang berat. Seperti burung Phoenix-nya Dumbledore di kisah Harry Potter lah. Dan satu hal yg gak ada di Postgre, yaitu versi embedded. Untuk kepentingan single development, ini bermanfaat banget.}

    Yeeeee…kok bandiginnya gitu….
    aku sekarang paki Postgres dan ngak ada masalah pada performancenya…
    manual untuk tunning juga banyak…
    yg jelas adalah desain awal databasenya yg mencakup banyak aspek…

  19. bee says:

    @Dedy:
    Hahahaha… nanggepinnya gak usah serius2 lah, santai aja. 😀 Saya juga pake postgre kok, untuk keperluan tertentu. Saya menilainya dari instalasi default aja. Kalo ngomong tuning, workaround, dlsb, ujung2-nya semua db gak jauh beda. 😉

  20. Dedy says:

    hehehe…memang pak Bee..bijaksana..hehehehe

  21. Ridwan says:

    muaantab…
    firebird emang bagus.. tapi klo kantor udah tidak sependapat, mo gimana lagi. paling pol ngembangin buat diri sendiri gak diimplemtasikan dikantor.
    good post bro..

  22. starboard says:

    Om Bee.. Salam Comment Lagi 😀

    Aku ada sedikit permasalahan dengan firebird embedded.
    Aku taruh fb di CD. Nah bagaimana agar library firebird (gds32.dll dan kawan kawan) bisa masuk di suatu folder, jadi tidak satu tempat dengan file executable nya.

    aku coba utak atik firebird.conf bagian root dir nya, tp lum berhasil 😀

    mohon bantuan nya ya om 😀

  23. bee says:

    @starboard:
    Waduh, gak bisa bantu banyak nih. Gak pernah maen2 ama FB embedded di CD soalnya. Harusnya bisa lah. Tetap semangat! 😀

  24. […] Re: Tanya ArpaTronik server pulsa? Untuk Informasi Data base menggunakan firebird Kompi p3 dengan ram 512 sudah mencukupi, tapi disarankan pakai spek yang lebih tinggi lagi. Info tentang database Firebird bisa didapatkan D I S I N I […]

  25. Makasih nih infox, saya baru saja dengar FB ini karena dulu pake mysql untuk aplikasi yg ga terlalu ribet, namun setelah mendapat tawaran untuk menambahakan laporan yang ada di billing system di rumah sakit yg databasenya sudah ada FB padahal ini program orangx dah ga ada maka mau tdk mau saya melakukan riset kecil2an untuk mengerjakanx. Dan setelah saya baca blog ini kemampuan FB luarbiasa jadi saya sangat berterima kasih dengan infox dan saya menggunkan vb 6.0 untuk bikin programx

  26. Riff says:

    trima kasih abang infonya nee lagi coba – coba migrate dari mysql ke Fb. thanks

  27. man says:

    kalo menjalankan store procedure di firebird menggunakan component zeos gimana ya?tlg kasih contohnya bos..tq..

  28. trimakasih sob infonya. ini saya mau coba2 fb,karena sebelumnya pakai paradox.karena rencana mau isi database lumayan besar. jadi saya coba gunakan fb,semoga lancar

  29. Retno Muslimawati says:

    sangat bermanfaat.. terima kasih

  30. aryhandoko says:

    sangat berkesan,, terimakasih

  31. sangat bermanfaat, saya kira juga cuma untuk ukuran database kecil ternyata tidak benar ya… terima kasih infonya.

Leave a comment