PostgreSQL — najbardziej zaawansowana otwarta baza danych — doczekał się wersji 8.3. Znajdziemy w niej ogromną liczbę nowości oraz zapewne mnóstwo nowych bugów 🙂
Lista ulepszeń i nowych funkcji, za 7thGuard.net:
Najważniejsze zmiany:
- pełna integracja z silnikiem bazodanowym wydajnego wyszukiwania pełnotekstowego ang. full-text search
- wsparcie dla standardu SQL/XML obejmujące nowe operatory i nowy typ danych XML
- wyliczeniowy typ danych ENUM Przykładowa składnia: CREATE TYPE kolor AS ENUM (‘czarny’, ‘czerwony’, ‘zielony’).
- w typie tablicowym można zapisywać złożone typy danych
- wprowadzenie unikalnego typu danych UUID ang. Universally Unique Identifier wg RFC 4122
- dodanie kontroli dotyczącej położenie wartości NULL w sortowaniu (na początku lub na końcu sortowania). Rozszerzona składnia: ORDER BY … NULLS FIRST/LAST
- aktualizowalne kursory ang. updatable cursors
- parametry konfiguracyjne serwera bazodanowego można teraz w prosty sposób ustawiać przez funkcje bazodanowe
- typy zdefiniowane przez użytkownika można teraz modyfikować
- automatyczne nowe stworzenie planu zapytania przechowywanego w cache, w przypadku zmiany definicji tabeli lub gdy statystyki zostaną zaktualizowane
- wsparcie Security Service Provider Interface (SSPI) dla autentykacji w Windows
- wparcie dla autentykacji GSSAPI ang. Generic Security Services Application Program Interface
- całe wydanie PostgreSQL można skompilować w Microsoft Visual C++
Ulepszenia z zakresu wydajności:
- asynchroniczne opóźnione zatwierdzanie zapisów do WAL podczas zatwierdzania transakcji
- zapis punkt kontrolnego dziennika transakcji ang. checkpoint może być rozciągnięty w dłuższym okresie czasu dla wyrównania nagłych skoków w I/O podczas zapisu każdego checkpoint’a.
- dokładnie na czas opracowania najskuteczniejszej metody zapisu na dysk przez proces zapisujący
- Heap-Only Tuples (HOT) umożliwia ponowne wykorzystanie miejsca w większości zadań UPDATE i DELETE
- użycie nietrwałych ID transakcji dla transakcji tylko odczytujących, które redukuje koszty ogólne i potrzebę porządkowania (VACUUM). Nie zostaje zwiększany globalny licznik transakcji.
- redukcja kosztów ogólnych składowania per wiersz i per kolumna
- równoczesne duże sekwencyjne skanowania mogą teraz współdzielić odczyty z dysku
- ORDER BY … LIMIT można być wykonane bez sortowania
- udoskonalenie złączeń typu hash w przypadku wielu wystąpień wartości NULL
- zwiększenie efektywności operatorów LIKE/ILIKE, szczególnie dla wielobajtowych ustawień znaków jak UTF-8
Więcej przeczytacie w oficjalnej informacji o wydaniu. Źródła Postgresa można ściągnąć ze strony projektu.
Dodaj komentarz