Business Challenge story

データ量が増加しても、ストレスなくオンライン分析できるシステム

日本医療データセンターは、2008年3月に「Netezza Performance Server 5200(以下、NPS5200)」を導入してレセプトデータのデータベース化を開始。当初は数十万人分のレセプトデータで製品・サービスの提供を開始しましたが、登録されたレセプトデータは、日を追うごとに増えていきます。

インフォメーション・マーケティング部 部長の林哲氏は、次のように語ります。「ユーザー数やデータ量はもちろん、提供する製品・サービスなどが増えるにつれ、データ分析のパフォーマンスが劣化するという問題が発生しました。そこでユーザー数やデータ数、製品やサービスの増加に合わせ、システムを拡張していくことが必要でした」。

たとえばレセプトデータが初期データ件数の2倍を超えたあたりから、NPS5200のパフォーマンスが急激に劣化しはじめました。

林氏は、「これ以上、NPS5200を拡張することは困難だと判断し、POC(Proof Of Concept)を実施した結果、2009年11月に当時の最新機種であったNetezza TwinFinのハーフラックサイズ(以下、TwinFin)を導入することを決定しました」と話します。

また初期の2.5倍のデータ件数となった2011年には、PCサーバーとリレーショナルデータベース(RDB)で構築されていたデータウェアハウス(DWH)を、さらにもう1台ハーフラックのTwinFinを追加導入し移行しています。さらに初期データの3倍を超えた2012年12月には、PureData System for Analyticsのフルラックを追加し2009年に追加したTwinFinをクレンジング用に移行し、現在のシステム構成にいたっています。

「現在、9種類の製品・サービスを提供していますが、すべての製品・サービスで、生データのオンライン分析ができるので、パフォーマンスは非常に重要です。そこでいくつかのハードウェア製品、ソフトウェア製品を比較検討した結果、PureData System for Analyticsを採用することに決めたというのがこれまでのシステム拡張の経緯です」と林氏。

林氏は、「2011年までは医薬品データと疾病データのかけ算でした。このレベルであれば、ハーフラックサイズのTwinFinでも分析できました。しかし現在では、医薬品データと疾病データの組み合わせに、さらに処置診療データが増えているので、これまで数億件×数億件のかけ算だった組み合わせが、数億件×数億件×数億件のかけ算になっています。これに対応できる、最もコストパフォーマンスの高い製品がフルラックサイズのPureData System for Analyticsでした」と話しています。

Transformation

数億件×数億件×数億件の完全非定型な複雑なSQL処理を秒速で処理

日本医療データセンターが構築したオンライン分析システムは、クレンジング用、DWH、分析専用フロントの3階層で構成されています。

林氏は、「サービスを提供するための分析専用フロントに常に最新サーバーを使用し、それまで分析用フロントとして使っていたサーバーをDWH、クレンジング用のサーバーにシフトしていく構成にしています」と話します。

3階層に分ける最大の目的は、常に分析専用フロントに最新のサーバーを設置することで、データ分析のパフォーマンスを最大限に発揮させることです。同時にそれまで利用していた分析用フロントのサーバーをDWHやクレンジング用のサーバーにシフトすることで、分析用データ処理やサーバー間のやり取りを高速化させることも目的のひとつです。

現在、DWHには数百万人分のレセプトデータが登録されており、このレセプトデータに対して、傷病履歴や投薬情報、診療情報などのデータがひも付けられています。林氏は、「疾病情報だけで、数億件を超えるデータが登録されています。診療情報はさらに多く、ほとんどのデータが億単位の件数になります」と話します。

「テーブルもたくさんありますが、たとえば傷病テーブルは数百万人の疾病データが億単位で登録されています。億単位のデータをいくつも組み合わせた分析は、非常に複雑な分析になります。データ容量としては1テラバイト程度ですが、処理の複雑さではビッグデータ分析といっても過言ではない仕組みです」(林氏)。

DWHに蓄積されているレセプトデータを利用しているのは、主に製薬メーカーや生命保険会社、健康保険組合、大学・研究機関などの担当者です。林氏は、「毎日数百人もの利用者がデータにアクセスして、オンライン分析を行っています。滞在時間が平均2時間くらいなので、かなり使い込まれている感があります」と話します。

