Korzystaliśmy z systemu plików zorganizowanego hierarchicznie według: - zasięgu geograficznego (kraju lub kontynentu) - dostawcy danych, licencjodawcy - domeny / zestawu danych - daty / wersji
Następnie mamy politykę oddzielania danych źródłowych (w tym samym formacie, który znajdował się na dowolnej płycie CD / DVD, którą otrzymaliśmy od dostawcy) od wszelkich zbiorów danych, które wyprodukowaliśmy w naszej firmie.
System plików naprawdę ułatwia przyjmowanie danych od klienta, a także pozwala na pewną elastyczność w zakresie fizycznego przechowywania - przechowujemy nasze archiwa na większych, wolniejszych dyskach i mamy specjalne serwery plików (transparentnie połączone z hierarchią) dla częściej używane zestawy danych.
Aby ułatwić zarządzanie w ramach projektów, używamy dowiązań symbolicznych. Trzymamy nasze wektory w bazie danych (Oracle) i sprawiamy, że regułą jest posiadanie co najmniej jednej instancji bazy danych na klienta (i kilku użytkowników / schematów dla projektów). Jednak nie trzymaliśmy wielu rastrów w bazie danych, ponieważ zajmują zbyt dużo miejsca, nawet poza jedną. Ponadto chcemy, aby nasze instancje bazy danych były jak najlżejsze.
I tak, mamy kogoś odpowiedzialnego za „nadzorowanie” całej sprawy, więc nie robi się to zbyt bałagan.
Największym problemem, jaki mamy obecnie w związku z tą konfiguracją, jest brak ładnego interfejsu użytkownika, który pomógłby nam w lepszym przeglądzie całej sprawy, a ponadto planowaliśmy dołączyć do niej pamięć metadanych. Nadal rozważamy nasze opcje tutaj.
Używamy kontroli wersji dla naszego kodu i używaliśmy go do dokumentów, ale okazuje się, że kontrola wersji nie jest tak naprawdę stworzona dla dużych zestawów danych, szczególnie jeśli są to głównie pliki binarne, więc nie polecam tego , z wyjątkiem sytuacji, gdy masz do czynienia z GML lub czymś podobnym do tekstu (problemy obejmują ogromne obciążenie na dysku po stronie serwera, a także awarie klientów podczas sprawdzania ogromnych repozytoriów).