Slide 1

Slide 1 text

Azure Functionsを用いて データウェアハウスの一部を自動化

Slide 2

Slide 2 text

課金基盤・POS・ECなどお金周りのプロダクト開発 社内ツールなど業務運用プロダクト開発 Freee・Kintoneなどクラウドサービスを利用した開発 医療ドメインのプロダクト開発 経歴 仕事 Webエンジニア 1. 自己紹介

Slide 3

Slide 3 text

業務システムからデータを抽出して、 BIツールを使用し分析・活用できる環境を整備。 抽出したデータをエンジニアがBatchでDBに登録していたが、 データウェアハウスの一部をAzure Functionsを用いて自動化。 概要 Azure FunctionsでBlobTriggerの実装時の ローカルテスト方法 背景 2. 概要

Slide 4

Slide 4 text

① 業務アプリケーション 業務 アプリケーション 各データをXMLファイルで出力 ZIP処理 Azure Blob Starageに アップロード ZIPを解凍 各XMLファイルを DB登録 BIツール ② データウェアハウス ③ ビジネスインテリジェンス ① 業務システムからデータを抽出 ② 業務アプリケーションのクレンジングデータをSQLServerに一時的に格納 ③ BIツールを利用してユーザーがデータにアクセス 3. BIシステムのアーキテクチャ

Slide 5

Slide 5 text

ストレージアカウント Blobコンテナー BLOB BLOB BLOB BLOB BLOB リソースグループ Blobコンテナー BLOB 権限あり 権限なし 認証方法:Azure Active Directory 権限付与:ロールアクセス制限 RBAC, 条件での制限 ABAC 4. 認証とアクセス制限

Slide 6

Slide 6 text

Blobコンテナー ① Zip解凍 ② XMLデータをDB登録 5. システム構成 ① 特定のコンテナーにZIPファイルが置かれたら解凍する ② 解凍したファイル郡をDBに登録する

Slide 7

Slide 7 text

Blobコンテナー 業務システム抽出データ(ZIP)を Blobストレージに転送 ZIPファイルを解凍 各XMLを命名規則に従って 指定のコンテナに転送 6. Azure Functions Zip解凍

Slide 8

Slide 8 text

解凍されたXMLファイルを Blobストレージに転送 XML解析 DB登録 7. Azure Functions データ登録

Slide 9

Slide 9 text

ローカル環境設定 ローカルでのアプリケーションの動作確認が可能 ・Azure Blob ・Queue Storage ・Table Storage Azure FunctionsからのAzuriteの実行 Azurite オープンソース エミュレーター 8. Azurite  Azuriteの実行

Slide 10

Slide 10 text

9. Azure Functions Localテスト Azuriteの機能によりAzureStorageをエミュレートし、ローカルで動作確認する

Slide 11

Slide 11 text

・業務や運用の一部分を自動化しやすい ・環境構築に時間がかからない ・他のAzureサービスとのバインド機能やトリガーで実装が簡易化 10. まとめ