Japan Association for Medical Informatics

[2-J-4-03] 大規模医療データ分析における列指向の非順序型データベースエンジンの性能評価

*Taro Fujimoto1, Toshinari Iida1, Kouji Kimura1, Akira Shimizu1, Shinji Fujiwara1 (1. (株)日立製作所)

Healthcare Data Analysis System, Columnar Database, Receipt Data

【目的】
医療現場におけるデジタル化が進み、電子カルテやレセプトシステムなどさまざまなヘルスケアシステムで医療データが生成・蓄積されている。これらのヘルスケアシステムで生成される大規模医療データを対象とする分析のニーズが高まる中、分析に要する時間の大幅な削減のため、データ基盤の高速化が喫緊の課題となっている。そこで本報告では、列指向の非順序型データベースエンジンOut-of-Order Database Engine(OoODE)を適用することで、OSSデータベースと比較して大規模医療データの処理時間がどの程度削減できるか実証評価を行った。
【方法】
一般に公開されている情報を基に、匿名医療保険等関連情報データベース(NDB)の1年分を想定した模擬データを作成した。また、当該データに含まれる医科、DPC、歯科、調剤の各種別のレセプトデータを集計するベンチマーククエリを29個作成した。これらを用いた評価を48物理コアを有するサーバー上で行い、OoODEとOSSデータベースのクエリ実行性能を比較した。データベースのチューニングについてはスレッド数やメモリサイズの設定のみに止め、エンジンの素の性能を評価した。
【結果】
NDBの模擬データを用いたベンチマークの各クエリにおいて、列指向の非順序型データベースエンジンがOSSデータベースの平均24.6倍(分散11.3)の実行性能を示すことを確認した。
【考察・結論】
列指向の非順序型データベースエンジンとOSSデータベースの性能差の要因を分析した。その結果、列指向のデータ格納方式によるデータ読み出し量の削減と非順序型データベースエンジンによるCPU利用率の向上が性能向上に寄与できていることが確認できた。さらに、傷病名コードなどによる絞り込み条件を付したクエリでは、動的結合フィルターによるデータの突合せ回数の削減も性能向上に寄与した。
【倫理的配慮】
NDBの模擬データについて、一般に公開されている情報を基に作成を行い、個人情報を含まない形となるように留意した。