BORLAND INTERBASE 7.1
Borland Interbase 7.1 adalah
database transaksional yang ekonomis dan memiliki performa yang tinggi, dan
banyak digunakan oleh jutaan pengguna di seluruh dunia. Dengan mengkombinasi
instalasi yang mudah, crash-recovery secara otomatis, dan perawatan yang sangat
minim, Interbase menjadi sangat sesuai untuk embedding dalam aplikasi terdistribusi. Dukungan terhadap multiprosesor dan arsitektur yang
canggih menjadikannya sebuah pilihan yang tepat untuk aplikasi bisnis dengan
kekuatan tinggi yang memiliki banyak pengguna yang terkoneksi. Kekuatannya,
yaitu kemudahan penggunaan, dukungan terhadap platform Windows, Linux, dan
Solaris (termasuk pengembangan dalam lingkungan seperti Borland Delphi, C++
Builder, dan Kylix), membuat Interbase menjadi favorit bagi para pengembang.
IBConsole
KEBUTUHAN SISTEM MINIMAL
·
32 MB RAM.
·
20 MB dari spasi harddisk untuk instalasi.
·
Drive CD-ROM.
Windows
·
Microsoft Windows Server 2003, Windows XP,
Windows 2000 (SP2), Windows ME, Windows 98 SE, Windows NT 4.0 (SP6 atau lebih).
Linux
·
Linux Kernel versi 2.2 dan 2.4 (direkomendasikan
Redhat atau SuSe).
Solaris
·
Solaris 7, Solaris 8, Solaris 9.
JDBC
·
Development JDK 1.2.
·
Deployment JDK 1.2 atau lebih (direkomendasikan
JDK 1.3.1).
FITUR-FITUR DAN KEUNTUNGAN
KEUNGGULAN DATABASE TERINTEGRASI
·
Pemeliharaan yang sangat minim;
Dapat di-deploy tanpa kehadiran administrator database atau bantuan
teknis.
·
Kinerja yang tinggi;
Interbase memiliki semua fitur, kekuatan, dan skalabilitas yang
diperlukan untuk aplikasi bisnis yang kompleks yang menawarkan keunggulan
performa untuk jumlah pengguna yang besar.
·
Jejak kaki yang kecil;
Dapat di-deploy dengan mudah melalui jaringan atau CD tunggal dan dalam
platform dengan memori dan sumber disk yang terbatas.
·
Backup secara online;
Menjaga produktivitas saat melakukan backup, dan memastikan bahwa data
di-backup dengan aman.
·
Crash Recovery secara otomatis;
Kembali pada pekerjaan dalam waktu yang sangat singkat setelah kehilangan
sumber daya atau crash pada server tanpa atensi dari staf TI atau administrator
database.
·
Instalasi yang mudah;
Borland Interbase didesain untuk dapat diinstall dengan mudah pada lokasi
end-user tanpa pertolongan
administrator database. Interbase dapat di-install secara terselubung, sehingga
end-user tidak tahu jika sudah terinstal.
·
Biaya kepemilikan total yang murah;
Biaya penyebaran dan pemeliharaan yang rendah memberikan biaya
kepemilikan total yang rendah.
CEPAT
·
Dukungan untuk multiproses secara simetris;
Dengan adanya kemungkinan aplikasi menggunakan banyak prosesor, aplikasi
bekerja lebih cepat , mendukung lebih banyak pengguna, dan menangani arsitektur
aplikasi yang lebih kompleks.
·
Native server multi-thread dengan latar belakang
koleksi sampah dan manajemen multi-user page-buffer;
Interbase memberikan performa yang lebih baik dengan membebaskan
transaksi pengguna dari penghalangan performa oleh koleksi sampah. Hal ini
dilakuakn dengan membuat untaian latar brlakang serial yang mereduksi beban
server, menyebarkan tugas lewat periode waktu yang ditentukan pengguna. Manajemen
cache sudah dioptimalkan untuk menjaga working
set dari halaman-halaman database untuk transaksi-transaksi individual
melawan opserasi-operasi panjang, termasuk backup database, sweeping, tabel
berukuran besar, dan scan indeks.
·
Penyetelan sendiri dengan query optimizer berbasis biaya;
Fitur penyetelan sendiri (self-tuning) dari Interbase meningkatkan
performa dan meminimkan administrasi database. Termasuk di dalamnya query
optimizer berbasis biaya yang menggunakan statistik pada kekardinalan tabel,
otomasis koleksi sampah, dan dynamic
rebalancing struktur indeks untuk melpaskan halaman indeks kosong.
·
Thread safe Client Library;
Thread safe Client Library
memberikan stabilitas yang diperbaharui dan peningkatan performa untuk client
Interbase.
·
Integrasi dengan Borland Delphi, Kylix,
C++Builder, dan Jbuilder;
Para pengembang dapat membangun aplikasi
dan men-deploy lebih cepat menggunakan teknologi pengembangan dan deploy yang
berproduktivitas tinggi dari Borland.
·
ODBC dan JDBC API (Application Programming
Interface);
ODBC dan JDBC API memungkinkan aplikasi yang dibangun dengan berbagai
macam tool pengembangan dapat menggunakan Interbase.
·
SQL92 compliance;
Compliance dengan standar SQL92
membuat para pengembang yang terbiasa menggunakan database SQL lainnya akan
familiar dengan perintah-perintah Interbase SQL dalam waktu singkat.
·
Protokol jaringan yang populer membuat koneksi
dengan database lebih mudah;
Dukungan untuk TCP/IP menyediakan akses database antar jaringan intranet
dan jaringan internet global yang berjalan di lingkungan platform Windows,
UNIX, dan NetWare OS. Dengan fungsionalitas jaringan NetBEUI yang terintegrasi,
Interbase menyediakan para pengembang Windows dengan alternatif untuk mengatur
infrastruktur TCP/IP secara penuh.
·
Dukungan Delphi dan Kylix untuk untuk Interbase
Express dan dbExpress native driver;
Komponen kerangka Interbase Express dan dbExpress memberikan para
pengembang akses ke fitur paling advance
dari Interbase, sama seperti keunggulan performa yang datang dari dukungan
native driver untuk server database.
·
Prosedur yang disimpan meng-enkapsulasi logika bisnis pada server;
Prosedur yang disimpan adalah koleksi SQL yang diberi nama dan logika
pengontrol alur yang disimpan dan dijalankan dengan server database. Hal ini
mengizinkan logika SQL yang kompleks untuk dijalankan seluruhnya pada server
tanpa mengkonsumsi bandwith jaringan secara signifikan.
·
Servis yang dapat diprogram untuk menangani dan
memonitor database;
Otomatisasi employ untuk
manajemen kontrol program pengguna, backup, dan tugas administratif lainnya.
·
Fitur Database Active termasuk pemicu modular
dan pensiagaan event;
Bahasa pemicu Interbase mengizinkan logika forward-chaining dan notifikasi event untuk dipicu dari operasi SQL
INSERT, UPDATE, dan DELETE. Berbagai definisi pemicu mengizinkan pemicu untuk
diekspresikan dan di-katalog-kan dalam format yang bersih, terurut, dan dapat
dimengerti.
FLEKSIBEL
·
Pengawasan transaksi;
Para pengembang dan administrator akan
lebih produktif dengan pengertian yang mendalam pada koneksi pengguna, performa
transaksi, dan masih banyak lagi yang disediakan melalui antarmuka grafis.
·
Skalabilitas dari permintaan single-user embedded sampai permintaan enterprise;
Interbase memelihara basis kode tunggal yang membantu jalannya aplikasi
tanpa modifikasi atau tingkah laku yang tidak konsisten, tidak perduli skala
deploy-nya.
·
Sesuai untuk lingkungan produksi yang beragam;
Instalasi yang mudah dan pemeliharaan yang sedikit membuat Interbase sebuah database yang bagus untuk di-deploy
untuk workgroup, kantor cabang,
pabrik satelit, atau apa saja yang tidak memiliki departemen TI atau
administrator database di lokasi.
·
Mendukung beragam pasar industri vertikal;
Interbase di-deploy secara luas pada pasar finansial, medis,
transportasi, logistik, dan retail. Juga digunakan secara luas dalam
pemerintahan dan edukasi. Adopsi yang luas ini memberi kepercayaan kepada para
pengembang bahwa Interbase memenuhi tantangan dari industri-industri di atas.
·
Instalasi secara langsung dan jejak kecil
memudahkan kebutuhan deploy;
Dengan mudah men-deploy aplikasi database Interbase dengan sebuah CD
dalam platform dengan limitasi memori dan disk.
·
Secara terselubung menyatukan Interbase ke dalam
aplikasi dengan komponen instalasi yang dapat dikustomisasi;
Komponen instal yang dapat dikustomisasi
mengizinkan server database untuk secara transparan dimasukkan dalam
prosedur instalasi aplikasi.
·
Meregulasi penggunaan aplikasi dengan mengungkit
komponen lisensi built-in;
Skema lisensi Interbase memungkinkan para pengembang untuk melacak
penggunaan aplikasikapan saja terjadi, memudahkan distribusi lisensi untuk
akses aplikasi.
·
Unicode, kumpulan karakter universal, ditambah
kumpulan karakter internasioal lainnya;
Interbase mendukung berbagai kumpulan bahasa untuk meningkatkan
portabilitas dan skalabilitas global.
·
Fungsi user-defined
untuk perluasan dukungan query;
Interbase memiliki mekanisme perluasan yang mengizinkan pengguna untuk
menentukan fungsinya sendiri yang kemudian dapat disatukan dalam query aplikasi
database.
·
Pembatasan pengenal untuk konvensi penamaan yang
fleksibel;
Pembatasan pengenal SQL berguna untuk membantu mengamankan aplikasi dari
benturan dengan kata kunci baru. Interbase mengizinkan karakter untuk muncul
dalam pengenal dan membuat pengenal case-sensitive
untuk pembacaan yang lebih baik dan ekspresi yang diperluas.
·
Blob, subtypes, dan filter untuk menangkap
data besar yang tidak terstruktur;
Tipe data Blob dalam Interbase
mengizinkan volume data yang besar untuk disimpan dan dimanipulasi di bawah
kontrol transaksi dengan backup penuh dan restorasi penuh.
·
Menyebar database dalam CD-ROM, DVD, dan media read-only lainnya;
Interbase menawarkan pilihan untuk menandai database sebagai read-only. Ini membuka pasar baru bagi
para pengembang untuk menjalankan dari CD-ROM atau DVD, termasuk historical-database, game, dan aplikasi
ensiklopedi.
·
Dukungan SQL-compliant DATE, TIME, dan
TIMESTAMP;
Interbase menyediakan manipulasi kompleks dari tipe data tanggal dan
waktu menggunakan antarmuka SQL yang distandardisasi. Ini memudahkan migrasi
aplikasi ke Interbase dari produk standard-compliant
lainnya.
·
Dukungan database yang sangat besar: 64 bit I/O
(VLDB) mengizinkan database dalam file tunggal untuk berkembang melebihi
panjang terrabytes;
Dukungan VLDB memungkinkan pembuatan file-file besar (lebih besar dari
limitasi pseudo 4 GB) tanpa membuat database multifile.
·
Fitur SQL ROWS memberi kontrol set hasil yang
lebih baik;
Klausa ROWS digunakan dalam konjungsi dengan klausa SQL ORDER BY untuk
menyediakan ranking kapabilitas untuk query SQL. Fitur ini memungkinkan para
pengembang web untuk mengirimkan kepingan dari set hasil yang lebih besar dari
server web ke browser client.
·
Kemampuan generasi data XML untuk Interbase
Client;
Fitur ini mengizinkan para pengembang untuk menghasilkan dokumen XML
langsung dari Interbase.
·
Pembatalan asyncronous memungkinkan pembatalan
query yang sedang dijalankan.
DAPAT DIPERCAYA
·
Validitas data melalui batasan integritas
referensial bertingkat;
Interbase mengizinkan referensi orantua-anak antar baris untuk dipelihara
secara otomatis, menyediakan validitas data dan kebebasan dari kesalahan umum.
·
Ketersediaan database secara kontinyu dengan
backup online;
Interbase membuat sebuah transaksi-konsisten backup selama mengizinkan
pengguna untuk membaca dan menulis ke database. Pengguna tidak perlu disconnect
dari database untuk melakukan backup rutin.
·
Crash Recovery secara otomatis;
Recovery langsung dari kegagalan sistem membuat waktu produksi tidak
terbuang ketika kehilangan daya atau crash. Crash Recovery secara otomatis
berarti tidak dibutuhkan administrator database untuk menjalankan backup
sistem. Yang harus dilakukan pengguna adalah menghidupkan kembali sistem dan
database kembali tersedia.
·
Fitur Self-tuning untuk meminimalisir
administrasi database.
·
Keamanan metadata;
Keamanan metadata melindungi kekayaan intelektual dengan menunjukkan
bahwa metadata tidak dimodifikasi oleh pengguna yang tidah sah.
·
Dukungan terhadap bilangan bulat besar;
Dukungan terhadap bilangan bulat besar menjadikan Interbase pilihan yang
tepat untuk aplikasi akuntansi dan finansial analisis. Interbase 7 dapat
menyediakan dukungan ketepatan sampai 18 digit.
·
IBConsole;
IBConsole merupakan tool manajemen grafis yang didesain untuk mengatur
dan mengurus Interbase lokal dan remote.
·
Sejarah panjang dari pengembangan dan inovasi;
Interbase sudah melalui lebih dari 14 tahun pengembangan. Selama masa itu
para insinyur te;ah bekerja untuk meningkatkan produktivitas dan kehandalan.
KEBEBASAN PLATFORM
·
Mendukung kerangka Java dan Microsoft .NET;
Interbase mendukung kerangka Microsoft .NET melalui driver ADO.NET, yaitu
Borland Data Provider. Juga mendukung Java melalui driver JDBC 2.0 type 4-full
compliant.
·
Dukungan untuk Windows, Linux, dan UNIX
memberikan pilihan untuk platform yang paling sesuai kebutuhan.
·
Dukungan multi-bahasa untuk C, C++, Java, dan
Object Pascal dengan Delphi dan Kylix;
·
Transparan interoperabilitas mengizinkan akses
terdistribusi tanpa batas di antara database;
Dukungan transaksi terdistribusi dan akses untuk banyak database
terintegrasi dalam arsitektur.
DUKUNGAN UNTUK STANDAR INDUSTRI
·
Driver JDBC Tipe 4;
Penyesuaian untuk standar industri membuat para pengembang tidak khawatir
mengenai belajar sintaks tambahan.
·
ANSI SQL92 compliance;
Para pengembang yang mengerti standar SQL92
akan familiar dengan perintah SQL dan sintaks Interbase.
·
ODBC untuk aplikasi Windows dan Linux;
Ketersediaan driver ODBC memastikan para pengmbang dapat menggunakan lingkungan
pengembangan ODBC-compliant apa saja dengan Interbase dan berkomunikasi dengan
mudah dengan database ODBC apa saja.
·
Dukungan untuk kerangka .NET dan Java.
TIPE DATA FIELD INTERBASE
TYPE
|
UKURAN
|
KETERANGAN
|
BLOB
|
bervariasi
|
|
CHAR(n)
|
1 – 32,767 karakter
|
Panjang string ditetapkan, altenatif keyword : CHARACTER
|
VARCHAR(n)
|
1 – 32,765 karakter
|
Alternatif keyword : CHAR VARYING, CHARACTER VARYING
|
DATE
|
8 bytes
|
1 Jan 100 s/d 11 Jan 5941, termasuk juga waktunya (time)
|
DOUBLE PRECISION
|
8 bytes
|
1.7 * 10-308 s/d 1.7 * 10308 (presisi 15 digit)
|
FLOAT
|
4 bytes
|
3.4 * 10-38 s/d 3.4*1038 (presisi 7 digit)
|
Quad
|
8 bytes
|
Didukung oleh Database Explorer
|
INTEGER
|
4 bytes
|
-2,147,483,648
s/d 2,147,483,648
|
SMALLINT
|
2 bytes
|
-32768 s/d 32767
|
NUMERIC (presisi,skala)
|
bervariasi
|
Digunakan untuk menangani exact number, presisi 1 s/d 15 digit menspesifikasikan banyaknya
digir untuk disimpan
Skala 1 s/d 15 digit, menspesifikasikan lokasi dari
decimal point. Harua lebih kecil atau sama dengan presisi yang ditentukan.
Contoh :
NUMERIC(10,3) = ppppppp.sss (menyimpan tepatnya 10 digit) |
ARSITEKTUR INTERBASE
SUPER
SERVER
InterBase memiliki dua tipe
arsitek, yaitu Super Server dan Classi. Super Server merupakan multi
klien, implementasi multi-thread dari proses server InterBase. Implementasi ini menggantikan jenis implementasi model Classic yang telah digunakan pada versi InterBase sebelumnya.
Super
Server melayani banyak klien dalam waktu yang sama menggunakan urutan
daripada proses server yang terpisah untuk setiap klien. Multiple thread membagi akses kepada proses single server.
Keuntungan dari Super Server meliputi
:
§
Memiliki sebuah proses server mengeliminasi
kemacetan hasil dari arbitrasi untuk membagi halaman-halaman database dan
mengurangi kenaikan yang diperlukan untuk multiple proses memulai dan
permintaan database
§
Super
Server meningkatkan kinerja interaksi pesan karena pemanggilan sharing
library selalu lebih cepat daripada interproses permintaan komunikasi pada
proses server
§
Super
Server menigkatkan integritas database karena hanya satu proses server yang
telah ditulis mengakses database, daripada satu proses untuk setiap klien.
§
Super
Server mengijinkan dalam mengoleksi statistic database dan informasi user
yang dapat digunakan oleh tool InterBase untuk
kinerja pengawasan dan tugas administratif.
§
Super Server bernilai lebih efektif
ketimbang arsitektur Classic. Semua
sistem operasi memiliki batas nilai dari operasi sistem operasi yang dapat
berjalan secara bersama-sama. Super
Server mengijinkan untuk angka dari database yang telah ditetapkan
meneruskan menjadi digandakan angka yang besar secara potensial dari koneksi
database berbarengan.
CLASSIC
Jenis arsitektur lainnya yaitu Classic,
merupakan design dari InterBase versi
4.0 dan sebelumnya, adalah didasarkan pada proses. Untuk setiap koneksi klien,
proses server yang terpisah dimulai dengan mengeksekusi engine database dan
setiap proses server memiliki suatu
cache database yang didedikasikan. Proses server ditentang untuk
mengakses database, sehingga subsistem Lock
Manager diperlukan untuk mengarbitrasi dan mengsinkronisasi akses database berbarengan
diantara proses-proses.
Server InterBase Classic berjalan berdasar permintaan multiple proses.
Sewaktu klien berusaha mengkoneksi ke suatu database Interbase, suatu executable dari gds_inet_server berjalan dan sisanya didedikasikan kepada koneksi
klien tersebut selama durasi koneksi. Inisiator dari gdnet_inet_server adalah inetd,
merupakan proses pelayanan pengalihan kunci dari UNIX. Ia memiliki sebuah
konfigurasi file (/etc/inetd.conf) yang mengasosiasikan pelayanan dengan
executable yang dipakai untuk menerima koneksi. Ketika inetd menerima sebuah koneksi yang diminta untuk sebuah servis, ia
akan mencari program yang tepat pada /etc/inetd.conf, kemudian
mengeksekusinya dan mentransfer koneksi jaringan ke program servis. Ketika
klien memutuskan untuk disconnect, gds_inet_server
menutup koneksi ke database dan file-file lainnya tersebut. Sewaktu tidak
ada klien yang terkoneksi ke database, seharusnya tidak terdapat invokasi dari gds_inet_server yang sedang berjalan.
Lock
Management, diambil alih oleh proses lainnya yaitu gds_lock_mgr. Program
ini akan memulai ketika klien kedua masuk untuk diberikan database. Pekerjaan
dari lock manager adalah untuk pelayanan, sebagai traffic cop. Ia memberikan kunci sumber database kepada klien. Ia
juga meminta klien melepaskan kunci pada suatu sumber sewaktu resource tersebut
sedang diminta oleh klien lain. Ia masih berjalan meskipun klien terakhir
disconnect. Untuk waktu berikutnya suatu
klien melakukan koneksi, akan terhindar dari kelebihan kelalaian dari proses
lock manager.
Gds_lock_mgr memproses komunikasi kepada setiap proses klien dengan penggunaan
area share memory dan sebuah mekanisme sinyal menggunakan sinyal Posix, yaitu
SIGUSR1 dan SIGUSR2. Sinyal-sinyal tersebut ditangkap dalam rutin sinyal handling
pada libgdslib,a, dan untuk alasan
ini aplikasi pengguna seharusnya tidak menampilkan sinyal handling atau
memodifikasi signal mask. Seluruh
aplikasi klien decompile dengan menggunakan ligds,a.
Tidak ada perubahan yang diperlukan, hanya option hubungan yang berbeda.
Setiap
instance dari gdnet_inet_server menyimpan
cache dari halaman-halaman database pada setiap ruang memorinya, digunakan
untuk menghasilkan beberapa duplikasi dari data cache melalui sistem. Selama
penggunaan resource per klien lebih besar pada Super Server, model Classic secara
keseluruhan lebih sedikit menggunakan resource ketika angka dari koneksi yang
dilakukan berbarengan jumlahnya sedikit.
Arsitektur
Classic mengijinkan pemrosesan dari
aplikasi untuk melakukan I/O pada
file-file database secara langsung, mengingat arstektur Super Server membutuhkan aplikasi untuk meminta operasi I/O ibserver dari proxy,
menggunakan metode jaringan. Metode akses local lebih cepat daripada metode
akses jaringan, tetapi hanya berguna dengan aplikasi-aplikasi yang berjalan
pada host yang sama sebagai database.
Dalam
memonitor database, pada model Classic, informasi
panggilan dari koneksi database selalu melaporkan tepatnya satu koneksi, tidak
terpengaruh terhadap berapa banyaknya klien yang melakukan koneksi kepada
server tersebut. Hal ini terjadi karena setiap koneksi klien memiliki proses gds_inet_server
masing-masing. Hanya pad model Super
Server saja yang memiliki kemampuan untuk melaporkan seluruh koneksi klien pada server.
Mengenai
sekuritas, dalam hal model Classic bekerja
percampuran antara local dan remote klien yang berjalan sebagai userID yang
berbeda, server yang dapat diesekusi gdnet_inet_server dan gds_lock_mgr harus berjalan sebagai
root. Prosesnya harus berjalan dengan userID sebenarnya dari root untuk
mengeset userID efektif mereka, yaitu userID klien tersebut. Dalam hal ini Lock Manager harus memiliki hak sebagai super user untuk mengirim sinyal kepada
proses tersebut.