Sponsored Two years ago, Objectivity was asked to help deliver a new digital ecosystem. The client had a significant market share but wasnt perceived as innovative or digitally-savvy. To counter this, they came up with the initiative to build a software platform which would manage their asset portfolio.
The clients advantage was that they were close to the assets. They could easily keep them up-to-date in the system, allowing for the development of more advanced end user functionalities. Further on, the solution was supposed to integrate with third party systems and IoT sensors to process and serve even more data to users. Business-wise all this made perfect sense as Data is the new gold, however, the time and budget were limited.
After initial workshops with the customer, we had three months to deliver an MVP. During this period, we had to assemble a team, understand the business domain, co-create the product vision, define the architecture, and deliver a working MVP in time for a trade show.
As this was a lot to do in a short amount of time, we had to set the right priorities and agree on acceptable constraints. The result couldnt be a mere prototype the expectation was that if the potential client would want the product after the demo event, we should be able to roll it out in a quarter. And, to make this project just a bit more challenging the product would have to be cloud agnostic, easily scalable, and able to handle multi-tenancy. For a technical person, this raises one important question: What technical trade-offs did we have to make in order to deliver this?
Gregor Hohpe says that good architecture is like selling options. In the case of forex options, you pay now in order to be able to buy or sell at a fixed price in the future. Similarly, when it comes to software, you design a solution in a way that will give you an open door to change some of its components without too much hassle. Sometimes you use those options (e.g. when you change the payment provider for your e-commerce), and sometimes you dont. Do you remember the good old days, when many of us were preparing for a DB engine change, but then it never happened?
Sceptics might wonder, How real is the vendor lock-in risk?. Some of you probably remember when Google increased the prices of their Maps API 14x (in certain scenarios) in 2018. This proves that this threat is real!
So, how does this apply to being cloud agnostic? Is it possible to have streamlined cloud independence? Some say that Cloud agnostic architecture is a myth, or that If you believe in the cloud (and its speed), you cant be agnostic as it forces you to use the lowest common denominator of all cloud services. The chart below shows the spectrum of available options:
In this case, cloud native means that we take advantage of a given cloud providers strengths (i.e. better performance, better scalability, or lower costs).
Overall, the more you invest in agnostic architecture upfront, the less its going to cost you to switch cloud services. However, at the same time, more complex and agnostic design will decrease productivity and slow down your delivery process. Architects are challenged to find a satisfactory optimum a solution thats as agnostic as possible, but which also respects the agreed time and budget scope. How can this be achieved? Well, for example, you can consider switching costs as suggested by Mark Schwartz, an Enterprise Strategist at AWS. He encourages businesses to consider:
1. The cost of leaving a cloud provider
2. The probability of the above taking place
3. The cost of mitigating cloud switch risk
Furthermore, there are multiple aspects of the solution you should consider this for, such as:
A cloud agnostic solution can be a blessing or a curse it can prepare you for future success, or delay delivery. As such, the following aspects were important in our asset management scenario:
One of the ways to assess an applications architecture and its variations is to use a fitness function. This concept, borrowed from evolutionary computing, is used to calculate how close a given design is to achieving a set of aims important for a given project.
Consequently, we assumed that in our scenario:
Architecture Fitness = Productivity Upfront Investment Cost of Switching + On-Premise Support
With that in mind, we considered the following options:
We opted for a hybrid approach as it passed all our requirements. Plus, when it comes to containerisation within a new project, this seems to be a low-hanging fruit when you try to avoid vendor lock-in. The majority of the solution was implemented in .NET Core as a set of services and workers running inside a managed Kubernetes cluster. In order to not waste time on the configuration of persistent storage, we used Managed PostgreSQL as a common data storage for all components. Postgres is an open-source database available as a managed service in multiple clouds, plus it supports JSON documents, which was another important aspect for our platform.
Regarding the IoT integration, we selected cloud native implementation (e.g. Azure IoT Hub). In addition to being a much more scalable approach, its also much faster to implement. Moreover, if needed, it can be quite easily rewritten to work on another cloud. Research findings on a container-hosted IoT hub showed that theres no solution that meets our expectations especially when it comes to supporting two-way communication with sensors. To further minimise the cost of switching, we defined a canonical message format for domain IoT events so that only message transformation takes place outside of the Kubernetes cluster (e.g. in Azure Functions), and all the rest of the processing happens inside a cluster.
We successfully delivered a solution that runs on Azure, on time for the clients trade show. The data storage trade-off passed the test of time. We did a few product installations and everything functions properly on both the Azure and IBM Cloud. Kubernetes also worked well. However, you should keep in mind that there are minor differences between providers. For example, the Ingress Controller is automatically installed on the IBM Cloud while, with Azure, you have to do this on your own. Additionally, Kubernetes has a different storage class for every cloud provider.
A few months after the show, we also developed a second IoT implementation using IoT Watson, which proved that the cloud native approach was a good compromise. However, you have to be aware of the differences between various queuing implementations. Its really easy to deliver new features using Azure Service Bus, especially if you have a background in .NET (which was the case with us). However, after switching to RabbitMq, you might discover that certain queuing features (like no retry count or no message delivery delay) are not supported and, at this stage, you will have to implement them in code, which introduces unnecessary complexity. To avoid these challenges, instead of choosing what you already know for the sake of fast delivery, first stick to a more agnostic queue implementation.
Editors note: For more information on innovative Cloud management solutions, download Objectivitys latest complimentary eBook: Cloud Done Right: Effective Cost Management.
Photo byVeronica LopezonUnsplash
- Cloud Hosting Service Market Growth By Manufacturers, Type And Application, Forecast To 2026 - 3rd Watch News - July 8th, 2020
- Managed Hybrid Cloud Hosting Market Growth By Manufacturers, Type And Application, Forecast To 2026 - 3rd Watch News - July 8th, 2020
- Managed Hybrid Cloud Hosting Market: 2020 Global Industry Size, Share, Uses, Benefits, Trends, Growth Application, Key Manufacturers and 2026 Demand... - July 8th, 2020
- Y Soft announces YSoft SAFEQ Cloud, a New Family of Cloud-Based Print Services - What They Think - July 8th, 2020
- Industry VoicesRaynovich: The cloud is swallowing everything - FierceTelecom - July 8th, 2020
- Mohamed Arab Joins VPLS as VP of Cloud and Managed Services - PR Web - July 8th, 2020
- Dremio Dives Deep Below the Surface for the Industry's First Cloud Data Lake Conference - Business Wire - July 8th, 2020
- Astonishing growth in Cloud Communications Platform Market anticipates to grow at $ 4.4 billion by 2021, from 2016 to 2021, with CAGR of 26.8% with... - July 8th, 2020
- MediaOps' New 'Digital Anarchist' Streaming Video Platform Delivers Expert Content on What's Next In DevOps, Cybersecurity, Cloud Native and Digital... - July 8th, 2020
- Green House Data and Zerto Fast-Track Digital Transformation with Hybrid Cloud Resilience and Portability - MyHostNews.com - July 8th, 2020
- COVID-19 Impact On Cloud Hosting Service Providers Market Projection By Latest Technology, Global Analysis, Industry Growth, Current Trends And... - July 4th, 2020
- Sell-Side Technology Awards 2020: Best Cloud Provider to the Sell SideBT - www.waterstechnology.com - July 4th, 2020
- Global Cloud Hosting Service Market 2020 Analysis, Types, Applications, Forecast and COVID-19 Impact Analysis 2026 - Daily Research Chronicles - July 4th, 2020
- Green House Data and Zerto Fast-Track Digital Transformation with Hybrid Cloud Resilience - AiThority - July 4th, 2020
- Leaseweb's Five-Year Growth Exceeds Double the Market Average, Further Cementing Position as Top Player in International Cloud Hosting Market -... - July 4th, 2020
- THNQ fund from ROBO Global looks ahead to AI infrastructure growth - Robot Report - July 4th, 2020
- Bare Metal Cloud Market research, Industry Outlook, Current Trends and Forecast by 2025 - CueReport - July 4th, 2020
- Application Hosting Market | Global Industry Analysis, Segments, Top Key Players, Drivers and Trends to 2027 - Cole of Duty - July 4th, 2020
- Professional Services Automation Market Key Vendors, Analysis by Growth and Revolutionary Opportunities by 2025 - Apsters News - July 4th, 2020
- VyOS and FastNetMon Announce Integration | 2020-07-01 | Press Releases - Stockhouse - July 4th, 2020
- India bans 59 Chinese apps including TikTok and WeChat - Data Economy - July 4th, 2020
- Global Bare Metal Cloud Market with Covid-19 Effect Analysis | likewise Industry is Booming Globaly with Key Players IBM Corporation, Oracle... - July 4th, 2020
- Leaseweb's Five-Year growth Exceeds Double the Market Average, Further Cementing Position as Top Player in International Cloud Hosting Market - PR Web - June 30th, 2020
- Cloud hosting group confident on future prospects - The Business Desk - June 30th, 2020
- Connor and Scalio Announce Venture to Bring GRC and License Optimization to the Cloud - GlobeNewswire - June 30th, 2020
- What Is Cloud Computing? - World Atlas - June 30th, 2020
- Thought Machine's Vault Now Proven and Available on All Infrastructure Options: SaaS, Private or Public Cloud, Hybrid Cloud and on Premises - Business... - June 30th, 2020
- Global Application Hosting Market : Industry Analysis and forecast 2020 2027 - Morning Tick - June 30th, 2020
- Data Centers Above the Clouds: Colocation Goes to Space - Data Center Frontier - June 30th, 2020
- 'This Pandemic Has Highlighted The Importance Of Cloud System': Anand Chandra, Synechron - Express Computer - June 30th, 2020
- Southeast Asia Web Hosting Services Market 2020 Digital Learning, Growth Analysis, Industry Trends, Advanced Technologies, Services, Business Overview... - June 30th, 2020
- 4 common software maintenance models and when to use them - TechTarget - June 30th, 2020
- Applying AI and Cloud Technologies for Multivariate Control in Upstream Processes, Upcoming Webinar Hosted by Xtalks - PR Web - June 30th, 2020
- How to Host Your Own VPN with Algo and Cloud Hosting - How-To Geek - June 27th, 2020
- Web Hosting Services Market 2019 Size Overview By Industrial Application, E-Commerce Boom, Cloud Hosting, Latest Trends, New-Advancements in Internet... - June 27th, 2020
- This week in storage: Teradata in the cloud, WD Zoned SSDs and more - Blocks and Files - June 27th, 2020
- Top 10 Cloud Technology Market Exclusive insight on Transformation 2025 - Cole of Duty - June 27th, 2020
- Why you should shun unmanaged hosting and adopt managed - MOARGeek - June 27th, 2020
- E.ON selects Wipro for grid and digital transformation - Smart Energy - June 27th, 2020
- Application Hosting Market Key Players, Industry Overview, Application and Analysis to 2020-2026 - 3rd Watch News - June 27th, 2020
- Top 5 IT Certifications That Will Get You Paid in 2020 - ClearanceJobs - ClearanceJobs - June 27th, 2020
- Global personal cloud market is expected to grow with a healthy CAGR over the forecast period from 2020-2026 - Salamanca Press - June 27th, 2020
- An Introduction to Dave Antrobus, technology director of Fresh Thinking Group - Business MattersBusiness Matters - June 27th, 2020
- Uploadcare Media Pipeline for Online Business Wins at Nanjing Tech Week Competition - AsiaOne - June 27th, 2020
- JIESHUN Smart Parking and Cloud Hosting at Shenzhen Bao'an International Airport - Parking Network - June 22nd, 2020
- Cloud Computing Transforming And Revolutionising Cybersecurity In India - Inc42 Media - June 22nd, 2020
- Cloud Hosting Service Market Analysis, Top Manufacturers, Share, Growth, Statistics, Opportunities and Forecast To 2026 - Cole of Duty - June 22nd, 2020
- Global Application Hosting Market 2020 by Type, Share, Applications, Key Players, Growth, Trends and Forecast To 2026 - Cole of Duty - June 22nd, 2020
- Grading and audio post in the cloud | Industry Trends | IBC - IBC365 - June 22nd, 2020
- Serverless Architecture Market 2020 Global Trend, Segmentation and Opportunities Forecast to 2026 - Cole of Duty - June 22nd, 2020
- COVID-19 Impact and Recovery Analysis- Global Email Hosting Services Market 2020-2024 | Growing Adoption of the Bring-Your-Own-Device (BYOD) Policy to... - June 22nd, 2020
- Global Cloud Hosting Service Market Expected to Grow with a Significant Rate by 2024 Top Players : DreamHost, GoDaddy, HostGator, InMotion, Bluehost,... - June 22nd, 2020
- VPLS recognized on CRN's list of Top 500 Solutions Providers for second consecutive year - PR Web - June 22nd, 2020
- Security problems with the Employment Security Department should have been fixed last year - washingtonpolicy.org - June 22nd, 2020
- Global Cloud-based Database Market 2020 by Type, Share, Growth, Trends and Forecast To 2030 - 3rd Watch News - June 22nd, 2020
- Headliners, part I: 32 upcoming events & program deadlines in the Triangle - WRAL Tech Wire - June 22nd, 2020
- Global Network Host Service Market with Coronavirus (COVID-19) Impact Analysis | likewise Industry is Booming Globaly with Top Key Players | AT&T,... - June 22nd, 2020
- Behind the scenes of Israel's Global Data Center - Data Economy - June 22nd, 2020
- Tax small taxpayers but let the giants go? We can do better. - The Daily Star - June 22nd, 2020
- Global Data Center Outsourcing and Hybrid Infrastructure Managed Services Market Projected to Reach USD XX.XX billion by 2025- IBM, Wipro, Tata... - June 22nd, 2020
- Railway Management System Market to Eyewitness Massive Growth by 2028: Leading Key Players ABB, Alstom, Ansaldo, Bombardier Transportation, GE... - June 22nd, 2020
- All you need to know about cloud hosting - Business MattersBusiness Matters - June 9th, 2020
- Cloud Hosting Service Market 2019 Break Down by Top Companies, Countries, Applications, Challenges, Opportunities and Forecast 2026 - Cole of Duty - June 9th, 2020
- Managed Hybrid Cloud Hosting Market Set to Take Giant Positive Leap - Cole of Duty - June 9th, 2020
- Online Accounting Went Virtual on Short Notice | Online Accounting Jobs - NEC News & Events - June 9th, 2020
- Global Trade Impact of the Coronavirus on Managed Hybrid Cloud Hosting Market Reviewed in a New Study - 3rd Watch News - June 9th, 2020
- AGL announces huge shift to the Cloud - Which-50 - June 9th, 2020
- Moodle welcomes Adapt IT as a Certified Moodle Partner and strengthens presence across the Pan African market. - Moodle - June 9th, 2020
- Health Care Cloud and Hosting Market 2019 Break Down by Top Companies, Countries, Applications, Challenges, Opportunities and Forecast 2026 - Cole of... - June 9th, 2020
- UK signs cloud discount deal with Google to boost innovation - www.computing.co.uk - June 9th, 2020
- Data Breach Notification Software Market 2019 Break Down by Top Companies, Countries, Applications, Challenges, Opportunities and Forecast 2026 - Cole... - June 9th, 2020
- Triangle headliners: Previewing 71 local events & program deadlines this month - WRAL Tech Wire - June 9th, 2020
- Sysdig Continues International Expansion with New Data Center Options in the US and Europe - Business Wire - June 9th, 2020
- Heating Coil For Heat Treatment Market 2019 Break Down by Top Companies, Countries, Applications, Challenges, Opportunities and Forecast 2026 - Cole... - June 9th, 2020
- 3 Buffett Stocks That Are Trouncing Berkshire Hathaway So Far This Year - The Motley Fool - May 31st, 2020
- Health Care Cloud and Hosting Market 2020 | by Manufacturers | by Countries | by Types and by Applications | by Forecasts to 2026 - 3rd Watch News - May 31st, 2020
- Global Cloud Based Database Market Slated to Bring in US$ XX Billion by End of 2026 - 3rd Watch News - May 31st, 2020
- Cloud Hosting Service Market Research Report 2020: Key Players, Applications, Drivers, Trends and Forecast to 2026 - News Distinct - May 30th, 2020
- Are We Overthinking Application Lifecycle Automation? - No Jitter - May 30th, 2020
- Wharfedale Offers No Upfront Costs and 180 days of Deferred Payment - AiThority - May 30th, 2020