Tag: Azure

AzureDatabase

Azure SQL Database DTU Calculator

When considering an Azure SQL instance, one of the decisions you need to make is the pricing level (Basic, Standard or Premium) and then for the selected level the number of DTU’s you need. Now you might be asking, "which service tier and performance level should I use and how many database throughput units (DTUs) am I using now?" 

First lets look at explaining what a DTU is and then we can look at how the DTU Calculator will help.

What are Database Transaction Units (DTUs)?

“A DTU is a unit of measure of the resources that are guaranteed to be available to a standalone Azure SQL database at a specific performance level within a standalone database service tier. A DTU is a blended measure of CPU, memory, and data I/O and transaction log I/O in a ratio determined by an OLTP benchmark workload designed to be typical of real-world OLTP workloads. Doubling the DTUs by increasing the performance level of a database equates to doubling the set of resource available to that database.”

How can I determine the number of DTUs needed by my workload?

If you are looking to migrate an existing on-premises or SQL Server virtual machine workload to Azure SQL Database, you can use the DTU Calculator to approximate the number of DTUs needed.

Following the instructions for the DTU Calculator, download either the Command Line Utility or PowerShell Script and run it to measure your server resource utilization. You want to get an hour worth of data.

Once the script completes, go to the DTU Calculator website and enter in the number of cores for your server and then upload the CSV file that was generated. Then click on the “calculate” button as show below.

image

After the DTU Calculator measures your server resource utilization, it will provide you the best recommendation for the number of DTU’s you should be using in Azure SQL.

Resources

AzureDevelopment

Real World Usage for Azure Functions

Came across an excellent blog post from @TroyHunt on using Azure Functions to track abusive IP addresses to a website and log them to an Azure storage account and then have another Azure Function on a timer to validate those IP addresses and block them if necessary.

https://www.troyhunt.com/azure-functions-in-practice/

Enjoy!

AzureCloud

Azure Monitor

This week saw the announcement of the public preview of Azure Monitor. Azure Monitor allows you to manage and explore all common tasks from a single view. Azure Monitor provides the following types of data – Activity Log, Metrics and Diagnostics Logs.

You can access the Azure Portal by clicking on the Monitor tab in the Azure Portal.

1eeeafee-e790-4ee8-bb11-58c925e01b24

Enjoy!

CommunicationDevelopment

Introduction to the Microsoft Bot Framework

At the Microsoft BUILD 2016 conference this year, Microsoft released the public preview of the Microsoft Bot Framework. The Microsoft Bot Framework provides just what you need to build and connect intelligent bots that interact naturally wherever your users are talking, from text/SMS to Skype, Slack, Facebook Messenger, Kik, Web Chat, Office 365 email and many other popular services which are constantly being added.

bot-framework-website

The Bot Framework enables organizations to build Bots, also known as intelligent conversation agents. It lets users interact with intelligent solutions as though they were conversing with a real person and interactions can take place in many forms, from text/SMS to Office 365 email, to Skype and Slack.

Bots are quickly becoming an integral part of the digital experience for users to interact with a service or application. The Bot Framework provides automatic translation to more than 30 languages, user and state management, tools for debugging, an embeddable chat control and the means for a user to discover, try and add bots to their conversation experience of choice.

“Bots are like new applications,” Microsoft chief executive Satya Nadella said. “And digital assistants are meta apps, or like the new browsers. And intelligence is infused into all of your interactions. That’s the rich platform that we have.”

The Bot Framework consists of three main components, the Bot Builder SDK, Developer Portal and the Bot Directory.

botframework_overview_july

Bot Builder SDK

The Bot Builder SDK is available on GitHub and is a set of code libraries in C# and Node.js to help with building the bot. It also provides integration with LUIS which is the Language Understanding Intelligent Service, which gives support for natural language interaction.

Bot Developer Portal

The Bot Framework Developer Portal is where you can go to connect your bot to any of the available channels. Here is a listing of all available services:

  • Register your bot
  • Connect to channels
  • Test
  • Publish
  • Manage
  • Measure

Bot Directory

