Infomex stworzył dedykowaną aplikację Mensura dla Narodowego Centrum Badań Jądrowych POLATOM

Narodowe Centrum Badań Jądrowych – jeden z największych instytutów naukowych w Polsce zajmujący się badaniami z dziedziny fizyki subatomowej oraz jądrowej – zdecydował się skorzystać z usług działu oprogramowania biznesowego Infomex w zakresie utworzenia dedykowanej aplikacji o nazwie Mensura.

Zamówienie składało się z następujących części:

I etap - wykonanie i wdrożenie oprogramowania umożliwiającego tworzenie modeli naukowych eksplorujących dane w języku programowania Python. Rozwiązanie wykorzystuje środowisko Matlab, które zostało zintegrowane z systemami informatycznymi WIOŚ i ICM.

II etap - wykonanie i wdrożenie mechanizmów integracji danych z urządzeń pomiarowych wykorzystywanych przez Zamawiającego.

Oprogramowanie Mensura wykonane przez Infomex jest odpowiedzialne za przechowywanie danych pomiarowych oraz ich przetwarzanie umożliwiając:

  • Tworzenie i implementację mechanizmów integrujących dane z zewnętrznych źródeł danych (bazy danych, urządzenia pomiarowe) w dowolnym języku programowania,
  • Tworzenie, wykonywanie i cachowanie w pamięci RAM serwera złożonych zapytań do bazy danych,
  • Tworzenie transformacji modyfikujących dane w czasie rzeczywistym,
  • Wykonywanie operacji obliczeniowych współbieżnie (również asynchronicznie) na nieograniczonej liczbie serwerów działających w klastrze,
  • Tworzenie i wykonywanie współbieżnych modeli analitycznych eksplorujących dane, które Zamawiający może wykorzystywać w celach np. prognozowania stężenia pyłków roślin, bądź też wilgotności odczuwalnej powietrza. W ramach projektu Infomex zaimplementował dwa demonstracyjne modele eksplorujące dane z wykorzystaniem metod uczenia maszynowego (ang. machine learning), technologii asynchronicznych obliczeń współbieżnych oraz algorytmów, takich jak Grid Search czy SVM,
  • Pracę zespołów naukowych w środowisku Matlab 2009 zintegrowanym z Oprogramowaniem wykonanym przez Infomex,
  • API programistyczne dla zaawansowanych użytkowników umożliwiające dalszą rozbudowę systemu,
  • Narzędzia provisioningowe umożliwiające łatwą instalację i aktualizację środowisk serwera i środowisk klienckich.

Oprogramowanie „Mensura” zostało wyposażone w szereg funkcjonalności dostępnych z poziomu webowego interfejsu użytkownika, Web API oraz modułów Pythona. Projektując architekturę rozwiązania, Infomex wykorzystał między innymi technologię Python, framework Django + AngularJS oraz biblioteki Rabbit MQ, Pandas i PySVM. Moduł integrujący system ze środowiskiem Matlab 2009 wykorzystywanym przez Zamawiającego, został wykonany w technologii Java. Z uwagi na bardzo dużą liczbę przetwarzanych danych pomiarowych, rozwiązanie stworzono w oparciu o silnik bazodanowy PostgreSQL w wersji 9, który zapewnia wsparcie mechanizmów klastrowania oraz partycjonowania tabel.