How the Thomas Concrete Group is adding value to its customers with IoT projects powered by CrateDB
The concrete industry is still a traditional sector. However, Thomas Concrete Group is not afraid of doing things differently—despite being around since the 1950s.
At the end of 2019, it became clear to Thomas Concrete Group that being a pioneer in digitalization was a good idea. To offer new digital services would improve the customer experience; at the same time, the data now collected and analyzed would give Thomas Concrete Group further insights on their business operations, allowing them to improve the efficacy of crucial aspects of their supply chain.
With 5.5 million m3 of ready-mixed concrete delivered per year, 2,100 employees, and operations in both the USA and Europe, the scope of Thomas Concrete Group is wide... And a digital future opens up a lot of opportunities.
As a result, the first IoT offering of Thomas Concrete Group was released during the summer of 2020. Thomas' customers in Sweden and Germany can now track their concrete delivery in real-time.
The pouring of the concrete is a critical moment in construction: any mistakes made in this phase can lead to higher costs in the future. With the information being displayed in the online portal as well as in a mobile app, construction managers know exactly when the concrete truck will arrive at the construction site, which allows them to prepare accordingly.
In the online portal, the customer can follow the exact position of the concrete truck in
Google Maps, getting information about the estimated time of arrival
Moving forward along the road of digitalization, Thomas Concrete Group started developing a second IoT project. As a result, Thomas Concrete will soon give their customers the option of monitoring the curing of their concrete remotely. Sensors measuring the concrete's temperature on-site allow determining its strength at any time, with the results being displayed to customers in real-time.
Thanks to this service, there's no need for Thomas customers to be on-site to check the status of the concrete curing. They can instead monitor the process remotely, using the online portal or the mobile app
Once the roadmap was clear, the Thomas Concrete engineers started looking for a time-series database. CrateDB was the selected candidate.
For Kristoffer Axelsson, Principal Solution Architect with Thomas, the database requirements were clear:
- Scalability was key.
Kristoffer was aware that the data volume would continuously grow: Thomas Concrete expects to reach hundreds of millions of data points in the next years. It was essential to base their architecture on a database prepared to scale.
- The database needed to have high performance for both reads and writes.
The database must ingest high data volumes generated globally with very little latency. To make sure CrateDB would be able to cope, the development team at Thomas performed some preliminary tests, in which CrateDB showed excellent performance.
- The underlying data structure was important.
Kristoffer knew that CrateDB was a database accessible by SQL, supporting the PostgreSQL driver—but the development team at Thomas needed to know if the underlying foundation of CrateDB was actually non-relational: they wanted a NoSQL architecture for managing their JSON structures. After taking a closer look at CrateDB's architecture, they were assured that this is exactly the case for CrateDB.
- Resiliency against failure had to be assured.
CrateDB has a distributed, shared-nothing architecture—so what does the failover look like if a node goes down in a multi-node setup, Kristoffer wondered? In one of their technical discussions, the engineers at Crate.io explained that in order to make every cluster fault-tolerant, CrateDB distributes replica shards across the cluster in such a way that, even if an N number of nodes fail, there is always a complete copy of the data accessible. Also, since replicas are actively available for querying in CrateDB, they increase query throughput across the cluster, not harming performance.
The resulting architecture: integrating CrateDB in the Azure ecosystem
After all the initial testing, the IoT architecture of Thomas Concrete was finally shaped into what we see in the diagram above.
The data ingestion from the trucks delivering the concrete is symbolized at the top-left side of the chart. Data from EU and US customers are ingested through Event Hub Ingress into a Custom Event Processor, combining the geospatial data with the information about the order and the customer. This allows Thomas Concrete to also perform business analytics with Power BI.
In the concrete curing use case, Sigfox is used to ingest the sensor data into Azure IoT Hub. Similar to in the previous case, the sensor data is then combined with metadata identifying the order and customer, storing it into CrateDB. All the services are hosted in Kubernetes.
"The technical discussion with Crate.io engineers paid off, as it helped us to verify the technical and business requirements," says Kristoffer. "CrateDB is an integral part of our big data streaming architecture, and it is delivering as promised"
The concrete delivery tracking has been available to customers for a few months now. With already 11 million datapoints ingested into CrateDB, performance hasn't suffered one bit—with queries lasting as short as 0.009 s.