The Bot Directory is a public directory of all available registered bots. From the Bot Directory you can browser, try and add bots to your favorite conversation experience.

You can also see a listing of available bots from Skype. Here is the Skype Preview app and if you click on the bots section, you can see 38 bots (at time of posting).

SkypeBots

You can checkout the Bot Directory for a full listing of registered bots.

In a future article I will explore creating a bot and deploying it to Azure.

Resources

Get started with the Bot Connector.

Microsoft Bot Samples: https://github.com/Microsoft/BotBuilder

Get started developing your first bot bot: https://dev.botframework.com/

Documentation: http://docs.botframework.com/sdkreference/

CloudDevelopment

Getting Started with Azure Functions

The first article of this series, Introduced what Azure Functions are and the capabilities they offer when used by themselves or combined with other Azure resources. This article will focus on getting started with just one of the types of Azure Functions available…the HttpTrigger function.

Creating the Azure Function

You can quickly get started with creating an Azure Function by going to the Azure Functions Get Started Portal. After logging in you will be taken to the Azure Functions getting started portal as shown below.

Portal1

Using the above Getting Started portal, enter the name and location of your Azure Function app, in my case I’m using a name of  GettingStartedAzureFunction and a location of East US.

Then then click on Create + get started button. This will then take you to the Azure portal inside your Azure Function app. From here you can get started quickly with a premade function, in my case I went with Webhook + API, and C# for the language. Finally click on the Create the function button to create this function.

AzureFunctionAppBlade-01

A new function named HttpTriggerCSharp1 will be generated for you, which will be based on C# and this function will be run whenever it receives an HTTP request.

HttpTriggerFunction-Code

At this point your function is ready to go. You can see the Function URL at the top and below is the generated code for the Http trigger.

Testing your Function

Since this function is generated from the quick starts, it already contains functional code which you can immediately run and test.

In this example you can quickly test the function by clicking on the Run button at the bottom of the page. It will pass a request body with the named parameter of “Azure” to the function, which will then show up in the Output pane to the right.

HttpTriggerFunction-Run

Alternatively you can also test the function by browsing to the URL to trigger the function. In this case I’ll navigate to the URL provided and the pass in the parameter name of “callon” to the query string like so.

HttpTriggerFunction-Test2

Monitoring your Function

Now that your function is up and running you can easily monitor it by going to the Monitor tab of your function. From here you can see recent success and error counts and inspect the function requests.

HttpTriggerFunction-Monitor

Managing your Functions

After creating your Azure Function app, you will be taken to your Azure Function app blade where you can create and manage your functions. If you need to get back to your Azure Function apps at a later time, you can navigate to the App Services blade and then filter by function as shown here.

AppServices-AzureFunctions

Next Steps

Now that you have your Azure Function you will most likely want to integrate it into other Azure resources or other apps. If you click on the Integrate tab of the function, you can quickly define an integration (triggers, inputs and outputs) and there is also an advanced editor available if needed.

HttpTriggerFunction-Integrate

Lastly if you scroll down on the Integrate tab, you will come to some handy documentation.

HttpTriggerFunction-Integrate2

In a future post I will walk through integrating an Azure function with another Azure resource.

Enjoy!

References

Azure Functions
Azure Functions Documentation
Testing Azure Functions

CloudDevelopment

How to Upgrade an Azure Function App

After creating an Azure Function app, you may notice a notification in your Azure Function app tat there is a new version of Azure Functions. I’ll walk you through the current process for upgrading your Azure Function app.

Upgrading

To start the upgrade process, click on link “Function app settings”:

Function App Settings 1

Then click on “Update”:

Function App Settings 2

Within a second your Function app should be upgraded to the latest version:

Function App Settings 3

That’s all that is required when upgrading your Function apps.

Enjoy!

Cloud

How to Invite Users to your Azure Subscription

There are a lot of awesome resources available with Microsoft Azure…Virtual Machines, Databases, Storage, Application Insights, Functions, Websites, IoT, Messaging, and a whole lot more. You’ll no doubt find that it’s easy to get started with Azure but sooner or later you will want to have other users use and possibly manage the resources you’ve created.

