Opinie na temat NetCDF vs HDF5 do przechowywania danych naukowych?

Czy ktos ma dosc doswiadczenia w / NetCDF i HDF5, aby dac jakies plusy / minusy o nich jako sposobie przechowywania danych naukowych?

Używałem HDF5 i chciałbym czytać/pisać przez Javę, ale interfejs jest zasadniczo opakowaniem wokół bibliotek C, co uznałem za mylące, więc NetCDF wydaje się intrygujący, ale prawie nic o tym Nie wiem.

Edit: moja aplikacja jest "tylko" do rejestrowania danych, więc otrzymuję plik, który ma własny format opisu. Ważnymi cechami dla mnie są Możliwość dodawania dowolnych metadanych, szybki dostęp do zapisu do dołączania do tablic bajtowych oraz współbieżność jednego pisarza / wielu czytników(zdecydowanie preferowana, ale nie musi mieć. Dokumenty NetCDF mówią, że mają SWMR, ale nie mów, czy obsługują jakiś mechanizm zapewniający, że dwóch pisarzy nie może otworzyć tego samego pliku na raz z katastrofalnymi wynikami). Podoba mi się hierarchiczny aspekt HDF5 (w szczególności i love hierarchia grafów ukierunkowanych-acyklicznych, znacznie bardziej elastyczna niż" zwykła " hierarchia podobna do systemu plików), czytam teraz dokumenty NetCDF... jeśli pozwala tylko na jeden zestaw danych na plik, to prawdopodobnie nie będzie działać dla mnie. :(

Update - wygląda jak netCDF-Java czyta z plików netCDF-4, ale zapisuje tylko z plików netCDF-3, które nie obsługują grup hierarchicznych. cholera.

Update 2009-Jul-14 : zaczynam się naprawdę denerwować HDF5 w Javie. Dostępna biblioteka nie jest taka świetna i ma trochę główne przeszkody, które mają związek z warstwami abstrakcji Javy (złożone typy danych). Świetny format pliku Na C, ale wygląda na to, że po prostu przegrywam. >:(

 64
Author: ArtB, 0000-00-00

2 answers

Zdecydowanie proponuję HDF5 zamiast NetCDF. NetCDF jest płaski i po pewnym czasie robi się bardzo brudny, jeśli nie jesteś w stanie sklasyfikować rzeczy. Oczywiście klasyfikacja jest również przedmiotem debaty, ale przynajmniej macie tę elastyczność.

Przeprowadziliśmy dokładną ocenę HDF5 vs. NetCDF, kiedy pisałem Q5Cost, a końcowy wynik był dla HDF5 hands down.

 31
Author: Stefano Borini,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-15 12:09:31

Muszę przyznać, że korzystanie z HDF5 jest znacznie łatwiejsze na dłuższą metę. Nietrudno jest wprowadzić proste struktury danych do formatu NetCDF, ale manipulowanie nimi na drodze to rodzaj bólu.

"H" W HDF5 oznacza "heirarchical", co przełożyło się (dla mnie w każdym razie) na naprawdę łatwy sposób manipulowania danymi, po prostu przesuwając węzły i odwołując się do węzłów z innych miejsc.

Mogę zapytać, co to za projekt? Używam tych b

 22
Author: ,
Warning: date() expects parameter 2 to be long, string given in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54