SlideShare a Scribd company logo
1 of 54
Download to read offline
2020年からはじめる
Azure Cosmos DB 入門 recap
第1回 Azure Cosmos DB 勉強会
はじめに
本資料について
▸ 本資料の記載は 2020/7/28 現在において、作者が確認できている内容に基づいていま
す。
▸ なお、本資料に誤植や誤りがないことについては保証しかねます。
▸ 本資料に記載されている情報、意見および、その他の内容については、作者が所属する
組織を代表するものではありません。
Agenda
Azure Cosmos DB 入門 with Azure Synapse Link
▸ Azure Cosmos DB について
▸ Azure Cosmos DB 概要
▸ Azure Cosmos DB を利用するメリット
▸ MS Build 2020 (+α) のアップデート情報
▸ Azure Cosmos DB で開発を始める
▸ Azure Cosmos DB に接続する
▸ Visual Studio Code 拡張機能
▸ JavaScript SDK (SQL API) を使ってみる
▸ 既存のアプリから Cosmos DB を利用する
▸ Azure Synapse Link を使ってみる
▸ Azure Synapse Link 概要
▸ Azure Synapse Link を使うメリット
▸ Azure Synapse Link の設定方法
▸ さいごに
Azure Cosmos DB
概要
Azure Cosmos DB について
Azure Cosmos DB 概要
Azure Cosmos DB とは
▸ あらゆる規模に対応するオープン API を備えた高速な NoSQL データベース
▸ Microsoft 社によってグローバルに配布されるマルチモデルデータベースサービスとし
て、2017 年に一般公開
▸ 読み取りと書き込みのレイテンシーが 1桁ミリ秒 を要求される運用/分析ワークロード
向けに最適化
▸ 99.99 % 以上の高可用性 (SLA)、スループットと一貫性を保証
Azure Cosmos DB 概要
Cosmos DB がサポートする API
▸ Core (SQL) / MongoDB / Cassandra / Azure Table / Gremlin
Azure Cosmos DB 概要
課金の仕組み
▸ 以下の内容を踏まえて課金が行われる
▸ プロビジョニング済みコンテナー数(コンテナーはテーブルのイメージ)
▸ コンテナがオンラインであった時間数
▸ 各コンテナーのプロビジョニングスループット
▸ プロビジョニングスループット
▸ 1RU = シングルパーティションから1KBのドキュメントを1回読み取りに相当 (書き込み:PUTは2倍)
▸ 最小のプロビジョニングスループットは、400 RU/s (1ヶ月あたり 10 億回の読み取りに相当)
▸ スループットは 100 RU/s 刻みでスケーリング可能 (1ヶ月あたり 2 億 6780 万回の読み取りに相当)
▸ 手動構成による設定、およびオートパイロットによる自動構成が選択可能
Azure Cosmos DB
を利用するメリット
Azure Cosmos DB について
Azure Cosmos DB を利用するメリット
ターンキー グローバル分散
▸ 応答性と可用性が高いアプリケーション
を世界的な規模で構築できる
▸ どこにいてもデータが透過的にレプリ
ケートされ、ユーザーは最も近い場所に
あるデータのレプリカと対話できる
▸ 1クリックで、レプリケート先のAzure
リージョンを追加したり、削除できる
▸ グローバル分散についての詳細
▸ Microsoft Docs
▸ レイテンシ考慮の場合に強い
Azure Cosmos DB を利用するメリット
スキーマやインデックスの管理が不要
▸ すべてのデータのインデックス付けを自動で行い、高速クエリを提供
▸ すべてのコンテナーにコンテナーの項目のインデックスを作成する方法を指示
▸ 「同期」と「なし」の2つのインデックス作成モードをサポート
▸ 既定では、インデックス作成ポリシーは automatic = true(自動で有効)に設定
▸ カスタムインデックス作成ポリシーも設定可能
▸ 複合インデックス、空間インデックス、プロパティパスの包含・除外の指定が可能
▸ インデックス作成ポリシーについての詳細
▸ Microsoft Docs
Azure Cosmos DB を利用するメリット
明確に定義された複数の整合性の選択肢
▸ Cosmos DB のマルチマスター レプリケーション プロトコルは5つの整合性を重視
▸ 強固
▸ 有界整合性制約
▸ セッション
▸ 一貫性のあるプレフィックス
▸ 最終的
▸ 極端な整合性、可用性、待ち時間、スループットのトレードオフを行うことが不要になる
▸ 整合性の詳細については、以下サイトを参照
▸ Azure Cosmos DB の整合性レベル
▸ azure/azure-cosmos-tla ‒ GitHub
強固 有界整合性制約 セッション 一貫性のあるプレフィックス 最終的
強力な一貫性 弱い一貫性
Azure Cosmos DB を利用するメリット
包括的な SLA と 99 パーセンタイルの低待機時間
▸ 99.99 % (スループット、一貫性、可用性、レイテンシの保証)
▸ 5 つの一貫性レベルのいずれかで構成された、単一 Azure リージョンにスコープされている Azure
Cosmos DB データベースアカウント
▸ 4つの緩やかな一貫性レベルのいずれかで構成されている、複数の Azure リージョンにまたがる Azure
Cosmos DB データベースアカウント
▸ 書き込み可能なエンドポイントとして複数の Azure リージョンの構成を可能にしている場合、読み取り
と書き込みの両方で 99.999 % SLA の可用性が提供される
▸ SLA については、以下サイトを参照
▸ Azure Cosmos DB のSLA
▸ 世界中で読み取り (インデックス付き) と書き込みの両方に対して 99 パーセンタイルで
の 10 ミリ秒未満の待機時間を保証
Azure Cosmos DB を利用するメリット
人気のある OSS API を使用したアプリケーション開発
▸ 既存のクライアントドライバー(ツール)を使って参照が可能
▸ Gremlin、Cassandra、MongoDB
▸ アプリケーションロジックの重要な部分を保持しながら Cosmos DB に移行が可能
▸ 少ない労力で、業界最高レベル、SLA が提供されるフルマネージドサービスが利用可能
▸ ニーズに応じて、プロビジョニングスループットや容量を弾力的にスケーリング可能
▸ アプリケーションの移植性を保持したまま、クラウドベンダーに非依存な状態を維持可能
MS Build 2020 (+α)
のアップデート情報
Azure Cosmos DB について
MS Build 2020 でのアップデート情報
オフィシャルな説明は de:code 2020 の動画にて
▸ https://www.youtube.com/watch?v=rB-wioomITo
MS Build 2020 でのアップデート情報
Azure Synapse Link
▸ 抽出
▸ 変換
▸ ロード
→処理負荷0に
MS Build 2020 でのアップデート情報
Azure Synapse Link (Azure Synapse Analytics の拡張機能)
▸ クラウドネイティブのハイブリッドトランザクションおよび分析処理(HTAP)機能
▸ グローバルに分散された大規模運用データをETL対応無しでほぼリアルタイムに分析
▸ Synapse Spark または Synapse SQL を使用し、Azure Cosmos DB でのトランザク
ションワークロードのパフォーマンスに影響を与えず、ほぼリアルタイムのビジネスイ
ンテリジェンス、分析、機械学習パイプラインを実行可能
MS Build 2020 でのアップデート情報
Azure Synapse Link
▸ Azure Cosmos DB分析ストアは、2020年8月30日まで、消費ストレージGBまたはス
トレージトランザクションに対して無料でパブリックプレビューで利用可能
▸ SynapseSpark と Synapse SQL の使用量は、Azure Synapse Services の消費を通
じて請求
▸ 詳細については、Azure Cosmos DB の Azure Synapse Link のブログ投稿を参照
MS Build 2020 でのアップデート情報
オートパイロット機能が GA (オートスケール)
▸ 自動スケールプロビジョニングされたスループットの Azure Cosmos DB の
新料金モデル
▸ 無償枠適用内
MS Build 2020 でのアップデート情報
顧客管理キーを使用した保存時の暗号化の強化
▸ カスタマーマネージドキー
▸ 顧客 (エンドユーザー) が制御できる暗号化キーを使用した暗号化が可能
▸ キーストアとしてAzure Key Vaultにてキーをセキュアに管理可能
▸ データの二重暗号化を実現
顧客管理のキーを利用した
暗号化
あなたの
データ
サービス管理のキーを利用
した暗号化
MS Build 2020 でのアップデート情報
Jupyter Notebook の新機能
▸ C# Notebooks
▸ データエクスプローラーに組み込まれている Jupyter Notebook で C# を実行可能
▸ Azure Cosmos DB .NET SDK の組み込みインスタンスを含む
▸ 必要に応じて独自の NuGet パッケージをインポート可能
▸ GitHub 連携
▸ Notebook workspaces を GitHub リポジトリに接続
▸ GitHub Notebook がワークスペースで表示、実行、編集でき、変更を GitHub に直接保存可能
▸ すべて Azure Data Explorer から簡単に保存可能
MS Build 2020 でのアップデート情報
Python SDK 4.0 for SQL API
▸ https://pypi.org/project/azure-cosmos/4.0.0/
▸ 新しい API 設計 (CosmosClient / Database / Container / User にスコープ)
▸ Cosmos DB データベースを作成して設定を変更
▸ JSONドキュメントのコレクションを格納するコンテナーを作成および変更
▸ コンテナー内のアイテム(JSONドキュメント)の作成、読み取り、更新、削除
▸ SQLに似た構文を使用してデータベース内のドキュメントをクエリ
▸ クライアント接続は azure.core.pipeline で定義されたHTTPパイプラインを使用する
ように適合
MS Build 2020 でのアップデート情報
Java SDK 4.0 for SQL API
▸ https://mvnrepository.com/artifact/com.azure/azure-cosmos
▸ 負荷時のリクエストのスループットと安定性が大幅に最適化された
▸ 古いJava SDK(v3およびv2)よりも20%パフォーマンスが向上
▸ 最高のパフォーマンスを得るための (ヒント)についてもブログで紹介
▸ Azure Cosmos DB Java SDK v4 ‒ General Availability
▸ プログラムによるオートスケールのスループットのプロビジョニングを完全サポート
▸ ThroughputPropertiesクラス
▸ DISTINCTクエリの追加
▸ サーバ側のAzure Cosmos DBの処理だけでなく、クライアント側の機能としても実装(サンプル)
▸ Analytical Time-to-Live (TTL)が追加
MS Build 2020 でのアップデート情報
Azure Private Link
▸ 仮想ネットワークから Azure Platform as a Service サービスへのプライベート接続を
提供
▸ パブリックインターネットへのデータ公開を排除
▸ ネットワークアーキテクチャを簡素化し、Azure のエンドポイント間の接続を保護
▸ 制限付きネットワークセキュリティグループ (NSG) ポリシーと組み合わせてデータ漏洩リスクを軽減
MS Build 2020 でのアップデート情報
変更フィードの削除と保持プレビューの更新
▸ 現在は、書き込みと各ドキュメントの最新バージョンのみ
▸ 削除とすべての更新のサポートを追加
▸ 変更フィードを利用してリアルタイムのデータ移動を実行したり、マテリアライズドビューを構築したり
することがさらに簡単に
▸ プッシュモデルに加えてプルモデルも登場
MS Build 2020 でのアップデート情報
サーバレス
▸ プロビジョニングされたスループットの概念を排除
▸ オペレーションごとに消費されたリソース (RU/s) に対して顧客に請求
▸ 安定したスループットを必要とせず、プロビジョニング状態を維持する必要がないテス
トや開発環境などでの利用に効果的
MS Build 2020 でのアップデート情報
ポイントインタイムリストア(PITR)
▸ 有効にしてから最大35日間の任意の時点で、継続的バックアップからコンテナーを回復
Azure Cosmos DB に
接続する
Azure Cosmos DB で開発を
始める
Azure Cosmos DB に接続する
SDK / REST API 、既存のドライバーなど経由で接続
▸ Azure Cosmos DB SDK を利用
▸ .NET / Java / JavaScript / Python
▸ Azure Cosmos DB REST API を利用
▸ REST を介した SQL API を使用して Azure Cosmos DB を操作できる
▸ Azure Cosmos DB: REST API リファレンス
▸ 既存のクライアントSDK、ドライバー、ツール などを利用
▸ データエクスプローラー、ストレージエクスプローラー
▸ MongoDB、Cassandra、Gremlin、Azure Table Storage、etcd、Power BI コネクタ など
▸ Azure Cosmos DB Emulator
Azure Cosmos DB に接続する
データエクスプローラー
▸ Azure Portal 上にて、Azure Cosmos DB の様々な操作を実行
▸ SQLなどのクエリ実行や、Jupyter Notebook の実行が可能
Azure Cosmos DB に接続する
Azure Cosmos DB Emulator
▸ 要 Windows / Windows コンテナー
▸ Azure Cosmos DB のエミュレータとして、Azure の環境なしで利用可能
▸ SQL、MongoDB、Cassandra、Gremlin、Azure Table の API を利用可能
▸ Azure Cosmos DB Data Migration Tool で Azure Cosmos DB とのデータ移行も可能
▸ ソフトウェア要件
▸ Windows Server 2012 R2、Windows Server 2016、または Windows 10 (64 bit)
▸ 最小ハードウェア要件
▸ 2 GB の RAM、10 GB のハードディスク空き容量
Visual Studio Code
拡張機能
Azure Cosmos DB で開発を
始める
Visual Studio Code 拡張機能
Azure Databases 拡張機能
▸ 2020/5/28 に名称変更 (リポジトリは同じで PostgreSQL 対応が追加)
▸ 旧 Azure Cosmos DB 拡張機能
▸ https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-cosmosdb
▸ 400 RU/s からコレクションを作成できるように対応! (PR出したら通ったよ!)
Visual Studio Code 拡張機能
データベースやコンテナーの作成・削除
Visual Studio Code 拡張機能
データの挿入・更新・削除・参照
Visual Studio Code 拡張機能
Mongo Scrapbooks
▸ クエリ実行
▸ Intelligence
Visual Studio Code 拡張機能
グラフデータベース参照
▸ テキストエディタで 3D View
JavaScript SDK を
使ってみる
Azure Cosmos DB で開発を
始める
JavaScript SDK (SQL API) を使ってみる
コンソールアプリを作成
▸ Microsoft Docs のチュートリアルを実践
▸ チュートリアル:JavaScript SDK を使用して、Azure Cosmos DB SQL API データを管理するための
Node.js コンソール アプリを構築する
JavaScript SDK (SQL API) を使ってみる
Node.js で CRUD Webアプリを作る
▸ Microsoft Azure Cosmos DB Service Node.js SDK for SQL API を利用
▸ @azure/cosmos
▸ TypeScript / Express フレームワークを利用して、WebAPI サーバを構築
▸ SQL API で Cosmos DB を操作できるため、普段 RDB を使っているユーザーでも簡単
▸ 詳しくは Qiita 記事にて
▸ 2020 年から始める Azure Cosmos DB ‒ Node.js で CRUD アプリを作る
▸ 2020 年から始める Azure Cosmos DB ‒ JavaScript SDK (SQL API) を見てみる (Part.1)
既存のアプリから
Cosmos DB を利用す
る
Azure Cosmos DB で開発を
始める
既存のアプリから Cosmos DB を利用する
既存のクライアントドライバは変更せずにOK
▸ アプリ側で使用する接続文字列を Azure Cosmos DB のものに書き換えるだけ
▸ Azure Cosmos DB のオープン API 側で従来と同じ動作を保証
▸ Azure Cosmos DB アカウントは、対応する API で構築する必要あり
▸ MongoDB、Cassandra、Azure Tables、Gremlin
Azure Synapse
Link を使ってみる
Azure Synapse Link を使ってみる
Azure Synapse Link (Azure Synapse Analytics の拡張機能)
▸ クラウドネイティブのハイブリッドトランザクションおよび分析処理(HTAP)機能
▸ グローバルに分散された大規模な運用データをETLなしでほぼリアルタイム分析
▸ Synapse Sparkまたは Synapse SQL を使用し、Azure Cosmos DB でのトランザク
ションワークロードのパフォーマンスに影響を与えず、ほぼリアルタイムのビジネスイ
ンテリジェンス、分析、機械学習パイプラインを実行可能
※再掲
Azure Synapse Link を使ってみる
Azure Synapse Link の仕組み
トランザクションストア 分析ストア
トランザクションの読み
取りおよび書き込み用に
最適化された行ストア
分析クエリ用に最適化された
列ストア
運用データ
機械学習
ビックデータ分析
BI ダッシュボード
自動で同期自動で同期
Azure Synapse Link を使うメリット
データウェアハウスへのデータ移行負荷がゼロ
▸ 夜間や業務時間外にデータベース内の運用データを DWH へ移行する必要がない
▸ オンラインで、リアルタイムに、Azure Synapse Analytics でデータ分析ができる
▸ 従来は管理パイプラインによってデータの ETL が必要で、パフォーマンスへの影響も最小限にする必要あり
▸ Azure Cosmos DB 分析ストアにあるデータを分析するため、ETL というものがない
▸ 管理パイプラインも VNet も 仮想ネットワークも不要
▸ ETLジョブや変更フィードの確認・監視や、複雑なデータ移動の理解も必要なし
▸ Azure Cosmos DB だけでなく、(今後) Azure SQL Database のデータも対応
▸ 複数のデータを統合して分析するためのデータ移行や抽出、加工が必要なし
▸ Google Big Query よりも高速な分析基盤を簡単に利用できる
Azure Synapse Link を使うメリット
運用ワークロードと分析ワークロードが別扱い
▸ Azure Synapse Link に関連するトラフィックは別物として処理
▸ 運用ワークロード用にプロビジョニングされたスループットは使用しない
▸ Azure Cosmos DB 分析ストア (個別の列ストア) に対して分析クエリを実行
▸ 分析だけでなく、BI や機械学習を実行したい際にも、運用側に影響を与えることがなく実施できる
Azure Synapse Link の設定方法
データエクスプローラーでワンクリック
▸ データエクスプローラー上で設定を有効化後、Azure Synapse Studio で接続設定
▸ Azure Synapse Studio では SQL と MongoDB が表示されている
Azure Synapse Link の設定方法
制限事項 (2020/7/28 現在)
▸ パブリックプレビューは Azure Cosmos DB SQL (Core) API のみ
▸ MongoDB API および、Cassandra API については、プライベートプレビュー
▸ 今後は、すべての API で実行できるようになる (予定らしい)
▸ 分析ストアは新規コンテナのみ設定可能
▸ Azure Cosmos DB アカウントは新規でも既存でも OK
▸ すでにあるコンテナに対して分析ストアを有効にすることはできない
▸ Synapse SQL でのアクセス
▸ Synapse SQL Serverless での Azure Cosmos DB 分析ストアへのアクセスはプライベートプレビュー
▸ プロビジョニング済み Synapse SQL でのアクセスは未対応
まとめ
まとめ
2020 年は Azure Cosmos DB がアツい!
▸ 400 RU/s、5GB の無償枠が登場
▸ オートパイロット(オートスケール)機能が GA
▸ Azure Synapse Link により No-ETL でデータ分析がほぼリアルタイムに実行可能
▸ もうすぐサーバレスもパブリックプレビュー
▸ SDK 対応言語が豊富
▸ Visual Studio Code 拡張機能もどんどん機能追加中
▸ みなさんも Azure Cosmos DB を使っていろいろ開発してみてね!!
参考情報
Azure Blog / Azure Cosmos DB Blog
▸ Azure Cosmos DB で任意のサイズまたはスケールのアプリを構築
▸ Azure Cosmos DB wrap-up: May 2020 BUILD Announcements
▸ Enhanced encryption at rest with customer-managed keys
▸ Autoscale + serverless: new offers to fit any workload
▸ Unlock near real-time, no-ETL analytics at scale with Azure Synapse Link for
Azure Cosmos DB
▸ Azure Cosmos DB Java SDK v4 ‒ General Availability
▸ Change Feed ‒ Unsung Hero of Azure Cosmos DB
▸ New Azure Cosmos DB PowerShell features for greater enterprise
manageability
▸ Data Modeling and Partitioning for Relational Workloads
参考情報
Microsoft Docs
▸ Azure Cosmos DB の概要
▸ Azure Cosmos DB でのパーティション分割
▸ Azure Cosmos DB の要求ユニット
▸ ストアド プロシージャ、トリガー、およびユーザー定義関数
▸ Azure Cosmos DB でのオンライン バックアップとオンデマンドのデータ復元
▸ Azure Cosmos DB の etcd API (プレビュー) の概要
▸ Azure Cosmos DB でのインデックス作成ポリシー
▸ Azure Synapse Link for Azure Cosmos DB (プレビュー) とは
▸ Azure Cosmos DB のさまざまな API についてよく寄せられる質問
参考情報
その他
▸ Microsoft Mechanics ‒ YouTube
▸ Azure Cosmos DB + Azure Synapse Link ¦ Cloud-Native HTAP
▸ Hack Azure! - YouTube
▸ #2 Ask the Geeks - Cosmos DB 編
▸ EnterpriseZine
▸ そろそろ、HTAPの話をしよう
▸ 学習向け情報
▸ Microsoft Learn
▸ Azure Cosmos DB のホワイトペーパー
▸ Azure Videos
▸ Azure Cosmos DB Workshop