So how do you go about inviting users to your Azure subscription and providing them the necessary access and rights? Let’s take a look.

After logging in to your Azure portal, click on the Subscriptions navigation link on the left pane.

Dashboard - Subscriptions

You will then see a list of Azure subscriptions. Select the subscription you wish to manage.

Subscriptions

You will then see a blade open up to the right for the selected subscription. In your subscription blade will be an icon for users (top right corner of the Essentials pane). Click this button to manage users for this subscription.

sshot-1

Here you will see a listing of all users for this subscription. Click on the Add button to add a new user.

Users

The add new user blade will now open up. First thing that is required is to select a role for this user. There are numerous roles available. In this case I just want this user to have the Reader role, which allows them to view data only:

Add User - Role

After selecting the role for the user, click Select. Now you will need to invite a user. Type in the email address for their Microsoft Account. The user will then show up below. Make sure their email is selected with a checkmark. Then click on the Select button.

Add User - Invite User

Now that you’ve assigned the role and added a user, click on OK to complete the action of adding a user.

Add User - Completed

You will then see an Azure notification in the top right corner of your browser informing you that the user is being added. Within a few seconds the user should show up in your subscription users listing as shown below.

Add User - Done

Once you’ve added the user you can now navigate to a specific Azure Resource and assign the user. Let’s do this now with an Azure Function I have.

I’ve navigated to an existing Azure Function I have and I now want to add the user I just invited above. Click on the “Account control (IAM) link on the left and then click on the Add button on the right:

Add user to resource

Next assign the role and click Select. The select the users(s) you want to add. You can select one or more users.In this example I’m going to select both users. Then click on the Select button, followed by the OK button.

Add user to resource 2

You will then see an Azure notification informing you the users are being added and once complete, you will see them listed as shown below:

Add user to resource 3

That’s all there is to inviting users to your Azure subscription and then assigning them to specific Azure resources.

Enjoy!

CloudDevelopment

Introduction to Azure Functions

What is Azure Functions2

Azure Functions are a serverless, event driven experience that extends the existing Azure App Service platform, by building “nanoservices” that can scale based on demand and you only pay for the resources you use.

functionsAzure Functions is a solution for easily running small pieces of code, or "functions," in the cloud. You can write just the code you need for the problem at hand, without worrying about a whole application or the infrastructure to run it.

Supported Languages and Tools

Azure Functions can be created in C#, Node/JavaScript, Python, F#, PHP and scripting languages like Bash, Batch and PowerShell. You can even run executables.

Common Scenarios

Azure Functions is a great solution for building nanoservices, simple API’s, processing data and integration with systems. Here are some common scenarios for Azure Functions:

  • Timer-based processing
  • Azure service event processing
  • SaaS event processing
  • Serverless web application architectures
  • Serverless mobile backends
  • Real-time stream processing
  • Real-time bot messaging
sshot-306
Integrations

Azure Functions can be triggered by virtually any event in Azure, any 3rd party services, or any on premise systems. The following service integrations are supported by Azure Functions:

  • Azure DocumentDB
  • Azure Event Hubs
  • Azure Mobile Apps (tables)
  • Azure Notification Hubs
  • Azure Service Bug (queues and topics)
  • Azure Storage (blob, queues and tables)
  • GitHub (webhooks)
  • On-premises (using Service Bug)
Getting Started

You can quickly get started with creating an Azure Function by going to the Azure Functions Get Started Portal. After logging in you will be taken to the Azure Functions getting started portal as shown below.

Portal1

Or create a function app from Azure Portal. This can be found under New –> Web + Mobile –> Function App:

FunctionApp-Portal2

Once you’ve created your Function App, you will be taken to the Function App blade in the Azure Portal. From this blade you can create new functions by clicking on the New Function button on the top left, which will bring us to pre-built templates. If you click on an existing function, which are listed along the left side, you can edit the function, look at logs and even test the function.

Portal2

Have fun and take a look at Azure Functions and how they might help you. In my next post I’ll dive deeper and walk you through creating, running and testing the function app.

Enjoy!

References

Azure Functions
Azure Functions Documentation
Build 2016 Video: Introducing Azure Functions