BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース MicrosoftがAzure FunctionsでのPythonサポートの公開プレビューを発表

MicrosoftがAzure FunctionsでのPythonサポートの公開プレビューを発表

原文(投稿日:2018/12/28)へのリンク

先日のConnect()イベントでMicrosoftは,Azure FunctionsのPythonサポートの公開プレビューを発表した。これにより,オープンソースのFunction 2.0ランタイムに基づいてPython 3.6で構築した関数の,"Consumption(従量課金)" Planへのパブリッシュが可能になる。

10月初めにInfoQが伝えたAzure Functionsランタイム 2.0の一般提供以来,Pythonのサポートはトップリクエストのひとつであり,プライベートプレビューを通じて提供されていた。今回それが一般公開されたことで,データ操作やマシンラーニング,スクリプティング,オートメーションシナリオにおいて有効な関数の開発ができるようになる。

Azure Runtime 2.0には言語ワーカモデルがあり,JavaやPythonのような非.NET言語のサポートが可能になっている。これを利用して,既存の.pyスクリプトやモジュールをインポートしたり,関数を記述することができる。requirement.txtファイルを使って,pip用の依存関係を追加設定することも可能だ。

 
出典: https://azure.microsoft.com/en-us/blog/taking-a-closer-look-at-python-support-for-azure-functions/

Azure Functionのプログラミングモデルに用意されているトリガやバインディングを使えば,関数の実行をトリガするイベントや,関数がオーケストレーションする必要のあるデータソースを構成することが可能になる。MicrosoftでAzure Functionsチームのプログラムマネージャを務めるAsavari Tayal氏によると,今回リリースされるプレビュー版では,HTTP要求のバインディング,タイマイベント,Azure Storage,Cosmos DB,Service Bus,Event Hubs,Event Gridなどがサポートされる。設定が完了すれば,これらのバインディングからデータを素早くリトリーブしたり,あるいは自作したエントリポイント関数のメソッド属性を使って書き戻したりすることが簡単にできる。

Pythonに慣れた開発者ならば,新しいツールを覚える必要はなく,MacやLinux,あるいはWindowsマシンを使って,関数をローカルにデバッグおよびテストすることが可能になる。Azure Functions Core Tools (CLI)を使えば,Azureプラットフォームがビルドと構成情報を処理してくれるため,トリガテンプレートを使って手軽に開発を開始し,Azureに直接パブリッシュすることができる。さらに,Pythionエクステンションを含むAzure Functions Extensions for Visual Studio Codeを使えば,任意のプラットフォーム上でPythonのオートコンプリートやIntelliSense,リンティング(linting),デバッグを行うことが可能になる。


出典: https://azure.microsoft.com/en-us/blog/taking-a-closer-look-at-python-support-for-azure-functions/

Python言語で記述したAzure Functionsは,Consumption PlanService App Planのいずれでもホストすることができる。Tayal氏はブログ記事で,Pythonプレビューに関して次のように説明している。

内部的には,どちらのホスティングプランも,オープンソースのazure-function/pythonベースイメージをベースに使用したDockerコンテナ上で関数を実行します。プラットフォームがコンテナを抽象化するので,ユーザはPythonファイルを提供すればよく,基盤にあるAzure FunctionsやPythonランタイムの管理を気にする必要はありません。

最後に,今回のPython 3.6のサポートによってMicrosoftは,競合するAmazonのサービスで,すでにこのバージョンのPythonをサポートしているAWS Lambdaに追いつくことになる。Cloudプラットフォーム上で実行するコードの言語を増やすことにより,MicrosoftもAmazonも,より広いユーザへのリーチを目指している。

この記事に星をつける

おすすめ度
スタイル

BT