Hello world! Welcome to AzureCAT Guidance!


azurecatandsqlcat_logo

Welcome to the AzureCAT Guidance blog!

What is AzureCAT? CAT stands for “Customer Advisory Team.” We work with customers who act as feedback Advisors back to our product teams, by working on engagements with those customers and building ground-breaking solutions! We then have unique lessons we’ve learned from those solutions. And, thus, we publish them back to you to show you these insights, architectures, lessons learned, best practices, and emerging patterns, with Microsoft products, like Azure, SQL Server, Power BI, Visual Studio (and dev tools), and more!

The CATalogue

Today’s post is our gallery of AzureCAT content, lovingly referred to as the CATalogue. Scroll down to find a wealth of resources. Ask us any questions in the comments. Let us know if you find these resources helpful!

This blog will cover what’s new with our content at AzureCAT:

The SQLCAT content can be found over at the SQLCAT blog:

We have a team dedicated to SAP workloads on Microsoft technologies:

And AzureCAT also includes our sub-team, patterns & practices. Their content can be found here:

Table of Contents

  1. patterns & practices
    1. Checklists
    2. Best Practices
    3. Scenario Guides
    4. Cloud Design Patterns
    5. Reference Architectures
    6. Resiliency Guidance
  2. AzureCAT Guidance
    1. Technical Customer Profiles
    2. Conceptual Articles
    3. Code Samples
    4. Tools
    5. How To Guides
  3. SQLCAT Guidance
    1. Conceptual Articles
    2. Explains
    3. How To Guides
    4. Troubleshooting
  4. Why Blog?

Let’s dig into our current content!

 

=========================

patterns & practices

Checklists

  1. Availability checklist
  2. Scalability checklist

Best Practices for Cloud Applications

  1. API design
  2. API implementation
  3. API security
  4. Autoscaling
  5. Background jobs
  6. Caching
  7. Content Delivery Network (CDN)
  8. Data partitioning
  9. Monitoring and Diagnostics guidance (new; added 1/25)
  10. Recommended naming conventions
  11. Retry general
  12. Retry service-specific

Scenario Guides

  1. Running Elasticsearch on Azure
  2. Identity management for multitenant applications
  3. Developing big data solutions

Cloud Design Patterns

  1. Prescriptive Architecture Guidance for Cloud Applications
  2. Optimizing Performance for Cloud Applications

Reference Architectures

Running VM workloads designed for infrastructure resiliency:

  1. Running a Windows VM on Azure
  2. Running a Linux VM on Azure
  3. Running multiple VMs for scalability and availability
  4. Running Windows VMs for an N-tier architecture
  5. Running Linux VMs for an N-tier architecture
  6. Running Windows VMs in multiple regions for high availability
  7. Running Linux VMs in multiple regions for high availability

Connecting your on-premises network to Azure:

  1. Implementing a hybrid network architecture with Azure and on-premises VPN
  2. Implementing a hybrid network architecture with Azure ExpressRoute
  3. Implementing a highly available hybrid network architecture

Securing your hybrid network:

  1. Implementing a DMZ between Azure and your on-premises datacenter
  2. Implementing a DMZ between Azure and the Internet

Providing identity services:

  1. Implementing Azure Active Directory
  2. Extending Active Directory Directory Services (ADDS) to Azure
  3. Creating a Active Directory Directory Services (ADDS) resource forest in Azure
  4. Implementing Active Directory Federation Services (ADFS) in Azure

Architecting scalable web application using Azure PaaS:

  1. Basic web application
  2. Improving scalability in a web application
  3. Web application with high availability

Resiliency Guidance

  1. Resiliency overview
  2. Resiliency checklist
  3. Failure mode analysis

 

=========================

azurecat_icon

AzureCAT Guidance

“Hands-on solutions, with our heads in the Cloud”

Technical Customer Profiles

Service Fabric:

  1. BMW
  2. Mesh Systems
  3. Proactima Solutions (new; added 1/24)
  4. Quorum Business Solutions
  5. Schneider Electric
  6. Talk Talk TV

SQL Server:

Conceptual Articles

Azure Resource Manager (ARM):

  1. SAP Now Supports Azure Resource Manager (ARM) for Windows and Linux
  2. New Azure PowerShell cmdlets for Azure Enhanced Monitoring

PowerShell:

  1. New Azure PowerShell cmdlets for Azure Enhanced Monitoring

