Azure Cosmos DB で、医療向け ISV の競争力を強化

2019年6月24日 に投稿済み

Program Manager, Azure Cosmos DB

今回は、CitiusTech でシニア ソリューション アーキテクトを務める Shweta Mishra 氏および CTO を務める Vinil Menon 氏と共同執筆した記事をご紹介します。

CitiusTech は、医療分野のお客様のイノベーションの促進を支援している医療技術サービスの専門プロバイダーです。同社が多様なソースから医療データを安全かつリアルタイムに収集および移動する方法として選んだのが、Azure Cosmos DB です。今日の医療システムは、確立された最新の情報ソースから患者情報が得られるようになり、また、規制が厳格化されつつあることを受けて、徐々にリアルタイムのデータ統合へとシフトしています。医療システムのパフォーマンスを強化するためには、低レイテンシと高可用性、そして応答性を向上させることが必要になります。また、効果的にスケーリングを行えるようにし、大量の高速な医療データのフローを管理できるようになることも必要です。

現状

IoT (モノのインターネット) の普及により、主な医療デバイス、ウェアラブル デバイス、病院に従来からある医療機器から容易にデータを収集し、共有できるようになりました。ワイド エリア ネットワーク (WAN) の内部には標準とプロトコルが明確に定義されていますが、インターネットに接続するデバイスの数がますます増える中、標準に関するコンプライアンスや実装の整合性への対応はまだ十分とは言えません。また、IoT 対応の医療機器やモバイル デバイスからのデータを照合し生成するには、膨大なデータ量に対応できる専用アプリが必要になります。

この自由度の高いアプローチであれば、各種データをビジネス要件の変化に合わせてドキュメント指向ストアに格納し、非常に高い柔軟性を得ることができます。リレーショナル データベースは、こうしたデータ上で CRUD 操作を実行するには効率的な手段とは言えませんが、データの整合性が求められるトランザクション データの処理には不可欠なものです。各データベースはそれぞれ異なる問題を解決するために設計されていますが、単一のデータベース エンジンを複数の目的に使用すると、ソリューションのパフォーマンスが低下するのが一般的です。しかし、数種類のデータベースを管理することになれば、運用上の負担が増えます。

グローバル規模の分散型ソリューションを開発するにあたっては、さまざまな問題に直面することになります。パフォーマンスを犠牲にすることなく、データ主権のニーズに対応し、かつ複数のリージョン間でデータベースをスケーリングできる必要があり、それを実現することは容易ではありません。多くの場合、複数のリージョンのデータベースを管理するのは非効率で、パフォーマンスが低下します。

解決策

Azure Cosmos DB はポリグロット永続化に対応しているため、パフォーマンスを犠牲にすることなく、複数のデータ ストア テクノロジを組み合わせて使用することができます。マルチモデル、高可用性、グローバル規模のスケーラビリティを備えたデータベースであり、低レイテンシの読み取りと書き込みがサポートされています。また、エンタープライズ クラスのセキュリティ機能が備わっており、保管中のデータがすべて暗号化されます。

ターンキー型のグローバル分散機能が提供されるほか、特定のリージョンへのデータベースのジオフェンシングによりデータ主権のコンプライアンスを管理できるため、グローバル規模の分散型ソリューションに適しています。マルチマスター機能では、整合性を確保しながらリージョン間で書き込みと同期を行うことができます。さらに、ACID を保証するマルチドキュメント トランザクションもサポートされています。

医療分野でのユース ケース

Azure Cosmos DB は、以下のワークロードに最適です。

1.グローバル規模のセキュアなソリューション

CitiusTech のように、ミッションクリティカルなグローバル規模のソリューションを提供している組織の皆様は、自社のソリューション スタックの重要なコンポーネントとして Azure Cosmos DB を検討することをお勧めします。たとえば、施設の医療デバイスを使用した患者向けの非薬物療法ソリューションを開発する ISV なら、開発した Web アプリやモバイル アプリの治療情報や医療デバイスのメタデータを Azure Cosmos DB に格納できます。その治療情報は、世界中の施設の医療デバイスにプッシュし、治療に役立てることができます。コンプライアンス要件に準拠するには、ジオフェンシング機能を使用できます。