More Related Content

What's hot

現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...Masayuki Ota
 
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所de:code 2017
 
Azure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知する
Azure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知するAzure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知する
Azure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知するKenjiroHirata
 
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)NTT DATA Technology & Innovation
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方増田 亨
 
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017Yusuke Suzuki
 
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Teruchika Yamada
 
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05都元ダイスケ Miyamoto
 
ZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyToru Makabe
 
データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介Amazon Web Services Japan
 
BigData Architecture for Azure
BigData Architecture for AzureBigData Architecture for Azure
BigData Architecture for AzureRyoma Nagata
 
リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」Recruit Technologies
 
AWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザAWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザNoritaka Sekiyama
 
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介がっつりMongoDB事例紹介
がっつりMongoDB事例紹介Tetsutaro Watanabe
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ増田 亨
 
Dep005 azure ネットワーク設計
Dep005 azure ネットワーク設計Dep005 azure ネットワーク設計
Dep005 azure ネットワーク設計Tech Summit 2016
 
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説増田 亨
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計Yoshinori Matsunobu
 

What's hot (20)

現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
 
IoT のシナリオを変える Azure SQL Edge
IoT のシナリオを変える Azure SQL EdgeIoT のシナリオを変える Azure SQL Edge
IoT のシナリオを変える Azure SQL Edge
 