Premium Storage:

  1. Top 14 Updates and New Technologies for Deploying SAP on Azure
  2. Where can I find documentation or information for SAP workloads on Azure? 
  3. Azure Premium Storage for SAP workloads

SAP HANA:

  1. Overview and Architecture of SAP HANA on Azure (Large Instances) (new; added 1/27)
  2. Infrastructure and Connectivity to SAP HANA on Azure (Large Instances) (new; added 1/27)
  3. Install SAP HANA on SAP HANA on Azure (Large Instances) (new; added 1/27)
  4. High Availability and Disaster Recovery of SAP HANA on Azure (Large Instances) (new; added 1/27)
  5. Troubleshooting and Monitoring of SAP HANA on Azure (Large Instances) (new; added 1/27)

Site Recovery:

  1. Protecting SAP Systems Running on VMware with Azure Site Recovery

SQL Data Warehouse:

  1. Migrating data to Azure SQL Data Warehouse in practice
  2. Azure SQL Data Warehouse loading patterns and strategies
  3. Choosing hash distributed table vs. round-robin distributed table in Azure SQL DW Service

SQL Database:

  1. Migrating from SQL Server to Azure SQL Database using Bacpac Files
  2. Determining Database Size in Azure SQL Database V12
  3. Azure SQL DB: Unexpected Database Maximum Size Limit
  4. Connect to Azure SQL Database V12 via Redirection
  5. Using Table Valued Parameters with Always Encrypted in Azure SQL Database
  6. Azure SQL Database Security Features

Virtual Machines:

  1. Top 14 Updates and New Technologies for Deploying SAP on Azure
  2. Where can I find documentation or information for SAP workloads on Azure? 
  3. More offers in SAP Cloud Appliance Library for Azure
  4. Azure Quickstart Templates for SAP
  5. Protecting SAP Systems Running on VMware with Azure Site Recovery
  6. Distribution Standard Application Benchmark for SAP cloud deployments released using Azure IaaS VMs
  7. How to Size SAP Systems Running on Azure VMs
  8. Top 10 Key Considerations for Deploying SAP Applications on Azure

Windows:

  1. SAP GUI is supporting Windows 10 as operating system

Code Samples

  1. IoT Sample with Service Fabric and IoT Hub
  2. IoT Sample with Service Fabric and Event Hubs
  3. Azure Service Fabric: Asynchronous Computing Actors
  4. Azure Service Fabric: Observer Sample
  5. IoT Sample: Reading events from an IoT Hub
  6. Event Hub Sample: Storing Event Hub events to Azure SQL Database
  7. Service Bus Sample: Handling Service Bus Relay Services in a multi-tenant environment

Tools

  1. Service Bus Explorer
  2. Service Bus Extensions
  3. Service Bus PowerShell Scripts

How-To Guides

Active Directory:

  1. How to Set Up Identity with Azure AD and Office 365 APIs (.NET) (new; added 1/31)

App Service:

  1. How to Provision ARM (.NET) (new; added 1/31)
  2. How to use SQL Always Encrypted with Azure Web App Service

Application Insights:

  1. How to Monitor with Application Insights (.NET) (new; added 1/31)

Azure Portal:

  1. How to Set Up a Developer Environment (.NET) (new; added 1/31)
  2. How to Monitor with Application Insights (.NET) (new; added 1/31)

Azure Resource Manager (ARM):

  1. How to Provision ARM (.NET) (new; added 1/31)

Development Setup:

  1. How to Set Up a Developer Environment (.NET) (new; added 1/31)
  2. How to Develop Modern Apps (.NET) (new; added 1/31)
  3. How to Set Up Identity with Azure AD and Office 365 APIs (.NET) (new; added 1/31)
  4. How to Set Up DevOps with Visual Studio Team Services (.NET) (new; added 1/31)
  5. How to Provision ARM (.NET) (new; added 1/31)
  6. How to Monitor with Application Insights (.NET) (new; added 1/31)

DocumentDB:

  1. How to Set Up Identity with Azure AD and Office 365 APIs (.NET) (new; added 1/31)

Event Hubs:

  1. How to store Event Hub events to Azure SQL Database
  2. How to read events off of Event Hubs from an IoT Hub with the Service Bus Explorer

IoT Hub:

  1. How to read events from an IoT Hub with the Service Bus Explorer

Redis Cache:

  1. How to Develop Modern Apps (.NET) (new; added 1/31)

