|
Do sada smo više puta
pisali o bazi podataka Advantage Database Server
(ADS). Ona je svojevremeno napravila revoluciju omogućivši pravu
klijent-server obradu sa Clipper programima. ADS je razvijen 1992.
godine u firmi Extended Systems, a posle niza uspešnih verzija konačno 2005. godine prelazi pod krov korporacije Sybase. Sudeći po novoj verziji, novi dom će biti blagotvoran za ADS. Kako je interesovanje za Clipper
vremenom slabilo, ADS je vrlo brzo počeo da podržava i druge razvojne
alate, što se pokazalo kao dobar potez. Međutim, za ostale alate su
postojali i drugi data
serveri, pa je ADS (blago rečeno) naišao na žestoku konkurenciju. Osim
toga, ovo tržište je poznato po konzervativnosti - ne menjate server
osim ako vam baš ne gori pod nogama. I pored toga, ADS ima značajan
broj korisnika. Klijent-server odmah Šta je to što ADS izdvaja od drugih proizvoda? Sa strane izgleda kao "običan" database
server, ali sa dve bitne razlike: podaci se čuvaju u "običnim" tabelama
(između ostalih, i dobro poznati DBF/NTX), a osim standardnih SQL
upita, ADS "razume" i Clipper naredbe poput SEEK, INDEX, itd. Tako se uz minimalne izmene Clipper
program pretvara u pravu klijent-server aplikaciju. Primera radi, ako
se u programu nađe komanda INDEX ON, standardni program će slog po slog
učitavati DBF tabelu sa file servera na radnu stanicu, gde se računa
indeksni izraz za učitani slog, a zatim se rezultat preko mreže šalje
nazad u odgovarajući NTX fajl. Klijent-server rešenje radi tako što
šalje zahtev ADS serveru koji odrađuje ceo posao. Time se obrada
značajno ubrzava, a glavni dobitak je u bezbednosti: ako se sa stanicom
ili mrežom nešto desi u toku obrade, podaci su bezbedni na serveru.
ADS odlikuju sve važne osobine "pravih" SQL servera: transakcije, replikacija, SQL upiti, definisanje prava pristupa, stored
procedure, rečnik podataka, trigeri, referencijalni integritet, ...
Njegova inicijalna koncepcija (podrška za DBF tabele) donela je neke ne
tako često viđene osobine: dvosmerna navigacija po tabelama, direktno
indeksno pretraživanje, pessimistic locking, online backup, ... Uz sve ovo, ADS su oduvek krasile odlične performanse i veoma niska nabavna cena i troškovi održavanja.
Trenutno je podržan zaista impresivan spisak platformi i razvojnih alata: Delphi,
C++ Builder, Visual Studio .NET, Visual Basic, Visual C++, Visual
FoxPro, Access, Java, PHP, CA-Clipper, CA-Visual Objects. Dostupne su i 64-bitne verzije i to za Windows, Linux i Novell. U paketu dolazi i Advantage Data Architect (ARC). jednostavan alat za rad sa bazom podataka (ARC), čiji je sastavni deo i SQL debugger.
Novina u verziji 9 su notifikacije, sistem koji se koristi da server
obavesti klijentsku aplikaciju o nekom događaju u bazi. Na primer, može
se postaviti notifikacija o izmeni tabele u bazi, pa klijent aplikacija
može preduzeti odgovarajuću akciju kad se to desi.
Važno je da ADS pomera standardne DBF limite skoro do beskonačnosti: DBF i memo polja
sada mogu biti veća od 4GB, a server ima podršku za više procesora,
omogućeno je transparentno kriptovanje baze, uključujući i indekse, što
povećava bezbednost.
ADS i Clipper ADS je nastao kao dodatak za Clipper, ali je podrška za Clipper sve slabija, pa su neke funkcije ADS podržane samo kroz Clipper 5.3, a neke se i ne mogu koristiti. To je šteta, zato što je veliki broj Clipper programa ostao na veoma stabilnoj verziji 5.2e. Razvoj ADS-a je sad više usmeren prema drugim alatima, kao što je Delphi.
ADS Clipper
programima dodaje neke izvanredne stvari koje nije moguće dobiti
korišćenjem standardnih DBF tabela. Pored klijent-server obrade, dobar
adut je i tekstualno pretraživanje tabela moćnim setom funkcija koje
omogućavaju da se ovakvi upiti obavljaju veoma brzo. Performanse svih
upita se dodatno poboljšavaju kompresijom podataka - klijent i server
sinhronizovano komprimuju podatke koji se šalju kroz mrežu.
ADS
se sastoji od dva dela: server se instalira na bilo kom modernijem
Windows operativnom sistemu, a postoje i verzije za Novell i Linux
(Windows 98 više nije podržan). Drugi deo je klijent koji se integriše
u aplikaciju i preko koga se serveru šalju zahtevi. Klijent za Clipper
se instalira kao poseban RDD koji je potpuno kompatibilan sa postojećim
DBFNTX i DBFCDX drajverima, a može se koristiti i mnogo napredniji ADT
format. Potrebno je, u skladu sa uputstvom, izmeniti skriptove za
linkovanje, a u aplikaciju na početku izabrati RDD. Podaci u bazi
ostaju neizmenjeni i nema potrebe za konverzijom. Na serveru je ADS
koji dočekuje zahtev, a klijentski program upite šalje preko mrežnog
protokola. Podacima se pristupa uobičajenim naredbama: USE, INDEX,
REPLACE, SKIP rade kao što se i očekuje. Klijent ne izvršava operacije,
već zahtev prosleđuje ADS serveru. Klijent samo treba da prihvati i
prikaže rezultat obrade.
Važna osobina je i podrška za
transakcije: naredbe BEGIN TRANSACTION i COMMIT TRANSACTION označavaju
blok naredbi koje se moraju zajedno izvršiti. Postoji i komanda
ROLLBACK TRANSACTION koja omogućava da se poništi transakcija ako se
ustanovi da nešto nije u redu. U slučaju da dođe do kvara i da se
transakcija ne završi, prilikom sledećeg aktiviranja servera sistem se
automatski dovodi u stabilno stanje, tj. vrši se automatski ROLLBACK
transakcija.
ADS je aplikacija koja podržava više procesora, što
ubrzava većinu obrada. Sistem keširanja i zaključavanja je daleko
sofisticiraniji i efikasniji u odnosu na ranije verzije. ADS se može
probno koristiti 30 dana, a posle toga se može koristiti samo lokalna
verzija koja je predviđena za razvoj. |