Aktualizacja do 2012 roku, kiedy widzimy, że rozmiary obrazów i liczba obrazów rosną i rosną we wszystkich aplikacjach...
Potrzebujemy pewnego rozróżnienia między „oryginalnym obrazem” a „przetworzonym obrazem”, na przykład miniaturą.
Jak mówi odpowiedź Jcoby'ego, są dwie opcje, więc polecam:
-
użyj blobu (Binary Large OBject):do przechowywania oryginalnych obrazów, przy twoim stole. Zobacz odpowiedź Ivana (nie ma problemu z tworzeniem kopii zapasowych obiektów blob!), dodatkowe dostarczone moduły PostgreSQL, instrukcje itp.
-
użyj oddzielnej bazy danych z DBlink:dla oryginalnego magazynu obrazów, w innej (ujednoliconej/specjalistycznej) bazie danych. W takim przypadku wolę bytea , ale kropla jest blisko tego samego. Oddzielenie bazy danych to najlepszy sposób na „ujednoliconą usługę sieciową obrazów”.
-
użyj bajta (tablica bajtów):do buforowania obrazów miniatur. Buforuj małe obrazy, aby szybko wysłać je do przeglądarki internetowej (aby uniknąć problemów z renderowaniem) i zmniejszyć przetwarzanie serwera. Buforuj również niezbędne metadane, takie jak szerokość i wysokość. Buforowanie bazy danych jest najprostszym sposobem, ale sprawdź swoje potrzeby i konfiguracje serwera (np. moduły Apache):przechowuj miniatury w systemie plików może być lepsze, porównaj wydajność. Pamiętaj, że jest to (zunifikowana) usługa internetowa, wtedy może być przechowywana w osobnej bazie danych (bez kopii zapasowych), obsługująca wiele tabel. Zobacz także instrukcję obsługi binarnych typów danych PostgreSQL, testy z kolumną bajtową itp.
UWAGA1:dziś użycie „podwójnych rozwiązań” (baza danych+system plików) jest przestarzałe (!). Korzystanie z „tylko bazy danych” zamiast podwójnego ma wiele zalet. PostgreSQL ma porównywalną wydajność i dobre narzędzia do eksportu/importu/wejścia/wyjścia.
UWAGA2:pamiętaj, że PostgreSQL ma tylko bytea , nie mają domyślnego BLOB Oracle :"Standard SQL definiuje (...) BLOB. Format wejściowy różni się od bajtów, ale dostarczone funkcje i operatory są w większości takie same", Podręcznik.
EDYTUJ 2014 :nie zmieniłem dziś oryginalnego tekstu powyżej (moja odpowiedź brzmiała 22 kwietnia 2012 r., teraz z 14 głosami), Otwieram odpowiedź na Twoje zmiany (patrz „Tryb Wiki”, możesz edytować!), do korekty i do aktualizacji .
Pytanie jest stabilne (@odpowiedź Ivansa z 2008 r. z 19 głosami), pomóż ulepszyć ten tekst.