Azure Cosmos DB は、戦略を慎重に設計すればマルチテナント データベースとして使用することもできます。たとえば、単一のテナントに複数のスケーリング要件がある場合、そのようなテナントには複数の Azure Cosmos コンテナーを作成することができます。Azure Cosmos DB では、コンテナーは分散とスケーラビリティの論理ユニットとなります。マルチテナントは、Azure Cosmos コンテナーのパーティション レベルで実現できますが、ホットスポットを作成したり、全体的なパフォーマンスを犠牲にしたりすることを避けるために、慎重に設計する必要があります。

2.リアルタイムの位置情報システム、IoT

Azure Cosmos DB を活用すれば、医療デバイスや患者をリアルタイムで追跡、管理する効果的なソリューションを開発できます。こうしたソリューションの多くは、データ速度、規模、回復性の高さが求められます。Azure Cosmos DB では、低レイテンシの書き込みと読み取りがサポートされているため、すべてのデータは各リージョンの複数の障害ドメインと更新ドメインにレプリケートされ、高可用性と回復性が確保されます。また、Azure Cosmos DB でサポートされている 5 段階の整合性レベルの 1 つであるセッションの整合性は、そのようなシナリオに適しています。セッションの整合性では、セッション内で強力な整合性が保証されます。

Azure Cosmos DB を使用すると、処理能力をスケーリングすることもできます。これはバースト シナリオで役立ちます。また、ペタバイト単位のストレージの柔軟なスケーリングも提供されます。これにより、ワークロードに応じて要求単位 (RU) をプログラムで調整することができます。

CitiusTech は、医療レベルのバイタル サインおよび生理的モニタリング ソリューションの大手プロバイダーと協力して、以下の要件を満たす IoT ベースの医療プラットフォームを開発しました。

  • 医療品質でバイタル サインを監視
  • パートナーがカスタム ソリューションを統合できるソリューションを提供
  • パーソナライズされた実用的なインサイトを提供
  • メッセージやデバイスによって生成されるデータの構造は一定ではなく、将来的に変更される可能性がある
  • データ プロデューサーは、最低 100 人の患者のデータを患者 1 人あたり 2 秒以内に同時にアップロードし、1 件の要求につき患者 1 人あたり 40 x 21 = 840 以下のデータ ポイントを受信する
  • データ コンシューマーは、最低 100 人の患者のデータを 2 秒以内に同時に読み込み、1 つのデータ コンシューマーにつき 15,000 以下のデータ ポイントを生成する
  • 直近 14 日間のデータは照会できるようにし、14 日以上経過したデータはコールド ストレージに移動する

CitiusTech は、医療データを格納するホット ストレージに Azure Cosmos DB を採用しました。Azure Cosmos DB では、ウェアラブル デバイスのセンサーから継続的に生成される医療データの低レイテンシの書き込みと読み取りを行うことができるためです。Azure Cosmos DB では、特定のスキーマに依存しない柔軟なストレージに構造やサイズの異なる大規模なドキュメントを格納できるほか、Azure のコンプライアンス認定によりエンタープライズ レベルのセキュリティが実現されます。

Azure Cosmos DB の Time to Live (TTL) 機能を使用すると、TTL 値に基づいて有効期限切れのアイテムは自動的に削除されます。ジオフェンシング機能を使用した地理分散により、データ主権のコンプライアンス要件にも対応しています。

ソリューションのアーキテクチャ

Azure Cosmos DB を使用した CitiusTech のソリューションのデータ フローのアーキテクチャ

Azure Cosmos DB を使用した CitiusTech のソリューションのデータ フローのアーキテクチャ

重要ポイント

Azure Cosmos DB を利用すると、医療システムで複数の記録システムの医療データを統合し、ポリグロット永続化を実現できる可能性があります。また、Azure Cosmos DB なら医療分野における柔軟性、適応性、スピード、セキュリティ、規模のニーズに確実に対応し、運用の低オーバーヘッドと高パフォーマンスを維持できます。

CitiusTech について

CitiusTech は、医療向け IT 企業、医療機関、保険機関、ライフ サイエンス企業に医療技術サービスとソリューションを提供する専門プロバイダーです。CitiusTech は、専用ソリューション、医療技術プラットフォーム、スキル、アクセラレータの提供を通じて、お客様による医療分野のイノベーションの迅速化を支援しています。CitiusTech の詳細については、こちらのページ (英語) をご覧ください。