Cloud Computing & IoT

Hello Losant Community!

This is Aidan Zebertavage, Technical Evangelist for Losant, back again for the September edition of Losant Discussions!

Cloud computing and IoT have become inextricably linked over the past few years. Access to cloud computing has increased, thanks to the likes of Google, Amazon, and Microsoft, and the massive amounts of data generated by IoT applications has and will continue to expand and push the limits of Cloud infrastructure. Leveraging cloud computing solutions will be essential to the ongoing growth of the IoT industry.

Even with the relative importance of cloud computing to IoT applications, there are still questions when understanding the relationship between IoT and the cloud. This discussion’s goal is to help users answer those questions and misconceptions.

Today’s Topic: Cloud Computing & IoT

Some topics that I personally keep coming back to in my understanding of the cloud and its relationship with IoT and application enablement platforms (AEP):

  • Why would I choose to develop an IoT application with an IoT specific AEP versus one of the major cloud providers? Is it a choice, or can we leverage both as complements to one another?
  • What is the cost-benefit of leveraging the major cloud vendors? Does a cost-benefit exist? What about the opportunity cost of not leveraging the major cloud vendors?
  • What are the major organizational and technical challenges enterprises face when developing with the cloud? What type of expertise do I need in house?
  • When integrating between an enablement platform and a cloud provider, how do I assess functionality and determine which processes are performed in the cloud and which are performed in the platform?
  • Do I always need to look to a major cloud vendor when thinking about data processing? What about edge compute—how does that lessen my reliance on the cloud?
  • Thinking ahead to the future of IoT and cloud—what emerging technologies are coming in the next 3-5 years that are going to shift our current thinking around this model?

We are very excited to be able to partner with Skylytics on this month’s Losant discussions. With backgrounds in Cloud and IoT for nearly a decade , the Skylytics team has extensive experience with all major cloud vendors. Skylytics provides end-to-end IoT consulting and application development. They are also a Microsoft Gold partner. Their expertise and insight on hurdles they’ve faced when developing solutions leveraging the major cloud vendors will be extremely valuable to this discussion.

SKYL_HORZ_SECONDARY_BLK

safercontact™ is a contract tracing solution developed by Skylytics using the Losant platform

Experts from Skylytics and Losant will be here to moderate the discussion and provide our users the insight and foundational knowledge they need. This is a huge topic, and an understanding of cloud computing is essential not only for IoT but across many technical disciplines - I’m thrilled to see where this discussion will lead us and what insights we will be able to take away and apply to our own organizations and projects.

We’re continuing our dive into the IoT Knowledge Stack. Last month we discussed the criteria for assessing hardware in the early stages of IoT application development, and next month we are going to focus on another fundamental component of the stack with our October Discussions on Connectivity!

See you in the chat below!

@Aidan_Zebertavage

2 Likes

Hi @Aidan_Zebertavage & Everyone

Great questions! Let me take a run at answering the first question you posed, i.e:

Why would I choose to develop an IoT application with an IoT specific AEP versus one of the major cloud providers? Is it a choice, or can we leverage both as complements to one another?

The short answer is money; the real answer is more nuanced.

As the adage goes, ‘time is money,’ and that’s as true in IoT solution development as it is in any industry. The quicker you can solve a business or customer requirement, the faster you can realize business value. Leveraging an AEP, such as Losant, affords you that ability. I think anyone who’s looked at the services offered by today’s Cloud vendors can testify to the fact that it can be overwhelming. Where do you start? Which services do you stitch together? What if there are similar services by the same vendor, which one do you choose? IoT solutions are complex in and of themselves, without the added complexity of cloud vendor service selection. That complexity continues right through the process, from development to deployment. Once a solution is deployed, leveraging an AEP means you have way less complexity to manage and maintain.

But, as with all things, there are limits. No matter how good the AEP is, there are use cases where you must go outside the platform. For example, in safercontact™, our Contact Tracing solution, we leverage a graph database, that’s not something I’d expect to find natively in the AEP. Then it becomes a business decision in terms of looking at the various offerings, the business requirements, and ultimately making a business decision. No one today should be buying or selecting technology for technologies sake; there should always be a business driver behind the decision.

The reality is therefore that in many cases you leverage both an AEP, such as Losant, and cloud vendors services for those capabilities that are beyond the scope of your chosen AEP. At Skylytics we take an AEP first mentality, so our default position is to maximize the AEP as best we can, until such time we can’t or it just doesn’t make business sense. Ultimately, the key is picking the right tool for the right job and not forcing either side to perform functions they just aren’t designed to do.

Mike

2 Likes

Hey @Mike_Ormerod - A big welcome to the forums from Losant and thanks for getting us rolling.

I want to make sure to highlight a couple of key points you made above - because I think, as with many aspects of the IoT stack, it can be so easy to get stuck down in the weeds without getting the bigger perspective, and you provided a great understanding on how developers need to think about architecting solutions and the relationship between IoT and cloud.

Your first point I think illustrates a problem that many of us in the engineering world has faced - which is analysis paralysis - where being inundated with not only many different tools but with a variety of features, it can be really difficult to know where to begin and how to make those critical assessments. And how can you overcome that? I think you hit the nail on the head, that it’s not just choosing a tool for technology’s sake, but by focusing on the end goal of your application or service, and choosing the right tool for the job.

Thanks,
@Aidan_Zebertavage

1 Like

@Aidan_Zebertavage & Losant Community

This is a super question and I am sure there are as many view points as there are orphaned snapshots on any cloud providers platform! Definitely interested to hear what others have to think about this topic, here are my thoughts.

