JP5946059B2 - 処理分散プログラム、画像表示システムおよび処理分散方法 - Google Patents

処理分散プログラム、画像表示システムおよび処理分散方法 Download PDF

Info

Publication number
JP5946059B2
JP5946059B2 JP2012096001A JP2012096001A JP5946059B2 JP 5946059 B2 JP5946059 B2 JP 5946059B2 JP 2012096001 A JP2012096001 A JP 2012096001A JP 2012096001 A JP2012096001 A JP 2012096001A JP 5946059 B2 JP5946059 B2 JP 5946059B2
Authority
JP
Japan
Prior art keywords
time
data
series data
importance
database table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012096001A
Other languages
English (en)
Other versions
JP2013225169A (ja
Inventor
圭介 小川
圭介 小川
橋本 真幸
真幸 橋本
一則 松本
一則 松本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2012096001A priority Critical patent/JP5946059B2/ja
Publication of JP2013225169A publication Critical patent/JP2013225169A/ja
Application granted granted Critical
Publication of JP5946059B2 publication Critical patent/JP5946059B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Description

本発明は、ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう技術に関する。
従来から、電子カルテシステムなどの医療情報システムが知られている。例えば、特許文献1には、医療行為の相互間の関係を考慮し、効率よく医療情報を入力して電子カルテを構築する電子カルテシステムが開示されている。この電子カルテシステムは、医療行為およびその関連情報を含む医療行為情報と、この医療行為情報の適用時間情報とにより電子カルテ情報を構成する。また、その電子カルテ情報の医療行為情報を時間軸上に閲覧情報として表示する。また、編集中の電子カルテ情報における医療行為情報を時間軸上に表示させる。そして、ユーザの操作を受け付けて、電子カルテにおける医療行為情報を編集する。
図12は、電子カルテシステムの画面表示例を示す図である。図12に示すように、この電子カルテシステムは、多段階の時間軸(例えば、年単位・月単位・日単位)を有する。また、その下に診療行為(オブジェクト)が表示される。この電子カルテシステムでは、左に並ぶ項目が医療行為(病名・投薬・診断・検査等)であって、その右側に実際の行為が、一定の時間幅をもって記録される。
ユーザは、上部の時間軸を選択することで、任意の尺度での情報俯瞰が可能であり、任意の時間にジャンプすることができる。また、特定の行為項目のデータの詳細な情報を閲覧しようとする場合は、複数の行為項目をドラッグ操作で囲むことで、詳細情報を表示することが可能である。
このように、従来の電子カルテシステムでは、上記のような多段階のタイムスケールを表示し、ユーザは、任意のタイムスケールで時系列に沿って入力されたデータを俯瞰することができる。そして、任意のタイムスケール上で各行為項目の詳細情報を表示し、閲覧することができる。
このような電子カルテシステムにより、例えば、患者に対する投薬や検査の実施行為に関する医療情報のグラフ化を様々な時間粒度(ディスプレイの1ドットあたりの表示時間(msec/dot)であり、データを閲覧する際の時間幅とグラフ画像のサイズによって決定される。これは、特定サイズのディスプレイに時系列データを表示する際に、表示幅を変更することを考えたとき、プログラム上で表現できる最も小さい時間幅から、表示幅を拡大した際の倍率と同義である。)で表示することが可能となる。また、同時に複数の行為項目を表示することによって、さまざまな項目間の関係を種々の時間粒度で閲覧することが可能となる。
特開2008−192002号公報 特開2009−134713号公報 特開2009−282557号公報
電子情報通信学会 Vol100,p50−p60
しかし、従来のシステムが処理すべきデータの数は極めて多い。例えば、糖尿病患者であれば、毎日投薬や検査がなされ、これらは年のスケールでは365のデータ数を持つ。これに加え、これら投薬や検査の種類は数百に及ぶことが多い。そのため、これらを表すデータオブジェクト数は一般的には数千から数万へと膨れ上がる。サーバ・クライアントで構成されるシステムにおいて、これらのデータを表示するためにはデータ伝送および描画に多くの時間がかかり、ユーザレスポンスが落ちてしまう。
このような場合、予めグラフを伝送する際の倍率を決めておき、その倍率においてグラフ描画に必要なデータを準備しておくことによって、高速にグラフを描画し、伝送することが可能となる。図13は、タイムスケールと表示倍率を示す図である。図13に示す倍率において、グラフ描画に必要なデータを予め作成することにより、最小限のデータ数でグラフを描画し、伝送を行なうことが可能となる。すなわち、図13に示すように、伝送番号1〜20に相当する倍率において、グラフを描画する際に必要なデータのみを1つの独立したテーブルであるデータベーステーブルとして保持することで、不必要なデータのサーチが必要なくなり、グラフ作成時間を短縮することが可能となる。
しかしながら、図13に示したシステムでは、データを保存するためのテーブル数が複数個(上記では20)になってしまうため、例えば、図14に示すWEB上のデータベースのみに上記テーブルを保存する構成を採ると、図14の実線の矢印で示したように、端末から大量のアクセスがあった場合、処理負担が急増することが想定される。このため、データを複数の場所に保存しておくことで、処理の分散を図ることが可能となるが、単純に複数のデータベースを複数の場所に用意すると、極めて膨大なデータ量が必要になってしまうという問題がある。一方、これらの時系列データは、閲覧に際し、適した時間粒度(ディスプレイの1ドットあたりの表示時間(msec/dot)であり、データを閲覧する際の時間幅とグラフ画像のサイズによって決定される。倍率と同義である。)に偏りがあるのが一般的である。
例えば、時系列データとして医療データを扱う場合は、投薬や検査の実施情報が主なデータになるが、これらは日にち単位や月単位で実施されることが多いため、必然的に、(a)それらの周期を見るために日にち単位や月単位での閲覧、(b)長期にわたる経過を見るために年単位や10年単位などで見られることになる。つまり、実施行為が発生する時間間隔が表現できる時間粒度以上の時間粒度での閲覧のニーズが極めて高くなる。このため、図14に示したように、例えば、A〜C病院内のデータベースに重要なデータのみをキャッシュし、図中の点線の矢印で示したように、各端末がそれぞれのデータベースにアクセスするように構成することによって、処理分散を図ることが可能となる。また、図15に示したように、WEB上にデータベースを分散させても良い。そして、各データベースに全てのデータを保存する構成を採ると、コストが増大するため、重要なデータのみを保持するようにすることが望ましい。
本発明は、このような事情に鑑みてなされたものであり、DBテーブルの数をレベルごとに、その重要度に応じて、キャッシュするデータを決定したり、冗長構成を変えたりすることによって、処理速度の向上を図り、準備するテーブルの数を少なく抑えることができるため、全てのテーブルを減らすことができる処理分散プログラム、画像表示システムおよび処理分散方法を提供することを目的とする。
(1)上記の目的を達成するために、本発明は、以下のような手段を講じた。すなわち、本発明の処理分散プログラムは、ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散プログラムであって、前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データからなるデータベーステーブルを保存する処理と、前記時系列データを視認可能に表示する時間粒度の重要度に基づいて、前記各データベーステーブルの重要度を計算する処理と、前記計算された重要度に基づいて、前記データベーステーブルを抽出する処理と、の一連の処理をコンピュータに実行させることを特徴とする。
本発明において、ディスプレイの1ドットあたりの表示時間(msec/dot)を時間粒度と呼称する。時間粒度は、データを閲覧する際の時間幅とグラフ画像のサイズによって決定されるもので、倍率と同義である。)このように、時系列データを視認可能に表示する時間粒度毎に、時系列データからなるデータベーステーブルを保存し、時系列データを視認可能に表示する時間粒度の重要度に基づいて、各データベーステーブルの重要度を計算し、計算された重要度に基づいて、データベーステーブルを抽出するので、重要な時間粒度に相当するデータのみを複数準備することができ、処理速度の向上が図られると共に、準備するテーブルの数を少なく抑えることができるため、全てのテーブルを減少させることが可能となる。
(2)また、本発明の分散処理プログラムは、入力された全時系列データをサンプリングし、サンプリング後の時系列データに基づいて、前記時系列データの時間粒度と視認可能なデータ数との関係を示すグラフ上で、モデルから導かれる回帰曲線の推定を行ない、前記推定した回帰曲線のパラメータから、勾配が急激に減少する区間を特定する処理を更に含み、前記区間の時間粒度に対応するデータベーステーブルの重要度を高く設定し、全時系列データについて計算した重要度に基づいて、前記データベーステーブルの重要度を決定することを特徴とする。
このように、上記区間の時間粒度に対応するデータベーステーブルの重要度を高く設定し、全時系列データについて計算した重要度に基づいて、前記データベーステーブルの重要度を決定するので、処理速度の向上が図られると共に、準備するテーブルの数を少なく抑えることができるため、全てのテーブルを減少させることが可能となる。また、この構成により、データが入力された時間間隔を視認できる時間粒度(倍率)以上の時間粒度の重要度を高く設定することができる。
(3)また、本発明の分散処理プログラムは、ロジスティック関数であるシグモイド関数による回帰を用いて前記推定を行なうことを特徴とする。
このように、シグモイド関数による回帰を用いて前記推定を行なうので、急勾配点を迅速に特定することが可能となる。
(4)また、本発明の分散処理プログラムは、前記時系列データの分散および視認可能なデータ数との関数によって決定される概要情報量と、予め指定された時間範囲内に実際に存在するデータ量の関数によって決定される詳細情報量とに基づいて、前記時間粒度における時系列データの情報量である時間粒度情報量を算出し、前記算出した時間粒度情報量に基づいて、前記重要度を計算することを特徴とする。
このように、概要情報量と、詳細情報量とに基づいて時間粒度情報量を算出して、重要度を計算するので、データベーステーブルの抽出が効率的となり、処理速度の向上が図られると共に、準備するテーブルの数を少なく抑えることができるため、全てのテーブルを減少させることが可能となる。
(5)また、本発明の画像表示システムは、画像を表示する画面を備え、上記(1)から(4)のいずれかに記載の分散処理プログラムを実行する画像表示システムであって、前記抽出したデータベーステーブルに含まれる時系列データをグラフ化して画面に表示することを特徴とする。
この構成により、画像表示システムにおいて、時系列データを視認可能に表示する時間粒度毎に、時系列データからなるデータベーステーブルを保存し、時系列データを視認可能に表示する時間粒度の重要度に基づいて、各データベーステーブルの重要度を計算し、計算された重要度に基づいて、データベーステーブルを抽出するので、処理速度の向上が図られると共に、準備するテーブルの数を少なく抑えることができるため、全てのテーブルを減少させることが可能となる。
(6)また、本発明の分散処理方法は、ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散方法であって、前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データからなるデータベーステーブルを保存するステップと、前記時系列データを視認可能に表示する時間粒度の重要度に基づいて、前記各データベーステーブルの重要度を計算するステップと、前記計算された重要度に基づいて、前記データベーステーブルを抽出するステップと、を少なくとも含むことを特徴とする。
このように、時系列データを視認可能に表示する時間粒度毎に、時系列データからなるデータベーステーブルを保存し、時系列データを視認可能に表示する時間粒度の重要度に基づいて、各データベーステーブルの重要度を計算し、計算された重要度に基づいて、データベーステーブルを抽出するので、処理速度の向上が図られると共に、準備するテーブルの数を少なく抑えることができるため、全てのテーブルを減少させることが可能となる。
本発明によれば、時系列データを視認可能に表示する時間粒度毎に、時系列データからなるデータベーステーブルを保存し、時系列データを視認可能に表示する時間粒度の重要度に基づいて、各データベーステーブルの重要度を計算し、計算された重要度に基づいて、データベーステーブルを抽出するので、重要な時間粒度に相当するデータのみを特定することが可能となる。また、そのデータのみをキャッシュ等に利用してデータを分散保持すれば、処理速度の向上とストレージの量を減らすことが可能となる。また、大規模なタイムラインシステム、すなわち、医療行為等を表す複数の時系列データのグラフを少なくとも1個の時間粒度(あるいは時間範囲)でディスプレイ画面上に表示するシステムを実現するにあたって、大人数がアクセスを行なう場合においても、レスポンススピードを確保することが可能となる。
シグモイド曲線を示す図である。 フィッティング関数の例を示す図である。 プロットされたデータを示す図である。 テーブル番号と重要度を示す図である。 必要なテーブル数を示す図である。 テーブル番号と重要度を示す図である。 テーブル番号とテーブル数を示す図である。 機能ブロックを示す図である。 第1の重要度計算部の概略構成を示す図である。 第2の重要度計算部の概略構成を示す図である。 本実施形態に係る分散処理の動作を示すフローチャートである。 医療情報システムの画面表示例を示す図である。 タイムスケールと表示倍率を示す図である。 データベースへのアクセスの集中と分散の様子を示す図である。 データベースへのアクセスの集中と分散の様子を示す図である。 画面における隣り合う2つのデータプロットの一例を示す図である。 データ発生間隔と発生間隔を有するデータ数との関係が正規分布を示す様子を示す図である。
一般的に、ある種の時系列に従った知識を管理する場合、複数の時系列データを横断的に閲覧することが望ましい。例えば、医療知識で言えば、投薬情報と検査情報は横断的に閲覧する必要がある。一方、これらのデータの発生間隔は様々である。例えば、糖尿病患者の投薬は毎日発生するが、検査は月に1回程度しか発生しない。このため、閲覧に適したデータ表示時間間隔が存在する。小さいタイムスパンから大きいタイムスパンで表示するシステムでは、例えば、秒・分・時間・日・月・年・10年の表現を持つが、このような様々なタイムスパンを持つデータをプロットして表現するため、時系列データの推移を俯瞰的に把握することができる。
ところで、一般的に、自然界に存在するデータを時系列的にプロットする場合、その発生間隔には、データ固有の平均的な周期が存在することが多い。医療で用いられるデータを例に取ると、例えば、糖尿病慢性疾患の患者の投薬発生イベントに関するデータは、血糖改善剤等を毎食後服用し、血糖検査を毎食後行なうため、3〜4時間に1回程度の発生間隔で発生することが多く、数分単位・数年単位での発生間隔はとらないことが多い。このようなデータを、従来のシステム上で時系列プロットをして表現する場合、時系列的に表示する時間スパンを変化させたとき、グラフ上の視認できるデータの数は、特定の時間粒度で大きく減少し始める。これは、表示するデータの性質に応じて決定されるデータ間の平均周期が閲覧不能になる(1ドット以下になる)際の時間粒度が存在するためである。これはデータによって大きく異なる。
これを直感的に理解するために、横軸にデータを表示するための時間幅、縦軸を表示可能なデータプロット数にとってグラフ化すると、それらは後述するシグモイド形状をとる。すなわち、視認できるデータ数が急激に低下する部分がある。このような場合、特に視認性が低下する領域で細かく倍率を設定し、視認できるデータのみを持つ複数段階のDBテーブルを準備することで、グラフを描画する際のデータ数を抑えることができ、レスポンススピードを向上させることができる。
ここで、シグモイド形状について説明する。時系列データをグラフ上にプロットをして表現する場合、上述したように、グラフの視認性低下が発生する。しかも視認性低下の発生する領域が、表示する時系列データの種類によって大きく偏る。すなわち、表示するデータの性質に応じて、データの発生間隔の平均周期が異なるため、平均周期によって決定されるタイムスパンに応じて、視認性低下の傾向が大きく変わる。このような偏りを、横軸にデータを表示するための時間幅、縦軸を表示可能なデータプロット数をとってグラフ化すると、シグモイド形状をとることが推測できる。以下、その理由について説明する。
図16は、画面における隣り合う2つのデータプロットの一例を示す図である。図16では、例えば、α番目と(α+1)番目の隣り合う2つのデータプロットを考える。各データプロットの開始時刻を、それぞれtα(秒)、t(α+1)(秒)と定義する。このとき、図16に示すように、これらのデータの間隔は、
{t(α+1)−tα}(秒)
と表わされる。ここで、システム上、1秒=a(dot)で表わされるとすると、この間隔は、
a{t(α+1)−tα}(dot)
と表わされる。
次に、ユーザが、時間粒度の変更操作として、画面上でピンチイン操作を行なったときにデータプロット間隔について考える。ピンチイン前のデータプロット間隔a{t(α+1)−tα}に対して、拡大操作1/γ(m−l)倍をすると、画面上のデータプロット間隔が変化する。つまり、ピンチイン後のデータプロット間隔は、
a{t(α+1)−tα}・1/γ(m−l)
となる。
人間が視認できるサイズを、最も厳しい条件として、ディスプレイ上の1ドットとすると、データプロット間隔が、1ドットよりも小さければ、2つのデータを肉眼で区別することができず、両者が統合して見えることになる。そこで、2つのデータを単一のデータで代表することが可能となる。すなわち、次式を満たした時に、2つのデータが統合される。
a{t(α+1)−tα}・1/γ(m−l)<1
なお、人間が視認できるサイズを、最も厳しい条件である1ドットとすることによって、最も良い視認性を確保することが可能となる。
ここで、本発明者らは、データプロットを効率的に扱うため、様々な時間粒度で表示されるグラフを生成する上で、必要最低限のデータを扱うようにシステムを組むと、システムが高速化されることに着目し、予めデータを特定の時間粒度に応じて、マージした上でデータベース上に保持することによって、効率の良いグラフ作成が可能となることを見出した。
時間粒度γ(m−l)を、Eで表わすと、上記の式は、次のように簡略化される。
a{t(α+1)−tα}・1/E<1
ここで、時間粒度Eに応じて、視認できるプロット数がどのように変化するかについて考える。式変形により、
a{t(α+1)−tα}<E
が得られる。この式は、2つのデータ間のプロット間隔が、一定の時間粒度以下であれば、マージ(統合)しても良いことを意味している。その結果、マージするときの時間粒度Eは、データ発生間隔{t(α+1)−tα}に比例する、ということが理解できる。
次に、このデータ発生間隔について考える。データ発生間隔は、医療データの場合、一定の周期に従うことが多い。例えば、糖尿病患者は、食後にインスリンの注射をしたり、投薬をしたり、血糖値検査を食後2時間にしたりする。このことは、概ね3、4時間という時間がデータ発生間隔に相当することを意味する。ただし、このようなデータは自然界のデータのため、“ゆらぎ”が必ず発生する。例えば、上記の例では、夕食を食べる時間は、昨日は6時であったが、今日は7時だったということが生ずる。このような“ゆらぎ”が存在することを考えると、データ発生間隔は、平均周期を平均とする正規分布に従うと考えられる。
図17は、データ発生間隔と発生間隔を有するデータ数との関係が正規分布を示す様子を示す図である。上述したように、時間粒度Eはデータ発生間隔に比例するため、図17の横軸のデータ発生間隔をEに置き換えたとしても、正規分布が成立する。ここで、上記の正規分布において、最も小さい時間粒度から徐々に時間粒度を大きくしていったときの表示可能なデータ数の分布について考える。これは、上記の正規分布を累積させた累積正規分布関数により求めることができる。この累積正規分布関数は、シグモイド関数になることが知られている。シグモイド関数は、ある瞬間にグラフの傾きが急増するという特徴を有している。これは、時間粒度が大きくなると、ある瞬間にディスプレイ上に表示できないデータが発生し始めるということを意味している。
しかしながら、一般的にはデータによって特定の時間粒度付近に見るべき情報の量が偏る傾向があり、当該時間粒度の画像を生成するデータベーステーブルにアクセスが集中することが多いため、大人数がシステムを利用した際には、そのサーバ負荷が巨大になってしまうため、高速なレスポンスが担保できないという問題がある。
すなわち、図14に示すWEB上のデータベースのみに上記テーブルを保存する構成を採ると、図14の実線の矢印で示したように、端末から大量のアクセスがあった場合、処理負担が急増することが想定される。このため、データを複数の場所に保存しておくことで、処理の分散を図ることが可能となるが、単純に複数のデータベースを複数の場所に用意すると、極めて膨大なデータ量が必要になってしまうという問題がある。
そこで、本実施形態では、以下の2通りの手法により時間粒度ごとの情報量を推定し、どの時間粒度にアクセスが集中するかを推定し、アクセス分散を行なう。すなわち、図14に示したように、例えば、A〜C病院内のデータベースに重要なデータのみをキャッシュし、図中の点線の矢印で示したように、各端末がそれぞれのデータベースにアクセスするように構成することによって、処理分散を図ることが可能となる。また、図15に示したように、WEB上にデータベースを分散させる構成を採り、重要なデータのみを保持する。より具体的には、分散処理を実現するために、以下の2通りの手法によって、時間粒度ごとの重要度を決定する。[1]異なる時間粒度ごとに、視認可能なデータ数と時間粒度をプロットしたグラフから、視認可能なデータ数が減少し始める時間粒度を計算し、当該時間粒度を重要な時間粒度とする手法、[2]時間粒度ごとの重要度を、時系列データを閲覧する際の視点から、時系列データの情報量を定義して、決定する手法、である。
[1]異なる時間粒度ごとに、視認可能なデータ数と時間粒度をプロットしたグラフから、視認可能なデータ数が減少し始める時間粒度を計算し、当該時間粒度を重要な時間粒度とする手法
図1は、シグモイド形状を示す図である。図1に示すように、ある特定の時間幅と時間時間粒度(タイムスケール)の関係はシグモイド関数の形状を取ることが知られている。これについては上述した通りである。この手法では、時間粒度を十分に細かく分割して、複数のデータベーステーブルを準備することにより、取り扱うデータ数を必要最小限にまで減らす工夫を行なう。基本的には、シグモイド関数の急勾配近辺に細かい時間粒度を配置し、その他の部分に十分大きな時間粒度を配置する。
ここで、一般的に、時系列データを観察するときに、(a)短期的視点、(b)長期的視点で閲覧するニーズが考えられる。(a)の短期的視点では、データの具体的な量や周期などを閲覧する一方で、(b)の長期的視点では、データの概要(投薬で言えば、長期的診療がどのように進行しているか)などを閲覧することが行なわれる。このときの時間粒度を考えると、短期的視点では、1画面にできる限り多くのデータが同時に閲覧できることと、1つ1つのデータが閲覧できる時間粒度が必要である。長期的視点では、データ1つ1つが閲覧できることは必要ではないが、データがどのような推移をたどっていて、他のデータとどのような関係にあるかなどが閲覧できる時間粒度が必要である。
つまり、表示するデータの時系列データの周期が閲覧できる時間粒度以上の時間粒度での閲覧ができれば、これらのニーズを満たせると考えられる。これを上記のシグモイド関数にあてはめると、シグモイド関数の急勾配が発生する箇所に重要な情報が集中すると考えられることになる。つまり、データ形状を、ロジスティック関数であるシグモイド関数のフィッティングにより決定し、そのパラメータから急勾配近辺を保持するデータベーステーブルの割り振りを決定し、複数に分散することで目的を達する。
フィッティングは、例えば、以下のような手順で行なうことができる。次式は、ロジスティック関数の式である。
Figure 0005946059
これを式変形すると次式が得られる。
Figure 0005946059
次に、両辺のlogをとって、次式を得る。
Figure 0005946059
ここで、Kのパラメータは、上部漸近線を表すことから、今回のシステムでは視認できるデータの上限すなわちデータ数そのものである。そのため、推定パラメータから除外して良い。ここで、次式を考える。
Figure 0005946059
Figure 0005946059
上記2式に基づいて、最小二乗法からPとQを推定することができる。「最小二乗法」とは、一般的に、測定で得られた数値の組を、適当なモデルから想定される1次関数、対数曲線など特定の関数を用いて近似するときに、想定する関数が測定値に対して、良い近似となるように、残差の二乗和を最小とするような係数を決定する方法のことである。このような最小二乗法を用いてP及びQからbとcを推定し、yの値が十分Kに漸近する時のxの値を求めれば良い。例えば、yの値として0.99Kなどを代入し、そのときのxの値を求めれば良い。
図2は、フィッティング関数の例を示す図であり、図3は、プロットされたデータを示す図である。図2の横軸は、図3に示す下記の倍率を1020に置き換えたものである。推定されたパラメータはb=1132.27168、c=1.40229となり、y=0.99Kとなる倍率を計算すると、上記番号が8.3になる点であり、8.3より大きい最小の整数は9であるから、9に相当する倍率は291600倍となる。この番号に相当する倍率が視認性の低下する倍率と推定される。また、y=0.01Kとなる点を計算すると、1.74となる。この番号以下の最大の整数は1であり、1に相当する倍率74649600が視認性の低下する最大の倍率と推定される。つまり視認性が低下する区間が1−9であり、この区間において閲覧する際の情報が集中すると考えられる。
すなわち、当該データにおいては、1〜9に相当するテーブルの重要度が高いと推定される。当該操作を全データについて行ない、さらに全患者のデータについて実施して、各々のテーブルごとに重要度が高いと試算されるテーブルの度数のカウントを行なう。例えば、カウントの結果、図4に示すような重要度をテーブル番号ごとに算出できたとする。この上で、全体で40のDBテーブルが作成可能とすると、全テーブルは必ず1つずつ作成するとして、余剰の20テーブルをアクセス分散用に保持することが可能である。この20の各々のテーブル番号へ再割り振りする。上記割合に対して、余剰DB数20を掛け合わせ、四捨五入を行なう。この結果を図5に示す。図5に示す値が、必要なデータベースのテーブル数である。これらを足し合わせると19となるので、残り1つのテーブルを割り当て可能である。
そこで、重要度をさらに上記の値で除算する。その結果を、図6に示す。図6に示すように、1テーブルあたりの重要度が算出される。この重要度できる限り減らすことが望ましいため、上記のうち、最も高い重要度を持つテーブル番号7のテーブルに残ったテーブルを配置すれば良い。最低限必要なテーブルを足しあわせて、テーブル数をまとめると図7に示すような結果が得られる。なお、上記の余剰テーブルはWEB上の別データサイトでも良いし、ローカルのキャッシュサーバ上に保存しても良い。
[2]時間粒度ごとの重要度を、時系列データを閲覧する際の視点から、時系列データの情報量を定義して、決定する手法
上記[1]の手法では、視認性低下区間のみが重要度の指標であったが、それ以外の指標を用いても良い。ここでは、以下に情報量の判定の一例を示す。特定の時間粒度のグラフの情報量を、「概要情報量」と「詳細情報量」の和に分けて考える。ここで、「概要情報量」とは、時系列グラフの推移などの概要を見るための情報量であり、データの値の分散が大きく、存在する潜在的なデータの数に関連すると考えられる。分散をsとして、潜在的なデータ数をxとすると、f(s,x)として表すことが可能である。単純比例とした場合、任意定数aを用いてasxとなる。
「詳細情報量」とは、データを細かい時間単位で詳細に見る際の情報量であり、表示する際のDB上の実際のデータ量yに関連すると考えられるためg(y)として表すことが可能である。これも単純比例とした場合、任意定数bと実際のDB上のデータ量yを用いて、byと表される。
従って、グラフの情報量は上記の和として、f(s,x)+g(y)となる。1画像に含まれるこの情報量を計算するためには、上記のレベルごとに必要な画像枚数で除算すれば良い。それぞれのレベルにおける時間データ密度(msec/dot)をcとして、1画像ドット数をdとすると、当該レベルにおける画像枚数は、cdとなる。従って、当該時間粒度の1画像あたりの平均的な情報量は(f(s,x)+g(y))/cdと計算できる。この情報量をそれぞれのレベルについて計算し重要度を判定すれば良い。上記のように単純比例とした場合は(asx+by)/cdとなる。
ここで、全データ数xを簡易的に求める場合、平均的には、(特定のレベルで表現できる時間幅/あるデータの全体の時間幅)*全データ数で表すことが可能である。このような指標は一例であるが、この指標を各々の拡大レベルについて計算することで、どの拡大レベルの情報量が大きいかを判定できる。
上記[1]または[2]の情報量に応じて、DBテーブルを複数作成する。このようにすることで全体のアクセスが均一に分散されることになる。なお、アクセス分散のために各々のクライアント端末ごとにどのテーブルにアクセスするかを記述した、スクリプトを配布しても良い。また、上記のようなデータベース冗長化構成を取ることによって、データ更新の際に更新が完了したデータベースを優先的に表示するような構成を取ることも可能である。
図8は、上記各機能をモジュール化した場合の機能ブロックを示す図である。データベース1からデータ取得部3がデータを取得し、重要度計算部5が上記のような手法で重要度を計算する。重要度計算部5は、図9に示す第1の重要度計算部と、図10に示す第2の重要度計算部から構成される。重要度統合部7は、重要度計算部5が計算した2種類の重要度を統合し、テーブル重要度計算部9は、データベーステーブルの重要度を計算する。そしてデータベース割り振り部11は、重要度の高いデータベーステーブルを割り振る機能を有する。
図9は、第1の重要度計算部の概略構成を示す図である。フィッティング部101は、上記のように、シグモイド曲線を用いて、時系列データのフィティングを行なう。急勾配検出部103は、シグモイド曲線上の急勾配の区間を検出する。急勾配部分カウント部105は、シグモイド曲線上の急勾配の区間内にある時系列データをカウントする。図10は、第2の重要度計算部の概略構成を示す図である。ここでは、上述したように、詳細情報量の計算と、概要情報量の計算が行なわれる。まず、詳細情報量の計算では、潜在データ量取得部201で潜在的な時系列データ量を取得し、詳細情報計算部203で詳細情報量の計算が行なわれる。すなわち、詳細情報量は、指定された時間範囲内に実際に存在するデータ量の関数によって決定される。次に、概要情報量の計算では、潜在データ量取得部205が潜在的な時系列データのデータ量を取得し、データ分散計算部207が時系列データの分散を計算する。そして、概要情報量計算部209が概要情報量の計算を行なう。すなわち、概要情報量は、時系列データの分散と視認できるデータ数との関数によって、決定される。集計計算部211は、上記のように計算した詳細情報量と概要情報量とに基づいて、集計を行なう。
図11は、本実施形態に係る分散処理の動作を示すフローチャートである。まず、データをデータベースから取得し(ステップS1)、重要度を計算する(ステップS2)。次に、全データの重要度をカウントし(ステップS3)、カウントされた重要度からデータベーステーブル番号の重要度を計算する(ステップS4)。最後に、データベーステーブルの重要度に応じて、配分できるデータベース数を増やして(ステップS5)、終了する。
以上説明したように、本実施形態によれば、時系列データを視認可能に表示する時間粒度毎に、時系列データからなるデータベーステーブルを保存し、時系列データを視認可能に表示する時間粒度の重要度に基づいて、各データベーステーブルの重要度を計算し、計算された重要度に基づいて、データベーステーブルを抽出するので、重要な時間粒度に相当するデータのみを特定することが可能となる。また、そのデータのみをキャッシュ等に利用してデータを分散保持すれば、処理速度の向上とストレージの量を減らすことが可能となる。また、大規模なタイムラインシステム、すなわち、医療行為等を表す複数の時系列データのグラフを少なくとも1個の時間粒度(あるいは時間範囲)でディスプレイ画面上に表示するシステムを実現するにあたって、大人数がアクセスを行なう場合においても、レスポンススピードを確保することが可能となる。
1 データベース
3 データ取得部
5 重要度計算部
7 重要度統合部
9 テーブル重要度計算部
11 データベース割振部
101 フィティング部
103 急勾配検出部
105 急勾配部分カウント部
201 潜在データ量取得部
203 詳細情報計算部
205 潜在データ量取得部
207 データ分散計算部
209 概要情報量計算部
211 集計計算部