Service Bus:

  1. How to implement a partitioned SendBatch method for Azure Service Bus entities
  2. How to read events from an IoT Hub with the Service Bus Explorer
  3. How to create a Service Bus Namespace and an Event Hub using a PowerShell script
  4. How to create Service Bus queues, topics and subscriptions using a PowerShell script
  5. How to handle Service Bus Relay Services in a multi-tenant environment

SQL Data Warehouse:

  1. Azure SQL DW: How to move to a different region with restore from backup option

SQL Database:

  1. How to store Event Hub events to Azure SQL Database

Storage:

  1. How to Develop Modern Apps (.NET) (new; added 1/31)

Stream Analytics:

  1. How to normalize incoming events in a Stream Analytics job
  2. How to find absence of signal in a Stream Analytics job

Virtual Machines:

  1. How to Set Up a Developer Environment (.NET) (new; added 1/31)

Visual Studio Team Services:

  1. How to Set Up DevOps with Visual Studio Team Services (.NET) (new; added 1/31)

=========================

sqlcat_icon

SQLCAT Guidance

Conceptual Articles & Whitepapers

AlwaysOn:

  1. SQL Server 2016 AlwaysOn for SAP
  2. SQL Server 2012 AlwaysOn: Performance Aspects and Performance Monitoring II 
  3. Reading from Database Mirroring or AlwaysOn Secondary Replicas in SAP Configurations

Azure SQL Data Warehouse:

  1. Migrating data to Azure SQL Data Warehouse in practice
  2. Azure SQL Data Warehouse loading patterns and strategies
  3. Choosing hash distributed table vs. round-robin distributed table in Azure SQL DW Service

Azure SQL Database:

  1. Migrating from SQL Server to Azure SQL Database using Bacpac Files
  2. Azure SQL DB: Unexpected Database Maximum Size Limit
  3. Connect to Azure SQL Database V12 via Redirection
  4. Using Table Valued Parameters with Always Encrypted in SQL Server 2016 and Azure SQL Database

R Services:

  1. SQL Server 2016 R Services makes you a smarter T-SQL Developer
  2. Early Customer Experiences with SQL Server R Services

SAP on SQL Server:

  1. Recent SAP BW improvements for SQL Server
  2. SQL Server: Improved SAP compression tool MSSCOMPRESS
  3. Whitepaper: SAP OS/DB Migration to SQL Server–FAQ v6.1 November 2016
  4. Moving from SAP 2-Tier to 3-Tier configuration and performance seems worse 
  5. SQL Server: Simplified and faster SAP BW Process Chains
  6. SAP on SQL: General Update for Customers & Partners June 2016
  7. SQL Server 2016 Distributed Availability Groups for SAP
  8. SQL Server 2016 AlwaysOn for SAP
  9. Whitepaper: SAP on SQL Server 2012 and SQL Server 2014 
  10. SQL Server: Improvements of SAP (BW) System Copy
  11. Distribution Standard Application Benchmark for SAP cloud deployments released using Azure IaaS VMs
  12. SQL Server 2012 AlwaysOn: Performance Aspects and Performance Monitoring II 
  13. Reading from Database Mirroring or AlwaysOn Secondary Replicas in SAP Configurations

SQL Server 2016:

  1. SQL Server: Oops Recovery with Temporal Tables
  2. SQL Server 2016: Supporting UTF-8 data for Bulk Insert or bcp utilities
  3. SQL Server 2016: Scripting Always Encrypted operations
  4. How SQL Server 2016 Cumulative Update 2 (CU2) can improve performance of highly concurrent workloads
  5. SQL Server 2016: Install Option for Instant File Initialization
  6. Using Table Valued Parameters with Always Encrypted in SQL Server 2016 and Azure SQL Database
  7. Changes in SQL Server 2016 Checkpoint Behavior
  8. Real World Parallel INSERT…SELECT: What else you need to know
  9. SQL Server 2016 R Services makes you a smarter T-SQL Developer
  10. SQL Server 2016: Parallel INSERT … SELECT
  11. SQL Server 2016:  Groups Automatic Seeding
  12. Early Customer Experiences with SQL Server R Services
  13. Checkpoint process for memory-optimized tables in SQL 2016 and implications on the log
  14. SQL Server 2016 Distributed Availability Groups for SAP
  15. SQL Server 2016 AlwaysOn for SAP
  16. SQL Server 2016: SSIS Data Flow Buffer Auto Sizing benefits data loading on Clustered Columnstore tables
  17. Soften the RBAR impact with Native Compiled UDFs in SQL Server 2016
  18. SQL 2016: Columnstore row group Merge policy and index maintenance improvements
  19. SQL Server and ‘Instant File Initialization’: Buffer Pool Extension
  20. SQL Server and ‘Instant File Initialization’: What happens when a database file is created
  21. SQL Server and ‘Instant File Initialization’: Physical and Valid Data Sizes

