Method Article
本研究比較リレーショナルと非リレーショナル (NoSQL) は、医療情報システムを標準化します。このようなデータベース管理システム (DBMS) のクエリの応答時間の計算量が 2 倍規模のデータベースを使用して計算されます。これらの結果は、さまざまなシナリオや問題に各データベースのアプローチの妥当性の議論を助けます。
この研究を示してリレーショナル クエリの計算量を評価するためにプロトコルと非リレーショナル (NoSQL (だけでなく構造化照会言語)) 標準化電子健康記録 (EHR) 医療情報データベース システム (DBMS)。3 倍規模のデータベース、すなわち5000 を格納するデータベース、10,000 そして 20,000 人の現実的な標準化電子カルテの抽出物、3 つの別のデータベース管理システム (DBMS) でのセットを使用して: リレーショナル MySQL オブジェクト リレーショナル マッピング (ORM)NoSQL MongoDB ドキュメント ベースおよびネイティブ拡張マークアップ言語 (XML) の NoSQL の存在します。
6 複雑さ増加クエリの平均応答時間は、計算された、結果は、NoSQL の場合線形挙動を示した。NoSQL フィールドでは、MongoDB は存在より多くに平坦な線形勾配を表示します。
NoSQL システムは、一貫性と NoSQL データベースに格納されているデータの効率に影響する必要があります医療情報のアップデート ポリシーの特別な性質のための標準化された医療情報システムを維持するためにより適切な場合があります。
このプロトコルの制限の 1 つは、原型リレーショナル マッピング (ARM) 同じデータを持つなど改良されたリレーショナル システムの直接結果の欠如です。しかし、それらに 2 倍サイズのデータベース結果の補間は文献の提示、他の公開されている結果を NoSQL システムは多くの特定のシナリオと解決すべき問題より適切かもしれない示唆しています。たとえば、NoSQL は、臨床実習や版と可視化、または目的のだけではなく状況で使われている EHR 抽出クエリ医療情報もまさにその元の形式で電子カルテを復元するなどのドキュメント ベースのタスクの適切な可能性があります。
NoSQL (SQL だけでなく) DBMS は伝統的なリレーショナル DBMS (RDMBS) に代わるものとして最近浮上しています。RDBMS では、何十年もデータベース システムにデータが保存された方法を支配しています。よく研究、理解のリレーショナル代数と微積分は、効率と RDBMS1の一貫性を保証しています。NoSQL システム、リレーショナル システムでは、代わりになっていないが、特定のシナリオでは、いくつかの条件の下で、彼らが有利に動作します。
いくつかのこれらの特定のシナリオや条件が管理および医療情報を保存するために使用する電子健康記録 (EHR) システムのデータベースの永続性を設計するときに発生します。相互運用性と実際には、いくつかの国際基準 ISO/EN 13606、openEHR、HL72,3、4などの持続可能なをするためには、EHR エキスを標準化する,5を使用されています。
ISO/EN 13606 openEHR などいくつかの基準が 2 つの異なるレベルの抽象化は、参照モデル (RM) によって表されると原型と呼ばれる特殊なデータ構造に情報や知識を分離します。この分離はデュアル モデルを呼ばれ、それにより、EHR システム全体の電子カルテ システムをプログラムし直すことがなく、その結果に進化する意味的相互運用性と医療の知識を保守と実践6 で持続可能な.ただし、標準化された電子カルテ システムで実装されているデュアル モデルには、特定の構造に続く情報の組織化、これは、システムのデータベースの永続性レベルが設計された7方法の深遠な影響が必要です。
オブジェクト リレーショナル マッピング (ORM)8はリレーショナル データベース パラダイムを使用した電子カルテ システムを実装する 1 つの方法です。ORM は、余すところなくリレーショナル データベース システムで使用される標準化された EHR エキス XML (拡張マークアップ言語) ファイルの構造をマップします。ORM は、余すところなく標準化された電子カルテの抽出物の XML ファイルの構造に続く多くのリレーショナル テーブルを構築します。多くの外部キーを介して関連するこれらのリレーショナル テーブルとシステムの結果は、非常に効率が悪くなります。
ORM リレーショナル改良がいくつか提案されている.openEHR のノード + パス9は、Blob (バイナリ ラージ オブジェクト) を XML ファイル全体のエキスのシリアル化のサブツリー、リレーショナル テーブルの数を減らします。しかし、この単純化は、複雑な検索ロジックは、複雑なクエリの損傷を発生します。原型リレーショナル マッピング (ARM)10は、原型、原型とリレーショナル テーブルのマッピングに基づいて新しいリレーショナル スキーマの構築によって駆動されるデータベース モデルを生成します。その結果、電子カルテの抽出物の非医療情報の一部が失われます。
多くのドキュメント ベースの NoSQL データベース元 XML や JSON (JavaScript オブジェクト表記) を尊重する全体の Blob としてドキュメント全体を格納形式。これは、リレーショナル テーブルは作成されませんを意味します。これらの NoSQL データベースはスキーマを持たず、結合または11(酸) のプロパティ、すなわち、原子性、整合性、分離、または耐久性をサポートしていません。結果として、彼らがありますない非常に効率的なドキュメントの要素の同じ要素を参照する場合、または間接リンクを利用したその他の文書。これは、一貫性を維持するために参照先のドキュメントの全体がある順番に処理されるために発生します。ただし、非リレーショナル データベースがまだ適切な DBMS によって実行される主なタスク ドキュメント ベースのタスクがある場合あります。これはもっと密接にドキュメント ベースの NoSQL データベースを使用して、真の形式の近似にこれはまた電子カルテ医療ドキュメント (ディスカッション セクション参照) には、特別な永続性ポリシーのため、フォームにデータが残る場合があります。
これらのメソッドの目的は、3 つの異なる Dbms を使用して標準化された電子カルテ システムの永続化層の実装を比較するいくつかの実験を紹介する: 1 つのリレーショナル (MySQL) と 2 つの NoSQL (MongoDB ドキュメント ベースおよびネイティブ XML が存在)。自分の計算がされている計算され、3 つの異なる増加規模のデータベースと六つの異なる複雑さ増加クエリを使用して比較します。3 つのデータベース サーバーをインストールし、クエリが実行された同じコンピューターにローカルで構成されています。技術的な詳細のための材料表を参照してください。
同時実行制御の実験は、リレーショナルの MySQL と NoSQL MongoDB Dbms のパフォーマンスを比較するために行われています。記載されている ORM 改善 (ノード + パスと腕) は、文学10から関連性の高い適切な結果を使用して比較されているも。
データベース管理システムは、加速率で継続的に進化しています。誰には、唯一の既存のパラダイムのリレーショナル モデル頃この指数の開発についてと思うでしょう。例を見て、参照してください、例えば12、酸の性質を保持した応答時間改善されたリレーショナル データベースを実装するモデルを提案します。
1. 3 つの二重大きさで分類された標準化された EHR 抽出データベースを格納するリレーショナル MySQL DBMS を構築します。
2. 3 つの二重大きさで分類された標準化された EHR 抽出データベースを格納するために NoSQL MongoDB DBMS を構築します。
3. ビルド、NoSQL ストア 3 ダブル サイズ標準化電子カルテ抽出データベースを DBMS が存在します。
4 設計および 3 のリレーショナル データベースに 6 複雑さ増加クエリを実行
5. 設計し、3 の NoSQL MongoDB データベースに 6 複雑さ増加クエリを実行
6. 設計および 3 で実行 NoSQL データベース 6 増加複雑なクエリが存在します。
7. 設計し、MySQL および 5,000 抽出データベースの MongoDB を使用して同時実行制御実験を実行
注: 存在するデータベースは、以前の実験でパフォーマンスが悪いためこの時点で実験から削除されました。
名前、最初と最後の日付および重症度を含め、患者の問題についての情報を含む現実的な標準化電子カルテを抽出に対して六つの異なるクエリは、表 1のとおりです。
6 各 DBMS の 3 倍規模のデータベース クエリの平均応答時間は、表 2-4のとおりです。図 1-6は、同じ結果をグラフィカルに表示 (垂直軸がこれらの数字の中で非常に異なる尺度を使用することに注意)。
計算複雑性の強い線形動作は使用される 3 のデータセットの比較的小さいサイズのために適切な注意が、NoSQL データベースのすべてのクエリで顕著です。ただし、リレーショナルの ORM データベースは、不明瞭な線形動作を示します。MongoDB データベースが存在するデータベースよりかなり平坦な傾斜です。
表 5に文献の公開導入で説明した改良型リレーショナル システムによって結果があります。類似のクエリと表 5から腕結果のデータベース サイズ表 3から MongoDB 結果を補間第 1 四半期の両方のデータベース システムに等しいが、Q3 で MongoDB を支持します。
表 5と表6に同時実行制御実験の結果があります。MongoDB は、スループットと応答時間の両方の MySQL を打ちます。実際には、MongoDB より分離では、同時実行制御の動作が改善と同時実行の印象的なデータベースとして立っています。
図 1: アルゴリズムの複雑さ、MongoDB ORM MySQL のクエリ Q1 と Q4 の DBMS が存在して。この図は、クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用して7から変更されているし、秒数 5,000、10,000 および 20,000 中型 EHR は、各 DBMS およびクエリ Q1 と Q4 のデータベースを抽出応答時間を示します。この図の拡大版を表示するのにはここをクリックしてください。
図 2:クエリ Q2 の ORM MySQL DBMS のアルゴリズムの複雑さ。この図は、10,000 と 20,000 中型 EHR extracts ORM MySQL データベース クエリ Q2 の 5,000、秒単位で応答時間を示しています。この図の拡大版を表示するのにはここをクリックしてください。
図 3:アルゴリズムの複雑さ MongoDB の DBMS は、クエリ Q2、Q5 と。この図は、クリエイティブ ・ コモンズ ・ ライセンスを使用して7から変更されている (によって http://creativecommons.org/licenses//4.0) と、10,000 および 20,000 中型 EHR は、各 DBMS およびクエリ Q2、Q5 のデータベースを抽出 5,000、秒単位での応答時間を示しています。この図の拡大版を表示するのにはここをクリックしてください。
図 4: クエリ Q3 Q5 の ORM MySQL DBMS のアルゴリズムの複雑さ。10,000 および 20,000 中型 EHR は各 DBMS およびクエリ Q3 Q5 のデータベースを抽出 5,000、秒の応答時間を示しています。この図の拡大版を表示するのにはここをクリックしてください。
図 5:存在とクエリ Q3 の MongoDB DBMS のアルゴリズムの複雑さ。この図は、クリエイティブ ・ コモンズ ・ ライセンス (で/4.0/http://creativecommons.org/licenses/) を使用して7から変更されているし、秒数 5,000、10,000 および 20,000 中型 EHR は、各 DBMS およびクエリ Q3 のデータベースを抽出応答時間を示します。この図の拡大版を表示するのにはここをクリックしてください。
図 6:ORM MySQL のアルゴリズムの複雑さがあり MongoDB DBMS クエリ Q6。この図は、クリエイティブ ・ コモンズ ・ ライセンス (で/4.0/http://creativecommons.org/licenses/) を使用して7から変更されているし、秒数 5,000、10,000 および 20,000 中型 EHR は各 DBMS およびクエリ Q6 のデータベースを抽出応答時間を示します。この図の拡大版を表示するのにはここをクリックしてください。
クエリ | |
第 1 四半期 | 1 人の患者のすべての問題を検索します。 |
第 2 四半期 | すべての患者のすべての問題を検索します。 |
第 3 四半期 | 最初の日、決議日と重症度を検索します。 |
1 人の患者の 1 つの問題の | |
第 4 四半期 | 最初の日、決議日と重症度を検索します。 |
1 人の患者のすべての問題の問題の | |
Q5 | 最初の日、決議日と重症度を検索します。 |
すべての患者のすべての問題の問題の | |
Q6 | 問題「咽頭炎」、すべての患者をを見つける |
初版日 > 2007 年 10 月 16 日 ='、決議日 | |
< = 2008 年 6 月 5 日 ' と '高' の重要度 |
表 1: 6 のクエリがリレーショナルで実行し、NoSQL データベース含む標準化された電子カルテは、患者の問題について抽出します。このテーブル7クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用してから変更されている、各 DBMS の自然表現の 3 つのサイズ成長データベースに対して実行 6 複雑さ成長クエリを示します言語です。
ORM/MySQL | 5000 ドキュメント | 10,000 ドキュメント | 20,000 ドキュメント |
第 1 四半期 (s) | 25.0474 | 32.6868 | 170.7342 |
第 2 四半期 (s) | 0.0158 | 0.0147 | 0.0222 |
第 3 四半期 (s) | 3.3849 | 6.4225 | 207.2348 |
第 4 四半期 (s) | 33.5457 | 114.6607 | 115.4169 |
Q5 (s) | 9.6393 | 74.3767 | 29.0993 |
Q6 (s) | 1.4382 | 2.4844 | 183.4979 |
データベースのサイズ | 4.6 GB | 9.4 GB | 19.4 GB |
総エキス | 5000 | 10,000 | 20,000 |
表 2: 2 倍サイズ ORM MySQL リレーショナル DBMS のデータベースの 6 クエリの秒単位での応答時間の平均です。このテーブルORM MySQL リレーショナル DBMS および 3 つのデータベースのメモリ内サイズを使用して 3 つの倍規模のデータベースのクエリごとに六つの応答時間を示しています。
MongoDB | 5000 ドキュメント | 10,000 ドキュメント | 20,000 ドキュメント | 斜面 (*10exp(-6)) |
第 1 四半期 (s) | 0.046 | 0.057 | 0.1221 | 5.07 |
第 2 四半期 (s) | 34.5181 | 68.6945 | 136.2329 | 6,780.99 |
第 3 四半期 (s) | 0.048 | 0.058 | 0.1201 | 4.81 |
第 4 四半期 (s) | 0.052 | 0.061 | o.1241 | 4.81 |
Q5 (s) | 38.0202 | 75.4376 | 149.933 | 7460.85 |
Q6 (s) | 9.5153 | 18.5566 | 36.7805 | 1,817.68 |
データベースのサイズ | 1.95 GB | 3.95 GB | 7.95 GB | |
総エキス | 5000 | 10,000 | 20,000 |
テーブル 3: MongoDB NoSQL DBMS の 2 倍規模のデータベースに 6 クエリの秒単位での応答時間の平均です。次の表7は、クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用してから変更されているし、NoSQL MongoDB DBMS とメモリのサイズを使用して 3 つの倍規模のデータベースの各クエリの六つの応答時間を示しています3 つのデータベース。各クエリの勾配が表示されますも。
存在します。 | 5000 ドキュメント | 10,000 ドキュメント | 20,000 ドキュメント | 斜面 (*10exp(-6)) |
第 1 四半期 (s) | 0.6608 | 3.7834 | 7.3022 | 442.76 |
第 2 四半期 (s) | 60.7761 | 129.3645 | 287.362 | 15,105.73 |
第 3 四半期 (s) | 0.6976 | 1.771 | 4.1172 | 227.96 |
第 4 四半期 (s) | 0.6445 | 3.7604 | 7.3216 | 445.17 |
Q5 (s) | 145.3373 | 291.2502 | 597.7216 | 30,158.93 |
Q6 (s) | 68.3798 | 138.9987 | 475.2663 | 27,125.82 |
データベースのサイズ | 1.25 GB | 2.54 GB | 5.12 GB | |
総エキス | 5000 | 10,000 | 20,000 |
表 4: 存在 NoSQL DBMS の 2 倍規模のデータベースに 6 クエリの秒単位での応答時間の平均です。この表7クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用してから変更されており、DBMS とのメモリ内サイズ存在することの 3 倍規模のデータベース、NoSQL を使用して各クエリの六つの応答時間を示しています3 つのデータベース。各クエリの勾配が表示されますも。
腕紙 | 腕 (s) | ノード + パス (s) | |
第 1 四半期 | クエリ 2.1 | 0.191 | 24.866 |
第 3 四半期 | クエリ 3.1 | 0.27 | 294.774 |
データベースのサイズ | 2.90 GB | 43.87 GB | |
総エキス | 29,743 | 29,743 |
表 5: Q1 と Q3 で改良されたリレーショナル システムのようにクエリの秒単位での応答時間の平均10. この表7クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用してから変更されており、第 1 四半期と第 3 四半期10 2 つの改良されたリレーショナル データベース システムに対応する「2 つのほとんど同じようなクエリを示していますその応答時間。2 つのデータベースのサイズも示されます。
ORM/MySQL | スループット | 応答時間 |
第 1 四半期 (s) | 4,711.60 | 0.0793 |
第 3 四半期 (s) | 4,711.60 | 0.1558 |
第 4 四半期 (s) | 4,711.60 | 0.9674 |
表 6: Q1、Q3 と Q4 の ORM MySQL リレーショナル DBMS で同時実行のクエリの秒のスループットと応答時間の平均です。この表7クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用してから変更されており、同時に 3 つの単一患者クエリおよびその平均応答時間の最高の平均スループットを示していますORM MySQL リレーショナル システムを用いた実行実験。
MongoDB | スループット | 応答時間 |
第 1 四半期 (s) | 178,672.60 | 0.003 |
第 3 四半期 (s) | 178,672.60 | 0.0026 |
第 4 四半期 (s) | 178,672.60 | 0.0034 |
表 7: 同時実行クエリ Q1、Q3 と Q4 の MongoDB NoSQL DBMS の秒のスループットと応答時間の平均です。この表7クリエイティブ ・ コモンズ ・ ライセンス (http://creativecommons.org/ licenses/by/4.0/) を使用してから変更されており、同時に 3 つの単一患者クエリおよびその平均応答時間の最高の平均スループットを示していますMongoDB の NoSQL システムを用いた実行実験。
補足図 1: スクリーン ショットは、MySQL サーバーに接続するソフトウェア画面を示しています。この図をダウンロードするここをクリックしてください。
補足図 2: スクリーン ショットは最初の SQL クエリが書かれて MySQL サーバーに SQL インタ フェースを示します。この図をダウンロードするここをクリックしてください。
補足図 3: サーバー mongod を実行して DOS システムのウィンドウを使用して、MongoDB 2.6 localhost サーバーを起動します。この図をダウンロードするここをクリックしてください。
補足図 4: スクリーン ショットは 5.7.4 を通じて 5.7.1 の手順で示すように、クエリ ビルダーのテキスト ボックスに書かれたクエリを示しています。スクリーン ショットは、5.7.3 のステップを示しています。この図をダウンロードするここをクリックしてください。
補足図 5: スクリーン ショットを示しますステップ 5.7.6 。この図をダウンロードするここをクリックしてください。
補足図 6: スクリーン ショットは、ダイアログの上の部分の XPath クエリの書き込みを示しています。この図をダウンロードするここをクリックしてください。
このプロトコルを示します、純粋なリレーショナル ORM システムそうにない単一患者クエリ (Q1、Q3、および Q4) の実用的な応答時間が遅く、おそらくのために多くの高価な結合操作を実行するリレーショナル テーブルのために数が多いので、ストレージ ・ システムは、特定の種類のデータベースで使用されます。NoSQL データベースは、リレーショナル システムを使用して、各ドキュメント全体のデータベース全体に広がるテーブル ベースのファッション間ドキュメント ベースの方法でデータを保存します。NoSQL システムは、DBMS の存在よりもかなり速く実行する MongoDB を線形勾配を示します。同時実行制御、MongoDB も動作リレーショナル MySQL ORM7よりはるかに良い。
このプロトコルは、ORM MySQL DBMS に関する7で示された結果のトラブルシューティング プロトコルを提示します。MySQL システムが最新のバージョンにアップデートされて、結果が若干変更されています。さらに、ドキュメント ベースの NoSQL システムの臨界点 MongoDB は EHR エキスが更新されたときは上書きされません、ために医療情報7を保存することが、全体を新しい新しいデータを抽出するときの一貫性を保つことができる彼らのようです。生成され、システムに格納されている元の抽出は維持されます。いくつかの医療専門家は、元のデータに基づいて重要な医療決定をした可能性がありますので、これは、医療情報の厳格な要件です。
改良されたリレーショナル アーム システムは大幅にリレーショナル テーブルの数を減少する、リレーショナル パフォーマンスが向上します。リレーショナル スキーマ修飾するので抽出物が保有する医療情報のクエリを実行可能性があります、しかし、抽出物は正確な原型では復元できません。
二次非常に大規模なデータベース (研究) を使用して、データベース システムがより適切なのですべて患者クエリ (Q2、Q5) は NoSQL システムでより ORM でより良い動作は不明だが、これらのシステムをより簡略化した実行リレーショナル12のシステム。Q6 ・臨床実習の間に特殊なクエリを使用して、これらの実験で得られた結果によって行動を決定できないと考えています。
ただし、メソッドの制限の 1 つは直接実験プロトコルで使用されている正確に同じデータを持つ単一患者、医療クエリに関する NoSQL MongoDB を改良されたリレーショナル アーム システムを比較することの少ないです。プロトコルに最適化された ARM を含む実験を行ったまで単一患者クエリについて表 3 表 5の補間結果を維持しています。将来のアプリケーションこれらの実験にしておきます。プロトコル内で 1 つの重要なステップは、我々 は、正確な状態の-最新鋭の 3 つの技術を比較可能性があるために、無料データベースで、近年の同様のソフトウェア バージョンの選択です。
これは NoSQL システム実際、現実的な標準化された医療情報を使用して、リレーショナルを直接比較する最初の試みの 1 つです。ただし、使用する特定のシステムは、実際のシナリオと問題を解決8によって大いに決まります。
著者が明らかに何もありません。これらの実験で使用されるデータセットはこれらの実験のライセンスの下でいくつかのスペインの病院によって提供され、その結果は公にご利用いただけません。ISO/EN 13606 RM XML スキーマは、医療情報部 Multiprofessional 教育 (チャイム) の大学大学ロンドン中心部によって提供されました。
著者は、博士 Dipak Kalra、ISO/EN 13606 標準と ISO/EN 13606 W3C XML スキーマを使用するそのような許可の大学大学ロンドンから彼のチームを定義する EHRCom タスクフォースのリーダーに感謝したいと思います。
この作品は、セルバンテス ・ デ ・によって支えられたサラッド カルロス 3 世 [許可番号 RD16CIII、PI15CIII/00010 PI1500831 PI15/00003 PI15/00321]。
Name | Company | Catalog Number | Comments |
MySQL 5.7.20 | MySQL experiments | ||
Red Hat Enterprise Linux Server release 7.4 (Maipo), 2.60GHz, RAM 16GB | |||
MongoDB 2.6 | MongoDB experiments | ||
Windows 7, 2.66GHz, RAM 12GB | |||
eXist 3.0RC1 | eXist experiments | ||
Windows 7, 2.66GHz, RAM 12GB | |||
Studio 3T 5.5.1 | 3T Software Labs Gmbh | MongoDB GUI |
このJoVE論文のテキスト又は図を再利用するための許可を申請します
許可を申請This article has been published
Video Coming Soon
Copyright © 2023 MyJoVE Corporation. All rights reserved
当社はcookieを使用しています。
「続行」をクリックすることで、当社のcookieへの同意となります。