Journal "Software Engineering"
a journal on theoretical and applied science and technology
ISSN 2220-3397

Issue N4 2023 year

DOI: 10.17587/prin.14.187-194
Using Amazon Kinesis Service for Data Transfer from IoT Devices to Cloud Infrastructure
S. I. Zhukov, Leading Researcher, serge.zhukov@auriga.com, RCC, Moscow State University, Moscow, 119991, Russian Federation, K. A. Zubrilin, Software Developer, konstantin.zubrilin@auriga.com, Auriga, Moscow, 117587, Russian Federation
Corresponding author: Sergey I. Zhukov, Leading Researcher, RCC, Moscow State University, Moscow, 119991, Russian Federation E-mail: serge.zhukov@auriga.com
Received on January 31, 2023
Accepted on February 27, 2023

IoT devices connected to the Amazon Web Services (AWS) cloud use the loT interface and the MQTT protocol for communication purposes. In addition to these basic communication tools, AWS has developed specialized services for transmitting telemetry data from smart devices. Firehose allows you to upload data directly to the AWS S3 data warehouse (cloud-specific file system). Kinesis service is even more powerful; it enables the user to build back-end data logic, which is automatically applied when data arrives. Also, Kinesis allows running analytics of the telemetry data using artificial intelligence techniques to discover hidden trends and consistent patterns. This article describes how to set up an IoT device using the AWS C++ SDK so that telemetry data it generates is processed by Kinesis services. The firmware of the device connects to the AWS provider using the SDK APIs and sends telemetry data as Kinesis service data packets; a Kinesis lambda function is created on the server side in the cloud to store the received data in S3 storage and send the data to the DynamoDB database after processing. Using Kinesis services allows the user to utilize all power tools provided by the AWS framework for processing and analyzing their data (Amazon constantly develops and enhances this set of tools).

Keywords: IoT, AWS, Kinesis, cloud computing, telemetry, lambda functions
pp. 187–194
For citation:
Zhukov S. I., Zubrilin K. A. Using Amazon Kinesis Service for Data Transfer from IoT Devices to Cloud Infrastructure, Programmnaya Ingeneria, 2023, vol. 14, no. 4, pp. 187—194. DOI: 10.17587/prin.14.187-194 (in Russian).
References:
  1. MQTT Version 3.1.1. OASIS Standard, available at: http:// docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html (date of access 31.01.2023).
  2. AWS General Reference. Reference Guide, available at: https://docs.aws.amazon.com/general/latest/gr/Welcome.html (date of access 31.01.2023).
  3. Amazon Simple Storage Service. User Guide, available at: https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome. html (date of access 31.01.2023).
  4. Amazon DynamoDB. Developer Guide, available at: https:// docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html (date of access 31.01.2023).
  5. The Architecture of Amazon's DynamoDB and Why Its Performance Is So High, available at: https://medium.com/swlh/ architecture-of-amazons-dynamodb-and-why-its-performance-is-so-high-31d4274c3129 (date of access 31.01.2023).
  6. Amazon Kinesis Data Streams. Developer Guide, available at: https://docs.aws.amazon.com/streams/latest/dev/introduction.html (date of access 31.01.2023).
  7. Amazon Kinesis Data Streams. API Reference, available at: https://docs.aws.amazon.com/kinesis/latest/APIReference/Welcome.html (date of access 31.01.2023).
  8. Beswick J. Using AWS Lambda as a consumer for Amazon Kinesis, available at: https://aws.amazon.com/blogs/compute/using-aws-lambda-as-a-consumer-for-amazon-kinesis/ (date of ac­cess 31.01.2023).