特許第6099712号(P6099712)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 知意圖股▲分▼有限公司の特許一覧

特許6099712ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム
<>
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000002
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000003
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000004
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000005
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000006
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000007
  • 特許6099712-ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6099712
(24)【登録日】2017年3月3日
(45)【発行日】2017年3月22日
(54)【発明の名称】ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システム
(51)【国際特許分類】
   G06F 17/30 20060101AFI20170313BHJP
【FI】
   G06F17/30 220Z
   G06F17/30 240C
   G06F17/30 180D
【請求項の数】6
【全頁数】14
(21)【出願番号】特願2015-176280(P2015-176280)
(22)【出願日】2015年9月8日
(65)【公開番号】特開2016-110620(P2016-110620A)
(43)【公開日】2016年6月20日
【審査請求日】2015年9月14日
(31)【優先権主張番号】103142344
(32)【優先日】2014年12月5日
(33)【優先権主張国】TW
(73)【特許権者】
【識別番号】515099090
【氏名又は名称】知意圖股▲分▼有限公司
(74)【代理人】
【識別番号】100108833
【弁理士】
【氏名又は名称】早川 裕司
(74)【代理人】
【識別番号】100162156
【弁理士】
【氏名又は名称】村雨 圭介
(72)【発明者】
【氏名】王耀聰
(72)【発明者】
【氏名】葉宥琳
(72)【発明者】
【氏名】徐瑞興
(72)【発明者】
【氏名】陳韋志
【審査官】 川▲崎▼ 博章
(56)【参考文献】
【文献】 国際公開第2013/069073(WO,A1)
【文献】 特開平08−179980(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/30
(57)【特許請求の範囲】
【請求項1】
ネットワーク接続により、少なくとも一つのリレーショナルデータベースから複数のストリームデータを受信し、リアルタイムなデータ処理を実行した後に、少なくとも一つの対応するノンリレーショナルデータベースに伝送して格納するビッグストリームデータのリアルタイム処理方法であって、
ネットワークに接続する複数の接続ポートによって、前記リレーショナルデータベースのデータタイプを識別するステップと、
前記リレーショナルデータベースから伝送された前記ストリームデータの通信モードを同期モードまたは非同期モードに設定するステップと、
メインインデックスに基づき、データ毎に逓増する前記ストリームデータを順番に取得するステップと、
ソースとして提供される前記リレーショナルデータベースと、ターゲットとして受け入れる前記ノンリレーショナルデータベースのデータタイプが一致するかを判断し、もし一致する場合は前記ストリームデータを変換する必要がないが、もし不一致の場合は前記ストリームデータを前記ノンリレーショナルデータベースのデータタイプに変換するステップと、
前記通信モードに基づき、変換後のまたは変換の必要のない前記ストリームデータを対応する前記ノンリレーショナルデータベースに書き込むステップと、を含むことを特徴とする、ビッグストリームデータのリアルタイム処理方法。
【請求項2】
前記通信モードに基づき、変換後のまたは変換の必要のない前記ストリームデータを対応する前記ノンリレーショナルデータベースに書き込むステップにおいて、
前記通信モードが非同期モードの場合、変換後のまたは変換の必要のない前記ストリームデータをいったん格納装置に一時格納しておき、前記ストリームデータが所定のデータ状態になったとき、一括して前記ノンリレーショナルデータベースに書き込むことを特徴とする、請求項1記載のビッグストリームデータのリアルタイム処理方法。
【請求項3】
ネットワーク接続により、前記少なくとも一つのリレーショナルデータベースから前記複数のストリームデータを受信し、リアルタイムなデータ処理を実行した後に、前記少なくとも一つのノンリレーショナルデータベースに対応して格納することを特徴とする、請求項1または2記載のビッグストリームデータのリアルタイム処理方法に用いられるストリームデータ処理エンジンであって、
ネットワークに接続する前記複数の接続ポートによって、前記リレーショナルデータベースのデータタイプの識別に備える接続ポート識別モジュールと、
電気通信手段により、前記接続ポート識別モジュールに接続されていて、かつ前記リレーショナルデータベースのデータタイプに基づき、前記リレーショナルデータベースから伝送される前記ストリームデータの通信モードを同期モードまたは非同期モードにそれぞれ設定する通信モード設定モジュールと、
前記通信モード設定モジュールと電気通信手段により接続されていて、かつデータ毎に逓増する前記ストリームデータを順番に取得する受信モジュールと、
前記受信モジュールと電気通信手段により接続され、ソースとして提供する前記リレーショナルデータベースと、ターゲットとして受け入れる前記ノンリレーショナルデータベースのデータタイプが一致するかを判断し、もし一致する場合は前記ストリームデータを変換する必要はないが、もし不一致の場合は前記ストリームデータを前記ノンリレーショナルデータベースのデータタイプに変換する変換モジュールと、
電気通信手段により前記受信モジュールに接続されていて、かつ通信モードに基づき、変換後のまたは変換の必要のない前記ストリームデータを対応する前記ノンリレーショナルデータベースに書き込み、もし通信モードが非同期式のときは、変換後のまたは変換の必要のない前記ストリームデータを記憶装置にいったん格納しておき、前記ストリームデータが前記記憶装置に所定のデータ状態で格納されたときは、一括して前記ノンリレーショナルデータベースに書き込む出力モジュールと、
を含むことを特徴とする、ビッグストリームデータのリアルタイム処理方法に用いられるストリームデータ処理エンジン。
【請求項4】
ビッグストリームデータのリアルタイム処理システムであって、
構造化されたデータベースタイプであり、複数のストリームデータを提供する主リレーショナルデータベースと、
構造化されたデータベースである従属リレーショナルデータベースと、
電気通信手段により前記主リレーショナルデータベース及び前記従属リレーショナルデータベースに接続され、ホットバックアップ機能により、前記主リレーショナルデータベースの内部のデータを前記従属リレーショナルデータベースに同期して更新するバックアップ装置と、
電気通信手段により、前記主リレーショナルデータベースに接続されたETLツールと、
構造化されたデータベースであり、電気通信手段により前記ETLツールに接続されており、前記主リレーショナルデータベースより提供された前記ストリームデータを、前記ETLツールの前処理を経てから格納するデータウェアハウスと、
電気通信手段により、前記従属リレーショナルデータベースに接続され、前記主リレーショナルデータベースから提供された前記ストリームデータを伝送する請求項3記載のストリームデータ処理エンジンと、
非構造化データベースタイプであり、電気通信手段により前記ストリームデータ処理エンジンに接続され、前記ストリームデータ処理エンジンによって変換した前記ストリームデータを書き込むノンリレーショナルデータベースと、
を含むことを特徴とする、ビッグストリームデータのリアルタイム処理システム。
【請求項5】
電気通信手段により前記ノンリレーショナルデータベースに接続され、前記ノンリレーショナルデータベースに格納するデータの変異状態をリアルタイムに報告するリアルタイム報告ユニットをさらに含むことを特徴とする、請求項4記載のリアルタイム処理システム。
【請求項6】
まず前記データウェアハウスに格納された前記ストリームデータをバッチ解析演算ツールによって処理した後、警告レベル値を取得し、前記リアルタイム報告ユニットが前記警告レベル値に基づき、変異状態を比較した上で、リアルタイムに警告することを特徴とする、請求項5記載のリアルタイム処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はビッグデータのリアルタイム処理とデータウェアハウス分野に関し、特にリアルタイムによるクエリとリアルタイムな警告などの効果を達成できる、ビッグストリームデータのリアルタイム処理方法、ストリームデータ処理エンジン及びビッグストリームデータのリアルタイム処理システムに関する。
【背景技術】
【0002】
企業はこれまでのデータ解析による政策決定プロセスの解決にあたり、ある問題に直面している。例えば、企業内各部門の情報システムは、従来の設計は当該部門の目標達成を主としており、情報システムごとに独立していて、整合性の取れた結果を持っていないがため、データサイロ(data silos)が各場所に散在していた。そのため、企業にて、データをたくさん保管しているが、情報価値のある情報が不足している状況がしばしば見受けられる。データの整合と統合を実現し政策決定者に必要な情報を提供するため、企業は大量に格納できる、しかも高速な解析能力などを持つデータウェアハウス(data warehouse)を用いて、いままでの膨大化され各場所に散在していて、かつ整理分析が難しい運営データを整合性が取れた一つのデータベースに構築している。企業はデータウェアハウスを用いて、各種データを解析、運用、探索し、企業に精確な運営政策の決定に役立つことができる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
図1にデータウェアハウスの産業界における運用を示す。複数のデータソース10からのデータは、従来ではまとめてリレーショナルデータベース11に格納した後、それらのデータをバッチ方式により、ETLツール12を用いて抽出、置き換えとロード等の前処理(pre−processing)を経て、データウェアハウス13に伝送される。その後は必要なときにバッチ解析演算ツール14を介して、データウェアハウス13のデータの更なる解析を実行し、クエリ(示されない)に提供するか、または集計リポート15を形成する。
【0004】
前述したデータウェアハウス運用は、半導体産業の製造プロセス(例えば、エッチング、リソグラフィなど)、またはエンタテインメント産業のオンラインゲームのライフサイクル管理などの分野に応用できる。半導体生産プロセスの例を挙げると、かかるデータソース10は複数の生産機器から構成され、それらの生産機器から絶えずに形成される情報はリレーショナルデータベース11に伝送される。すなわち、かかるリレーショナルデータベース11は半導体生産プロセスにおける例えば、ログ等のデータ格納に用いられている。さらに、いままでの経験によれば、かかるリレーショナルデータベース11に格納できる容量の上限はせいぜい14日前後のデータ量である。しかし、半導体産業の製造プロセス期間は14日を超えている。そこで実務のやり方としては、毎日リレーショナルデータベース11のデータを、ETLツール12を用いて前処理を数時間にわたり実行した後、容量の大きいデータウェアハウス13に格納される。経験上、かかるデータウェアハウス13の保管期間は大体2年以上である。必要なときはかかるデータウェアハウス13に格納したデータをバッチ解析演算ツール14に送り、例えば製造プロセスの良品率解析など更なる処理が実行される。その解析結果はサードパーティのリアルタイムなクエリに備えるか、さらには集計リポート15を形成し政策決定に備える。経験上、かかるバッチ解析演算ツール14の処理頻度は毎月1回実行され、そして1回ごとの処理には数時間かかる。
【0005】
前述した従来のやり方には欠点が残されている。例えば、それらのデータソース10からリレーショナルデータベース11までのプロセスフローは、半導体産業にとって極めて重要なため、実務にはかかるフロー設計はどうしても必要でなければ変更されることはまずない。このような背景において、かかるリレーショナルデータベース11で製造プロセス全部のデータ量を格納する容量が不足となっても、リレーショナルデータベース11も横方向へ任意に拡張することはできない。さらに、まとめてリレーショナルデータベース11に格納するデータはETLツール12を用いて、バッチ方式により前処理が行われるため、リアルタイムな警告を提供することはできない。このほかに、それらのデータソース10のデータ量が絶えず増えると、データウェアハウス13を拡張しなければならず、ソフトウエアのライセンスやハードウエアのアップグレードで膨大な費用負担となりかねない。以上に述べた状況は、すべての半導体産業が唱える合理的なコスト管理のもとで、生産プロセスの状況をリアルタイムに把握する目標において不利な要因を与えている。
【0006】
類似する現象は、オンラインゲームの分野にも起きている。それらのデータソース10の出所は複数のプレイヤの装置側である。例えば携帯電話、コンピュータまたはゲーム機など、プレイヤそれぞれのゲームログイン及び料金支払いなどの関連情報がリレーショナルデータベース11にまとめて格納され、ETLツール12は毎日バッチ方式により、数時間の前処理を実行した後、データウェアハウス13に転送して格納される。オンラインゲーム業者は、所定の周期(例えば、毎月)に基づき、バッチ解析演算ツール14を用いて、データウェアハウス13に格納されたデータのさらなる演算を実行しクエリに備えるか、または集計リポート15を出力させるなどして、オンラインゲーム業者による製品のライフサイクル管理に備える。しかし、オンラインゲーム分野の製品ライフサイクルはますます短くなっており、合理的なコスト条件に基づき、迅速、かつ精確なマーケティング戦略制定のため、製品組み合わせの最適化のリアルタイム解析を達成する方法と装置が必要である。
【課題を解決するための手段】
【0007】
本願発明者は公知技術の不備に気づき、鋭意研究するとともに、かかる産業界における長年蓄積した経験に基づき、前述した公知技術の欠点を改善する、斬新なビッグストリームデータのリアルタイム処理方法とその装置を提案する。
【0008】
前述課題に基づき、本発明の目的はビッグストリームデータのリアルタイム処理方法及びそのシステム構成を提供することにある。かか方法によれば、ビッグストリームデータをリアルタイムに処理し、さらにかかる方法とかかるシステム構成を利用することにより、それぞれのリレーショナルデータベースからの各種データに対して、ビッグストリームデータのリアルタイム管理ができる。
【0009】
前述目的を達成するため、本発明は、ネットワーク接続により、少なくとも一つのリレーショナルデータベースから提供される複数のストリームデータのリアルタイム処理を実行した後、少なくとも一つのノンリレーショナルデータベースに格納するビッグストリームデータのリアルタイム処理方法を提供する。かかる方法は、ネットワーク接続の複数の接続ポートによって、リレーショナルデータベースのデータの種類を識別し、リレーショナルデータベースから伝送するストリームデータの通信モードを同期モードまたは非同期モードに設定し、メインインデックスに基づいてデータ毎に逓増するかかるストリームデータを順番に取得し、ソースから提供されたリレーショナルデータベースとターゲットとして受け入れるノンリレーショナルデータベースのデータタイプが一致しているか否かを判断する。もし一致している場合はストリームデータを変換する必要はなく、一致していない場合はストリームデータをかかるノンリレーショナルデータベースのデータタイプに変換する。続いてかかる通信モードに従い、変換後または変換の必要のないストリームデータを対応するノンリレーショナルデータベースに書き込む。
【0010】
より好ましい一実施例においては、ネットワーク応答速度の強化と、システム上のソフトウエアコンポーネント間の依存性を軽減して、独立な発展と配置構成の拡張ができるように、通信モードに基づき、変換後または変換不要なストリームデータをかかるノンリレーショナルデータベースに対応して書き込むステップを有し、もし、かかる通信モードが非同期式である場合、変換後または変換の不要なストリームデータをいったん記憶装置に格納しておき、かかるストリームデータをしばらくかかる記憶装置に所定のデータ容量で格納した後、一括してノンリレーショナルデータベースに書き込む。
【0011】
前述目的を達成するため、本発明は前述したリアルタイム処理方法を実行するためのストリームデータ処理エンジンをさらに提供している。ネットワークに接続された複数の接続ポートによって、リレーショナルデータベースのデータ種類を識別する接続ポート識別モジュールと、かかる接続ポート識別モジュールと電気通信手段により接続され、かかるリレーショナルデータベースのデータ種類によって、かかるリレーショナルデータベースから伝送されるストリームデータの通信モードを同期モードまたは非同期モードに設定する通信モード設定モジュールと、かかる通信モード設定モジュールと電気通信手段により接続され、データ毎に逓増するストリームデータを順番に取得する受信モジュールと、かかる受信モジュールと電気通信手段により接続され、ソースから提供されたリレーショナルデータベースと、ターゲットとして受け入れるノンリレーショナルデータベースのデータタイプが一致するか否かを判断し、もし、一致している場合はストリームデータを変換する必要はなく、もし一致していない場合はストリームデータをかかるノンリレーショナルデータベースのデータタイプに変換するデータタイプ変換モジュールと、かかる受信モジュールと電気通信手段により接続され、かかる通信モードによって、変換後または変換の必要のないストリームデータを対応するノンリレーショナルデータベースに書き込む出力モジュールと、を含む。もしかかる通信モードが非同期式の場合は、変換後または変換の必要のないストリームデータをいったん記憶装置に格納した後、かかるストリームデータをしばらくかかる記憶装置に所定のデータ容量で格納した後、一括してかかるノンリレーショナルデータベースに書き込む。
【0012】
さらに、本発明は前述したリアルタイム処理方法とストリームデータ処理エンジンを利用した、ビッグストリームデータのリアルタイム処理システムを更に提供する。リアルタイム処理システムは、構造化データベースタイプであり、かつ複数のストリームデータを含む主データベースと、構造化データベースである従属データベースと、かかる主データベースと電気通信手段により接続され、ホットバックアップ機能を有しており、かかる主データベースにあるデータを同期によりかかる従属データベースに更新するデータベースバックアップ装置と、かかる主データベースと電気通信手段により接続されるETLツールと、構造化データベースタイプであり、かかるETLツールと電気通信手段により接続されており、かかる主データベースより提供されるストリームデータがETLツールによって前処理をされた後に伝送されて格納されるデータウェアハウスと、かかる従属データベースと電気通信手段により接続され、かかる従属データベースより提供するストリームデータが伝送されるストリームデータ処理エンジンと、非構造化データベースタイプであり、かかるストリームデータ処理エンジンと電気通信手段により接続されていて、かかるストリームデータ処理エンジンによって処理された後のストリームデータが書き込まれる分散型データベースと、を含む。
【0013】
もう一つのより好ましい実施例においては、管理者にリアルタイムに目標の達成具合、業績管理具合、ビジネス解析状況などのリポートを確認させるため、前述したビッグストリームデータのリアルタイム処理システムにおいて、かかる分散型データベースと電気通信手段により接続されていて、かかる分散型データベースに格納されたデータの変異状態をリアルタイムに提供するリアルタイム報告ユニットをさらに含む。一部の分野、例えば半導体産業の製造プロセスにおいてより高速、かつリアルタイムにウェハー製造プロセスの良品率を把握する目的で、例えばまずデータウェアハウスのストリームデータをバッチ解析演算ツールによって処理した後に警告レベル値を取得し、かかるリアルタイム報告ユニットはかかる警告レベル値に基づき、前述した変異状況と比較した後にリアルタイムな警告通知を形成し、その後管理者のリアルタイム処理に提供する。
【発明の効果】
【0014】
本発明が提示するビッグストリームデータのリアルタイム処理方法、装置及びそのシステムは、秒単位のリアルタイムクエリ及びリアルタイムな警告などの管理効果を達成できるとともに、分散型のリアルタイム処理環境が構築されているため、従来のように絶えず高価なソフトウエアライセンスの取得やハードウエアのアップグレードでビッグデータ処理に対応するやり方を回避し、構築コストを大幅に軽減できる。
【図面の簡単な説明】
【0015】
図1】公知のデータウェアハウス運用を示す図である。
図2】本発明の好ましい実施例によるストリームデータ処理構造のブロック図である。
図3】本発明の好ましい実施例によるストリームデータ処理エンジンのブロック図である。
図4】本発明の好ましい実施例によるビッグストリームデータのリアルタイム処理方法のフローを示す図である(その1)。
図5A】本発明の好ましい実施例によるビッグストリームデータのリアルタイム処理方法のフローを示す図である(その2−1)。
図5B】本発明の好ましい実施例によるビッグストリームデータのリアルタイム処理方法のフローを示す図である(その2−2)。
図6】本発明の好ましい実施例によるビッグストリームデータのリアルタイム処理方法のシステム構成を示す図である。
【発明を実施するための形態】
【0016】
審査官殿の本発明の内容のさらなる理解を図るため、以下に実施例を図面を参照しながら説明する。以下の実施例において同じ部材は同じ符号を用いて示されている。
【0017】
図2ないし4の、本発明の好ましい実施例によるストリームデータ処理構造のブロック図と、ストリームデータ処理エンジンのブロック図と、ビッグストリームデータのリアルタイム処理方法のフロー図(その1)を参照する。図4図2から分かるように、本発明はビッグストリームデータのリアルタイム処理方法及びその方法を実行するためのストリームデータ処理エンジン20を提供する。そのうち、ストリームデータ処理エンジン20はネットワーク接続により、少なくとも一つのリレーショナルデータベース30から提供される複数のストリームデータ(図示しない)をリアルタイムにデータ変換した後、少なくとも一つの対応するノンリレーショナルデータベース40に格納される。ストリームデータは絶えず形成されるビッグデータであり、かかるストリームデータの流れる方向が矢印で示されている。これと異なり、従来のリレーショナルデータ処理では、いったんデータをハードウエアのテーブルに書き込んだ上で、アプリケーションプログラムにクエリのリクエストを行うときには、ハードディスク内部すべてのデータを整理してから、クエリ結果を記憶装置に一時格納する。クエリの都度に同じ演算処理を実行しなければならず、よって、データ量の増加につれて演算効率が低下し、しかも読み書き動作のときにはハードディスクへのアクセスが行われる。従って、クエリ作業にタイムラグを発生し、リアルタイム処理を実現できない。一方、本発明が提供するストリームデータのリアルタイム処理方法によれば、データをハードディスクに書き込む必要はないため、秒単位のリアルタイム処理効果を達成できる。かかるリレーショナルデータベース30を複数に設置している場合でも、同じ方法によりストリームデータを処理することができる。
【0018】
引き続き、図2ないし4を参照する。かかるビッグストリームデータのリアルタイム処理方法は、以下のステップを含む。まずリレーショナルデータベース30から伝送されるストリームデータのタイプを識別し、その後の変換処理及びノンリレーショナルデータベース40に格納するための対応設定に備えるため、まずネットワーク接続の複数の接続ポート(図示しない)によって、リレーショナルデータベース30のデータタイプとフォーマットの識別を実行する。この方法によれば、常用または設定済みの接続ポートを介して、ストリームデータソースの属性を高速に確認できる。例えば、常用のFTPが接続ポート21位置(port 21)を使用すること、またはHTTPが接続ポート80位置(port 80)を使用すること等がその一例である。ここでいう接続ポートの概念は、論理的なものであって、物理的なハードウエア装置ではないため、図3のブロック図に表示されていない。これがステップS50の説明である。
【0019】
さらに、ネットワーク応答速度などの強化を配慮し、本発明は非同期式作業をその次の選択手段として取り入れる。いわゆる非同期作業とは、業務間のメッセージ伝達は一斉呼び出しではなく、一つの業務操作を複数段階に分けて、かつそれぞれの段階はデータ共有の手段により、非同期に共同作業を行うことを指す。さらに、非同期式作業はソフトウエアコンポーネント同士の依存性を軽減できるばかりでなく、システム構成の階層が各自に発展するところにも長所がある。ステップS51では、接続ポートによりリレーショナルデータベース30のデータ種類を識別した後、続いてリレーショナルデータベース30から伝送されるストリームデータの通信モードを同期モードまたは非同期モードを設定する。
【0020】
続いてステップS52に進む。メインインデックスに基づき、データ毎に逓増するストリームデータを順番に取得する。ストリームデータはそれらのリレーショナルデータベース30から提供される構造化データである一方、ノンリレーショナルデータベース40は非構造化データを格納できる特性と長所を有する。NoSQLデータベースを例示すると、その種のデータベースは一つのキー(Key)が一つの値(Value)に対応する組み合わせか、または一組のキー値(Key−Value)とカラムファミリ(Column Family)によってデータを記述しており、構造が単純なため、データ間の関連性を定義する必要はなく、しかも最初からデータベース構成を予め定義する必要もない。よって、比較的に扱うデータ量が大きく、拡張性により優れているなどの長所がある。この後に実行されるステップでは、ストリームデータを変換して、非構造化データを主たるノンリレーショナルデータベース40に格納する。
【0021】
続いてステップS53に進むと、ソースとして提供されるリレーショナルデータベース30と、ターゲットとして受け入れるノンリレーショナルデータベース40のデータタイプが一致しているか否かを判断すると共に、もし一致する場合は係るストリームデータ変換必要はなく(ステップS530)、もし不一致の場合は、かかるストリームデータをノンリレーショナルデータベース40のデータタイプに変換する(ステップS532)。ステップS530及びステップS532を実行した後、ステップS54に進み、通信モードを変換した後の、または変換必要のないストリームデータをかかる対応するノンリレーショナルデータベース40に書き込む。
【0022】
引き続き図5A及び5Bの、本発明の好ましい実施例によるビッグストリームデータのリアルタイム処理方法のフロー図(その2)を参照する。このフローは図4に示すフロー図と同じような構造であるため、同じステップの内容はここでの詳細説明を省略し、以降ではステップS54についての詳細のみを説明する。まず、企業の組織形態における様々な情報システムへの対応を図るため、リレーショナルデータベースを複数の異なる性質のリレーショナルデータベースに分け、さらにそれぞれの情報セキュリティニーズと、今後全体システム構成に導入するときの拡張性ならびネットワークの応答速度に対応させるため、複数の異なる性質のリレーショナルデータベースでデータを格納し、さらにその通信モードを同期式又は非同期式に設定することができる。
【0023】
経験上、非同期式の通信モードを使用することによって、ネットワークの拡張性とシステム効率は改善される。原則として、メッセージ待ち行列方式によって実現できる。すなわち、同期式を使用する通信モードでは、データベースに直接にデータを書き込まれ、高度な並列処理の環境においては、データベースに大きな負担が掛かってしまい、応答遅延を深刻化させる。これに対して、メッセージ待ち行列方式を採用すると、外部からのリクエストまたは伝送データをメッセージ待ち行列に発送した後ただちに回送し、続いてメッセージ待ち行列の処理プロセス(通常の状況において、かかる処理プロセスは独立した専門のサーバークラスター、メッセージ待ち行列サーバーに配置される。)を経てデータを取得するので、同期してデータベースに書き込まれていない。かかるメッセージ待ち行列サーバーによる処理はデータベースの処理速度より速いため、応答遅延については有効に改善される。それらのストリームデータ処理は、ハードディスクに書き込まれるのではなく、直接に記憶装置にて処理を実行され、さらに、前回処理の結果を中間データとして格納しておき、次回には再び全部を処理することなく、記憶装置に導入する新しいデータと中間データとの差異(Diff)に対する処理で済む。よって、このように入力から結果が出力されるまでの遅延は、場合によって百万分の1秒のレベルにまで制御でき、ひいては1秒間に数十万ないし数百万点のデータの超高速処理速度を実現できる。
【0024】
よって、前述したとおり、ステップS54はそもそも通信モードに基づき、変換後の、または変換必要のないストリームデータをノンリレーショナルデータベース40に対応して書き込む。かかるステップの詳細内容を以下のとおり説明する。ステップS540とステップS542における判断のフローとして、まず変換の必要がない(ステップS530)または変換済み(ステップS532)のストリームデータについて、通信モードが同期式であるか否かのさらなる判断を行う。ステップS540において同期式と判断された場合は、ステップS5401に進み、変換必要のないストリームデータをノンリレーショナルデータベース40に一括して書き込む。これに対して、もしかかる通信モードが非同期式であれば、変換必要のないストリームデータをいったん記憶装置に格納して置き、かかるストリームデータが記憶装置に所定のデータ様態になったときに、一括してノンリレーショナルデータベース40に書き込む。これがステップS5402である。これと同様に、変換後のストリームデータが同期式と非同期式いずれの通信モードであるか認識された後、同じような処理方式が取られる。ステップS542において同期式と判断された場合は、ステップS5421に進み、変換後のストリームデータをノンリレーショナルデータベース40に一括して書き込む。そうでない場合はステップS5422に進み、変換後のストリームデータをいったん記憶装置に一時格納して置き、かかるストリームデータが記憶装置に所定のデータ様態になったとき、一括してノンリレーショナルデータベース40に書き込む。
【0025】
続いて図3を参照する。図3に示されたストリームデータ処理エンジンは、図4図5A図5Bのフローを実行する装置である。そのため、以下には装置モジュールの連結関係についてのみ説明し、実行するフロー及び作業方法は前述した図4図5A図5Bと同様であるため、ここでの詳細説明を省略する。さらに、装置のそれぞれのモジュールは、コンピュータなどのハードウエア装置と組み合わせて稼働するアプリケーションソフトを併せて指すものである。
【0026】
図3に示すように、ストリームデータ処理エンジン20は接続ポート識別モジュール200と、通信モード設定モジュール201と、受信モジュール202と、変換モジュール203と、出力モジュール204と、を含む。そのうち、接続ポート識別モジュール200はネットワーク接続の接続ポートによって、それらのリレーショナルデータベース30のデータ種類とタイプの識別をする。通信モード設定モジュール201は電気通信手段により接続ポート識別モジュール200に接続されていて、かつそれらのリレーショナルデータベース30のデータ種類に従い、リレーショナルデータベース30から伝送するストリームデータの通信モードを同期モードまたは非同期モードにそれぞれ設定する。一方、受信モジュール202は電気通信手段により通信モード設定モジュール201に接続されていて、かつデータ毎に逓増するそれらのストリームデータを順番に取得して、その後のリアルタイム処理に備える。すなわち、それらのストリームデータを変換モジュール202に伝送する。変換モジュール202は電気通信手段により受信モジュール202に接続され、ソースから提供されるリレーショナルデータベース30と、ターゲットとして受け入れるノンリレーショナルデータベース40のデータタイプが一致するか否かを判断し、もし一致の場合はそれらのストリームデータを変換する必要はなく、もし、不一致の場合は、それらのストリームデータをノンリレーショナルデータベース40のデータタイプに変換する。最後に、出力モジュール204を介して、データをノンリレーショナルデータベース40に伝送する。かかる出力モジュール204は電気通信手段により受信モジュール202に接続されていて、かつ通信モードに基づき、変換後のまたは変換の必要ないストリームデータをノンリレーショナルデータベース40に対応して書き込む。さらに、もしかかる通信モードが非同期式のときは、変換後のまたは変換の必要ないストリームデータをいったん記憶装置に格納しておき、それらのストリームデータがかかる記憶装置で所定のデータ状態に格納されたときは、一括してノンリレーショナルデータベース40に書き込む。
【0027】
合わせて図6の本発明の好ましい実施例によるビッグストリームデータのリアルタイム処理システムの構成を示す図を参照する。この構成は図2図3に示すストリームデータ処理エンジン20のように、リアルタイム処理を実現するものであるため、実行方法については、図4ないし図5A図5Bに示すフローを含む。図から分かるように、かかるビッグストリームデータのリアルタイム処理システムは、主データベース61と、従属データベース66と、バックアップ装置67と、ETLツール62と、データウェアハウス63と、を含む。前述したストリームデータ処理エンジン60と、分散型データベース68のように、構成の設置目的はストリームデータを2つのコンテンツが同じで、異なる処理パスに分けて、リアルタイム処理の目的を実現すると共に、従来のデータウェアハウス管理機能をも兼ね備えることにある。これにより、既存の構成を損なうことなく、かつリアルタイム処理の拡張効果を有することができる。よって、主データベース61が構造化されたデータベースタイプであり、かつ、複数のストリームデータを提供している場合は、従属データベース66も構造化データベースに仕上げる。続いて、バックアップ装置67を介して、両者のデータを同期してバックアップしておく。バックアップ装置67は電気通信手段により主データベース61と、従属データベース66に接続されている。バックアップ装置67はホットバックアップ機能を有しており、主データベース61のデータを随時同期させてかかる従属データベース66にバックアップすることにより、2つの同じコンテンツに異なる処理を行う効果が実現される。
【0028】
かかる主データベース61から提供するストリームデータの伝送経路はETLツール62に伝送される。ETLツール62は電気通信手段により主データベース61に接続されており、主データベース61から提供するストリームデータはETLツール62における前処理を経て、データウェアハウス63に伝送されて格納される。データウェアハウス63も構造化データベースタイプの場合は、一定周期において、データウェアハウスに格納する情報はバッチ解析演算ツール64によって、さらなる処理を実行し、処理結果は選択的に集計リポート65に表示することができる。この部分のシステム構成は、従来の構成と許容性を有しているが、しかし、このような構成には、リアルタイムな警告またはリアルタイムにビッグストリームデータを処理するにはなお不足している。そのため、本発明のストリームデータ処理エンジン60は、従属データベース66にバックアップして提供するストリームデータに対して、リアルタイム処理を実行した上、分散型データベース68に伝送して書き込む。ストリームデータ処理エンジン60も電気通信手段により従属データベース66に接続され、分散型データベース68は同じく非構造化データベースタイプであり、かつ電気通信手段によりストリームデータ処理エンジン60に接続されており、ストリームデータ処理エンジン60によって変換処理された後のストリームデータの書き込みに備える。
【0029】
さらに、ビッグストリームデータのリアルタイム処理システムはリアルタイム報告ユニット69を含む。かかるリアルタイム報告ユニット69は電気通信手段により分散型データベース68に接続され、リアルタイムに分散型データベース68に格納されたデータの変異状況を報告する。変異状況の例を挙げると、例えばオンラインゲーム分野におけるビジネス解析のための、形成するプレイヤのライフサイクルに関わるリアルタイムリポートがある。さらに、システムはリアルタイム処理の効果を兼ね備えているため、従来のシステム構成を介して管理制御の基準状況を把握することができる。したがって、より効率な監視制御とリアルタイム処理を達成するには、まずバッチ解析演算ツール64とデータウェアハウス63とを電気通信手段により接続しておき、かつデータウェアハウス63のストリームデータをバッチ解析演算ツール64によって処理して警告レベル値を獲得しておく。リアルタイム報告ユニット69がかかる警告レベル値と、前述の変異状態とを相互に比較した後のものがリアルタイムな警告通知として用いられることができる。半導体製造プロセスの例を挙げると、エッチング製造プロセスの測定結果に過度なエッチングなどの異常が発生した場合は、システムからリアルタイムな警告を自主に発信し、その後にリアルタイムな警告を受信した関係者らはただちに応急措置と調整を行うことができる。
【0030】
本発明の効果は、主に先行技術の構成に存在している欠点を改善し、よりよいリアルタイム処理応答を図ることにある。厳密に言うと、ネットワーク構成はねつ造されたものでなく、または無意味に存在しているものではない。正確に述べると、すべてのネットワーク構成の発展は、対応が手に追えない実際に生じている状況に対して、負荷に応えられる全体的な構成を提案するものである。換言すれば、単なるネットワークを構成するそれぞれのソフトウエアやハードウエアを分解すれば新規性を有していないものであるが、実務上の運用においては、それぞれの基礎概念を結合すると共に、ネットワーク配置を構成することが、問題解決のために寄与するものである。よって、本発明の技術手段は任意に分割または組み合わせ不可な完全性を有しており、さもなければ本発明を達成する効果を実現できない。もし、本発明の構成に基づいて拡張すれば、本発明の目的と効果に抵触されない。
【0031】
以上に述べたものは本発明の好ましい実施例に過ぎなく、本発明の特許請求の範囲を制限するものではない。よって、当業者または当該技術を熟知するものによる同等の効果を生じる簡単な変更、例えば分散型アプリケーションサービスや分散型静的リソース、分散型データ保存と分散型演算などを導入して、システム構成を階層に分けるかまたは分割すること、一つまたは複数のサーバークラスターによって構成すること、あるいは操作フローの順序を前後することなど、本発明の請求の範囲の均等な範囲の変化や修飾は、なお本発明の請求の範囲に含まれるものである。
【符号の説明】
【0032】
10 データソース
11 リレーショナルデータベース
12 ETLツール
13 データウェアハウス
14 バッチ解析演算ツール
15 集計リポート
20、60 ストリームデータ処理エンジン
200 接続ポート識別モジュール
201 通信モード設定モジュール
202 受信モジュール
203 変換モジュール
204 出力モジュール
30 リレーショナルデータベース
40 ノンリレーショナルデータベース
61 主データベース
62 ETLツール
63 データウェアハウス
64 バッチ解析演算ツール
65 集計リポート
66 従属データベース
67 バックアップ装置
68 分散型データベース
69 リアルタイム報告ユニット
図1
図2
図3
図4
図5A
図5B
図6