3 min read

How startup Beco built its IoT cloud on Azure

Beco, a Boston-based startup, is changing the way commercial real estate is managed, all while making the experience of living and working in a commercially managed property a lot more convenient and fun. And they are doing it with the help of Microsoft Azure and Portworx, the cloud native storage layer designed for containerized workloads.

The value of Beco’s IoT cloud for commercial real estate

Beco offers two main values to their customers. The first is enabling real-time engagement between people and the space they’re in, including wayfinding, finding free meeting space, locating co-workers, and similar tasks. In doing so, they take the friction out of the work environment and help their customers deliver an exceptional workplace. The second pillar is their long-term workplace analytics. This enables real estate and operations professionals to make data-driven decisions about their real estate portfolio, space utilization, and workplace collaboration.

Behind the scenes of Beco

illustration of Beco's technology solution
The Beco technology is made up of three key elements. The first is a battery-free, solar-powered beacon, which in addition to having onboard sensors, functions as an “indoor GPS satellite.” Deployment of this device is extremely easy and can be deployed without electricians, IT professionals, or other technical staff.
The second component is a Mobile SDK. The Mobile SDK embeds directly into corporate workplace apps or one of Beco’s many partner mobile apps to create a data stream on where the smartphone is located in the building in order to deliver location-based services and generate workplace analytics.
The third component is Beco’s cloud service, which runs on Microsoft Azure. At the scale they operate, the SDK generates a tremendous amount of data that is ultimately aggregated and presented for retrieval, storage, even in real-time.

Why Beco chose Microsoft Azure

When evaluating cloud partners, Beco turned to Microsoft Azure for three strategic reasons:

  • Global Footprint: Azure’s global reach enables Beco to deploy their software services across regions to better serve a global customer base.
  • Trusted Partner: Many of Beco’s enterprise customers and partners trust Microsoft to run their business — this makes it easy to plug Beco’s data stream directly into our customer’s Azure account, removing barriers to adoption based on data sovereignty and security.
  • Integration with Microsoft products: Azure makes it straightforward to connect Beco software services with existing Microsoft business products, including Office 365 and Active Directory, unlocking additional value through seamless integration and authentication.

Enter Portworx: cloud-native storage for containerized applications

With a scalable, easy-to-consume, and flexible infrastructure layer provided by Microsoft Azure, Beco turned to Portworx as the persistent storage for containers layer.
In a commercial workplace environment, mobile devices enabled by IoT sensors in the building continuously stream analytics data to Beco cloud services that run in Azure datacenters. The Beco cloud services include a mix of scale out microservices that include real-time stream processing and relational databases. Each application itself is packaged as a container and deployed by Mesosphere DC/OS.
They chose Portworx because, when running in containers, most of orchestration frameworks handle persistence, but not in an optimal way. The simplest way is that they bind the container to a given host, which takes away from the whole idea of a flexible scheduled container infrastructure by introducing that host as a single point of failure (i.e., if that VM goes down, you lose your volume).
As explained by Jeff Zampieron, CTO of Beco, “Handling stateful services in a reliable, scalable fashion is difficult. Portworx provides an easy to deploy, easy to operate, and easy to scale persistent storage solution for stateful containers.”
By using Portworx storage, each application container gets its own Portworx storage volumes. The Portworx volumes spin-up in seconds, as applications launch and scale-out. At the same time, more applications containers can run per server, as each application gets storage volumes that are isolated from other containers’ data and independent of the host OS. In other words, just as containers virtualize compute, Portworx virtualizes storage.
By implementing Portworx for DC/OS storage, they gained the advantage of abstracting the storage hardware and providing not only the ability for containers to float from node to node for both scale and reliability, but also the data durability that comes with multi-host block-level replication. At the same time, Portworx volumes integrate with the rest of Azure and provide production level tools, like automatic backups to Azure Blob Storage. Many customers see this as the missing piece in Kubernetes and DC/OS when they come just off the shelf.

The Journey ahead with Azure and AKS

As the Beco Cloud enters new markets and lights up new offerings, Beco faces the same challenge of all hyper-growth businesses, how to build-out and scale with demand. Azure’s global reach enables Beco to easily deploy their cloud services across regions to better serve their expanding customer base. Plus, in addition to Beco’s dashboards and APIs, some customers are already taking steps to plug Beco data directly into their Azure account to take advantage of the rich set of native services available with Azure IoT and the upcoming Azure Container Service (AKS).
Questions? Let us know in the comments.