Azure Event Grid 事始め
Azure Event Grid 事始めAzure Event Grid 事始め
Azure Event Grid 事始め
 
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
 
Azure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知する
Azure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知するAzure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知する
Azure勉強会 20201028 azure monitor のアラートを様々なコミュニケーションツールに通知する
 
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
 
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
 
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
 
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
 
ZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native Journey
 
データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介
 
BigData Architecture for Azure
BigData Architecture for AzureBigData Architecture for Azure
BigData Architecture for Azure
 
リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」
 
AWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザAWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザ
 
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
Dep005 azure ネットワーク設計
Dep005 azure ネットワーク設計Dep005 azure ネットワーク設計
Dep005 azure ネットワーク設計
 
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
 

Similar to 20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap

Using Azure Compute with VMSS, Kubernetes, and Service Fabric
Using Azure Compute with VMSS, Kubernetes, and Service FabricUsing Azure Compute with VMSS, Kubernetes, and Service Fabric
Using Azure Compute with VMSS, Kubernetes, and Service FabricTakeshi Fukuhara
 
NoSQL on microsoft azure april 2014
NoSQL on microsoft azure   april 2014NoSQL on microsoft azure   april 2014
NoSQL on microsoft azure april 2014Brian Benz
 
Microsoft Azure News - 2018 December
Microsoft Azure News - 2018 DecemberMicrosoft Azure News - 2018 December
Microsoft Azure News - 2018 DecemberDaniel Toomey
 
Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法
Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法
Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法Masahiko Ebisuda
 
