Retail and logistics firm Ocado is running an OpenStack-based private cloud at its latest warehouse, allowing it to automate the infrastructure underpinning its robotics systems.
One of the striking features of Ocado's latest warehouse is the thousands of 'bots' used to collect shopping items from crates and pack them for delivery to customers. The robotic 'pickers' travel at high speeds on rails along a grid, missing each other by small margins. "These bots move at a very high velocity - up to four metres per second - and they run past each other with literally centimetres of separation," says Ocado Technology head of infrastructure, Chris Dabrowski.
Managing these machines creates some interesting technical challenges for the Ocado IT team. It has required, for example, that the company set up its own 4G network to provide real-time control and monitoring communications between its machines.
The wireless control system provides a guaranteed connection 10 times a second to each of 1,000 robots per access point - all working within a 50-metre radius. This requires fast connections and rules out moving data to public cloud provider's data centres due to distance.
"To avoid collisions we wanted to have very low-latency communication protocols to manage the bots in the entirety of the fleet. And if that was to be hosted further away - and orders of magnitude higher in milliseconds - it would be problematic to our management of these bots," Dabrowski explains.
With this in mind, Ocado chose to build an OpenStack-based private cloud as part of its Smart Platform technology that is both used at its Andover customer fulfilment centre and sold to supermarkets such as Morrisons.
"For Ocado Smart Platform some of services naturally lend themselves towards being customer-facing, and therefore on a public cloud. However other elements of the same service are very closely coupled to the underlying automation, robotics and IT we have in our warehouses," says Dabrowski.
"For low-latency reasons we needed to provide environments that offer flexible hosting close to those systems. And so that is where the driving force arose for having OpenStack, which is based on-prem in our newer facilities."
Ocado's OpenStack systems currently span 5,000 CPU cores, with 27 terabytes of RAM running 1,750 virtual machines. It supports several applications, including those related to the control system of the robots, says Dabrowski. "We also use databases to store status information from robots and pick stations - all of this is running on top of OpenStack."
While the low-latency requirements are met by the on-premise data centre, much of the analytics on the data generated is carried using Google Cloud. There are a number of reasons for this, partly due to the ability to scale the amount of data stored. In total, Ocado now has half a petabyte of data stored in Big Query - twenty times what it had running on its on-prem Oracle databases previously.
Sign up for CIO Asia eNewsletters.