Jacek Hajnrych Jacek Hajnrych
Temat: MS SQL 2008 - technologia FILESTREAM w praktyce?
Witam wszystkich,Rozwijam system (koniec jest bliski :P), którego jedną z cech jest zarządzanie dużymi zbiorami medialnymi. Dosyć ostrożnie podszedłem do technologii FILESTREAM w MS SQL 2008 i system jest zaprojektowany tak, że do obecnego etapu jego rozwoju mogłem w zasadzie odpuścić sobie sam element składowania zbiorów na serwerze. Aplikacja (WIN32) jest prawie gotowa i muszę jedynie zdecydować ostatecznie o sposobie zarządzania samymi plikami: FILESTREAM czy linki do plików umieszczonych poza bazą. Sama baza, w wersji FILESTREAM czy linkowanych plików nie wymaga w zasadzie wielkich modyfikacji, podobnie jak aplikacja kliencka, w której podmieniam jedną bibliotekę. W obu przypadkach z całością spokojnie poradzi sobie wersja serwera Express, bo ilość metadanych (głównie tekstowych) nie przekroczy limitu wielkości bazy, a i liczba użytkowników będzie niewielka.
FILESTREAM jest wygodny od strony zarządzania transakcjami, backupami i generalnie integralnością bazy z tymi plikami medialnymi (duże audio i JPEGi) ze względu na kontrolę systemu plików przez serwer bazodanowy (w uproszczeniu). Z kolei pliki składowane zupełnie poza bazą wydają mi się bardziej bezpieczne w sytuacjach awaryjnych bazy. Jeszcze przed pojawieniem się wersji R2 testowałem przenoszenie bazy z FILESTREAM z jednej maszyny na inną i miałem problemy z przeniesieniem danych - szczegółów dziś nie pamiętam, ale kojarzę, że były problemy z uprawnieniami. No i ze względu na sprzęt nie miałem dotąd okazji sprawdzić jak system da radę przy około 6-8 TB tych plików.
Na co dzień spotykam już kolejny system w pewnym sensie podobny do mojego, również oparty o MS SQL 2008, ale zaprojektowany bez FILESTREAM. Tyle, że tu powodem może być rozwijanie systemu zbudowanego jeszcze dla MS SQL 2005. Czy ktoś z Was wykorzystuje w systemie produkcyjnym FILESTREAM i podzieli się uwagami/spostrzeżeniami? Założenia tej technologii są OK, a jak to wygląda w praktyce?
Pozdrowienia,
Jacek HajnrychJacek Hajnrych edytował(a) ten post dnia 30.11.10 o godzinie 13:24