NoSQL Migration Technical Pitch Deck
NoSQL Migration Technical Pitch DeckNoSQL Migration Technical Pitch Deck
NoSQL Migration Technical Pitch DeckNicholas Vossburg
 
List of top 10 azure services
List of top 10 azure servicesList of top 10 azure services
List of top 10 azure servicesOliviaBrown85
 
AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...
AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...
AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...Cobus Bernard
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
Microsoft Azure News - December 2019
Microsoft Azure News - December 2019Microsoft Azure News - December 2019
Microsoft Azure News - December 2019Daniel Toomey
 
New capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloudNew capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloudMicrosoft Tech Community
 
OSS DB on Azure
OSS DB on AzureOSS DB on Azure
OSS DB on Azurerockplace
 
New capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloudNew capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloudGaurav Malhotra
 
Análisis de riesgos en Azure y protección de la información
Análisis de riesgos en Azure y protección de la informaciónAnálisis de riesgos en Azure y protección de la información
Análisis de riesgos en Azure y protección de la informaciónPlain Concepts
 
Cosmos DB Conf - Cosmos DB + Azure Functions .pptx
Cosmos DB Conf - Cosmos DB + Azure Functions .pptxCosmos DB Conf - Cosmos DB + Azure Functions .pptx
Cosmos DB Conf - Cosmos DB + Azure Functions .pptxLuis Beltran
 
Luciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdf
Luciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdfLuciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdf
Luciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdfHostedbyConfluent
 
Cosmos DB - Database for Serverless era
Cosmos DB - Database for Serverless eraCosmos DB - Database for Serverless era
Cosmos DB - Database for Serverless eraMichał Jankowski
 
Sql Azure Sql Saturday Nyc
Sql Azure   Sql Saturday NycSql Azure   Sql Saturday Nyc
Sql Azure Sql Saturday NycAaron King
 

Similar to 20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap (20)

Using Azure Compute with VMSS, Kubernetes, and Service Fabric
Using Azure Compute with VMSS, Kubernetes, and Service FabricUsing Azure Compute with VMSS, Kubernetes, and Service Fabric
Using Azure Compute with VMSS, Kubernetes, and Service Fabric
 
NoSQL on microsoft azure april 2014
NoSQL on microsoft azure   april 2014NoSQL on microsoft azure   april 2014
NoSQL on microsoft azure april 2014
 
Microsoft Azure News - 2018 December
Microsoft Azure News - 2018 DecemberMicrosoft Azure News - 2018 December
Microsoft Azure News - 2018 December
 
Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法
Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法
Azure Stack Hub Development Kit (ASDK)のAzure上への構築方法
 
NoSQL Migration Technical Pitch Deck
NoSQL Migration Technical Pitch DeckNoSQL Migration Technical Pitch Deck
NoSQL Migration Technical Pitch Deck
 
List of top 10 azure services
List of top 10 azure servicesList of top 10 azure services
List of top 10 azure services
 
AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...
AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...
AWS SSA Webinar 34 - Getting started with databases on AWS - Managing DBs wit...
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
10 reasons to use azure for your cloud apps
10 reasons to use azure for your cloud apps10 reasons to use azure for your cloud apps
10 reasons to use azure for your cloud apps
 
Microsoft Azure News - December 2019
Microsoft Azure News - December 2019Microsoft Azure News - December 2019
Microsoft Azure News - December 2019
 
New capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloudNew capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloud
 
OSS DB on Azure
OSS DB on AzureOSS DB on Azure
OSS DB on Azure
 
New capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloudNew capabilities for modern data integration in the cloud
New capabilities for modern data integration in the cloud
 
Análisis de riesgos en Azure y protección de la información
Análisis de riesgos en Azure y protección de la informaciónAnálisis de riesgos en Azure y protección de la información
Análisis de riesgos en Azure y protección de la información
 
Cosmos DB Conf - Cosmos DB + Azure Functions .pptx
Cosmos DB Conf - Cosmos DB + Azure Functions .pptxCosmos DB Conf - Cosmos DB + Azure Functions .pptx
Cosmos DB Conf - Cosmos DB + Azure Functions .pptx
 
Luciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdf
Luciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdfLuciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdf
Luciano Moreira_Jacob Bogie-BRSP005-10.3_22_FINAL.pdf
 
Azure lessons
Azure lessonsAzure lessons
Azure lessons
 
Cosmos DB - Database for Serverless era
Cosmos DB - Database for Serverless eraCosmos DB - Database for Serverless era
Cosmos DB - Database for Serverless era
 
