Obsługa danych i architektura
IronFlock zapewnia pełną, kompleksową infrastrukturę przyjmowania i przechowywania danych — od brzegu do chmury — zaprojektowaną z myślą o skalowalności, bezpieczeństwie i jasnej własności danych. Niezależnie od tego, czy kierujesz telemetrią z tysięcy czujników, czy budujesz interfejsy SCADA w czasie rzeczywistym, architektura danych IronFlock gwarantuje, że Twoje informacje są bezpieczne, izolowane i dostępne.
Routing wiadomości i bezpieczne realmy
Sercem komunikacji IronFlock w czasie rzeczywistym jest solidny klaster routingu wiadomości. Ta infrastruktura komunikacyjna łączy różnorodne urządzenia brzegowe w ramach projektu ze sobą oraz z infrastrukturą chmurową IronFlock.
Aby zapewnić ścisłe bezpieczeństwo i izolację danych, klaster routingu jest semantycznie podzielony na bezpieczne realmy. Realmy to izolowane podsieci — wiadomości pozostają ściśle w ich granicach, co oznacza, że dane i polecenia nie opuszczają ani nie przekraczają realmów.
Aplikacje działające na urządzeniach brzegowych mogą komunikować się w tych realmach komunikacyjnych za pomocą ironflock-sdk na jeden z następujących sposobów:
- Publish/Subscribe (Pub/Sub): idealne do ciągłego rozgłaszania telemetrii czujników lub zmian stanu.
- Remote Procedure Calls (RPC): doskonałe do bezpośredniego wyzwalania akcji lub bezpiecznego odpytywania stanu urządzenia.
Dynamicznie udostępniane bazy danych projektu
Do trwałego przechowywania i analiz historycznych IronFlock udostępnia dedykowaną fizyczną bazę danych TimescaleDB dla każdego projektu.
Ta baza danych projektu stanowi centralny punkt zbierania danych:
- Zaplecza danych aplikacji: zaplecza danych wszystkich aplikacji zainstalowanych w Twoim projekcie są bezpiecznie przechowywane w tej bazie.
- Bezpośrednie przyjmowanie: gdy aplikacje urządzeń publikują dane za pomocą
ironflock-sdk, strumienie te są bezpośrednio przyjmowane i porządkowane w bazie danych projektu.
Ponieważ baza danych projektu działa jako jedno źródło prawdy dla Twoich operacji, odblokowuje zaawansowane możliwości:
- Zapytania SQL: pisz potężne zapytania bezpośrednio na surowych tabelach historycznych.
- Integracja Physical AI: pozwól agentom IronFlock AI wyodrębniać, analizować i odpytywać dane w języku naturalnym.
- Źródło wizualizacji: baza danych projektu jest ostatecznym źródłem danych dla paneli na żywo, paneli IoT i paneli SCADA.
Własność danych a Akt o Danych UE
IronFlock jest zbudowany na jednej jasnej zasadzie: właściciel projektu jest właścicielem danych — nie deweloper aplikacji.
Wszystkie dane generowane przez aplikacje — strumienie telemetrii z urządzeń brzegowych, dzienniki zdarzeń, pochodne analizy — są przechowywane w bazie danych projektu, która należy do właściciela projektu. Deweloperzy aplikacji piszą aplikacje, ale dane, które te aplikacje generują, gdy są uruchamiane w projekcie, są wyłączną własnością projektu, który je hostuje.
Ten model jest bezpośrednio zgodny z wymaganiami Aktu o Danych UE (EU Data Act), który daje użytkownikom produktów podłączonych do sieci oraz powiązanych usług pełną kontrolę nad danymi generowanymi przez ich urządzenia. W IronFlock:
- Wyłączna kontrola. Właściciele projektów mają pełną władzę administracyjną nad bazą danych projektu — mogą odczytywać, eksportować, usuwać i tworzyć kopie zapasowe wszystkich zawartych w niej danych.
- Brak ukrytego gromadzenia danych. Deweloperzy aplikacji nie mają dostępu do danych projektu, chyba że zostaną do niego wyraźnie zaproszeni. Nie istnieje żaden ukryty potok danych od projektu z powrotem do dewelopera aplikacji.
- Przenośność. Wszystkie dane znajdują się w standardowej instancji TimescaleDB, dzięki czemu można je odpytywać za pomocą SQL, eksportować w otwartych formatach i migrować do woli — właściciele projektów nigdy nie są uwięzieni w vendor lock-in.
- Szczegółowe udostępnianie. Właściciele projektów mogą zapraszać deweloperów aplikacji, partnerów integracyjnych lub innych interesariuszy do projektu i przyznawać im szczegółowe uprawnienia dostępu do konkretnych obszarów danych. Umożliwia to korzystanie z zewnętrznego wsparcia technicznego, zdalnej konserwacji lub specjalistycznych usług analitycznych na warunkach zdefiniowanych — i w każdej chwili odwołalnych — przez właściciela.
W skrócie: aplikacje generują dane, ale właściciel projektu jest ich właścicielem, kontroluje je i udostępnia. Ten model własności jest pierwszorzędnym celem projektowym platformy IronFlock, a nie refleksją ex post.
Rezygnacja: ominięcie potoku danych IronFlock
Warstwa komunikacyjna IronFlock i baza danych projektu to zalecana ścieżka — zapewniają routing w czasie rzeczywistym, trwałe przechowywanie, dane gotowe do paneli i wbudowane gwarancje własności od razu po zainstalowaniu. Jednak IronFlock nie zmusza aplikacji do korzystania z tego potoku.
Aplikacje działające na urządzeniach zarządzanych przez IronFlock są zwykłymi obciążeniami kontenerowymi i zachowują pełną swobodę sieciową i systemową. Jeśli właściciel projektu lub deweloper aplikacji woli inny stos obsługi danych, aplikacja może:
- Wysyłać dane do systemów zewnętrznych. Wysyłać dane bezpośrednio do brokerów stron trzecich (MQTT, Kafka, AMQP), chmurowych punktów przyjmowania danych (AWS IoT, Azure IoT Hub, Google Cloud IoT) lub niestandardowych API REST / gRPC.
- Używać alternatywnego magazynu. Zapisywać do zewnętrznych baz danych (InfluxDB, MongoDB, S3, własna TimescaleDB klienta itp.) zamiast lub obok bazy danych projektu IronFlock.
- Łączyć się z systemami on-premise. Integrować się bezpośrednio z istniejącymi systemami MES, ERP, historianami lub SCADA w sieci lokalnej bez przechodzenia przez chmurę IronFlock.
- Łączyć oba podejścia. Publikować podzbiór danych do IronFlock dla paneli i analiz AI, strumieniując jednocześnie dane o pełnej wierności gdzie indziej.
Ta elastyczność sprawia, że IronFlock nadaje się zarówno do wdrożeń greenfield, w których użytkownicy w pełni adoptują platformę, jak i do integracji z istniejącymi architekturami danych przedsiębiorstwa, w których miejsca docelowe danych nie podlegają negocjacjom.
Wykorzystanie danych w panelach IoT i SCADA
Wizualne wykorzystanie danych jest proste. Podczas konfigurowania widżetów na panelu IoT lub SCADA prawie każdą właściwość widżetu (np. jego tytuł, wartości lub kolor) można dynamicznie powiązać z danymi na żywo z bazy danych projektu.
Podczas edycji widżetu w Board Studio pod polem konfiguracji znajduje się przełącznik wiązania danych. Po wybraniu konkretnej kolumny z tabeli ustanawiasz kanał w czasie rzeczywistym dla tej właściwości. Gdy tylko nowa telemetria dotrze do bazy danych projektu, powiązana właściwość zostanie automatycznie zaktualizowana w czasie rzeczywistym, bez konieczności ręcznego odświeżania UI.
Uwaga: szczegółowe wyjaśnienie, jak połączyć właściwości widżetu z bazą danych, znajdziesz w sekcji wiązania danych w dokumentacji paneli IoT.