林氏は、「製薬メーカーは、販売した薬が医療現場でどのように使われているか知るための詳細なデータは持っておらず、医療機関へのアンケート程度のデータしかありませんでした。また、この薬はこの症状に使うという情報は持っていますが、医療現場では患者の症状にあわせて、さまざまな薬を組み合わせるので実態が把握できませんでした」と話しています。

Benefits

ハーフラックからフルラックサイズへの移行で10倍のパフォーマンスを実現

日本医療データセンターでは、2013年3月末よりPureData System for Analyticsの本格的な稼働を開始しています。

林氏は、「われわれのサービスは24時間稼働なので、月に1回、計画メンテナンスの時にしかシステムを移行する時間がとれません。今回もそのタイミングで新しいシステムに移行したのですが、IBMが的確なサポートを提供してくれたので、まったく問題なく移行できました」と話します。

PureData System for Analyticsを導入した効果を林氏は、次のように語ります。「導入して間がなく、設定を行っている最中なので、はっきりした数値は持っていませんが、平均でハーフラックサイズのTwinFinの2倍程度のパフォーマンスが発揮できることを期待しています。現状でもハーフラックサイズのTwinFinで10分程度かかるSQL文が、チューニングなしでフルラックサイズのPureData System for Analyticsでは5倍~10倍のパフォーマンスを発揮し、1~2分程度にまで短縮できているものもあります。同じSQL文をRDBで処理すると結果は返ってきませんでした」。

またNPS5200とRDBの組み合わせで夜間に処理を実行し、翌朝結果が返ってくる処理がありました。これではオンラインでサービスを提供することはできませんでしたが、同じ処理をPureData System for Analyticsでは約10秒で処理できます。

林氏は、「常に新しい技術はチェックするようにしています。しかし現状では、PureData System for Analyticsがベストの選択だと思っています」と話しています。さらにシステム面での効果として、容易な管理性が挙げられます。

林氏は、「PureData System for Analyticsは、チューニングをしなくても性能を発揮できるし、壊れても壊れた部品だけを交換すれば済みます。チューニングをしなくても処理が速いのがウリですが、テーブル形式を工夫することはしています。こうした運用ノウハウは、かなり社内に蓄積されてきました。今後、競合が出てきても、われわれが提供するパフォーマンスに追いつくのは困難だと自負しています」と話します。

一方、利用者の評価について林氏は、「このような症状の場合に利用される薬にはどのような種類があり、どのメーカーの薬がどれくらいのシェアで使用されているかといったマーケティング分析にも活用されています。また、これまで研究者が論文を書くにもデータがありませんでしたが、現在では多くの論文が、レセプトデータを使って書かれており、国内外で発表されています。数億件のデータをオンラインで分析して、当たり前に結果が出ているので、これまでに利用者からの不満はまったくありません」と話しています。

 

将来の展望

製品、データ、利用者の増加とともにシステムの拡張も計画

現在は、初期の4倍以上の健康保険組合からデータを収集しており、今後はさらに2.5倍の健康保険組合からデータを収集していく計画です。

また、製品、データ、利用者のすべてが増えています。林氏は、「データは2~3倍程度に増やしていく計画なので、それにあわせたシステムの強化を検討しています。提供する製品・サービスが増えたらサーバーも増やすという、シンプルな発想でシステムを拡張していこうと思っています」と話しています。

林氏は、「現在、2~3年後のシステム構築を見据えた中期計画を立てているところです。今後もPureData System for Analyticsにするか、インメモリデータベースのようなものなのか、またはそれ以外の新しい技術なのかを含め検討しているところです。現状ではPureData System for Analyticsが有力ですが、情報がないと判断ができないので、IBMには常に最新情報を提供してほしいと思っています」と今後の期待を語っています。

 

 

テクノロジープラットフォーム

ソフトウェア

Solution Category

  • IBM Hybrid Cloud
    • HC: Analytics and Reporting
    • PureData System for Analytics (powered by Netezza technology)