- By Bill Lydon
- April 29, 2021
SQL features not typically available on an embedded device greatly simplify data management for software developers. In an interview with the founder of ITTIA LLC, Bill Lydon discusses industrial IoT edge devices and facilitation of OT data analytics.
Digital transformation of industrial processes requires significantly more data than is needed for business system digitalization. Effective and responsive industrial digitalization is best accomplish by processing and analyzing sensor data and other real-time information created at the farthest edge of the systems needed for high-speed and flexible production. Information technology (IT) professionals who understand this are best suited to tackling operational technology (OT) data analytic challenges. I had a discussion about these and other aspects of Internet of Things (IoT) edge devices with Sasan Montaseri, founder of ITTIA LLC and maker of ITTIA DB SQL secure data management and processing software for embedded devices. The company leverages the well-known and widely used SQL (Structured Query Language) ANSI standard.
Montaseri founded ITTIA in 2000 after, he said, “continuously witnessing manufacturers of embedded systems and devices seeking a data management software development kit that was easy to learn, had high performance, and was embeddable within MCUs and MPUs.” At that time, existing database solutions were too complex for devices. They had a long learning curve and maintenance headaches, especially when integrating data with other systems. In response, ITTIA’s team was assembled and ITTIA DB SQL was introduced in 2007.
At a high level, your website notes, "ITTIA DB SQL facilitates data storage and distribution between IoT edge devices." How is this accomplished?
ITTIA DB SQL provides capabilities to create Internet of Things streams that are like database tables but, instead of storing data, applications submit data in real time, and the database continuously processes data as it arrives. It is inefficient to execute traditional database queries continuously and with repetitive data. Our approach is more modern and much faster. In addition, it allows IoT devices to capture real-time data from many sensors, collect valuable information from massive raw data, and store it locally on the edge.
Upon separating important information from raw data, information must be shared and distributed with other systems.
ITTIA data distribution technology connects database files stored in different devices that share common schema and allows them to communicate.
SQL features not typically available on an embedded device greatly simplify data management for software developers. Combining SQL queries with low-level access to tables and indexes, ITTIA DB SQL is familiar to experienced database application developers and approachable to embedded developers.
How can this data be synchronized with enterprise & cloud applications (i.e. SAP, AWS, AZURE?)
We have a web services interface that empowers device data communication with cloud applications. It allows web applications to specify what query each device should execute.
What operating environments are supported?
Using a platform-independent layered design, a database can be deployed on Linux, Windows, and a number of real-time operating systems. In addition, it can be deployed without an operating system utilizing our C or C++ libraries for highly embedded applications on any platform, including bare metal.
Describe Stream statements?
ITTIA DB SQL allows running continuous query over IoT streams with SQL statements. This is efficient, and offers filtering and processing of edge data. One of its advantages is integrated device data processing with data management for edge applications. This means it filters and processes data originating from a complex flow of data events.
For example, if a sensor is monitoring and reporting real-time temperature, it can report events such as temperature exceeding a certain threshold and alarm the system operator with an observed abnormal behavior. A stream statement can calculate aggregate values, such as the average temperature over the last minute, and store that value once per second. This can be extended by grouping many sensors on the same stream. Stream statements can also combine data from multiple streams and join them within a time interval window.
Are data cleaning functions available?
ITTIA DB SQL includes device data processing and management for edge applications to filter and process data originating from a complex flow of data events. Its special data processing capabilities empower sensors and devices to make sense of raw data, identify alarming events, and store meaningful information.
Why is no DBA (Database Administrator) required?
ITTIA DB SQL is a standalone database used without any installation. As a standalone executable or embedded library, it is hidden inside the application and runs on the device. Therefore, applications can be embedded to execute and use the database inside.
What about multithreading/multitasking and store and forward functions?
Every continuous query can run its own independent thread and is designed to be very efficient, to minimize the interaction with each data source. This ensures that every query reacts with the best possible latency, especially on multicore systems.
As for store and forward, stream data can be saved into a table, which can then forward the data to another device or database by enabling data distribution.
Describe the data security.
ITTIA DB SQL offers secure file storage, remote access, and data distribution. Whether a database file is accessed locally, or is shared over a public network, encryption support ensures that data is protected from unauthorized access, eavesdropping, and session hijacking.
In addition, we have our own database security agent, DB-SEAL (Security Expert Agent Library). DB-SEAL is a virtual agent that monitors database responsibilities, input, and data metrics, in real time, and responds by rejecting unexpected requests. It provides manufacturers of embedded system capabilities the ability to stop database-driven attacks—attacks where malicious code is inserted to exploit security vulnerabilities. This proactive monitoring of the data and database by DB-SEAL allows the device to issue an alert, block access, or shut down when data management metrics fall out of the expected range.
Did you enjoy this great article?
Check out our free e-newsletters to read more great articles..Subscribe