August 5, 2016
The goal of this article is to cover broad classes of IoT platforms and the high-level trade offs of each type of platform. Choosing the right IoT platform can be a challenging task. There are so many options in the marketplace and it seems as though new and old vendors are appearing weekly. In the previous article we covered a structured approach to platform selection, which is a great place to start before diving into this discussion.
Building out an Internet of Things (IoT) architecture can be a daunting project. There are so many concerns, including the following, that need to be addressed when creating an IoT architecture:
- Edge device / cloud / mobile connectivity
- Device management
- Over the air updates
- Latent data communication
- Real time command and control
- Data services
- Analytics / BI
Attempting to tackle all of these concerns by building an architecture from scratch is likely not the best approach. There are already so many solutions available and each have their own merits. I will cover a handful and hit some of the highlights throughout this post.
First, we need to secure connectivity in our IoT architecture. Most teams start there with a firmware software development kit (SDK). Some platforms, such as Telit, have a system that includes connectivity and cellular service. Others offer a VM host that handles all of the connectivity. All of these options run on edge devices and are responsible for managing the security and connectivity between the edge device and the cloud platform.
Depending on what option a product team may choose, it will affect the design complexity of the hardware, firmware, and provisioning process, as well as the level of security provided by the IoT platform.
Technologies like Electric Imp, specialize in providing easy, secure, and reliable communication. Their Imp Cloud services act as a backbone for communication and require companies to build out platform / application functionality in a separate environment.
Other platforms, such as Telit and Exosite have a Software as a Service (SaaS) model. Their offerings are hosted in the cloud. They offer a bit more in-terms of customizability. Most of their flexibility is driven through configuration and integration. These platforms can be compelling because they may offer an acceptable blend of time to market and configurable user experience. Also, since it is a SaaS offering, some monitoring and management of the platform is part of the service provided by the vendor.
AWS and Azure have IoT specific offerings in their broad Platform as a Service (PaaS) portfolio. These services can be blended with their other cloud offerings to build out an amazing IoT platform. Beyond IoT specific functionally, AWS and Azure offer compute, networking, content delivery, storage, database, deployment, management, application services, and analytic services. Many companies are already running parts of their IT infrastructure on these platforms.
Time to Market
Of all of the options currently available in the market, AWS and Azure have a global footprint, long term viability, the broadest partner ecosystem, the greatest user-experience flexibility, and an endless ability to scale. These offerings generally come with higher engineering costs and take longer to bring to market. Product teams need to be proficient with these platforms. They are much more complex to configure, build and operate. However, they often have the lowest operational cost per device.
OST works with organizations to sort through the numerous options to determine what is best for their IoT project. With so many IoT platforms to choose from, and the importance of choosing correctly the first time, taking a comprehensive look at the options is crucial to the long term success of the project.