Sql Azure Sql Saturday Nyc
Sql Azure   Sql Saturday NycSql Azure   Sql Saturday Nyc
Sql Azure Sql Saturday Nyc
 
Azure bootcamp (1)
Azure bootcamp (1)Azure bootcamp (1)
Azure bootcamp (1)
 

More from Oshitari_kochi

Azure SQL MI Link で移行も DR もポチッとな、の時代へ
Azure SQL MI Link で移行も DR もポチッとな、の時代へAzure SQL MI Link で移行も DR もポチッとな、の時代へ
Azure SQL MI Link で移行も DR もポチッとな、の時代へOshitari_kochi
 
Azure Policy + Azure RBAC の導入に際して得たアレコレ
Azure Policy + Azure RBAC の導入に際して得たアレコレAzure Policy + Azure RBAC の導入に際して得たアレコレ
Azure Policy + Azure RBAC の導入に際して得たアレコレOshitari_kochi
 
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選Oshitari_kochi
 
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021Oshitari_kochi
 
試験スキルのアウトラインから得たMCP試験受験のコツ
試験スキルのアウトラインから得たMCP試験受験のコツ試験スキルのアウトラインから得たMCP試験受験のコツ
試験スキルのアウトラインから得たMCP試験受験のコツOshitari_kochi
 
PySpark Intro Part.2 with SQL Graph
PySpark Intro Part.2 with SQL GraphPySpark Intro Part.2 with SQL Graph
PySpark Intro Part.2 with SQL GraphOshitari_kochi
 
ここから始めましょう、イチからーーいいえ、Cosmosから!
ここから始めましょう、イチからーーいいえ、Cosmosから!ここから始めましょう、イチからーーいいえ、Cosmosから!
ここから始めましょう、イチからーーいいえ、Cosmosから!Oshitari_kochi
 
Azure Cosmos DB で始める Java + NoSQL 開発
Azure Cosmos DB で始める Java + NoSQL 開発Azure Cosmos DB で始める Java + NoSQL 開発
Azure Cosmos DB で始める Java + NoSQL 開発Oshitari_kochi
 
Azure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについてAzure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについてOshitari_kochi
 
Azure Cosmos DB のエンティティについて
Azure Cosmos DB のエンティティについてAzure Cosmos DB のエンティティについて
Azure Cosmos DB のエンティティについてOshitari_kochi
 
About entities of Azure Cosmos DB
About entities of Azure Cosmos DBAbout entities of Azure Cosmos DB
About entities of Azure Cosmos DBOshitari_kochi
 
Azure Synapse Link for Azure Cosmos DB
Azure Synapse Link for Azure Cosmos DBAzure Synapse Link for Azure Cosmos DB
Azure Synapse Link for Azure Cosmos DBOshitari_kochi
 
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話Oshitari_kochi
 
Start learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse LinkStart learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse LinkOshitari_kochi
 
Get started with future C# .Net development with Docker
Get started with future C# .Net development with DockerGet started with future C# .Net development with Docker
Get started with future C# .Net development with DockerOshitari_kochi
 
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理Oshitari_kochi
 
Start Cosmos DB with VSCode Extension
Start Cosmos DB with VSCode ExtensionStart Cosmos DB with VSCode Extension
Start Cosmos DB with VSCode ExtensionOshitari_kochi
 
Summary of SQL Database Updates
Summary of SQL Database UpdatesSummary of SQL Database Updates
Summary of SQL Database UpdatesOshitari_kochi
 
Summary of SQL Server 2019 new features
Summary of SQL Server 2019 new featuresSummary of SQL Server 2019 new features
Summary of SQL Server 2019 new featuresOshitari_kochi
 
Start SQL Server with Docker
Start SQL Server with DockerStart SQL Server with Docker
Start SQL Server with DockerOshitari_kochi
 

More from Oshitari_kochi (20)

Azure SQL MI Link で移行も DR もポチッとな、の時代へ
Azure SQL MI Link で移行も DR もポチッとな、の時代へAzure SQL MI Link で移行も DR もポチッとな、の時代へ
Azure SQL MI Link で移行も DR もポチッとな、の時代へ
 
Azure Policy + Azure RBAC の導入に際して得たアレコレ
Azure Policy + Azure RBAC の導入に際して得たアレコレAzure Policy + Azure RBAC の導入に際して得たアレコレ
Azure Policy + Azure RBAC の導入に際して得たアレコレ
 
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
 
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
 
試験スキルのアウトラインから得たMCP試験受験のコツ
試験スキルのアウトラインから得たMCP試験受験のコツ試験スキルのアウトラインから得たMCP試験受験のコツ
試験スキルのアウトラインから得たMCP試験受験のコツ
 
PySpark Intro Part.2 with SQL Graph
PySpark Intro Part.2 with SQL GraphPySpark Intro Part.2 with SQL Graph
PySpark Intro Part.2 with SQL Graph
 
ここから始めましょう、イチからーーいいえ、Cosmosから!
ここから始めましょう、イチからーーいいえ、Cosmosから!ここから始めましょう、イチからーーいいえ、Cosmosから!
ここから始めましょう、イチからーーいいえ、Cosmosから!
 
Azure Cosmos DB で始める Java + NoSQL 開発
Azure Cosmos DB で始める Java + NoSQL 開発Azure Cosmos DB で始める Java + NoSQL 開発
Azure Cosmos DB で始める Java + NoSQL 開発
 
Azure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについてAzure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについて
 
Azure Cosmos DB のエンティティについて
Azure Cosmos DB のエンティティについてAzure Cosmos DB のエンティティについて
Azure Cosmos DB のエンティティについて
 
About entities of Azure Cosmos DB
About entities of Azure Cosmos DBAbout entities of Azure Cosmos DB
About entities of Azure Cosmos DB
 
Azure Synapse Link for Azure Cosmos DB
Azure Synapse Link for Azure Cosmos DBAzure Synapse Link for Azure Cosmos DB
Azure Synapse Link for Azure Cosmos DB
 
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
 
Start learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse LinkStart learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse Link
 
Get started with future C# .Net development with Docker
Get started with future C# .Net development with DockerGet started with future C# .Net development with Docker
Get started with future C# .Net development with Docker
 
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
 
Start Cosmos DB with VSCode Extension
Start Cosmos DB with VSCode ExtensionStart Cosmos DB with VSCode Extension
Start Cosmos DB with VSCode Extension
 
Summary of SQL Database Updates
Summary of SQL Database UpdatesSummary of SQL Database Updates
Summary of SQL Database Updates
 
Summary of SQL Server 2019 new features
Summary of SQL Server 2019 new featuresSummary of SQL Server 2019 new features
Summary of SQL Server 2019 new features
 
Start SQL Server with Docker
Start SQL Server with DockerStart SQL Server with Docker
Start SQL Server with Docker
 

