Odd technical guidelines

Today we bring you a translation that introduces IoT related business testing. The architectures of many IOT platforms look very similar in terms of technical implementation and functional modules. So what are the common modules of these iot platforms? What are the key differentiating features that make iot platforms stand out? Take a look

Recently, I have been testing IOT related businesses, but I am still feeling my way in the river due to lack of knowledge in this field. Come across this series of foreign languages, with a learning attitude to the original translation, improper advice please. Suggestions read the original series: https://blog.persistent.com/index.php/2014/12/09/part-1-iot-platforms-common-building-blocks-key-differentiators/.

The architectures of many IOT platforms look very similar in terms of technical implementation and functional modules. So what are the common modules of these iot platforms? What are the key differentiating features that make iot platforms stand out?

1

Generic Architecture of an IoT Platform

The basic functions of iot platform can be simply summarized as Gather, Analyze and Act. “Gather” means to collect or receive data from multiple products and devices. “Analyze” means to Analyze collected data to produce meaningful and executable output results. “Act” means to perform actions based on the analysis results, such as sending alarms, notifying devices, or asking devices to perform corresponding actions. Figure 1 is the general architecture of IOT platform, which generally has several modules such as Device Interface, Admin Interface, Messaging Broker and Storage. Device Interface mainly realizes the function of data collection, Message Broker and Storage realize the transmission and Storage of data, Streaming Analytics and Batch Analytics are used for data analysis. APIs and Reporting Service are used to implement ACt-related functions, sending alarms and notifications, and the Admin Interface is used for device Settings and policy rules Settings.

2

common building blocks

Device Interface and  Administrator

The platform provides interfaces for users and devices. Users use REST/HTTP interfaces to configure devices. Devices need different protocols to interact with the platform. Users can manage products, devices, locations, users, and so on, in addition to allowing you to create rules and policies that analyze the payloads sent by devices. This layer is implemented using REST/Web services engines and can be converted to other protocols through adapters or gateways. Rules process products (device families or groups), device locations, data attributes, and matching conditions and bind them to corresponding devices.

Messaging Broker

Devices deliver messages to Message Broker, and this layer typically uses RabbitMQ, ActiveMQ, ZeroMQ, and Apache Kafka for scalability of services.

Storage Layer

Messages can be transformed and stored in a database. MongoDB, Cassandra, and HBase all fit this requirement with the flexibility required to support different message formats and scale deployment.

Analytics Layer

There are two ways of processing the data. The streaming analysis checks the matching rule immediately upon receipt of the message and passes it to the appropriate operational handler when the rule condition is met. Analysis tools such as Apache Spark and Apache Storm can be the choice. Rules can be defined statically or dynamically using machine learning algorithms based on historical or training data. The other is on-demand or batch processing, which is performed on stored data and aims to generate a summary or aggregate view of the data for the reporting layer to use. In this case, Apache Spark and Hadoop can be selected.

Data Consumer APIs & Reporting

The Consumer uses REST/HTTP to consume stored data, and if MongoDB is used to store data, the API encapsulates the MongoDB CRUD API. Some implementations can also use a search infrastructure like ElasticSearch. Reporting lets users customize multiple types of reports, all of which can be done using the open source Lib library.

3

Key Differentiators

Architecture

The platform architecture supports Multi-Tenancy at every level, scales horizontally and supports distributed computing.

Supported IoT Protocols

Important iot protocols such as MQTT, AMQP, STOMP and CoAP need to be supported in the platform.

Ease of Device On-boarding

The platform should expose apis for device management, including device registration and activation. The API should allow administrators to manage self-registered devices in batches. Active devices need to use the API to retrieve corresponding certificate keys.

Security

At the device security level, the platform should support security based on the device activation key and other additional parameters (such as IP address, location, etc.). Role-based access control is used at the platform level to manage policies/rules and roles and permissions for each location and family of devices.

Rule Engine Customizability

At the rule definition level, the platform should expose the APIS used to create the rules, and the rules should be matched with inputs such as product family, location, and payload attributes, and the actions to be taken when matching conditions are met. A platform can define a DSL (SQL or JsonPath syntax) for defining rule queries and corresponding operations. For dynamic rules, the platform should allow connections to machine learning or neural networks. In terms of supported operations, the platform should provide implementations that take actions when rules are met.

Other Goodies include

Intuitive, easy to use, complete API, complete request response and error condition samples;

Provide sandbox environments and developer suites that can quickly build proof-of-concept iot pipelines;

Web-based portal for configuring devices, rules management, user management and dashboard/report management;

Perfect search interface for searching the corresponding device and data according to the filter.

4

conclusion

From the above analysis, it can be seen that what general modules are included in a relatively complete IOT platform, what basic functions are realized by each module, and which technologies can be selected to achieve this function. In addition, in order to make the platform have different characteristics, what can be considered. The above is the author translated article, please clap brick.

World of you when not

Just your shoulder

There is no


360 official technical official account

Technology of dry goods | | hand information activities

Empty,