SlideShare ist ein Scribd-Unternehmen logo
1 von 57
Azure Notebooks
Tillmann Eitelberg
Sponsors
Many thanks to our sponsors, without
whom such an event would not be possible.
Sponsors
Many thanks to our sponsors, without whom such an
event would not be possible.
Über mich ...
Tillmann Eitelberg
CEO oh22information services GmbH
PASS Regional Mentor Germany
Vice-president PASS Germany
Chapter Leader Cologne/Bonn, Germany
Microsoft Data Platform MVP
https://www.linkedin.com/in/tillmanneitelberg/
@_Tillmann
www.decompose.io
https://pleasetalkdatatome.de
https://github.com/TEitelberg
www.oh22.is
Computational Notebooks
Computational Notebooks
- Erste Versionen von Computational Notebooks als Frontends
mitte der 1980er von Matlab, Mathematica & Maple
- interaktive Erstellung und Bearbeitung von Notebook-
Dokumenten
- formatierter Programmcode
- formatierter Text
- verschiedene Funktionen für Mathematik, Grafiken, GUI-
Komponenten, Tabellen und Sounds
- Standard-Textverarbeitungsfunktionen
- mehrsprachige Rechtschreibprüfung
- Ausgabe als Präsentation
IPython (Interactive Python)
- Erste Version in 2001 von Fernando Pérez entwickelt
- Projekt stark beeinflusst von Mathematica und Maple
- Kommandozeileninterpreter
- Ermöglicht interaktives Arbeiten mit Python
- Verschiedene Frontends (Terminal, browserbasiert)
IPython (Interactive Python)
- Trennung von Backend (Pythoninterpreter) und Frontend
- Kernel - führen Code aus
- Clients - lesen Eingaben und präsentieren Ausgaben
- REPL (Read – Eval – Print – Loop) als Protokoll
- Mit IPython 4.0 sind die sprachunabhängigen Teile des
Projekts in das Projekt Jupyter umgezogen.
Ipython Kernel
- IPython Kernel ist ein
eigenständiger Prozess
- verantwortlich für die
Ausführung von Benutzercode
- Frontends kommunizieren
mittels JSON Nachrichten
über ØMQ Sockets
- Ein Kernelprozess kann mit
mehreren Frontends
gleichzeitig kommunizieren
(gemeinsame Variablen)
Jupyter Notebooks
- Ausgliederung aus dem IPython Projekt
- Direkte Unterstützung der Sprachen Julia, Python und R
- Webbasierte Interactive Computing Umgebung
- REPL Ansatz
- Wird stark im Bereich Data Science und in der Lehre
eingesetzt
- Notebooks können geteilt werden
- Notebooks können in verschiedenen Formaten exportiert
werden
- Default Notebook Files „.ipynb“ sind JSON Dateien
Jupyter Notebook UI
Jupyterlab UI
Jupyter Kernel
- Sprachunabhängig
- Jupyter Notebooks verwenden den IPython Kernel
- Weitere Sprachen werden als IPython Kernel
Wrapper implementiert oder als native Kernels
- Über 100 Kernel
(https://github.com/jupyter/jupyter/wiki/Jupyter-
kernels)
- Unterstützung für PowerShell oder C#
Notebooks
User Browser
Notebook
Server
Kernel
Notebook
File
ØMQ
HTTP &
Websockets
Jupyter - Ein visueller Überblick
https://jupyter.readthedocs.io/en/latest/architecture/visual_overview.htm
JupyterHub
- Jupyter Notebooks sind Einzelbenutzeranwendungen
- Für Multi-User Anwendungen sollte der JupyterHub
eingesetzt werden
Jupyter
Hub
Anaconda – Lokale Installation
- (Python) Data Science Distribution
- Package Manager
- Kollektion von über 1000+ Open Source Packages
- Environment Manager
- Jupyter Notebooks, IPython, Orange3, RStudio,
Spyder
- Einfache Installation unter Windows
DEMO
Jupyter mit Anaconda
Azure Notebooks
Azure Notebooks
- https://notebooks.azure.com
- Aktuell in der Preview Version
- PaaS Variante der Jupyter Notebooks
- Kostenloses Azure Angebot
- 4 GB Hauptspeicher pro Session
- Microsoft hält sich das recht vor, Speicher nach 60
Tagen Inaktivität zu löschen
Azure Notebooks
- Shutdown nach 60 Minuten inaktivität, Notebooks
werden vorher gespeichert
- Ist das Notebook nicht mit einem Notebook-Server
verbunden, können Änderungen nicht gespeichert
werden
- Bei Verbindungsproblemen zum Server, kann auch eine
„Connection failed“ Meldung kommen
- Über das Menü „Kernel“ stehen verschiedene Kernel-
Optionen zur Verfügung (Interrupt, Restart, Reconnect)
Azure Notebooks
- können als Slideshow dargestellt werden
- können in verschiedenen Formaten exportiert werden
- Kernel für die Sprachen Python, R und F#
- Python Packages können via pip oder conda installiert
werden
- R Packages können via CRAN oder Github installiert
werden
- F# Packages können über nuget.org installiert werden
Azure Notebook Library
Azure Notebook Library
- Libraries können Public oder Private sein
- Über Environments können Setup Schritte für den
Start einer Library hinzugefügt werden
- GitHub Repos können als vollständige Library
importiert werden
- HTML Vorschau für Public Libraries
- Libraries können geklont werden
Azure Notebook Library
- Zugriff auf die Libraries via Terminal
- Änderungen am dadrunter liegenden System, falls
die Azure Notebooks Fehler erzeugen
mv “05 – F# Beispiele.ipynb“ “05 – F Beispiele.ipynb“
Azure Notebook Library
Azure Notebooks - Benchmark
- Matrix-Matrix Multiplikation als Benchmark Test
(http://www.walkingrandomly.com/?p=6351)
- Vergleich Azure Notebooks vs Thinkpad X1 Yoga
Max. 44 GFlop/s Max. 69 GFlop/s
DEMO
101
DEMO
Python
DEMO
R
DEMO
F#
DEMO
Python und Azure
DEMO
Beautiful Charts
DEMO
Comparing Clones
Comparing Clones
Comparing Clones
Azure Notebooks
Security
Security
- Jupyter Notebooks unterstützen
- Token-based Authentication (Standard)
- Password Authentication
- No Authentication
- Azure Notebooks verwenden Authentifizierung via
Microsoft Accounts
- Azure Notebooks verwenden direkt SSL
Kernel Installation
Julia
- Installation von Julia
https://julialang.org/downloads
- Pkg.add(“IJulia“)
Weitere Kernel
- R
conda install r-essentials
- JavaScript
npm install –g ijavascript
Tools und andere Dinge
Nbviewer.org
Nteract
mybinder.org
Docker Images
docker run -it --rm -p 8888:8888 jupyter/minimal-
notebook
docker run -it --rm -p 8888:8888 jaykul/powershell-
notebook-base
Books
- Python Data Science Handbook
https://github.com/jakevdp/PythonDataScienceHandbook
- Probabilistic Programming and Bayesian Methods for Hackers
https://github.com/CamDavidsonPilon/Probabilistic-
Programming-and-Bayesian-Methods-for-Hackers
- Numerical Computing is Fun
https://github.com/mikkokotila/jupyter4kids
- Python for Developers
http://ricardoduarte.github.io/python-for-developers/
- IPython Cookbook
https://github.com/ipython-books/cookbook-2nd-code
Links
• ZeroMQ - http://zeromq.org/
• Jupyter Documentation - http://jupyter.readthedocs.io
• Jupyter - http://jupyter.org/
• Anaconda - https://anaconda.org/
• JupyterLab - https://jupyterlab.readthedocs.io/
• Anaconda Cheat Sheet
https://docs.anaconda.com/_downloads/Anaconda-Starter-Guide-Cheat-Sheet.pdf
• Jupyter Notebook Tutorial: The Definitive Guide
https://www.datacamp.com/community/tutorials/tutorial-jupyter-notebook
• F# CheatSheet
https://dungpa.github.io/fsharp-cheatsheet/
• Run R and Python Remotely in SQL Server from Jupyter Notebooks or any IDE
https://blogs.msdn.microsoft.com/mlserver/2018/07/10/run-r-and-python-remotely-in-
sql-server-from-jupyter-notebooks-or-any-ide/
Many thanks to all volunteers!
Ben Kettner
Volker Bachmann
Cornelia Matthesius
Gabi Münster
Kai Gerlach
Alexander Klein
Björn Peters
Christa Kurschat
Christian Gräfe
Dirk Hondong
Dominik Petri
Henrik Schütze
Kai Michael Poppe
Klaus Betzing
Nadine Witthöft
Tobias Blödt
Rafael Dabrowski
Tanja Salwiczek
SQLSaturday #772 - Munich
27.10.2018
http://www.sqlsaturday.com/772
PASS Deutschland e.V.
For further information about future events, visit our
PASS Deutschland e.V. booth in the exhibitor area.
Sponsors
Many thanks to our sponsors, without
whom such an event would not be possible.
Sponsors
Many thanks to our sponsors, without whom such an
event would not be possible.

Weitere ähnliche Inhalte

Ähnlich wie Azure Notebooks

ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
Christoph Adler
 

Ähnlich wie Azure Notebooks (20)

Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
Konfigurations Management mit Puppet (Webinar vom 17.10.2013)
 
System- & Konfigurationsmanagement mit Foreman & Puppet
System- & Konfigurationsmanagement mit Foreman & Puppet System- & Konfigurationsmanagement mit Foreman & Puppet
System- & Konfigurationsmanagement mit Foreman & Puppet
 
Opensource Tools für das Data Center Management
Opensource Tools für das Data Center ManagementOpensource Tools für das Data Center Management
Opensource Tools für das Data Center Management
 
Systemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und ForemanSystemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und Foreman
 
Lotus Foundations Workshop Teil1
Lotus Foundations Workshop Teil1Lotus Foundations Workshop Teil1
Lotus Foundations Workshop Teil1
 
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit VagrantDeployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
 
Python in der Luft- und Raumfahrt
Python in der Luft- und RaumfahrtPython in der Luft- und Raumfahrt
Python in der Luft- und Raumfahrt
 
Industry 4.0 in a box
Industry 4.0 in a boxIndustry 4.0 in a box
Industry 4.0 in a box
 
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
 
Oracle on Azure
Oracle on AzureOracle on Azure
Oracle on Azure
 
Sleeping with the enemy Konrad Häfeli
Sleeping with the enemy Konrad HäfeliSleeping with the enemy Konrad Häfeli
Sleeping with the enemy Konrad Häfeli
 
OSMC 2010 | Verwendung von Puppet in verteilten Monitoring Umgebungen by Birg...
OSMC 2010 | Verwendung von Puppet in verteilten Monitoring Umgebungen by Birg...OSMC 2010 | Verwendung von Puppet in verteilten Monitoring Umgebungen by Birg...
OSMC 2010 | Verwendung von Puppet in verteilten Monitoring Umgebungen by Birg...
 
OpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
OpenStack und Heat - Standardisierte Test- und EntwicklungsumgebungenOpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
OpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
 
Automatisierte Linux installation 0603_version2012_inoxt_rz
Automatisierte Linux installation 0603_version2012_inoxt_rzAutomatisierte Linux installation 0603_version2012_inoxt_rz
Automatisierte Linux installation 0603_version2012_inoxt_rz
 
Python, Plone und Zope in der Luft- und Raumfahrtforschung
Python, Plone und Zope in der Luft- und RaumfahrtforschungPython, Plone und Zope in der Luft- und Raumfahrtforschung
Python, Plone und Zope in der Luft- und Raumfahrtforschung
 
Dnug35 ak-dev.071111-beyond
Dnug35 ak-dev.071111-beyondDnug35 ak-dev.071111-beyond
Dnug35 ak-dev.071111-beyond
 
fn project serverless computing
fn project serverless computingfn project serverless computing
fn project serverless computing
 
Orchestrierung einer Private Cloud mit OpenStack Heat
Orchestrierung einer Private Cloud mit OpenStack Heat Orchestrierung einer Private Cloud mit OpenStack Heat
Orchestrierung einer Private Cloud mit OpenStack Heat
 
Vagrant, Puppet, Docker für Entwickler und Architekten
Vagrant, Puppet, Docker für Entwickler und ArchitektenVagrant, Puppet, Docker für Entwickler und Architekten
Vagrant, Puppet, Docker für Entwickler und Architekten
 
System Center Configuration Manager with Azure, Intune and Application Manage...
System Center Configuration Manager with Azure, Intune and Application Manage...System Center Configuration Manager with Azure, Intune and Application Manage...
System Center Configuration Manager with Azure, Intune and Application Manage...
 

Azure Notebooks

  • 2. Sponsors Many thanks to our sponsors, without whom such an event would not be possible.
  • 3. Sponsors Many thanks to our sponsors, without whom such an event would not be possible.
  • 4. Über mich ... Tillmann Eitelberg CEO oh22information services GmbH PASS Regional Mentor Germany Vice-president PASS Germany Chapter Leader Cologne/Bonn, Germany Microsoft Data Platform MVP https://www.linkedin.com/in/tillmanneitelberg/ @_Tillmann www.decompose.io https://pleasetalkdatatome.de https://github.com/TEitelberg www.oh22.is
  • 6. Computational Notebooks - Erste Versionen von Computational Notebooks als Frontends mitte der 1980er von Matlab, Mathematica & Maple - interaktive Erstellung und Bearbeitung von Notebook- Dokumenten - formatierter Programmcode - formatierter Text - verschiedene Funktionen für Mathematik, Grafiken, GUI- Komponenten, Tabellen und Sounds - Standard-Textverarbeitungsfunktionen - mehrsprachige Rechtschreibprüfung - Ausgabe als Präsentation
  • 7.
  • 8. IPython (Interactive Python) - Erste Version in 2001 von Fernando Pérez entwickelt - Projekt stark beeinflusst von Mathematica und Maple - Kommandozeileninterpreter - Ermöglicht interaktives Arbeiten mit Python - Verschiedene Frontends (Terminal, browserbasiert)
  • 9. IPython (Interactive Python) - Trennung von Backend (Pythoninterpreter) und Frontend - Kernel - führen Code aus - Clients - lesen Eingaben und präsentieren Ausgaben - REPL (Read – Eval – Print – Loop) als Protokoll - Mit IPython 4.0 sind die sprachunabhängigen Teile des Projekts in das Projekt Jupyter umgezogen.
  • 10. Ipython Kernel - IPython Kernel ist ein eigenständiger Prozess - verantwortlich für die Ausführung von Benutzercode - Frontends kommunizieren mittels JSON Nachrichten über ØMQ Sockets - Ein Kernelprozess kann mit mehreren Frontends gleichzeitig kommunizieren (gemeinsame Variablen)
  • 11.
  • 12.
  • 13. Jupyter Notebooks - Ausgliederung aus dem IPython Projekt - Direkte Unterstützung der Sprachen Julia, Python und R - Webbasierte Interactive Computing Umgebung - REPL Ansatz - Wird stark im Bereich Data Science und in der Lehre eingesetzt - Notebooks können geteilt werden - Notebooks können in verschiedenen Formaten exportiert werden - Default Notebook Files „.ipynb“ sind JSON Dateien
  • 16. Jupyter Kernel - Sprachunabhängig - Jupyter Notebooks verwenden den IPython Kernel - Weitere Sprachen werden als IPython Kernel Wrapper implementiert oder als native Kernels - Über 100 Kernel (https://github.com/jupyter/jupyter/wiki/Jupyter- kernels) - Unterstützung für PowerShell oder C#
  • 18. Jupyter - Ein visueller Überblick https://jupyter.readthedocs.io/en/latest/architecture/visual_overview.htm
  • 19. JupyterHub - Jupyter Notebooks sind Einzelbenutzeranwendungen - Für Multi-User Anwendungen sollte der JupyterHub eingesetzt werden Jupyter Hub
  • 20.
  • 21. Anaconda – Lokale Installation - (Python) Data Science Distribution - Package Manager - Kollektion von über 1000+ Open Source Packages - Environment Manager - Jupyter Notebooks, IPython, Orange3, RStudio, Spyder - Einfache Installation unter Windows
  • 24. Azure Notebooks - https://notebooks.azure.com - Aktuell in der Preview Version - PaaS Variante der Jupyter Notebooks - Kostenloses Azure Angebot - 4 GB Hauptspeicher pro Session - Microsoft hält sich das recht vor, Speicher nach 60 Tagen Inaktivität zu löschen
  • 25. Azure Notebooks - Shutdown nach 60 Minuten inaktivität, Notebooks werden vorher gespeichert - Ist das Notebook nicht mit einem Notebook-Server verbunden, können Änderungen nicht gespeichert werden - Bei Verbindungsproblemen zum Server, kann auch eine „Connection failed“ Meldung kommen - Über das Menü „Kernel“ stehen verschiedene Kernel- Optionen zur Verfügung (Interrupt, Restart, Reconnect)
  • 26. Azure Notebooks - können als Slideshow dargestellt werden - können in verschiedenen Formaten exportiert werden - Kernel für die Sprachen Python, R und F# - Python Packages können via pip oder conda installiert werden - R Packages können via CRAN oder Github installiert werden - F# Packages können über nuget.org installiert werden
  • 28. Azure Notebook Library - Libraries können Public oder Private sein - Über Environments können Setup Schritte für den Start einer Library hinzugefügt werden - GitHub Repos können als vollständige Library importiert werden - HTML Vorschau für Public Libraries - Libraries können geklont werden
  • 29. Azure Notebook Library - Zugriff auf die Libraries via Terminal - Änderungen am dadrunter liegenden System, falls die Azure Notebooks Fehler erzeugen mv “05 – F# Beispiele.ipynb“ “05 – F Beispiele.ipynb“
  • 31. Azure Notebooks - Benchmark - Matrix-Matrix Multiplikation als Benchmark Test (http://www.walkingrandomly.com/?p=6351) - Vergleich Azure Notebooks vs Thinkpad X1 Yoga Max. 44 GFlop/s Max. 69 GFlop/s
  • 42. Security - Jupyter Notebooks unterstützen - Token-based Authentication (Standard) - Password Authentication - No Authentication - Azure Notebooks verwenden Authentifizierung via Microsoft Accounts - Azure Notebooks verwenden direkt SSL
  • 44. Julia - Installation von Julia https://julialang.org/downloads - Pkg.add(“IJulia“)
  • 45. Weitere Kernel - R conda install r-essentials - JavaScript npm install –g ijavascript
  • 50. Docker Images docker run -it --rm -p 8888:8888 jupyter/minimal- notebook docker run -it --rm -p 8888:8888 jaykul/powershell- notebook-base
  • 51. Books - Python Data Science Handbook https://github.com/jakevdp/PythonDataScienceHandbook - Probabilistic Programming and Bayesian Methods for Hackers https://github.com/CamDavidsonPilon/Probabilistic- Programming-and-Bayesian-Methods-for-Hackers - Numerical Computing is Fun https://github.com/mikkokotila/jupyter4kids - Python for Developers http://ricardoduarte.github.io/python-for-developers/ - IPython Cookbook https://github.com/ipython-books/cookbook-2nd-code
  • 52. Links • ZeroMQ - http://zeromq.org/ • Jupyter Documentation - http://jupyter.readthedocs.io • Jupyter - http://jupyter.org/ • Anaconda - https://anaconda.org/ • JupyterLab - https://jupyterlab.readthedocs.io/ • Anaconda Cheat Sheet https://docs.anaconda.com/_downloads/Anaconda-Starter-Guide-Cheat-Sheet.pdf • Jupyter Notebook Tutorial: The Definitive Guide https://www.datacamp.com/community/tutorials/tutorial-jupyter-notebook • F# CheatSheet https://dungpa.github.io/fsharp-cheatsheet/ • Run R and Python Remotely in SQL Server from Jupyter Notebooks or any IDE https://blogs.msdn.microsoft.com/mlserver/2018/07/10/run-r-and-python-remotely-in- sql-server-from-jupyter-notebooks-or-any-ide/
  • 53. Many thanks to all volunteers! Ben Kettner Volker Bachmann Cornelia Matthesius Gabi Münster Kai Gerlach Alexander Klein Björn Peters Christa Kurschat Christian Gräfe Dirk Hondong Dominik Petri Henrik Schütze Kai Michael Poppe Klaus Betzing Nadine Witthöft Tobias Blödt Rafael Dabrowski Tanja Salwiczek
  • 54. SQLSaturday #772 - Munich 27.10.2018 http://www.sqlsaturday.com/772
  • 55. PASS Deutschland e.V. For further information about future events, visit our PASS Deutschland e.V. booth in the exhibitor area.
  • 56. Sponsors Many thanks to our sponsors, without whom such an event would not be possible.
  • 57. Sponsors Many thanks to our sponsors, without whom such an event would not be possible.