Export Your Data from ParleIoT
This article follows our previous introduction and guide to testing your data. This time, we want to focus on the newly added export functionality of our ParleIoT website. We will show how you can use it to get insights into potential savings based on a satellite IoT example.
Data Export
The interactive online graph offers only limited options for assessing the performance of ParleIoT. We have added a Comma Separated Value (CSV) file export to overcome this limitation. You can find it below the graph, and it automatically downloads the CSV file for you.
After you export the data, you can use your favourite number-crunching tool to visualise and perform further processing based on it.
Use case: Satellite IoT
We have picked a popular option for this use case, the Iridium Short Burst Data (SBD) service. It can be procured via various third-party resellers. We have selected a public offering that charges $1.20 per 1000 bytes. There are two device types for the SBD: one that offers 1960-byte long messages and the Edge series with 340 bytes. Based on the $1.20 per 1000 bytes, this makes $0.408 per Edge device message.
Simulate
After you have retrieved the CSV file for your compressed data set, you can use Python to simulate the benefits you can get from using ParleIoT compared to not using compression. To do this, we compare how many transport layer packets are required to transmit the data set. The following script can easily be adapted to accommodate other transport layers or segmentation.
领英推荐
import math
import pandas as pd
MAX_LENGTH = 340
df = pd.read_csv('compressed_data.csv')
current_length = 0
uncompressed_packet_count = round(len(df.index) / math.floor(MAX_LENGTH / df['input_length'].iloc[0]))
compressed_packet_count = 1
for index, row in df.iterrows():
current_length += row['output_length']
if current_length >= MAX_LENGTH:
compressed_packet_count += 1
if current_length == MAX_LENGTH:
current_length = 0
else:
current_length = row['output_length']
print(f"Uncompressed Packet Count: {uncompressed_packet_count}")
print(f"Compressed Packet Count: {compressed_packet_count}")
print(f"Savings: {round(100 - 100 * compressed_packet_count / uncompressed_packet_count, 1)}%")
The result from this script can be used to assess the monetary savings for transmitting your data set on a channel with metered bandwidth. If you followed the previous article, you should get the following numbers:
You can get a packet count reduction of 68.2% compared to the uncompressed data. Based on the $1.20 per 1000 bytes, this is a reduction in total costs from $272 to $86! Real-world savings can be different, but this can provide an indication and support you in adopting ParleIoT in your systems. ?
Now it is your turn to crunch the numbers, tune our algorithm and find out how much you can save!
Early Adopters
We are actively seeking early adopters to experience the power of ParleIoT firsthand. ??
?? Sign up here (https://lnkd.in/d-EztwH7), comment "Interested", or send us a direct message ([email protected]).