Claims (6)

  1. ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散プログラムであって、
    前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存する処理と、
    前記時系列データの中の視認可能なデータ数が減少し始める時間粒度の重要度を高い値に設定することにより、前記各データベーステーブルの重要度を計算する処理と、
    前記計算された重要度に基づいて、前記データベーステーブルを抽出する処理と、の一連の処理をコンピュータに実行させることを特徴とする処理分散プログラム。
  2. ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散プログラムであって、
    前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存する処理と、
    入力された全時系列データをサンプリングし、サンプリング後の時系列データに基づいて、前記時系列データの時間粒度と視認可能なデータ数との関係を示すグラフ上で、モデルから導かれる回帰曲線の推定を行ない、前記推定した回帰曲線のパラメータから、勾配が急激に減少する区間を特定する処理
    前記区間の時間粒度に対応するデータベーステーブルの重要度を高く設定し、全時系列データについて計算した重要度に基づいて、前記データベーステーブルの重要度を決定する処理と、
    前記決定した重要度に基づいて、前記データベーステーブルを抽出する処理と、の一連の処理をコンピュータに実行させることを特徴とする処理分散プログラム。
  3. ロジスティック関数であるシグモイド関数による回帰を用いて前記推定を行なうことを特徴とする請求項2記載の処理分散プログラム。
  4. ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散プログラムであって、
    前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存する処理と、
    前記時系列データの分散および視認可能なデータ数との関数によって決定される概要情報量と、予め指定された時間範囲内に実際に存在するデータ量の関数によって決定される詳細情報量とに基づいて、前記時間粒度における時系列データの情報量である時間粒度情報量を算出し、前記算出した時間粒度情報量に基づいて、前記各データベーステーブルの重要度を計算する処理と、
    前記計算された各データベーステーブルの重要度に基づいて、前記データベーステーブルを抽出する処理と、の一連処理をコンピュータに実行させることを特徴とする処理分散プログラム。
  5. ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散方法であって、
    前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存するステップと、
    前記時系列データの中の視認可能なデータ数が減少し始める時間粒度の重要度を高い値に設定することにより、前記各データベーステーブルの重要度を計算するステップと、
    前記計算された重要度に基づいて、前記データベーステーブルを抽出するステップと、を少なくとも含むことを特徴とする処理分散方法。
  6. ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で表示するために前記時系列データの処理を行なう処理分散方法であって、
    前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存するステップと、
    入力された全時系列データをサンプリングし、サンプリング後の時系列データに基づいて、前記時系列データの時間粒度と視認可能なデータ数との関係を示すグラフ上で、モデルから導かれる回帰曲線の推定を行ない、前記推定した回帰曲線のパラメータから、勾配が急激に減少する区間を特定するステップと、
    前記区間の時間粒度に対応するデータベーステーブルの重要度を高く設定し、全時系列データについて計算した重要度に基づいて、前記データベーステーブルの重要度を決定するステップと、
    前記決定した重要度に基づいて、前記データベーステーブルを抽出するステップと、
    を少なくとも含むことを特徴とする処理分散方法。
