
JZKdb: Nowy system bazy danychPoniższy dokument zawiera informacje techniczne, przydatne dla zaawansowanych użytkowników. Informacje dotyczące formatu 2011 i JZKdb mogą dotyczyć Pakietu JZK w wersjach, które jeszcze nie są publicznie dostępne. Wszystkie informacje podane na tej stronie to dane robocze i będą ulegać zmianie w czasie prac nad systemem.Zobacz więcej o nowym formacie baz danych. Format baz danychBazy danych JZK dostępne są w kilku formatach. Bazy w typowym formacie strumieniowym zapisywane są w plikach o rozszerzeniach DAT, na przykład faktury.dat. Format strumieniowy ma kilka wariantów, rozpoznawany automatycznie przez program w czasie odczytu bazy.
Format strumieniowy 97Klasyczny liniowy format binarny, w którym obiekty zapisywane są w prostym stumieniu. W pliku bazy danych zapisana jest po prostu kolekcja obiektów stanowiących listę. Każdy obiekt zaczyna się od dwubajtowego identyfikatora obiektu, po nim następują dane. Każdy obiekt sam wie, jak odczytać siebie ze strumienia. Obiekty w strumieniu położone są bezpośrednio jeden za drugim, stąd dopisanie jednej litery w nazwie jednego towaru powoduje zwiększenie rozmiaru pliku towary.dat dokładnie o 1 bajt. Usunięcie obiektu automatycznie zmniejsza rozmiar pliku, dodanie obiektu odpowiednio zwiększa.Niektóre obiekty zawierają w sobie oprócz własnych danych, również kolekcje innych obiektów, na przykład obiekt Faktura zawiera n obiektów Towar, stanowiących pozycje faktury. Obiekty mogą być bardziej zagnieżdżone, na przykład Książka zawiera Miesiące, z których każdy zawiera serię Wpisów. Większość obiektów zawiera także w sobie rekord Dane, zawierający dane kontrahenta. Każda kolekcja może zawierać maksymalnie ok. 32 tysiące elementów. Podczas pracy programu cała kolekcja jest wczytywana do pamięci i tam obrabiana. Format strumieniowy JZK-2006W wersji 2006 format został rozszerzony o opcjonalne informacje dodatkowe, w tym o haśle i uprawnieniach. Zmieniono także typ danych rejestrujących ilość obiektów dostępnych w pliku, obiekty mogą być też luźno dopisywane na końcu strumienia, co pozwala na spokojniejsze dodawanie danych w sieci. Limit danych jest zwiększony do ok. 64 tysięcy w jednym pliku. Nadal całość strumienia wczytywana jest do pamięci, a rozmiar pliku fluktuuje w trakcie edycji danych.Format JZK-2011W formacie 2011 zmienia się format pliku DAT. Nadal każdy obiekt zapisuje sam siebie, ale robi to we własnym, prywatnym strumieniu. Na początku pliku zawarta jest teraz tablica alokacji, wskazująca początek i koniec każdego obiektu - stąd możliwy jest sekwencyjny dostęp do poszczególnych obiektów. Usunięcie obiektu powoduje jedynie dodanie znacznika usunięcia w tablicy alokacji, dodanie lub edycja obiektu powoduje dopisanie nowego obiektu w wolnym miejscu w strumieniu i dodanie odpowiedniego wpisu w tablicy alokacji.Zobacz więcej o nowym formacie baz danych. Format JZKdbNowy, od zera opracowany format baz danych, dopasowany do potrzeb nowoczesnych aplikacji. Plik JZKdb zawiera w sobie lużno upakowane strumienie formatu 2011. W odróżnieniu od formatu strumieniowego, tutaj każdy obiekt ma swój identyfikator i każdy obiekt jest zapisywany luzem. Pozwala to na lepsze zarządzanie przestrzenią i zdejmuje jakikolwiek ograniczenia. Teoretyczna ilość obiektów to nieco ponad 2 miliony pozycji. Rozmiar pliku stanowi wielokrotność 1MB (okrągłe 1048576 bajtów), co najczęściej daje dużo wolnego miejsca do wykorzystania podczas swobodnej pracy.
"Znajomy do programisty: - Pożycz mi 500 złotych." TechnologieW nowych bazach danych formatu JZK wykorzystano najnowsze dostępne technologie, poparte solidną porcją wiedzy teoretycznej i wieloletnim doświadczeniem naszych programistów, a przede wszystkim doświadczeniami użytkowników aplikacji JZK.Kontrola wersjiKażdy obiekt w bazie posiada znacznik wersji, inkrementowany po każdej edycji, a także znacznik czasu ostatniego odczytu i zapisu. Zaimplementowana zostanie w ten sposób funkcja kontroli współbieżności wersji MVCC opartej o znacznik czasu. MVCC opiera się na działaniu nie na oryginale, ale na kopii obiektu, który zapisywany jest w nowej wersji w nowej lokalizacji. W tym czasie inne egzemplarze aplikacji mogą spokojnie kontynuować pracę na kopii, która zawiera dane sprzed zmiany. Na podobnym systemie opierają się najpopularniejsze systemy baz danych. Zamiast blokowania całej bazy lub nawet tylko jej fragmentów, wystarczy wyłącznie weryfikacja, czy obiekt poddawany edycji nie został faktycznie zmodyfikowany przez inną kopię programu.TransakcyjnośćWspółzależne operacje (np. wystawienie faktury z jednoczesnym ściągnięciem stanów magazynowych) zostają w pełni połączone w transakcje, z jawnym rozpoczęciem i zakończeniem. Poztywne zakończenie jest możliwe tylko wtedy, gdy rekody podlegające transakcji nie uległy zmianie (czyli nr wersji i data zapisu jest identyczna jak przy starcie transakcji). Jeśli nie, transakcja jest anulowana. Daje to pełną implementację standardu ACID.Spójność bazyCała baza danych znajdzie się w jednym pliku, którego nazwa równa będzie nazwie tożsamości, na przykład Nowa.JZKdb. Wszystkie dotychczasowe bazy (faktury, towary, kontrahenci itd) zaimplementowane zostaną jako kolekcje obiektów wewnątrz pliku bazy danych.Trwałość danychKażdego dnia zapisywana będzie pełna kopia bazy danych o nazwie nazwa-data.JZKdb, co z automatu daje nam pełnokrwistą kopię zapasową. Na koniec dnia baza podlegać będzie spakowaniu, co również w przypadku jednego pliku jest proste i szybkie.Praca w sieciPraca w sieci w ramach formatu 2011 jest teraz przyjemnością. Każdy obiekt ma swój numer wersji, zatem wiadomo, czy został zmieniony, czy też nie. Dodatkowo zawsze jest gwarancja, że nowa wersja nie zastąpiła wersji poprzedniej, jest bowiem zapisana w innym miejscu bazy danych. Pewna nadmiarowość danych jest gwarancją ich bezpieczeństwa.Zobacz więcej o pracy w sieci w specjalnym dokumencie PDF. LicencjonowanieNowy system baz danych będzie dostępny nieodpłatnie wyłącznie dla osób, które nabyły licencję na program JZK w ciągu ostatniego roku - czyli posiadają albo ważną licencję roczną, albo standardową licencję jednorazową na bieżącą wersję programu.Etapy konwersjiKonwersja bazy danych jest potrzebna, aby uporządkować system baz danych. Za każdym razem konwersja jest wykonywana w tle, automatycznie i jest niezauważalna przez użytkownika.Konwersja bazy danych na nowe formaty będzie wykonana w 3 etapach:
Zobacz więcej o nowym formacie baz danych. |
W skrócie: JZKdb: Nowy format bazy danych JZK@2011 daje nowe możliwości.
© Studio JZK programy komputerowe, Gdańsk 1992-2012 | Wszelkie prawa zastrzeżone. | Mapa strony
Programy | Cennik | Dealerzy | Sklepy | Prasa | Opinie | Moje Faktury™