–Mike

What is the cost-benefit of leveraging the major cloud vendors? Does a cost-benefit exist? What about the opportunity cost of not leveraging the major cloud vendors?

There are cost benefits that can be achieved by migrating to the cloud. The initial benefit gained is moving IT from a largely CapEx model to an OpEx model. With CapEx, we were dealing with justifying funding for large projects and then accounting for amortization and depreciation over the useable life of the assets. With OpEx, if done right, the impact on financials is smoothed over time, and you pay for cloud services as they are consumed, not in arrears or upfront.

There is a benefit if you are a startup or your product’s genesis is in the cloud. This should mean that your systems and software are built and deployed with a cloud service first mentality. With cloud-first, one utilizes the right balance of your code and the providers’ services to produce a cost-effective product/platform. The challenge for those that do not start in the cloud can be the mentality of “we have to get there now to save money” this can result in the lift and shift approach to cloud migration. The lift and shift moves your infrastructure into the cloud in a like for like usage of cloud compute, storage, network and even licensing. This can lead to waste of resources and, as a result cost. In this situation, teams should prioritize, where possible, the redesign and deployment of their infrastructure over time to align with a cloud-first design.

The most significant opportunity cost might be the cost/impact to your line of business if you do nothing. Your competitors are going to the cloud, achieving at scale, and significantly decreasing their business partners’ time to market. With any product or service, first-mover advantage and the ability to provide a service at scale is very likely a huge boon to revenue. If you need to obtain capital funding, procure gear for on-premises, deploy the equipment, and then build your product, your business will likely never achieve first-mover advantage for any product or service; this will have a direct impact on revenue. At the end of the day, IT operates for the benefit of the business, and the cloud enables our businesses to scale on business demand when deployed correctly.

2 Likes

Good Morning, cloud is a shift in terms of skills, focus, and mind set. This is a great question because without thinking through this topic your efforts could wind up being all in vain.

What are the major organizational and technical challenges enterprises face when developing with the cloud? What type of expertise do I need in house?

It’s essential to address IT culture before moving into the cloud; mindset needs to change across the organization from top to bottom. Cost containment like security needs to become everyone’s job; that message needs to be frequent and consistent. Whereas cloud can drastically reduce one’s time to market, it can also send costs spiraling out of control quickly.

Cloud providers make it very easy to turn nobs on compute, storage, and other services; these quick changes can mean immediate, unbudgeted cost increases. Using cloud services, it can be easy for a developer or administrator to deploy increases to capacity without reviewing code for performance optimization. The cloud culture needs to promote cost savings and efficiency and not be one of always turning nobs to solve problems. The design also needs to adopt the services you, as an organization, want to support. Use too many services, and vendor lock is tight, don’t use enough, and your deployment could be inefficient or ineffective. It’s a balance.

In terms of expertise, there is still a need for the traditional skillsets, network, OS/Storage admins, just not in the numbers or roles needed when most infrastructure was on-premises. With infrastructure as code, it becomes more important to standardize on all thing’s infrastructure as code, which includes network, security, etc. These resources with standards can also help control costs by limiting access, automating processes, providing cost feedback to teams, etc.

Hey @MICHAEL_HICKEY,

Your understanding of the organizational resources required and the challenges faced when navigating the cloud computing space is excellent. I find it interesting that the cost-benefit rationale still seems to be the prevailing argument for the cloud in the marketplace, and while that was certainly true a few years ago, now that leveraging the cloud is standard across many tech areas, I don’t know if that is as true anymore.

That said, you made a great point above regarding the easy ability for vendors to provide additional services with a button-click that can lead to unbudgeted cost increases - so when you think about the amount of data and processing power being stored and performed in the cloud - how can IoT developers think about leveraging architecture like Edge computing to lessen the load on the cloud? How was Skylytics looked to the Edge to better realize a cost-effective IoT model, if at all?

I’m learning a ton here.

Thanks!
@Aidan_Zebertavage

@Aidan_Zebertavage thanks for the follow up, great question.

Use of the edge is a great way to go in many cases, we have looked to the edge to lessen some of the load on the cloud including:

  • The need to summarize or reduce the amount data in flight or stored at its destination. The less data that is shipped back to the platform is less expensive resources to move it, process it, and store it will be. This can be driven as a cost requirement
  • Unreliable, limited, or times when no bandwidth is available between a device and the platform.
  • Some jobs can be discrete enough where it is more effective to utilize the edge. Cases where the data and logic are sized such that it is all able to be processed all at the edge.

We have seen many cases where edge has been effectively used for such things as state change notification. This is where the edge only forwards data to the platform in the event a data attribute stored on the edge is different from what has just been forwarded to the edge device by the device being monitored. For example, an engine sends telemetry to an edge node or agent continuously, however the edge has logic that only forwards the data to the platform when the state of the engine flips to a new value, from 0 to 1 or Start to Stop.

We have also seen cases where logic is introduced at the edge to strip data out of the payload completely before forwarding it on. An example would be a BLE/UWB tag that collects and forwards temperature and humidity but for whatever reason one of the two attributes is not needed for further processing or the end state data set.

The flip side of the coin is making sure we don’t throw away potentially useful data. Whereas some would like to reduce the overall solution cost by reducing payload, the amount of data in flight, and final storage, others may have a different view. Data Analysts and Data Scientists may want to have access to the raw data as it was produced without reduction or summarization. In this case it is important to understand not only operational needs of the solution but also the long term, strategic needs and value of the data being generated and processed.

1 Like