JP2012096001A 2012-04-19 2012-04-19 処理分散プログラム、画像表示システムおよび処理分散方法 Active JP5946059B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012096001A JP5946059B2 (ja) 2012-04-19 2012-04-19 処理分散プログラム、画像表示システムおよび処理分散方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012096001A JP5946059B2 (ja) 2012-04-19 2012-04-19 処理分散プログラム、画像表示システムおよび処理分散方法

Publications (2)

Publication Number Publication Date
JP2013225169A JP2013225169A (ja) 2013-10-31
JP5946059B2 true JP5946059B2 (ja) 2016-07-05

Family

ID=49595194

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012096001A Active JP5946059B2 (ja) 2012-04-19 2012-04-19 処理分散プログラム、画像表示システムおよび処理分散方法

Country Status (1)

Country Link
JP (1) JP5946059B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0676079A (ja) * 1992-08-28 1994-03-18 Toshiba Corp トレンドデータ表示装置およびそのデータのトップダウン表示方法
JP2000048047A (ja) * 1998-01-19 2000-02-18 Asahi Glass Co Ltd 時系列デ―タの保存方法及び時系列デ―タベ―スシステム、時系列デ―タの処理方法及び時系列デ―タ処理システム、時系列デ―タ表示システム、並びに記録媒体
JP2002132644A (ja) * 2000-10-24 2002-05-10 Asahi Glass Co Ltd 時系列データベースシステム
JP2003162504A (ja) * 2001-11-26 2003-06-06 Hitachi Ltd 障害分析支援システム
WO2011142026A1 (ja) * 2010-05-14 2011-11-17 株式会社日立製作所 時系列データ管理装置、システム、方法、およびプログラム