SSIS:

  1. SQL Server 2016: SSIS Data Flow Buffer Auto Sizing benefits data loading on Clustered Columnstore tables

T-SQL:

  1. SQL Server 2016 R Services makes you a smarter T-SQL Developer
  2. T-SQL ranking functions

Explains

Short descriptions and explanations:

  1. SQL Server 2016 improvements for SAP (BW)
  2. What is a DAX Expression?
  3. Determining Database Sizes in Azure SQL Database V12
  4. SQL Server 2016: DBCC CHECKDB with MAXDOP
  5. SQL Server 2016: TRUNCATE Selected Partitions
  6. The ‘aggregate concatenation’ T-SQL (anti-)pattern
  7. Common sub-expression elimination in SQL Server
  8. Finding SQL Server queries with large memory grants
  9. Azure SQL Database Security Features

How-To Guides

  1. Azure SQL DW: How to move to a different region with restore from backup option
  2. How to install or upgrade SAP Systems to SQL Server 2016
  3. How to improve query performance on memory optimized tables with Temporal using new index creation enhancement in SP1
  4. How to deploy SQL Server R Services without Internet access
  5. How to use SQL Always Encrypted with Azure Web App Service
  6. How to slow down a SQL Server Database Backup
  7. How to Install SQL Server 2016 RTM
  8. How to assign surrogate keys to dimension tables in SQL DW and APS

Troubleshooting

  1. Azure SQL DB: Unexpected Database Maximum Size Limit
  2. Transaction dependency limits with memory optimized tables – Error 41839
  3. PolyBase Setup Errors and Possible Solutions
  4. Considerations around validation errors 41305 and 41325 on memory optimized tables with foreign keys

 

Leave us comments to let us know what you think and what content is helpful!

 

=========================

Why Blog?

To share content! To share solutions! Like our tag line says, we offer “Hands-on solutions, with our heads in the Cloud.”

But, yes, somewhere deep down, we enjoy our solutions, and whatever is in our heads should be shouted out to everyone else as well, right?

So, with that in mind, we can’t publish a “Hello World” blog without digging into Scott Adam’s own musings about why blogs exist…

MY OWN DILBERT BLOG

 When I see news stories about people all over the world who are experiencing hardships, I worry about them, and I rack my brain wondering how I can make a difference.  So I decided to start my own blog.  That way I won’t have time to think about other people.

 People who are trying to decide whether to create a blog or not go through a thought process much like this:

  1. The world sure needs more of ME.
  2. Maybe I’ll shout more often so that people nearby can experience the joy of knowing my thoughts.
  3. No, wait, shouting looks too crazy.
  4. I know—I’ll write down my daily thoughts and badger people to read them.
  5. If only there was a description for this process that doesn’t involve the words egomaniac or unnecessary.
  6. What? It’s called a blog?  I’m there!

 The blogger’s philosophy goes something like this:

  •      Everything that I think about is more fascinating than the <poopy> in your head.

 The beauty of blogging, as compared to writing a book, is that no editor will be interfering with my randumb spilling and grammar yes, my complete disregard for the facts (blogs get you rich), and my wandering sentences that seem to go on and on and never end so that you feel like you need to take a breath and clear your head before you can even consider making it to the end of the sentence that probably didn’t need to be written anyhoo.

The Dilbert Newsletter, The Official Publication of Dogbert’s New Ruling Class, October 25, 2005, Issue 61

http://www.unitedmedia.com/comics/dilbert/dnrc/html/newsletter61.html (it used to be there)

 

And… I may have embellished his jokes a tad. You’ll never know that, though!

 

Leave us comments to let us know what you think and what content is helpful! As well as your own musings about why blogs exist. =^)

– Ninja Ede

