Data transformation

Data transformation components and concepts

You can send data to Live Objects using two sources, a device can send data using a supported protocol (LoRa®, SMS, MQTT…​) or a business application by using HTTPS or MQTTS. Each source is processed by one or many components. Data transformation is then relies upon:

  • the data enrichment process which makes the link between Live Objects Data Message and Device Management. Data enrichment is a merge of third-party data model from device source with a Live Objects common data model.

  • the decoding service which process Live Objects message for handling encoded data collected from various networks.

  • the custom pipeline service which process Live Objects Data Messages to perform various enrichment steps

Data journey.
@startuml
scale 0.8
skinparam state {
FontSize 15
FontName Helvetica
StartColor Black
EndColor Black
BackgroundColor<> #ffd200
BackgroundColor <> #4bb5e6
BorderColor Gray
}


state "Device" as DeviceAnchor  <> #white
note left of DeviceAnchor #4bb5e6
  data provided by Device
  over MQTT, LORA & SMS
end note

state "Businessapp" as BusinessappAnchor <> #white
note right of BusinessappAnchor #yellow
  data provided by a [[../../mqtt_rest_business_api/rest_api/adoc/rest_api.html#REST_API Business application]]
  over HTTPS or MQTT using [[../../mqtt_rest_business_api/adoc/mqtt_mode_application.html#MQTT_MODE_APPLICATION Application mode]]
end note

state  "Enrichment\n   process\t"   as Enrich <> [[../../data_transformation/adoc/data_enrich.html#ENRICH]] :\t
state "Decoding\n service"  as Decod <> [[../../data_transformation/adoc/data_decoding.html#DEC]]:**//API//**
state "Pipelines\n service"  as Pipeline <>[[../../data_transformation/adoc/data_pipelines.html#PIPELINES]]:**//API//**
state "store & search\n     service"  as Store [[../../data_analysis/adoc/data_analysis.html#DATA_DISCOVER]]:**//API//**

[*] ---> DeviceAnchor
[*] -[#4bb5e6]-> BusinessappAnchor


DeviceAnchor -down--> Enrich

Enrich --right-> ==Decoding==

==Decoding== -> Decod

Decod -> Pipeline
Pipeline -> Store
Store -right-> [*]


BusinessappAnchor -[#4bb5e6]-> ==Decoding== ://Encoded//\n//datamessage//
BusinessappAnchor -[#4bb5e6]-> Store

@enduml