Also Published As

Publication number Publication date
JP2013225169A (ja) 2013-10-31

Similar Documents

Publication Publication Date Title
JP5511077B2 (ja) 時系列データの疎密に応じてタイムスケールを変更するユーザインタフェースプログラム、システム及び方法
US8639520B2 (en) System and method for creating a visualization indicating relationships and relevance to an entity
US20150186602A1 (en) System and Method for Priority-Based Management of Patient Health for a Patient Population
JP6072021B2 (ja) 評価システム及び評価方法
US20080114808A1 (en) Visual filtering to create logical associations in timeline based metaphors
JP6049194B2 (ja) グラフ表示装置およびグラフ表示装置の作動方法並びにグラフ表示プログラム
US20150066530A1 (en) Medical care data display control device, method and program
Millien The largest among the smallest: the body mass of the giant rodent Josephoartigasia monesi
EP3356970A1 (en) Challenge value icons for radiology report selection
Pieczkiewicz et al. Design and evaluation of a web-based interactive visualization system for lung transplant home monitoring data
Rizzo et al. Statistical challenges in identifying risk factors for aortic disease
US20190115093A1 (en) Annotating data points associated with clinical decision support application
JP5946059B2 (ja) 処理分散プログラム、画像表示システムおよび処理分散方法
JP5392673B2 (ja) 診療記録・支援システム
AU2007228610B2 (en) Data input method
JP5805496B2 (ja) 画像表示装置、画像表示システムおよびプログラム
JP5903332B2 (ja) データ表示プログラムおよびデータ表示方法
Levonevskiy et al. Automation of data processing for patient monitoring in the smart ward environment
JP5805495B2 (ja) 画像表示装置、画像表示システムおよびプログラム
JP5885030B2 (ja) データ解析装置、プログラムおよびデータ解析方法
JP6041426B2 (ja) データ処理プログラムおよびデータ処理方法
Silva et al. Outcomes in health economic evaluation studies
Bruckers et al. Cluster analysis for repeated data with dropout: Sensitivity analysis using a distal event
Assareh Bayesian hierarchical models in statistical quality control methods to improve healthcare in hospitals
JP5722749B2 (ja) 電子カルテシステムおよびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160524

R150 Certificate of patent or registration of utility model

Ref document number: 5946059

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150