Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Easy Data Processing on Azure with Serverless Functions

Easy Data Processing on Azure with Serverless Functions

Serverless or Function as a Service (FaaS) enables you to focus more on your code while making it easier to deploy your applications. FaaS can be great tools to perform data processing scenarios. Azure functions allow you to leverage Azure's robust, managed, and scalable cloud computing platform. In this workshop, Tania Allard will teach you how you can get started with Azure functions and Python for data processing scenarios.

✨ Check the tutorial at https://aka.ms/pycon2020-azurefunctions

✨ GitHub repository https://github.com/trallard/pycon2020-azure-functions

🐍 PyCon schedule description: https://us.pycon.org/2020/schedule/presentation/230/

Tania Allard

April 24, 2020

More Decks by Tania Allard

Other Decks in Technology


  1. Serverless computing Are there no servers at all? Yes there

    are but: - You are not responsible for the management or maintenance - Your cloud provider takes care of the provisioning @ixek
  2. Are responsible for the application code Decide what services to

    integrate (i.e databases, Blob Storage, email provider) You - the developer @ixek
  3. Event triggered (idle in the meantime) Coupled services Stateless and

    short-lived Asynchronous (do not wait for response) Serverless characteristics @ixek
  4. • You want to collect data from the StackExchange API

    - to monitor questions from a specific topic or tool • The data needs to be stored for later wrangling and reporting • Ideally, you want to get a daily digest in your inbox with the new questions created as well as a plot of the most commonly used tags in said questions The Scenario @ixek
  5. • Python 3.x (supported 3.6, 3.7, 3.8) • VS Code

    • Python VS Code Extension • Azure Functions VS Code Extension • StackExchange API app key https:!//api.stackexchange.com/ Requirements: @ixek
  6. Getting started - timer @ixek Timer trigger: Every day at

    9am Function gets executed Data is collected from StackExchange
  7. Extend function @ixek Timer trigger: Every day at 9am Function

    gets executed Data is collected from StackExchange Store in Blob Storage (csv) Trigger Binding
  8. Completing the scenario @ixek Function gets executed File added in

    Blob Storage (csv) Process data / Create plots Save plots Send digest Retrieve Data Trigger Binding