Forum Discussion
Sensor to AZURE IoT Hub to ADLS to Power BI
Discovery & Resolution ?
By creating this workflow, I found the following:
- Device sensor firmware published data once every 30 seconds.
- AZURE IoT Hub routed this data to ADL BLOB as JSON once every 2 minutes.
- Power BI Power Query failed to interpret JSON files. "extra characters at end of JSON input".
The PBI PQ error occurred because each BLOB file contained four individual JSON expressions - one for each device sensor publication. This can be resolved by reformatting each JSON file as a single document by bracketing all four expressions as one […] and adding a comma to the end of the first three. It works, but it's sloppy. I did it manually.
A simpler resolution is to synchronize timing of device sensor publications with IoT Hub routing to ADL BLOB so that each file contains only a single JSON expression. In other words, by publishing and routing to ADL at the same frequency - only one publication / JSON expression is contained per file. This avoids the PBI PQ failure, but I have doubts about its scalability.
Do any of you have a better suggestion?
Is it possible to configure the IoT Hub to wrap multiple JSON expressions as a single JSON document for routing to ADLS?