Monday, May 13, 2019

Azure Architecture Center

Today, we're going to do deviate from the typical formula.  Instead of a technical walkthrough, we're going to talk about the Azure Architecture Center.  The Azure Architecture Center is a one-stop shop for all of the information you'll need when learning how to architect infrastructure, application or data solutions in Azure.  You can find the Azure Architecture Center here.  So, what is Architecture?

In the tech space, there are a few different levels of Architecture.  The highest level is typically called "Solution Architect".  This level is typically tasked with translating high-level business vision into a set of high-level technical features, including the selection of different pieces of technology to accomplish this, all before a single piece of code is written.  This process typically continues while development is actively occurring to ensure that the "big picture view" is not lost.

There are variations of Architects below this, including Application Architectures who are in charge of designing solutions with a focus on on applications.  Data/Analytics Architects who are in charge of designing solutions with a focus on data and analytics and Database Architects who are in charge of describing the intricate structure of the databases leveraged for any of these solutions.  It's important to note that the majority of architecture work is done BEFORE any development takes place and, to a lesser extend, DURING the development process.  It will probably make more sense when you see the typical deliverable, an Architecture Diagram.
Batch Scoring of Python Models
This is a simple architecture diagram showing how to piece together a few different Azure technologies to leverage Python models to perform batch scoring of real-time sensor data.  Given the relatively narrow scope of this diagram (focusing only on the analytics solutions), this would likely be created by some type of Data or Analytics Architect.  You can find this architecture described here.  Let's take a look at a much more complex architecture.
Highly-Available Web Application
This diagram describes a complex web application that would need to operate across multiple regions and multiple availability zones to minimize the probability of substantial application failure due to issues within the datacenters.  This solution is complex enough that it will typically be built by either a Solution or Application Architect.  You can find this architecture described here.

Now that we understand what Architecture is, why is the Azure Architecture Center so useful?  Let's start by thinking about a very narrow technical problem.  You are writing a piece of code, hit execute and a big error pops up "Error 6373782: Blah Blah Blah".  It's typically not too complex of an exercise to google this error message and find relevant information on how to solve it.  However, the further away from code we get, the more difficult it is to research the solution to a problem.  For instance, if we are looking for the pros and cons of different big data analytic storage technologies, googling phrases like "Big Data Analytics Database" may not yield the results we are looking for.  The core issue is that it's very difficult to research abstract concepts that we don't already understand.

Now, imagine that instead of having to filter through a ton of irrelevant search results, there was a single location where an aspiring Architect or an experienced Architect who is new to Azure could go to learn about the best practices for building different types of solutions, straight from the experts themselves.  This is the power of the Azure Architecture Center.  We commonly refer people to the Azure Architecture Center if they are struggling to grasp "how it all fits together".  Once they understand that, doing the individual research on how to develop using each of the technologies becomes a much simpler exercise.

To summarize, we highly encourage anyone who develops or architects solutions on Azure to become familiar with the Azure Architecture Center.  It is a great starting point for understanding the big picture and can provide the necessary context to ensure that we are following all of the best practices provided by the people that actually build the products we use every day.  Here's the link again.  Thanks for reading.  We hope you found this informative.

Brad Llewellyn
Service Engineer - FastTrack for Azure
Microsoft
@BreakingBI
www.linkedin.com/in/bradllewellyn
llewellyn.wb@gmail.com