(57)【特許請求の範囲】
【請求項１】
外部記憶装置のデータベースからメモリに明細データを格納してインメモリデータベースを構築するインメモリ管理システムであって、
上記外部記憶装置のデータベースに格納された明細データを用いてアプリケーションソフトにより集計またはチャート作成を行っている画面において、インメモリ化を指示する操作を受け付ける操作受付部と、
上記操作受付部が上記インメモリ化の操作を受け付けた場合、上記集計またはチャート作成に使われている明細データを上記外部記憶装置のデータベースから取得して上記メモリに格納する明細データインメモリ化部と、
上記操作受付部が上記インメモリ化の操作を受け付けた場合、上記集計の内容を表す集計定義ファイルまたは上記チャートの内容を表すチャート定義ファイルの複製を、上記アプリケーションソフトが保持しているオリジナルの定義ファイルから生成し、当該複製を上記メモリに格納された明細データに紐付けて保持する定義ファイル複製部とを備えたことを特徴とするインメモリ管理システム。
【請求項２】
上記明細データインメモリ化部により上記メモリに格納された明細データを用いて、上記定義ファイル複製部により複製された定義ファイルに基づく集計またはチャート作成の処理を実行する処理実行部を更に備えたことを特徴とする請求項１に記載のインメモリ管理システム。
【請求項３】
外部記憶装置のデータベースからメモリに明細データを格納してインメモリデータベースを構築するインメモリ管理システムであって、
上記外部記憶装置のデータベースに格納された明細データを用いてアプリケーションソフトにより集計またはチャート作成を行っている画面において、インメモリ化を指示する操作を受け付ける操作受付部と、
上記操作受付部が上記インメモリ化の操作を受け付けた場合、上記集計またはチャート作成に使われている明細データを上記外部記憶装置のデータベースから取得して上記メモリに格納する明細データインメモリ化部とを備え、
上記明細データインメモリ化部により上記集計またはチャート作成に使われている明細データを上記データベースから取得して上記メモリに格納した後、上記操作受付部が明細データ削除の操作を受け付けた場合、上記集計またはチャート作成に使われている明細データを上記データベースから削除することを特徴とするインメモリ管理システム。
【請求項４】
外部記憶装置のデータベースからメモリに明細データを格納してインメモリデータベースを構築するためのインメモリ管理用プログラムであって、
上記外部記憶装置のデータベースに格納された明細データを用いてアプリケーションソフトにより集計またはチャート作成を行っている画面において、インメモリ化を指示する操作を受け付ける操作受付手段、
上記操作受付手段が上記インメモリ化の操作を受け付けた場合、上記集計またはチャート作成に使われている明細データを上記外部記憶装置のデータベースから取得して上記メモリに格納する明細データインメモリ化手段、および
上記操作受付手段が上記インメモリ化の操作を受け付けた場合、上記集計の内容を表す集計定義ファイルまたは上記チャートの内容を表すチャート定義ファイルの複製を、上記アプリケーションソフトが保持しているオリジナルの定義ファイルから生成し、当該複製を上記メモリに格納された明細データに紐付けて保持する定義ファイル複製手段
としてコンピュータを機能させるためのインメモリ管理用プログラム。
【請求項５】
上記明細データインメモリ化手段により上記メモリに格納された明細データを用いて、上記定義ファイル複製手段により複製された定義ファイルに基づく集計またはチャート作成の処理を実行する処理実行手段
としてコンピュータを更に機能させるための請求項４に記載のインメモリ管理用プログラム。
【請求項６】
外部記憶装置のデータベースからメモリに明細データを格納してインメモリデータベースを構築するためのインメモリ管理用プログラムであって、
上記外部記憶装置のデータベースに格納された明細データを用いてアプリケーションソフトにより集計またはチャート作成を行っている画面において、インメモリ化を指示する操作を受け付ける操作受付手段、および
上記操作受付手段が上記インメモリ化の操作を受け付けた場合、上記集計またはチャート作成に使われている明細データを上記外部記憶装置のデータベースから取得して上記メモリに格納する明細データインメモリ化手段
としてコンピュータを機能させるようになされ、さらに、
上記明細データインメモリ化手段により上記集計またはチャート作成に使われている明細データを上記データベースから取得して上記メモリに格納した後、上記操作受付手段が明細データ削除の操作を受け付けた場合、上記集計またはチャート作成に使われている明細データを上記データベースから削除するように上記コンピュータを機能させるためのインメモリ管理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インメモリ管理システムおよびインメモリ管理用プログラムに関し、特に、メモリに対して処理対象のデータを格納してインメモリデータベースを構築するインメモリ管理システムに用いて好適なものである。
【背景技術】
【０００２】
一般に、パソコンやサーバでは、ハードディスクなどの外部記憶装置にデータが格納されており、当該データが必要に応じてメインメモリ（主記憶装置）上に展開されて、処理が行われる。これに対して、最近では、メモリのビット単価（容量当たりの価格）の低下に伴い、いわゆるインメモリ技術が使われ始めている。インメモリ技術とは、使用するデータのすべてをメモリ上に格納し、ハードディスクなどの外部記憶装置を使わずに処理を実行する方式である（例えば、特許文献１参照）。
【０００３】
メモリは、ハードディスクと比べてデータの読み書き速度が１０万倍程度も速い。そのため、ハードディスクとの間でデータのやり取りが発生しないインメモリ技術を用いれば、データの読み込みや書き出しを高速に行うことができ、処理を非常に高速に実行することが可能である。これにより、従来は数時間かかっていたデータ処理を数分に短縮したり、発生したデータを瞬時に処理して結果を返したりするといったリアルタイム処理が可能となる。現在の主な用途はデータベースの演算であるが、いわゆるビッグデータから企業が有益な情報を素早く抽出・分析するのに有効な技術として注目を集めている。
【０００４】
なお、上記特許文献１の出願当時、メモリは使用できる容量が十分に大きくなかったため、容量に限りがあるメモリに対してどのような条件で、いかにしてインメモリデータベースを構築するかが課題となっていた。この課題に対して、特許文献１に記載の発明では、補助記憶装置データベース上のレコードの各項目に対応して定義されたテーブル情報からメインメモリへ配置する項目のみを連結してレコードを短く編集し、ハッシュ法により各レコード上のキーを変換して得たレコード番号をメインメモリに格納するようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−３３４４０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
通常、ハードディスクのリレーショナルデータベース（ＲＤＢ）に格納されたデータをメモリに展開してインメモリデータベースを構築する場合、どのデータをインメモリで運用するかを最初の設計時に決める。そして、その設計に従ってＲＤＢからメモリに展開したデータを用いて種々の処理を実行する。例えば、日々の売上実績を表す明細データをメモリに展開し、展開した明細データを用いて所望の集計をしたり、折れ線グラフや棒グラフなどの各種チャートを作成したりする。
【０００７】
このように、従来は、インメモリデータベースを構築する際には、どのデータをインメモリで運用するかを最初に設計し、その設計に従って、ＲＤＢからメモリに対する明細データの取り込みを行う必要があった。そのため、設計から明細データの取り込みまで多くの手間がかかるという問題があった。
【０００８】
本発明は、このような問題を解決するために成されたものであり、所望の集計やチャート作成に必要なデータに関するインメモリデータベースの構築を簡単な操作で行うことができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
上記した課題を解決するために、本発明では、外部記憶装置のデータベースに格納された明細データを用いて集計またはチャート作成を行っている画面において、インメモリ化を指示する操作が行われた場合、集計またはチャート作成に使われている明細データを外部記憶装置のデータベースから取得してメモリに格納するようにしている。ここで、本発明では、インメモリ化を指示する操作が行われた場合、集計の内容を表す集計定義ファイルまたはチャートの内容を表すチャート定義ファイルの複製を、アプリケーションソフトが保持しているオリジナルの定義ファイルから生成し、当該複製をメモリに格納された明細データに紐付けて保持するようにしている。
【発明の効果】
【００１０】
上記のように構成した本発明によれば、外部記憶装置のデータベースに格納された明細データを用いて集計またはチャート作成を行っている任意のタイミングで、インメモリ化を指示するための簡単な操作を行うだけで、当該操作が行われたときに実行されていた集計またはチャート作成に関わる明細データが外部記憶装置のデータベースからメモリに格納される。これにより、外部記憶装置のデータベースからどのデータをインメモリ化するかをあらかじめ設計しておかなくても、任意のタイミングで、所望の集計やチャート作成に必要なデータに関するインメモリデータベースの構築を簡単な操作で行うことができるようになる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態によるインメモリ管理システムの構成例を示す図である。
【図２】データベースに格納される明細データのテーブルの一例を示す図である。
【図３】本実施形態による端末が備える機能構成例を示すブロック図である。
【図４】データベースに格納された明細データからチャートを作成している際に表示される表示画面の一例を示す図である。
【図５】本実施形態の明細データインメモリ化部による明細データのインメモリ化が終了したときに表示される表示画面の一例を示す図である。
【図６】メモリに格納された明細データからチャートを作成した際に表示される表示画面の変形例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態によるインメモリ管理システムの構成例を示す図である。図１に示すように、本実施形態によるインメモリ管理システムは、メモリ（主記憶装置）１１を備えたサーバ１０と、ＢＩ（Business Intelligence）ソフトがインストールされた端末２０と、データベース３０とを備えて構成されている。
【００１３】
データベース３０は、ハードディスクなどの外部記憶装置により構成されており、処理対象のデータ（例えば、日々の売上実績を示す明細データ）が格納されている。この明細データは、例えば図２に示すように、日付、売上金額、販売数量、店舗名、店舗所在地、商品、担当者、顧客などをテーブルの項目として含むリレーショナルデータベースにより構成されている。
【００１４】
端末２０は、このデータベース３０に格納されているデータのうち、所望の処理に使用する項目の明細データのすべてをメモリ１１に格納することにより、インメモリデータベースを構築する。そして、インメモリデータベースを構築した後、端末２０は、データベース３０にアクセスすることなく、メモリ１１に格納された明細データを用いて、ＢＩソフトによって所望の集計処理やチャート作成処理などを実行する。
【００１５】
例えば、日付をキーとして年別、月別の売上金額を集計したり、店舗名をキーとして店舗別の売上金額を集計したりすることが可能である。さらに、これらの集計結果から折れ線グラフや棒グラフなどのチャートを作成することも可能である。年別、月別の売上金額を集計する場合は、少なくとも日付および売上金額の項目の明細データ（図２においてハイライトした部分のデータ）をインメモリ化すればよい。
【００１６】
サーバ１０は、データベース３０から読み出された明細データを内部のメモリ１１に格納する。このメモリ１１に格納された明細データは、端末２０のＢＩソフトで所望の処理を実行する際に読み出され、使用される。そして、その処理の結果更新された明細データが、再びメモリ１１に格納される。なお、ここではサーバとしているが、パーソナルコンピュータやタブレット端末など、主記憶装置を備えているものであれば何れを用いてもよい。
【００１７】
また、ここでは端末２０がＢＩソフトを備えるものとしているが、これに限定されない。例えば、端末２０に代えて、インターネット上に接続されたアプリケーションサーバを備え、当該アプリケーションサーバにＢＩソフトを実装するようにしてもよい。この場合、図示しないクライアント端末からインターネットを介してアプリケーションサーバにアクセスすることにより、ＢＩソフトをＷｅｂ上で利用可能とし、クライアント端末からの指示に応じてＢＩソフトで処理した結果を、インターネットを介してクライアント端末に提供するようにする。
【００１８】
図３は、本実施形態による端末２０が備える機能構成例を示すブロック図である。図３に示すように、本実施形態の端末２０は、アプリケーション記憶部２１を備えている。また、端末２０は、その機能構成として、処理実行部２２、表示制御部２３、操作受付部２４、明細データインメモリ化部２５および定義ファイル複製部２６を備えている。
【００１９】
上記各機能ブロック２２〜２６は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック２２〜２６は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。特に、操作受付部２４、明細データインメモリ化部２５および定義ファイル複製部２６の機能は、インメモリ管理用プログラムが動作することによって実現される。
【００２０】
アプリケーション記憶部２１は、ＢＩソフト（例えば、企業のビジネスの状態を視覚化し確認できるようにするビジネス管理ツールの一種であるデジタルダッシュボードなどのアプリケーション）を記憶するものであり、例えばハードディスクにより構成される。なお、ここでは各機能ブロック２４〜２６の機能を実現するインメモリ管理用プログラムをＢＩソフトとは別に備える例を示しているが、ＢＩソフトがインメモリ管理用プログラムを含む構成としてもよい。
【００２１】
処理実行部２２は、アプリケーション記憶部２１に記憶されているＢＩソフトのアプリケーションによって提供される種々の処理を実行する。具体的には、処理実行部２２は、データベース３０に格納されている明細データを用いて、操作受付部２４により受け付けられるユーザ操作により指定された所望の集計処理、操作受付部２４により受け付けられるユーザ操作により指定された所望のチャート作成処理を実行する。
【００２２】
明細データを用いて所望の集計処理を行うと、その集計の内容を表す集計定義ファイルが生成される。集計内容とは、例えば、「年別・店舗別の売上金額の集計」のように、明細データに対してどのような集計を行うかを定義したものである。ＢＩソフトによって生成された集計定義ファイルは、ＢＩソフト自身が保持する。ＢＩソフトが集計定義ファイルを保持するというのは、アプリケーション記憶部２１に記憶されているＢＩソフトに関連付けて集計定義ファイルをアプリケーション記憶部２１に記憶するということである。
【００２３】
また、明細データを用いて所望のチャート作成処理を行うと、そのチャートの内容を表すチャート定義ファイルが生成される。チャートの内容とは、折れ線グラフや棒グラフなどのチャートの種類の他、色、太さ、背景、凡例、目盛、文字のフォントなどチャートの見せ方に関するプロパティの情報を指す。ＢＩソフトによって生成されたチャート定義ファイルは、ＢＩソフト自身が保持する。ＢＩソフトがチャート定義ファイルを保持するというのは、アプリケーション記憶部２１に記憶されているＢＩソフトに関連付けてチャート定義ファイルをアプリケーション記憶部２１に記憶するということである。
【００２４】
また、処理実行部２２は、データベース３０からメモリ１１にインメモリデータベースとして展開（インメモリ化）された明細データを用いて、集計処理やチャート作成処理を実行する。データベース３０の明細データと、メモリ１１の明細データとのどちらを使うかは、ユーザ操作によって自由に選ぶことができる。例えば、明細データをデータベース３０からメモリ１１にインメモリ化するまでの間はデータベース３０の明細データを用い、インメモリ化した後はメモリ１１の明細データを用いることが可能である。
【００２５】
データベース３０に格納される明細データのデータ量がまだそれほど大きくない場合、外部記憶装置であるデータベース３０にアクセスして処理を行っても、ユーザにストレスを与えるほど長い時間はかからない。しかし、日々の業務を通じて明細データのデータ量が肥大化していくと、それに伴い、データベース３０にアクセスして明細データを取得する速度が低下していく。そのため、ユーザがデータ処理のリクエストを出してからレスポンスが返ってくるまでのターンアラウンドタイムが長くなってしまう。
【００２６】
そこで、次のような運用が可能である。すなわち、明細データのデータ量がまだ大きくない段階ではデータベース３０の明細データを用いて処理を実行するようにする。そして、データ量の肥大化に伴って処理速度が遅くなってきたとユーザが感じたら、ユーザ操作に応じてデータベース３０の明細データをメモリ１１にインメモリ化し、インメモリ化を行った後はメモリ１１の明細データを用いて処理を実行するようにする。
【００２７】
明細データのインメモリ化を行ったとき、処理実行部２２は、アプリケーション記憶部２１に記憶されている集計定義ファイル（インメモリ化を行うまでの間にデータベース３０の明細データを集計することによって生成されたものの複製）に基づいて、集計処理を行うことが可能である。また、明細データのインメモリ化を行ったとき、処理実行部２２は、アプリケーション記憶部２１に記憶されているチャート定義ファイル（インメモリ化を行うまでの間にデータベース３０の明細データからチャートを作成することによって生成されたものの複製）に基づいて、チャート作成処理を行うことも可能である。なお、これに関する詳細は後述する。
【００２８】
表示制御部２３は、処理実行部２２による処理実行の結果を図示しないディスプレイに表示するように制御する。すなわち、表示制御部２３は、明細データの集計結果、明細データから作成されたチャートなどをディスプレイに表示させる。また、表示制御部２３は、データベース３０に格納されている明細データをメモリ１１にインメモリ化する際の操作画面をディスプレイに表示させる。また、表示制御部２３は、データベース３０に格納されている明細データをメモリ１１にインメモリ化したときに、その結果を示す画面をディスプレイに表示させる。
【００２９】
図４は、表示制御部２３によりディスプレイに表示される表示画面の一例を示す図である。図４の例では、処理実行部２２によるチャート作成処理の結果として、表示制御部２３によって折れ線グラフ３１が表示されている。この折れ線グラフ３１は、データベース３０に格納された明細データを処理することによって得られたものである。また、当該折れ線グラフ３１の右側には、各種操作ボタンが表示されている。この操作ボタンの中には、インメモリ化を指示するためのインメモリ化ボタン３２が含まれている。なお、インメモリ化ボタン３２の表示方法はこれに限定されない。例えば、画面上部に設けたメニューバーの中に表示させてもよい。
【００３０】
操作受付部２４は、端末２０に対するユーザの各種操作を受け付ける。すなわち、操作受付部２４は、ＢＩソフトで実行可能な各種処理（明細データの各種集計やチャート作成を含む）の実行を指示するための操作を受け付ける。また、操作受付部２４は、データベース３０に格納されている明細データをメモリ１１にインメモリ化するための操作を受け付ける。本実施形態における特徴として、操作受付部２４は、外部記憶装置のデータベース３０に格納された明細データを用いてＢＩソフトにより集計またはチャート作成を行っている画面（図４参照）において、インメモリ化を指示する操作、つまりインメモリ化ボタン３２の押下操作を受け付ける。
【００３１】
明細データインメモリ化部２５は、操作受付部２４がインメモリ化ボタン３２の押下操作を受け付けた場合、そのとき処理実行部２２により実行されている集計またはチャート作成に関わっている明細データをデータベース３０から取得してメモリ１１に格納する。集計またはチャート作成に関わっている明細データとは、その集計またはチャート作成に使われている明細データであって、その集計またはチャート作成の内容に応じてグルーピング（ＳＱＬ文の“GROUP BY”に相当）された状態のデータをいう。例えば、年別の売上金額の集計結果が表示された状態でインメモリ化ボタン３２が押下された場合、明細データインメモリ化部２５は、日々の売上金額を年別にグルーピングした状態で、日付および売上金額の項目の明細データをメモリ１１にインメモリ化する。
【００３２】
定義ファイル複製部２６は、操作受付部２４がインメモリ化ボタン３２の押下操作を受け付けた場合、そのとき処理実行部２２により実行されている集計の内容を表す集計定義ファイルまたはチャートの内容を表すチャート定義ファイルの複製を、アプリケーション記憶部２１においてＢＩソフトが保持しているオリジナルの定義ファイルから生成する。そして、定義ファイル複製部２６は、生成した定義ファイルの複製を、明細データインメモリ化部２５によりメモリ１１に格納された明細データに紐付けてＢＩソフトに保持させる。
【００３３】
ここで、メモリ１１に格納された明細データに紐付けて定義ファイルの複製をＢＩソフトが保持するというのは、アプリケーション記憶部２１に記憶されているＢＩソフトに関連付けて、メモリ１１に格納された明細データに紐付けをした状態で定義ファイルの複製をアプリケーション記憶部２１に記憶するということである。なお、ここでは定義ファイルの複製をアプリケーション記憶部２１に記憶させることとしているが、メモリ１１に記憶させるようにしてもよい。
【００３４】
上述したように、インメモリ化ボタン３２の押下に応じて明細データのインメモリ化を行ったとき、処理実行部２２は、明細データインメモリ化部２５によりメモリ１１に格納された明細データを用いて、定義ファイル複製部２６により複製された定義ファイルに基づく集計またはチャート作成の処理を実行する。この場合の集計またはチャート作成は、明細データインメモリ化部２５による明細データのインメモリ化が終了したときに自動的に行うようにしてもよいし、実行することを指示するユーザ操作があったときに行うようにしてもよい。
【００３５】
図５（ａ）は、ユーザ操作に応じて集計またはチャート作成の処理を実行する場合に、明細データインメモリ化部２５による明細データのインメモリ化が終了したときに表示制御部２３によりディスプレイに表示される表示画面の一例を示す図である。図５（ａ）の例では、明細データインメモリ化部２５によるインメモリ化の結果として、インメモリ化された明細データ４１がテーブル形式で表示されている。
【００３６】
また、明細データ４１の右側には、チャート作成ボタン４２が表示されている。このチャート作成ボタン４２は、図４のようにチャートが画面上に表示されているときにインメモリ化ボタン３２が押下されたときに、インメモリ化の終了時に表示されるものである。もし、何らかの集計結果がテーブル形式で画面上に表示されているときにインメモリ化ボタン３２が押下された場合は、インメモリ化が終了したときに、明細データ４１の右側には集計実行ボタンが表示される。
【００３７】
チャート作成ボタン４２の押下操作を操作受付部２４が受け付けると、処理実行部２２は、メモリ１１に格納された明細データを用いて、定義ファイル複製部２６により複製されたチャート定義ファイルに基づくチャート作成の処理を実行する。図５（ｂ）は、この処理実行部２２によるチャート作成処理の実行の結果ディスプレイに表示される画面の一例を示す図である。
【００３８】
図５（ｂ）の例では、処理実行部２２によるチャート作成処理の結果として、表示制御部２３によって折れ線グラフ４３が表示されている。この折れ線グラフ４３は、メモリ１１に格納された明細データを、複製されたチャート定義ファイルの内容に従って処理することによって得られたものである。この折れ線グラフ４３は、図４に示した折れ線グラフ３１（インメモリ化を行う前に、データベース３０に格納された明細データを処理することによって得られていたもの）と全く同じとなっている。
【００３９】
ところで、明細データのインメモリ化を行った後は、データベース３０にアクセスすることなく、メモリ１１に格納された明細データを用いて各種の処理を実行することが可能となる。よって、データベース３０に格納されている元の明細データは削除してもよい。データベース３０に格納されている元の明細データの削除を容易に行うことができるように、削除を指示するための操作ボタンを設けるようにしてもよい。
【００４０】
例えば、チャート作成ボタン４２の押下に応じて処理実行部２２によってチャート作成が行われたときに、図６に示すように、データベース３０の明細データから作成された元の折れ線グラフ３１と、メモリ１１にインメモリ化された明細データから作成された折れ線グラフ４３とを並べて表示し、元の折れ線グラフ３１の右側に削除ボタン５１を表示させる。そして、この削除ボタン５１が押下された場合、折れ線グラフ３１の作成に関わっている明細データをデータベース３０から削除する。このようにすれば、データベース３０に格納されている種々の項目の明細データのうち、インメモリ化が済んだ明細データのみを抽出して簡単に削除することができる。
【００４１】
以上詳しく説明したように、本実施形態では、外部記憶装置のデータベース３０に格納された明細データを用いて集計またはチャート作成を行っている画面（図４参照）において、インメモリ化を指示する操作が行われた場合、その集計またはチャート作成に関わっている明細データをデータベース３０から取得してメモリ１１に格納するようにしている。
【００４２】
このように構成した本実施形態によれば、データベース３０からどのデータをインメモリ化するかを最初に設計しておかなくても、データベース３０に格納された明細データを用いて集計またはチャート作成を行っている任意のタイミングで、インメモリ化ボタン３２を押下するといった簡単な操作を行うだけで、当該操作が行われたときに実行されていた集計またはチャート作成に関わる明細データをインメモリ化することができる。
【００４３】
例えば、データベース３０に格納される明細データのデータ量の肥大化に伴って処理速度が遅くなってきたとユーザが感じたタイミングで、インメモリ化したい明細データの集計結果やチャートが表示されている画面においてインメモリ化ボタン３２を押下することにより、データベース３０の明細データをメモリ１１にインメモリ化することができる。
【００４４】
また、本実施形態では、データベース３０に格納された明細データを用いて集計またはチャート作成を行っている画面（図４参照）において、インメモリ化を指示する操作が行われた場合、その集計の内容を表す集計定義ファイルまたはチャートの内容を表すチャート定義ファイルの複製をオリジナルの定義ファイルから生成し、当該複製をメモリ１１に格納された明細データに紐付けて保持するようにしている。
【００４５】
このように構成した本実施形態によれば、インメモリ化ボタン３２が押下されたときに画面表示されていた集計の内容を表す集計定義ファイルまたはチャートの内容を表すチャート定義ファイルがオリジナルの定義ファイルから複製され、当該複製が、メモリ１１に格納された明細データに紐付けて保持される。この定義ファイルの複製を用いれば、インメモリ化された明細データを用いて集計やチャート作成をするために面倒な操作をユーザが改めて一から行う必要がなく、データベース３０から作成されていた元の集計またはチャートと同じものを簡単に生成することができる。
【００４６】
図４のように作成された集計またはチャートに関わる明細データをインメモリ化しようとする場合、従来は、データベース３０の中のどのデータをインメモリ化するかの設計を行い、その設計に従って必要なデータをデータベース３０からメモリ１１に展開する必要があった。さらに、新たに展開した明細データを用いて、集計やチャート作成のための操作も改めて行わなければならなかった。
【００４７】
これに対して、本実施形態によれば、インメモリ化ボタン３２を押下するだけで、インメモリ化から集計またはチャート作成までを自動的に行うことが可能である。または、インメモリ化ボタン３２の押下に応じてインメモリ化を行った後、集計実行ボタンまたはチャート作成ボタン４２の押下のみで、集計またはチャート作成を行うようにすることも可能である。
【００４８】
以上のように、本実施形態によれば、ユーザが必要と考える任意のタイミングで、集計やチャート作成に必要な明細データをデータベース３０からメモリ１１に展開してインメモリデータベースを構築し、かつ集計やチャート作成までを簡単な操作で行うことができる。
【００４９】
なお、上記実施形態では、データベース３０の明細データから作成された集計やチャートに対応するオリジナルの集計定義ファイルまたはチャート定義ファイルとは別に、インメモリ化された明細データ用に複製を作成している。複製を作成せずに、インメモリ化された明細データから集計やチャートを作成する際にもオリジナルの定義ファイルを利用するようにしてもよいが、複製を作成するのが好ましい。
【００５０】
インメモリ化を行った後に、データベース３０の明細データを利用して集計やチャートの内容を変更すると、それに合わせて定義ファイルの内容も更新される。そうすると、メモリ１１に格納された明細データから作成された集計やチャートの内容も意図せず変わってしまう。このような意図しない集計やチャートの変更を回避するために、インメモリ化された明細データ用に定義ファイルを複製するのが好ましい。
【００５１】
また、上記実施形態では、データベース３０の明細データをインメモリ化する際に、明細データをグルーピングした状態でメモリ１１に格納する例について説明したが、本発明はこれに限定されない。すなわち、データベース３０に格納されているのと全く同じ状態で明細データをメモリ１１に格納するようにしてもよい。ただし、明細データをグルーピングした状態でメモリ１１に格納しておけば、その明細データを用いて集計やチャートの作成を行う際に、ＳＱＬ文の“GROUP BY”を改めて実行する必要がなく、処理速度が上がる。この点で、明細データをグルーピングした状態でメモリ１１に格納するのが好ましい。
【００５２】
また、上記実施形態では、インメモリ化ボタン３２の押下操作に応じてインメモリ化する明細データとして、そのときの集計またはチャート作成に関わっている項目の明細データを例に挙げて説明したが、本発明はこれに限定されない。例えば、そのときの集計またはチャート作成に直接関わっている項目のみに限定せず、その項目を含むテーブル全体の明細データ（図２に示すテーブルの全体）を、集計またはチャート作成に関わっている明細データとしてインメモリ化するようにしてもよい。
【００５３】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５４】
１０  サーバ
１１  メモリ（主記憶装置）
２０  端末
２１  アプリケーション記憶部
２２  処理実行部
２３  表示制御部
２４  操作受付部
２５  明細データインメモリ化部
２６  定義ファイル複製部
３０  データベース（外部記憶装置）
【図１】
0005944945.tif 000002
【図２】
0005944945.tif 000003
【図３】
0005944945.tif 000004
【図４】
0005944945.tif 000005
【図５】
0005944945.tif 000006
【図６】
0005944945.tif 000007