Recently uploaded

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Recently uploaded (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap

  • 1. 2020年からはじめる Azure Cosmos DB 入門 recap 第1回 Azure Cosmos DB 勉強会
  • 2. はじめに 本資料について ▸ 本資料の記載は 2020/7/28 現在において、作者が確認できている内容に基づいていま す。 ▸ なお、本資料に誤植や誤りがないことについては保証しかねます。 ▸ 本資料に記載されている情報、意見および、その他の内容については、作者が所属する 組織を代表するものではありません。
  • 3. Agenda Azure Cosmos DB 入門 with Azure Synapse Link ▸ Azure Cosmos DB について ▸ Azure Cosmos DB 概要 ▸ Azure Cosmos DB を利用するメリット ▸ MS Build 2020 (+α) のアップデート情報 ▸ Azure Cosmos DB で開発を始める ▸ Azure Cosmos DB に接続する ▸ Visual Studio Code 拡張機能 ▸ JavaScript SDK (SQL API) を使ってみる ▸ 既存のアプリから Cosmos DB を利用する ▸ Azure Synapse Link を使ってみる ▸ Azure Synapse Link 概要 ▸ Azure Synapse Link を使うメリット ▸ Azure Synapse Link の設定方法 ▸ さいごに
  • 4. Azure Cosmos DB 概要 Azure Cosmos DB について
  • 5. Azure Cosmos DB 概要 Azure Cosmos DB とは ▸ あらゆる規模に対応するオープン API を備えた高速な NoSQL データベース ▸ Microsoft 社によってグローバルに配布されるマルチモデルデータベースサービスとし て、2017 年に一般公開 ▸ 読み取りと書き込みのレイテンシーが 1桁ミリ秒 を要求される運用/分析ワークロード 向けに最適化 ▸ 99.99 % 以上の高可用性 (SLA)、スループットと一貫性を保証
  • 6. Azure Cosmos DB 概要 Cosmos DB がサポートする API ▸ Core (SQL) / MongoDB / Cassandra / Azure Table / Gremlin
  • 7. Azure Cosmos DB 概要 課金の仕組み ▸ 以下の内容を踏まえて課金が行われる ▸ プロビジョニング済みコンテナー数(コンテナーはテーブルのイメージ) ▸ コンテナがオンラインであった時間数 ▸ 各コンテナーのプロビジョニングスループット ▸ プロビジョニングスループット ▸ 1RU = シングルパーティションから1KBのドキュメントを1回読み取りに相当 (書き込み:PUTは2倍) ▸ 最小のプロビジョニングスループットは、400 RU/s (1ヶ月あたり 10 億回の読み取りに相当) ▸ スループットは 100 RU/s 刻みでスケーリング可能 (1ヶ月あたり 2 億 6780 万回の読み取りに相当) ▸ 手動構成による設定、およびオートパイロットによる自動構成が選択可能
  • 9. Azure Cosmos DB を利用するメリット ターンキー グローバル分散 ▸ 応答性と可用性が高いアプリケーション を世界的な規模で構築できる ▸ どこにいてもデータが透過的にレプリ ケートされ、ユーザーは最も近い場所に あるデータのレプリカと対話できる ▸ 1クリックで、レプリケート先のAzure リージョンを追加したり、削除できる ▸ グローバル分散についての詳細 ▸ Microsoft Docs ▸ レイテンシ考慮の場合に強い
  • 10. Azure Cosmos DB を利用するメリット スキーマやインデックスの管理が不要 ▸ すべてのデータのインデックス付けを自動で行い、高速クエリを提供 ▸ すべてのコンテナーにコンテナーの項目のインデックスを作成する方法を指示 ▸ 「同期」と「なし」の2つのインデックス作成モードをサポート ▸ 既定では、インデックス作成ポリシーは automatic = true(自動で有効)に設定 ▸ カスタムインデックス作成ポリシーも設定可能 ▸ 複合インデックス、空間インデックス、プロパティパスの包含・除外の指定が可能 ▸ インデックス作成ポリシーについての詳細 ▸ Microsoft Docs
  • 11. Azure Cosmos DB を利用するメリット 明確に定義された複数の整合性の選択肢 ▸ Cosmos DB のマルチマスター レプリケーション プロトコルは5つの整合性を重視 ▸ 強固 ▸ 有界整合性制約 ▸ セッション ▸ 一貫性のあるプレフィックス ▸ 最終的 ▸ 極端な整合性、可用性、待ち時間、スループットのトレードオフを行うことが不要になる ▸ 整合性の詳細については、以下サイトを参照 ▸ Azure Cosmos DB の整合性レベル ▸ azure/azure-cosmos-tla ‒ GitHub 強固 有界整合性制約 セッション 一貫性のあるプレフィックス 最終的 強力な一貫性 弱い一貫性
  • 12. Azure Cosmos DB を利用するメリット 包括的な SLA と 99 パーセンタイルの低待機時間 ▸ 99.99 % (スループット、一貫性、可用性、レイテンシの保証) ▸ 5 つの一貫性レベルのいずれかで構成された、単一 Azure リージョンにスコープされている Azure Cosmos DB データベースアカウント ▸ 4つの緩やかな一貫性レベルのいずれかで構成されている、複数の Azure リージョンにまたがる Azure Cosmos DB データベースアカウント ▸ 書き込み可能なエンドポイントとして複数の Azure リージョンの構成を可能にしている場合、読み取り と書き込みの両方で 99.999 % SLA の可用性が提供される ▸ SLA については、以下サイトを参照 ▸ Azure Cosmos DB のSLA ▸ 世界中で読み取り (インデックス付き) と書き込みの両方に対して 99 パーセンタイルで の 10 ミリ秒未満の待機時間を保証
  • 13. Azure Cosmos DB を利用するメリット 人気のある OSS API を使用したアプリケーション開発 ▸ 既存のクライアントドライバー(ツール)を使って参照が可能 ▸ Gremlin、Cassandra、MongoDB ▸ アプリケーションロジックの重要な部分を保持しながら Cosmos DB に移行が可能 ▸ 少ない労力で、業界最高レベル、SLA が提供されるフルマネージドサービスが利用可能 ▸ ニーズに応じて、プロビジョニングスループットや容量を弾力的にスケーリング可能 ▸ アプリケーションの移植性を保持したまま、クラウドベンダーに非依存な状態を維持可能
  • 14. MS Build 2020 (+α) のアップデート情報 Azure Cosmos DB について
  • 15. MS Build 2020 でのアップデート情報 オフィシャルな説明は de:code 2020 の動画にて ▸ https://www.youtube.com/watch?v=rB-wioomITo
  • 16. MS Build 2020 でのアップデート情報 Azure Synapse Link ▸ 抽出 ▸ 変換 ▸ ロード →処理負荷0に
  • 17. MS Build 2020 でのアップデート情報 Azure Synapse Link (Azure Synapse Analytics の拡張機能) ▸ クラウドネイティブのハイブリッドトランザクションおよび分析処理(HTAP)機能 ▸ グローバルに分散された大規模運用データをETL対応無しでほぼリアルタイムに分析 ▸ Synapse Spark または Synapse SQL を使用し、Azure Cosmos DB でのトランザク ションワークロードのパフォーマンスに影響を与えず、ほぼリアルタイムのビジネスイ ンテリジェンス、分析、機械学習パイプラインを実行可能
  • 18. MS Build 2020 でのアップデート情報 Azure Synapse Link ▸ Azure Cosmos DB分析ストアは、2020年8月30日まで、消費ストレージGBまたはス トレージトランザクションに対して無料でパブリックプレビューで利用可能 ▸ SynapseSpark と Synapse SQL の使用量は、Azure Synapse Services の消費を通 じて請求 ▸ 詳細については、Azure Cosmos DB の Azure Synapse Link のブログ投稿を参照
  • 19. MS Build 2020 でのアップデート情報 オートパイロット機能が GA (オートスケール) ▸ 自動スケールプロビジョニングされたスループットの Azure Cosmos DB の 新料金モデル ▸ 無償枠適用内
  • 20. MS Build 2020 でのアップデート情報 顧客管理キーを使用した保存時の暗号化の強化 ▸ カスタマーマネージドキー ▸ 顧客 (エンドユーザー) が制御できる暗号化キーを使用した暗号化が可能 ▸ キーストアとしてAzure Key Vaultにてキーをセキュアに管理可能 ▸ データの二重暗号化を実現 顧客管理のキーを利用した 暗号化 あなたの データ サービス管理のキーを利用 した暗号化
  • 21. MS Build 2020 でのアップデート情報 Jupyter Notebook の新機能 ▸ C# Notebooks ▸ データエクスプローラーに組み込まれている Jupyter Notebook で C# を実行可能 ▸ Azure Cosmos DB .NET SDK の組み込みインスタンスを含む ▸ 必要に応じて独自の NuGet パッケージをインポート可能 ▸ GitHub 連携 ▸ Notebook workspaces を GitHub リポジトリに接続 ▸ GitHub Notebook がワークスペースで表示、実行、編集でき、変更を GitHub に直接保存可能 ▸ すべて Azure Data Explorer から簡単に保存可能
  • 22. MS Build 2020 でのアップデート情報 Python SDK 4.0 for SQL API ▸ https://pypi.org/project/azure-cosmos/4.0.0/ ▸ 新しい API 設計 (CosmosClient / Database / Container / User にスコープ) ▸ Cosmos DB データベースを作成して設定を変更 ▸ JSONドキュメントのコレクションを格納するコンテナーを作成および変更 ▸ コンテナー内のアイテム(JSONドキュメント)の作成、読み取り、更新、削除 ▸ SQLに似た構文を使用してデータベース内のドキュメントをクエリ ▸ クライアント接続は azure.core.pipeline で定義されたHTTPパイプラインを使用する ように適合
  • 23. MS Build 2020 でのアップデート情報 Java SDK 4.0 for SQL API ▸ https://mvnrepository.com/artifact/com.azure/azure-cosmos ▸ 負荷時のリクエストのスループットと安定性が大幅に最適化された ▸ 古いJava SDK(v3およびv2)よりも20%パフォーマンスが向上 ▸ 最高のパフォーマンスを得るための (ヒント)についてもブログで紹介 ▸ Azure Cosmos DB Java SDK v4 ‒ General Availability ▸ プログラムによるオートスケールのスループットのプロビジョニングを完全サポート ▸ ThroughputPropertiesクラス ▸ DISTINCTクエリの追加 ▸ サーバ側のAzure Cosmos DBの処理だけでなく、クライアント側の機能としても実装(サンプル) ▸ Analytical Time-to-Live (TTL)が追加
  • 24. MS Build 2020 でのアップデート情報 Azure Private Link ▸ 仮想ネットワークから Azure Platform as a Service サービスへのプライベート接続を 提供 ▸ パブリックインターネットへのデータ公開を排除 ▸ ネットワークアーキテクチャを簡素化し、Azure のエンドポイント間の接続を保護 ▸ 制限付きネットワークセキュリティグループ (NSG) ポリシーと組み合わせてデータ漏洩リスクを軽減
  • 25. MS Build 2020 でのアップデート情報 変更フィードの削除と保持プレビューの更新 ▸ 現在は、書き込みと各ドキュメントの最新バージョンのみ ▸ 削除とすべての更新のサポートを追加 ▸ 変更フィードを利用してリアルタイムのデータ移動を実行したり、マテリアライズドビューを構築したり することがさらに簡単に ▸ プッシュモデルに加えてプルモデルも登場
  • 26. MS Build 2020 でのアップデート情報 サーバレス ▸ プロビジョニングされたスループットの概念を排除 ▸ オペレーションごとに消費されたリソース (RU/s) に対して顧客に請求 ▸ 安定したスループットを必要とせず、プロビジョニング状態を維持する必要がないテス トや開発環境などでの利用に効果的
  • 27. MS Build 2020 でのアップデート情報 ポイントインタイムリストア(PITR) ▸ 有効にしてから最大35日間の任意の時点で、継続的バックアップからコンテナーを回復
  • 28. Azure Cosmos DB に 接続する Azure Cosmos DB で開発を 始める
  • 29. Azure Cosmos DB に接続する SDK / REST API 、既存のドライバーなど経由で接続 ▸ Azure Cosmos DB SDK を利用 ▸ .NET / Java / JavaScript / Python ▸ Azure Cosmos DB REST API を利用 ▸ REST を介した SQL API を使用して Azure Cosmos DB を操作できる ▸ Azure Cosmos DB: REST API リファレンス ▸ 既存のクライアントSDK、ドライバー、ツール などを利用 ▸ データエクスプローラー、ストレージエクスプローラー ▸ MongoDB、Cassandra、Gremlin、Azure Table Storage、etcd、Power BI コネクタ など ▸ Azure Cosmos DB Emulator
  • 30. Azure Cosmos DB に接続する データエクスプローラー ▸ Azure Portal 上にて、Azure Cosmos DB の様々な操作を実行 ▸ SQLなどのクエリ実行や、Jupyter Notebook の実行が可能
  • 31. Azure Cosmos DB に接続する Azure Cosmos DB Emulator ▸ 要 Windows / Windows コンテナー ▸ Azure Cosmos DB のエミュレータとして、Azure の環境なしで利用可能 ▸ SQL、MongoDB、Cassandra、Gremlin、Azure Table の API を利用可能 ▸ Azure Cosmos DB Data Migration Tool で Azure Cosmos DB とのデータ移行も可能 ▸ ソフトウェア要件 ▸ Windows Server 2012 R2、Windows Server 2016、または Windows 10 (64 bit) ▸ 最小ハードウェア要件 ▸ 2 GB の RAM、10 GB のハードディスク空き容量
  • 32. Visual Studio Code 拡張機能 Azure Cosmos DB で開発を 始める
  • 33. Visual Studio Code 拡張機能 Azure Databases 拡張機能 ▸ 2020/5/28 に名称変更 (リポジトリは同じで PostgreSQL 対応が追加) ▸ 旧 Azure Cosmos DB 拡張機能 ▸ https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-cosmosdb ▸ 400 RU/s からコレクションを作成できるように対応! (PR出したら通ったよ!)
  • 34. Visual Studio Code 拡張機能 データベースやコンテナーの作成・削除
  • 35. Visual Studio Code 拡張機能 データの挿入・更新・削除・参照
  • 36. Visual Studio Code 拡張機能 Mongo Scrapbooks ▸ クエリ実行 ▸ Intelligence
  • 37. Visual Studio Code 拡張機能 グラフデータベース参照 ▸ テキストエディタで 3D View
  • 38. JavaScript SDK を 使ってみる Azure Cosmos DB で開発を 始める
  • 39. JavaScript SDK (SQL API) を使ってみる コンソールアプリを作成 ▸ Microsoft Docs のチュートリアルを実践 ▸ チュートリアル:JavaScript SDK を使用して、Azure Cosmos DB SQL API データを管理するための Node.js コンソール アプリを構築する
  • 40. JavaScript SDK (SQL API) を使ってみる Node.js で CRUD Webアプリを作る ▸ Microsoft Azure Cosmos DB Service Node.js SDK for SQL API を利用 ▸ @azure/cosmos ▸ TypeScript / Express フレームワークを利用して、WebAPI サーバを構築 ▸ SQL API で Cosmos DB を操作できるため、普段 RDB を使っているユーザーでも簡単 ▸ 詳しくは Qiita 記事にて ▸ 2020 年から始める Azure Cosmos DB ‒ Node.js で CRUD アプリを作る ▸ 2020 年から始める Azure Cosmos DB ‒ JavaScript SDK (SQL API) を見てみる (Part.1)
  • 42. 既存のアプリから Cosmos DB を利用する 既存のクライアントドライバは変更せずにOK ▸ アプリ側で使用する接続文字列を Azure Cosmos DB のものに書き換えるだけ ▸ Azure Cosmos DB のオープン API 側で従来と同じ動作を保証 ▸ Azure Cosmos DB アカウントは、対応する API で構築する必要あり ▸ MongoDB、Cassandra、Azure Tables、Gremlin
  • 44. Azure Synapse Link を使ってみる Azure Synapse Link (Azure Synapse Analytics の拡張機能) ▸ クラウドネイティブのハイブリッドトランザクションおよび分析処理(HTAP)機能 ▸ グローバルに分散された大規模な運用データをETLなしでほぼリアルタイム分析 ▸ Synapse Sparkまたは Synapse SQL を使用し、Azure Cosmos DB でのトランザク ションワークロードのパフォーマンスに影響を与えず、ほぼリアルタイムのビジネスイ ンテリジェンス、分析、機械学習パイプラインを実行可能 ※再掲
  • 45. Azure Synapse Link を使ってみる Azure Synapse Link の仕組み トランザクションストア 分析ストア トランザクションの読み 取りおよび書き込み用に 最適化された行ストア 分析クエリ用に最適化された 列ストア 運用データ 機械学習 ビックデータ分析 BI ダッシュボード 自動で同期自動で同期
  • 46. Azure Synapse Link を使うメリット データウェアハウスへのデータ移行負荷がゼロ ▸ 夜間や業務時間外にデータベース内の運用データを DWH へ移行する必要がない ▸ オンラインで、リアルタイムに、Azure Synapse Analytics でデータ分析ができる ▸ 従来は管理パイプラインによってデータの ETL が必要で、パフォーマンスへの影響も最小限にする必要あり ▸ Azure Cosmos DB 分析ストアにあるデータを分析するため、ETL というものがない ▸ 管理パイプラインも VNet も 仮想ネットワークも不要 ▸ ETLジョブや変更フィードの確認・監視や、複雑なデータ移動の理解も必要なし ▸ Azure Cosmos DB だけでなく、(今後) Azure SQL Database のデータも対応 ▸ 複数のデータを統合して分析するためのデータ移行や抽出、加工が必要なし ▸ Google Big Query よりも高速な分析基盤を簡単に利用できる
  • 47. Azure Synapse Link を使うメリット 運用ワークロードと分析ワークロードが別扱い ▸ Azure Synapse Link に関連するトラフィックは別物として処理 ▸ 運用ワークロード用にプロビジョニングされたスループットは使用しない ▸ Azure Cosmos DB 分析ストア (個別の列ストア) に対して分析クエリを実行 ▸ 分析だけでなく、BI や機械学習を実行したい際にも、運用側に影響を与えることがなく実施できる
  • 48. Azure Synapse Link の設定方法 データエクスプローラーでワンクリック ▸ データエクスプローラー上で設定を有効化後、Azure Synapse Studio で接続設定 ▸ Azure Synapse Studio では SQL と MongoDB が表示されている
  • 49. Azure Synapse Link の設定方法 制限事項 (2020/7/28 現在) ▸ パブリックプレビューは Azure Cosmos DB SQL (Core) API のみ ▸ MongoDB API および、Cassandra API については、プライベートプレビュー ▸ 今後は、すべての API で実行できるようになる (予定らしい) ▸ 分析ストアは新規コンテナのみ設定可能 ▸ Azure Cosmos DB アカウントは新規でも既存でも OK ▸ すでにあるコンテナに対して分析ストアを有効にすることはできない ▸ Synapse SQL でのアクセス ▸ Synapse SQL Serverless での Azure Cosmos DB 分析ストアへのアクセスはプライベートプレビュー ▸ プロビジョニング済み Synapse SQL でのアクセスは未対応
  • 51. まとめ 2020 年は Azure Cosmos DB がアツい! ▸ 400 RU/s、5GB の無償枠が登場 ▸ オートパイロット(オートスケール)機能が GA ▸ Azure Synapse Link により No-ETL でデータ分析がほぼリアルタイムに実行可能 ▸ もうすぐサーバレスもパブリックプレビュー ▸ SDK 対応言語が豊富 ▸ Visual Studio Code 拡張機能もどんどん機能追加中 ▸ みなさんも Azure Cosmos DB を使っていろいろ開発してみてね!!
  • 52. 参考情報 Azure Blog / Azure Cosmos DB Blog ▸ Azure Cosmos DB で任意のサイズまたはスケールのアプリを構築 ▸ Azure Cosmos DB wrap-up: May 2020 BUILD Announcements ▸ Enhanced encryption at rest with customer-managed keys ▸ Autoscale + serverless: new offers to fit any workload ▸ Unlock near real-time, no-ETL analytics at scale with Azure Synapse Link for Azure Cosmos DB ▸ Azure Cosmos DB Java SDK v4 ‒ General Availability ▸ Change Feed ‒ Unsung Hero of Azure Cosmos DB ▸ New Azure Cosmos DB PowerShell features for greater enterprise manageability ▸ Data Modeling and Partitioning for Relational Workloads
  • 53. 参考情報 Microsoft Docs ▸ Azure Cosmos DB の概要 ▸ Azure Cosmos DB でのパーティション分割 ▸ Azure Cosmos DB の要求ユニット ▸ ストアド プロシージャ、トリガー、およびユーザー定義関数 ▸ Azure Cosmos DB でのオンライン バックアップとオンデマンドのデータ復元 ▸ Azure Cosmos DB の etcd API (プレビュー) の概要 ▸ Azure Cosmos DB でのインデックス作成ポリシー ▸ Azure Synapse Link for Azure Cosmos DB (プレビュー) とは ▸ Azure Cosmos DB のさまざまな API についてよく寄せられる質問
  • 54. 参考情報 その他 ▸ Microsoft Mechanics ‒ YouTube ▸ Azure Cosmos DB + Azure Synapse Link ¦ Cloud-Native HTAP ▸ Hack Azure! - YouTube ▸ #2 Ask the Geeks - Cosmos DB 編 ▸ EnterpriseZine ▸ そろそろ、HTAPの話をしよう ▸ 学習向け情報 ▸ Microsoft Learn ▸ Azure Cosmos DB のホワイトペーパー ▸ Azure Videos ▸ Azure Cosmos DB Workshop