Best Practices in IoT Solutions
Implementing an efficient data communication design is crucial for successful IoT solutions. When managing a large pool of devices, excessive cloud communication can result in high costs, poor performance, and scalability issues.
The Ioto cloud solution offers powerful communication mechanisms such as MQTT messaging and transparent database synchronization. However, if used indiscriminately by sending excessive or redundant data to the cloud, it can compromise your solution and lead to throttling.
To protect your devices, customers, and the service, Ioto enforces data limits. If a device or group of devices sends too much data, Ioto will throttle (slow down) incoming data from those devices. Persistent overuse can result in the offending devices being disconnected from the network.
Follow these best practices to ensure a successful IoT strategy:
- Only send necessary data to the cloud: Limit cloud communication to data that is required at the cloud. Don't send data that is never accessed by the cloud.
- Send only changed data: Avoid redundant data transmission by sending updates only when data changes. If a data item has only one changed field, consider splitting into fixed and changing data items.
- Separate configuration data from runtime statistics: Define database entities to differentiate between the two. Configuration data changes infrequently and can be synchronized to the cloud when updated. Statistics can be buffered and can be sent less frequently.
- Utilize automatic metric creation: Take advantage of automated metrics for efficient monitoring. Ioto can transparently create metrics from database data that can be graphically displayed or used for automated actions.
- Synchronize database tables in one direction only: Ensure that synchronized tables are not bidirectional to prevent conflicts. Split tables to be synchronized up to the cloud, or down to the device, not both.
- Avoid messaging loops: Implement safeguards to prevent loops in your messaging system.
- Monitor throttle messages: Listen for Ioto throttle messages and adjust your device behavior accordingly.