Comments (28)

  1. UPDATE: I added 29 more links to articles, designated with “new; added 1/5”

  2. pituach says:

    Impressive! I see lot of posts on the list that seem very interesting (at least their titles… now I need to find the time to read all their the content 🙂 )

    1. Cool. Well, let me know if anything jumps out at you. I imagine especially in the SQL space (since that’s your MVP focus area). We can get your response or feedback to the author. Thanks, Pituach!

      1. Awesome Image Ed on this Great Blog ! I Like it 😉
        I will also Share this information in the Netherlands with Education ( Teachers and Students ) to Learn from.
        Best Regards, James

        1. Thank you James, for sharing this with the teachers in Netherlands!

  3. UPDATE: I added a definition at the top for what CAT stands for.

  4. Great stuff, ed!

    I love how the Azure team has moved all of their docs onto GitHub. It makes contributing to the official documentation so much easier than leaving a comment that ‘may’ get read be someone and then acted upon.

  5. UPDATE: I added 32 more links to articles, designated with “new; added 1/6”

  6. Wow, that’s a lot content. I see I have some catching up to do. Do you read all these articles yourself Ed, or do you have a couple of assistants feeding them to you? 🙂

    1. I read everything! Mwahahahaha!

      Sort of, kind of, maybe. =^)
      I guess it depends on the definition of “read”.

  7. Wolfgang says:

    Wow Ed and Azure/SQLCat team!

    Impressive list.. now I only need time to read through all those interesting articles!

    Thanks,
    Wolfgang

    1. Thanks Wolfgang! Let me know which articles help you out!

  8. Nathan says:

    Lots of great content here, but this page is in dire need of an RSS feed for new content!

    1. Indeed it is! I’ll be experimenting with RSS to see what WordPress has available. Thanks, Nathan!

  9. Mattthew Teeter says:

    How to use SQL Always Encrypted with Azure Web App Service is pointing to the wrong link

    1. Alrighty. I think we’re all fixed. Much appreciated, Matthew!

  10. Thank you Azure CAT & SQL CAT and Ed Price for sharing this Awesome content !
    Shared it with the Community and made a link on my blogrole 😉
    Best Regards,
    James

    1. Awesome, thanks for the share, James!

    2. James, that splash image you made is awesome. I updated this article with it. Please review the change and let me know what you think. Thank you!

  11. Arlan Nugara says:

    Thanks Ed for compiling such a fantastic set of resources for Azure! I may have to retire some of my own blog postings on some of these topics and point them to some of these articles instead. I will also start to include this on my end slide at my presentations as a must view set of resources for learning and working with Azure.

    1. Arlan, we greatly appreciate it. Let us know if you have any suggestions.

  12. UPDATES: I added the splash image at the top.

    I embellished the CATalogue section at the top, including adding a link to the SAP CAT blog:

    http://aka.ms/SAPCAT

    I added another content piece, the Service Fabric Customer Profile for Proactima Solutions:

    https://blogs.msdn.microsoft.com/azureservicefabric/2017/01/06/service-fabric-customer-profile-proactima-solutions/

    I also removed the “New” flag for the 1/5 additions, since those are no longer newly added.

  13. UPDATE: I added 5 SAP HANA articles.

    Here is the first article in that series: https://docs.microsoft.com/en-us/azure/virtual-machines/linux/sap-hana-overview-architecture?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json

    I also broke up the SQL CAT section called “Conceptual Articles & Whitepapers” into multiple sub-categories: AlwaysOn, Azure SQL Data Warehouse, Azure SQL Database, R Services, SAP on SQL Server, SQL Server 2016, SSIS, and T-SQL.

  14. UPDATES:

    I added 6 How-To articles about setup for Azure Development. Here is one example: https://github.com/AzureCAT-GSI/DevCamp/tree/master/HOL/dotnet/01-developer-environment

    Each article is available in 3 programming languages/flavors (.NET, Java, NodeJS), and so I added the different links in.

    I also finally got the TOC to work on this page. Click a link at the top to pop down to that section.

    And I removed the “new” tags next to the articles that I added on 1/6. Because they aren’t new anymore.

    Next: I have some workshops to add in.

  15. Hello Ed, I’m linking every blogpost I made to this site with my new Azure Advisor Banner 😉
    (See here for your self, just hit the banner under in the blogpost.)
    https://mountainss.wordpress.com/2017/02/11/microsoft-map-toolkit-9-6-now-available-winserv-sql2016-azure-office365-cloud-tool/

  16. skeeler says:

    Hi Ed, great content! Is it possible to get an RSS feed for the site?

Skip to main content