While ago, PTC announced a new release of ThingWorx Platform (8.4). Among other exciting features, this release has OOTB support for integration with InfluxDB. At the first glance it’s “only” support for another database, but after taking a closer look, it’s tremendous move, which makes PTC’s IoT environment even more reliable and even better in terms of big data capabilities.
And considering the fact, that IoT is absolutely based on data – it’s a direction we all would like ThingWorx to go. This partnership, one of many strategic moves of PTC in the last years, is presented as “empowering developers to build next-generation IIoT, analytics and monitoring applications”.
We at Transition Technologies PSC believe, that even great leap starts with a small first step. In this case, this first release of Influx support has an opportunity to be itself a groundbreaker for all of those, who don’t believe in big data in ThingWorx. It’s a perfect step to have a background for all further areas, starting with real and historical time monitoring through data aggregation and app metrics up to data analysis or machine learning. Every IoT application craves for data and there are companies, sending daily billions of data points. A whole Internet of Things concept is based on data. Everyone talks about data ingestion, data storage, data analysis. To the present day during ThingWorx projects we had to spend time in order to analyze what data we need to retrieve, how we need to store it, which database engine to use and what mechanisms can increase the performance of the whole system. Now it’s a lot easier. At least when it comes about historical data from our sensors or external systems, we have out-of-the-box feature, which can be easily wired up.
Now your time-series data has a better place to go!
InfluxDB is a well-known open source time-series database platform, which has proven one of the best solutions for large amount of time-value data. Scalable, with available clustering and high availability mechanism, it becomes a great choice for your data, persisting in a high velocity (even up to millions writes per second). It’s a first Time Series DBMS available in ThingWorx, bringing your IoT applications to the whole new level.
Time Series databases are those designed especially for Internet of Things to support collecting, storing and querying large volume of timestamped data. Of course, we can use other types of database types in such cases, but Time Series DBs resolve specific challenges, such as downsampling data (grouping by time), comparison with other records or joining time series.
Not to mention monitoring capabilities, high compression and retention policies, which allows to help DB administration.
InfluxDB comes in two flavours: community and enterprise edition. The first one is available in open source licensing schema, but with single node. Enterprise edition allows to have a few additional benefits (full support, clustering, incremental backup and others). You don’t even need to define and create a schema, it’s automatically generated based on the data you store!
However, it is worth remembering, that InfluxDB is not to replace standard model databases (PostgreSQL, MS SQL Server) – it is thought to cooperate with them, splitting up the model definition and the data storage. By the way – mentioned model databases are the only ones supported now to work with InfluxDB. What’s more, currently the whole mechanism supports only ThingWorx’s Value Stream and Stream storage options.
What about other storage possibilities?
Currently for ThingWorx we have couple of database options, but – excluding DataStax Enterprise Cassandra – there’s no database specialized in high volume data ingestion. Even mentioned DSE is “only” NoSQL Graph Database. Having some powerful abilities, it is still no match for InfluxDB in time series data storage.
And what next?
Even having in mind all the limitations of the current release of ThingWorx’s InfluxDB Persistence Provider (come on, it’s a first release!), we at PSC are having great time, pushing this topic to the limits in order to provide best information to all those, who are ready to dig into this topic with us.
This is a very first step, but there are next big plans in the pipeline. Better support for query operations, supporting additional InfluxDB features or improvements in data ingestion through the ThingWorx Platform – just to name most exciting ones. It allows ThingWorx to absorb, persist and analyze a lot more data than ever before.