Nexus (format danych)
NeXus to format danych dla nauk eksperymentalnych , który jest powszechnie używany w społecznościach naukowych zajmujących się neutronami , promieniowaniem rentgenowskim i mionami . Jest rozwijany jako międzynarodowy standard przez naukowców i programistów reprezentujących najważniejsze ośrodki naukowe w Europie , Azji , Australii i Ameryce Północnej w celu ułatwienia większej współpracy przy analizie i wizualizacji danych naukowych. Technicznie rzecz biorąc, NeXus jest model danych, a nie format pliku , ponieważ opisuje, w jaki sposób dane powinny być zorganizowane i ustrukturyzowane w pliku, i ma niewiele do powiedzenia na temat sposobu kodowania tych danych do przechowywania. Plik NeXus można odwzorować na wiele różnych formatów kontenerów , chociaż preferowanym i najlepiej obsługiwanym zapleczem jest HDF5 . XML jest używany głównie do celów demonstracyjnych.
Wczesna historia i motywacja
Na początku lat 90. kilka grup naukowców zajmujących się neutronami i promieniowaniem rentgenowskim było sfrustrowanych tym, że każdy z instrumentów, z którymi pracowali, miał lokalnie zdefiniowany format rejestrowania danych eksperymentalnych. W przypadku różnych formatów większość czasu naukowców marnowano na pisanie czytników importu do programów do przetwarzania i analizy. Jak zwykle, dokładne informacje, które mają być udokumentowane z każdego instrumentu w pliku danych, ewoluują i idą na kompromisy w oparciu o nowe funkcje i ograniczenia rozwijającego się sprzętu. Wielu z tych formatów brakowało ogólności, aby rozszerzyć je na nowe dane do przechowywania, dlatego opracowano inny nowy format. W takich środowiskach często brakuje dokumentacji każdej generacji formatu danych.
Trzy równoległe wydarzenia doprowadziły do powstania NeXusa:
- Czerwiec 1994: Mark Könnecke ( Instytut Paula Scherrera , Szwajcaria) złożył propozycję wykorzystania netCDF dla europejskiej społeczności zajmującej się rozpraszaniem neutronów podczas pracy w placówce pulsujących neutronów ISIS .
- Sierpień 1994: Jon Tischler i Mitch Nelson ( Oak Ridge National Laboratory , USA) zaproponowali format oparty na HDF jako standard przechowywania danych w Advanced Photon Source .
- Październik 1996: Przemek Kłosowski ( National Institute of Standards and Technology , USA) stworzył pierwszy szkic propozycji NeXusa, opierając się na pomysłach z obu źródeł.
Naukowcy ci zaproponowali metody przechowywania danych przy użyciu samoopisującego się, rozszerzalnego formatu, który był już szeroko stosowany w innych dyscyplinach naukowych. Ich propozycje stanowiły podstawę obecnego projektu standardu NeXus, który został opracowany w ramach serii warsztatów zorganizowanych przez Raya Osborna ( ANL ), w których uczestniczyli przedstawiciele szeregu placówek zajmujących się neutronami i promieniowaniem rentgenowskim. Interfejs API NeXus został wydany pod koniec 1997 roku.
Główne cechy
NeXus dotyczy przede wszystkim sposobu organizacji danych w pliku. Aby to osiągnąć, NeXus zapewnia:
- Zdefiniowany słownik terminów
- Zestaw obiektów do przechowywania danych
- Zestaw podformatów specyficznych dla danej techniki
- Społeczność wspierająca i demokratyczna władza przewodnia
Format NeXus składa się z obiektów „Base Class”, które reprezentują różne typy sprzętu i inne wygodne grupy informacji, takie jak geometria lub stan belki w danej pozycji. Te klasy bazowe zapewniają słownik terminów, które mogą być użyte do opisania określonych właściwości w instancji tej klasy i zapewniają jasność co do znaczenia terminów i jakiej konkretnej nazwy należy użyć dla czegoś, co może mieć wiele równoważnych opcji. Sposób łączenia klas bazowych jest określony przez definicję aplikacji, która opisuje hierarchiczną strukturę, minimalny zestaw wymaganych informacji i opcjonalne dodatki dla danego typu eksperymentu. Podczas gdy udokumentowana filozofia NeXusa kieruje Definicje Aplikacji w kierunku wspólnej struktury, definicja Aplikacji może różnić się od innych w celu dopasowania do potrzeb społeczności, której ma służyć.
NeXus zdecydowanie zaleca, aby pliki danych zawierały domyślny zestaw danych, który można łatwo wykreślić, oraz pełny opis eksperymentu w zrozumiałych terminach fizycznych, dzięki czemu interpretacja zawartości pliku nie wymaga dodatkowej wiedzy.
Wspólnota
Społeczność NeXus zazwyczaj komunikuje się za pośrednictwem list mailingowych NeXus , comiesięcznych telekonferencji i corocznych spotkań.
Zarządzanie
Rozwój NeXus jest nadzorowany przez Międzynarodowy Komitet Doradczy NeXus (NIAC). NIAC dąży do zrównoważonej reprezentacji społeczności międzynarodowej. Większość głównych ośrodków neutronowych, rentgenowskich i mionowych wyznaczyła delegatów. Inne placówki i zainteresowane strony są zaproszone do przyłączenia się. NIAC dokonuje przeglądu wszelkich proponowanych poprawek klas podstawowych NeXusa i definicji aplikacji oraz przeprowadza głosowanie w celu ratyfikacji zmian. Pełne spotkania NIAC odbywają się co 2 lata, zwykle w połączeniu z NOBUGS .