JP5091894B2 - ストリーム回復方法、ストリーム回復プログラム、および、障害回復装置 - Google Patents
ストリーム回復方法、ストリーム回復プログラム、および、障害回復装置 Download PDFInfo
- Publication number
- JP5091894B2 JP5091894B2 JP2009060766A JP2009060766A JP5091894B2 JP 5091894 B2 JP5091894 B2 JP 5091894B2 JP 2009060766 A JP2009060766 A JP 2009060766A JP 2009060766 A JP2009060766 A JP 2009060766A JP 5091894 B2 JP5091894 B2 JP 5091894B2
- Authority
- JP
- Japan
- Prior art keywords
- stream
- tuple
- data
- recovery point
- recovery
- 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.)
- Expired - Fee Related
Links
- 238000011084 recovery Methods 0.000 title claims description 273
- 238000000034 method Methods 0.000 title claims description 83
- 238000012545 processing Methods 0.000 claims description 183
- 238000003860 storage Methods 0.000 claims description 19
- 238000009826 distribution Methods 0.000 claims description 15
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 238000002347 injection Methods 0.000 claims description 4
- 239000007924 injection Substances 0.000 claims description 4
- 238000011176 pooling Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 47
- 238000007726 management method Methods 0.000 description 42
- 230000005540 biological transmission Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 5
- 230000008033 biological extinction Effects 0.000 description 5
- 230000008034 disappearance Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
前記ストリームデータが、クエリ処理の対象であるデータタプルと、そのデータタプルの前記ストリームデータ内における位置を示す回復ポイントタプルと、を含めて構成され、
前記ストリーム処理装置が、
前記データタプルをクエリ処理するとともに、前記回復ポイントタプルをクエリ処理から除外して一時的にバッファにプールし、前記データタプルが前記ストリーム処理装置内で削除指示されると、その削除指示対象の前記データタプルより前に位置する前記回復ポイントタプルを前記バッファから読み取って、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、記憶手段に書き出し、
前記クエリ処理において分岐処理を行うときには、分岐ごとに前記回復ポイントタプルを複製し、削除指示に伴って前記回復ポイントタプルの全てを前記バッファから読み取ったときに、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、前記記憶手段に書き出し、
前記障害回復装置が、
前記ストリーム処理装置に発生する障害を検知すると、前記記憶手段から前記ストリームデータ内における位置情報を読み取り、その位置情報のうちの最も後に位置する位置情報を前記ストリームデータ内の再投入位置とし、その再投入位置を起点とする前記ストリームデータを、前記ストリーム処理装置に再投入する旨を前記ストリーム配信装置に指示することを特徴とする。
その他の手段は、後記する。
計算機11は、ストリームデータを計算機31に送信する。計算機21は、計算機11から送信されるストリームデータのバックアップを行うとともに、そのバックアップを用いて、障害時に失われるストリームの回復処理を実行する。計算機31は、計算機11から送信されるストリームデータのクエリ処理を行うとともに、そのストリームデータを計算機51へと転送する。計算機51は、計算機31から送信されるストリームデータおよび計算機31でのクエリ処理結果を受信し、それらのデータをもとに、業務アプリケーションを実行する。
計算機21は、メモリ22、CPU24、および、入力ストリームバックアップ25を有する。メモリ22上には、ストリームサーバの状態を監視するためのストリームサーバ監視処理部23、ストリームサーバ回復処理を行うためのストリームサーバ回復処理部26を有する。また、入力ストリームバックアップ25は、フラッシュメモリなど不揮発性の記憶装置により構成してもよい。
計算機51は、メモリ52、CPU54、および、disk55を有する。メモリ52上には、ストリームデータ処理部41で処理されたデータを受信するアプリケーション実行部53を有する。
ストリームデータ受信部42は、アプリケーション実行部13から送信されるストリームデータに対して、回復ポイントタプル61の追加条件を満たすときに、回復ポイントタプル61を追加する。追加条件は、例えば、「1000タプルごとに追加」および「30分ごとに追加」などが挙げられる。
回復ポイント管理部46は、回復ポイントタプル61がストリームデータ処理部41から出力される時点を回復ポイント62(詳細は、図5(c)参照)とし、その回復ポイント62をdisk35内の不揮発性のファイルとして出力する。つまり、回復ポイント62は、入力ストリームバックアップ25のストリームデータのうちの再投入するストリームデータの位置を示す。
ストリームサーバ回復処理部26は、ストリーム処理システムダウンを検知すると、disk35から最新の回復ポイント62(例えば、「10:52.12」)を読み取る。
そして、ストリームサーバ回復処理部26は、その最新の回復ポイント62に該当する入力ストリームバックアップ25のタプルを検索し、その検索結果として見つかったタプル(再投入ポイント)より新しいタプルを、ストリームデータ処理部41に再投入する。これにより、障害回復が可能となる。
なお、回復ポイントタプル61の追加条件にタプル数が指定されている場合、システム回復時に使用するタプル数を計算できるため、システム回復時間を見積もることができるようになる。
また、回復ポイントタプル61の追加条件に時間が指定されている場合、システムを指定時間まで回復させることができる。これは、ログ解析や音声解析などのあらかじめシステムに投入するデータ持つ場合、つまりリアルタイムに情報の解析でない場合に、入力タプル量などを計算することなく回復ポイントを決定できる利点がある。
まず、図3(a)では、通常運用時の回復ポイントタプル61の追加処理を示す。図2(a)との違いは、回復ポイントタプル61を追加する処理の主体が、計算機31のストリームデータ受信部42から、計算機11の回復ポイント指定処理部17へと置き換わっている点である。
このように、ストリームデータの送信側で回復ポイントタプル61を追加する形態は、ストリームデータを構成するデータタプルの意味情報を、回復ポイントタプル61の追加位置に反映させるときに、特に有効である。
例えば、図3(a)では、1つのストリームデータを構成する各データタプルが、3つのタプル群(A,B,C)に分類されている。アプリケーション実行部13は、ユーザから、データタプルの意味情報(タプル群の生成に要する情報)の入力を受け付ける。アプリケーション実行部13は、回復ポイント指定処理部17を呼び出すときに、データタプルの意味情報を併せて回復ポイント指定処理部17に通知する。回復ポイント指定処理部17は、データタプルの意味情報を参照して、タプル群を区切る位置に回復ポイントタプル61を挿入する。これにより、ユーザの意図する箇所に回復ポイント62を設定することが可能となる。
なお、データタプルの意味情報としては、例えば、文字列のストリームデータにおける文法情報(段落単位、文単位、文節単位など)、ラジオ放送やテレビ放送のストリームデータにおける番組情報(番組単位、シーン単位など)、および、数値解析用データのストリームデータにおける構造情報(投資用情報では、会社単位など)が、一例としてあげられる。
つまり、制御部44が発行する消滅タプルには、クエリ処理部45内で生存期間の過ぎたタプルに対し、該当タプルをクエリ処理部45から消滅させる旨の制御指示が記載されている。制御部44は、消滅タプルは、クエリ演算処理において、データタプルが不要になると、そのデータタプルを消滅させるための消滅タプルを発行する。
これにより、クエリ処理部45は3番の回復ポイントタプル61が出力された時点で、3番の回復ポイントタプル61以前に存在した、1番や2番のデータタプルについては、すべてクエリ処理部45からは出力されているものと判断できる。
回復ポイントタプル61の「時刻」は、ストリームデータ内のデータタプルの位置を特定するためのデータであり、例えば、生成時に付加された時刻(ライブ中継などで配信時刻が特定可能な場合)、ストリームデータ内の相対的な時刻(すでに記録された番組の再生時刻)などが、挙げられる。なお、時刻情報だけでは、ストリームデータ内のデータタプルの位置を一義的に特定できないときには、時刻情報と別の識別情報との組を、データタプルの位置特定用情報として利用すればよい。
回復ポイントタプル61の「データ(ストリームID)」は、タプルのデータ格納欄に、ストリームIDを格納する旨を示している。ストリームIDとは、入力ストリームごとに振られたユニークなIDである。この「データ(ストリームID)」は、クエリ演算処理の対象外であるため、とくに書き換えは発生しない。
回復ポイントタプル61の「フラグ(タプルの種類)」は、タプルの種類がデータタプルではなく、制御用の回復ポイントタプル61である旨を示している。
管理テーブル47の「ストリームID」および「時刻」は、図5(a)で説明したように、回復ポイントタプル61の特定情報であり、回復ポイントタプル61の生成時に登録される。
管理テーブル47の「分岐数」は、分岐処理が実行された回数を示す。クエリ処理部45から分岐が発生するたびに通知される分岐通知を受けると、分岐数が初期値「1」から始めて、「1」ずつ増加される。
管理テーブル47の「出力数」は、含まれるレコードの回復ポイントタプル61がストリームデータ送信部43から出力されるたびに、1ずつ増加される。そして、管理テーブル47の「分岐数」と「出力数」とが同じ値になるレコードは、管理テーブル47から削除されるとともに、disk35に回復ポイント62として書き込まれる。
回復ポイント62は、障害発生時に参照される。つまり、図2(b)などで説明したように、障害発生時には、ストリームデータの再投入の位置を特定する必要があるが、回復ポイント62から該当ストリームをストリームIDで検索し、そのストリームIDに対応する時刻の内の最新時刻が、ストリームデータの再投入の位置の特定情報として参照される。
これにより、回復ポイント62には、S105で削除された回復ポイントタプル61に関する情報が、追加される。なお、最新の回復ポイント62が示す時刻より前の時刻のデータタプルは、再投入の対象から除外される。よって、再投入の対象にならないデータタプルを、入力ストリームバックアップ25から削除することで、入力ストリームバックアップ25を記憶する記憶装置の空き容量を増やすことができる。
しかし、送信側のユーザが指定した回復ポイントタプル61を、受信側で無視する設定がなされている場合には、入力された回復ポイントタプル61を削除して、S201の処理を次のタプルに対して行うこととしてもよい。
S201でYESならS204へ、S201でNOならS202へ、それぞれ移行する。
S203において、回復ポイントタプル61を生成して、ストリームデータ受信部42に追加する。
S204において、回復ポイント管理部46の管理テーブル47に、回復ポイントタプル61の情報(レコード)を追加する。
S205において、ストリームデータ受信部42にあるタプルを、制御部44に出力する。
S301において、制御部44からタプルを受信する。
S302において、受信したタプルが回復ポイントタプル61であるか否かを判定する。S302でYESならS303へ、S302でNOならS304へ、それぞれ移行する。
S303において、受信した回復ポイントタプル61を、クエリ演算処理に関与させずに、バッファにプールする。
S304において、受信したデータタプルに対して、クエリ演算処理を行う。
図10(a)は、所定の入力ストリーム量ごとに回復ポイントタプル61を追加する条件を示す。これにより、一定の入力ストリーム量ごとに回復ポイントを設定するため、障害時に再投入する入力ストリーム量を簡単に計算できる。再投入量が簡単に計算できるため、それに伴い回復までの時間を見積もることも可能となる。
図10(b)は、所定時間ごとに回復ポイントタプル61を追加する条件を示す。これにより、回復時点の時間指定が可能となる。また、ログの解析、音声解析などのように、あらかじめ入力するデータを用意でき、入力量が時間により変動しないデータである場合、指定した時間ごとに回復ポイントを取得できるため、ストリーム処理システムの回復時間を一定にすることが可能となる。
図10(c)は、ハードウェア負荷の増加などの外部要因を検知して、回復ポイントタプル61を追加する条件を示す。外部要因としては、ハードウェア(CPU、メモリ、I/O)などの負荷が「高い」または「低い」場合が挙げられる。
以上、図10(a)〜(c)に示した追加条件は、それぞれ単独で用いてもよいし、組み合わせで用いてもよい。さらに、これらの追加条件は、時間経過にかかわらず、同じ設定を使い続けてもよいし、時間帯やイベント発生などにより、複数の設定を切り替えてもよい。
S401において、制御部44からタプルを受信する。
S402において、受信したタプルが、消滅タプルか否かを判定する。なお、制御部44は、クエリ処理部45内での生存期間を過ぎたタプルを消滅させる指示を記述した消滅タプルを生成して、クエリ処理部45に適宜通知する。S402でYESならS403へ、S402でNOなら処理終了へ、それぞれ移行する。
S403において、消滅タプルで消滅を指定されたデータタプルが、S303でプールされている回復ポイントタプル61より後に受信したデータタプルであるか否かを判断する。S403でYESならS404へ、S403でNOならS406へ、それぞれ移行する。
S404において、S303でプールされている回復ポイントタプル61を、制御部44に出力する。
S405において、回復ポイント管理部46に対して、出力する回復ポイントタプル61の分岐数などの情報を通知する。回復ポイント管理部46は、通知された分岐数をもとに、管理テーブル47の出力された回復ポイントタプル61を示すレコードの「分岐数」を更新する。
S406において、受信した消滅タプルの指示に従い、データタプル(通常タプル)をクエリ処理部45から削除する。
S501において、制御部44からタプルを受信する。
S502において、受信したタプルが、回復ポイントタプル61であるか否かを判定する。S502でYESならS503へ、S502でNOなら処理終了へ、それぞれ移行する。
S503において、回復ポイントタプル61が出力されたという情報を、回復ポイント管理部46に通知する。
S504において、受信した回復ポイントタプル61を削除する。
S506において、回復ポイント62に記載する回復ポイントタプル61の情報を、disk35に出力する。
S507において、回復ポイント管理部46は、S506で出力した回復ポイントタプル61の情報を、管理テーブル47から削除する。
S508において、回復ポイント管理部46の管理テーブル47の出力数の項目を「1増加する」旨の更新を行う。
図13(a)では、1つの入力された回復ポイントタプル61が、クエリ処理部45で1回分岐することにより、2つの出力された回復ポイントタプル61となる場合を示す。このときには、1つのストリームデータ送信部43で2回の回復ポイントタプル61の出力が行われるため、管理テーブル47における「分岐数=2」と「出力数=2」とが整合する。
図13(b)では、1つの入力された回復ポイントタプル61が、クエリ処理部45で1回分岐することにより、2つの出力された回復ポイントタプル61となる場合を示す。このときには、2つのストリームデータ送信部43でそれぞれ1回の回復ポイントタプル61の出力が行われるため、管理テーブル47における「分岐数=2」と「出力数=2」とが整合する。
なお、図13(c)のように回復ポイントタプル61の種類が多く存在する場合、各回復ポイントタプル61の最新の回復ポイント62を抽出し、一番古い回復ポイント62を再投入時点として採用する。
S601において、ストリームデータ処理部41で障害が発生する。
S602において、ストリームサーバ監視処理部23は、ストリームデータ処理部41の停止(障害)を検知する。
S603において、S602の検知を受け、ストリームサーバ回復処理部26を実行する。
S604において、ストリームサーバ回復処理部26は、disk35から最新の回復ポイント62を取得する。なお、disk35には、出力済の回復ポイントタプル61に関する情報が、格納されている。
S605において、ストリームサーバ回復処理部26は、入力ストリームバックアップ25から、取得した回復ポイント62が示す時刻より新しい時刻に対応するデータタプルをストリームデータ処理部41に入力ストリーム16として再投入することで、ストリームデータ処理部41を回復させる。
そのため、回復ポイント指定処理部17およびストリームデータ受信部42は、回復ポイントタプル61を入力ストリーム16に追加する。そして、ストリームデータ処理部41から回復ポイントタプル61が出力される時点で、回復ポイント管理部46は、disk35に回復ポイント62を出力する。障害時には、最新の回復ポイント62が示す時刻位置以降のデータタプルを入力ストリームバックアップ25から取得して、新しい入力ストリーム16として再投入することで、ストリームデータ処理部41を回復できる。
11 計算機(ストリーム配信装置)
21 計算機(障害回復装置)
31 計算機(ストリーム処理装置)
51 計算機
12,22,32,52 メモリ
13,53 アプリケーション実行部
14,24,34,54 CPU
15,35,55 disk
16 入力ストリーム
17 回復ポイント指定処理部
23 ストリームサーバ監視処理部
25 入力ストリームバックアップ
26 ストリームサーバ回復処理部
33 オペレーティングシステム
41 ストリームデータ処理部
42 ストリームデータ受信部
43 ストリームデータ送信部
44 制御部
45,45a,45b,45c クエリ処理部
46 回復ポイント管理部
47 管理テーブル
56 出力ストリーム
61,61a,61b,61c,61d 回復ポイントタプル
62 回復ポイント
Claims (21)
- ストリームデータを配信するストリーム配信装置と、配信される前記ストリームデータをクエリ処理するストリーム処理装置と、前記ストリーム処理装置の障害発生により失われる前記ストリームデータを前記ストリーム処理装置に再投入するための制御を行う障害回復装置と、を用いるストリーム処理システムによるストリーム回復方法であって、
前記ストリームデータは、クエリ処理の対象であるデータタプルと、そのデータタプルの前記ストリームデータ内における位置を示す回復ポイントタプルと、を含めて構成され、
前記ストリーム処理装置は、
前記データタプルをクエリ処理するとともに、前記回復ポイントタプルをクエリ処理から除外して一時的にバッファにプールし、前記データタプルが前記ストリーム処理装置内で削除指示されると、その削除指示対象の前記データタプルより前に位置する前記回復ポイントタプルを前記バッファから読み取って、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、記憶手段に書き出し、
前記クエリ処理において分岐処理を行うときには、分岐ごとに前記回復ポイントタプルを複製し、削除指示に伴って前記回復ポイントタプルの全てを前記バッファから読み取ったときに、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、前記記憶手段に書き出し、
前記障害回復装置は、
前記ストリーム処理装置に発生する障害を検知すると、前記記憶手段から前記ストリームデータ内における位置情報を読み取り、その位置情報のうちの最も後に位置する位置情報を前記ストリームデータ内の再投入位置とし、その再投入位置を起点とする前記ストリームデータを、前記ストリーム処理装置に再投入する旨を前記ストリーム配信装置に指示することを特徴とする
ストリーム回復方法。 - 前記ストリーム配信装置は、入力手段を介してユーザから入力された位置情報を、前記ストリームデータ内の前記回復ポイントタプルの追加位置として、前記ストリームデータを構成することを特徴とする
請求項1に記載のストリーム回復方法。 - 前記ストリーム処理装置は、所定の追加条件を満たすか否かを判定し、前記所定の追加条件を満たした時点で前記ストリーム配信装置から受信する前記ストリームデータに対して、前記回復ポイントタプルを挿入することを特徴とする
請求項1に記載のストリーム回復方法。 - 前記ストリーム処理装置は、前記所定の追加条件として、受信する前記ストリームデータのデータ量が所定量になる度に、前記回復ポイントタプルを挿入することを特徴とする
請求項3に記載のストリーム回復方法。 - 前記ストリーム処理装置は、前記所定の追加条件として、所定時間が経過する度に、前記回復ポイントタプルを挿入することを特徴とする
請求項3に記載のストリーム回復方法。 - 前記ストリーム処理装置は、前記所定の追加条件として、前記ストリーム処理装置のハードウェア資源への負荷が所定量以上に増加する度に、前記回復ポイントタプルを挿入することを特徴とする
請求項3に記載のストリーム回復方法。 - 前記回復ポイントタプルには、その所属する前記ストリームデータを特定するためのストリームIDが格納され、
前記ストリーム処理装置は、前記ストリームデータ内における位置情報を、ストリームIDごとに前記記憶手段に書き出し、
前記障害回復装置は、ストリームIDごとに前記記憶手段から位置情報を読み取り、その位置情報のうちの最も前に位置する位置情報を前記ストリームデータ内の再投入位置とすることを特徴とする
請求項1から請求項6のいずれか1項に記載のストリーム回復方法。 - ストリームデータを配信するストリーム配信装置と、配信される前記ストリームデータをクエリ処理するストリーム処理装置と、前記ストリーム処理装置の障害発生により失われる前記ストリームデータを前記ストリーム処理装置に再投入するための制御を行う障害回復装置と、を用いるストリーム処理システムにより実行されるストリーム回復プログラムであって、
前記ストリームデータは、クエリ処理の対象であるデータタプルと、そのデータタプルの前記ストリームデータ内における位置を示す回復ポイントタプルと、を含めて構成され、
前記ストリーム処理装置に、
前記データタプルをクエリ処理するとともに、前記回復ポイントタプルをクエリ処理から除外して一時的にバッファにプールし、前記データタプルが前記ストリーム処理装置内で削除指示されると、その削除指示対象の前記データタプルより前に位置する前記回復ポイントタプルを前記バッファから読み取って、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、記憶手段に書き出す手順を実行させ、
前記クエリ処理において分岐処理を行うときには、分岐ごとに前記回復ポイントタプルを複製し、削除指示に伴って前記回復ポイントタプルの全てを前記バッファから読み取ったときに、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、前記記憶手段に書き出す手順を実行させ、
前記障害回復装置に、
前記ストリーム処理装置に発生する障害を検知すると、前記記憶手段から前記ストリームデータ内における位置情報を読み取り、その位置情報のうちの最も後に位置する位置情報を前記ストリームデータ内の再投入位置とし、その再投入位置を起点とする前記ストリームデータを、前記ストリーム処理装置に再投入する旨を前記ストリーム配信装置に指示する手順を実行させることを特徴とする
ストリーム回復プログラム。 - 前記ストリーム配信装置に、入力手段を介してユーザから入力された位置情報を、前記ストリームデータ内の前記回復ポイントタプルの追加位置として、前記ストリームデータを構成する手順を実行させることを特徴とする
請求項8に記載のストリーム回復プログラム。 - 前記ストリーム処理装置に、所定の追加条件を満たすか否かを判定し、前記所定の追加条件を満たした時点で前記ストリーム配信装置から受信する前記ストリームデータに対して、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項8に記載のストリーム回復プログラム。 - 前記ストリーム処理装置に、前記所定の追加条件として、受信する前記ストリームデータのデータ量が所定量になる度に、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項10に記載のストリーム回復プログラム。 - 前記ストリーム処理装置に、前記所定の追加条件として、所定時間が経過する度に、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項10に記載のストリーム回復プログラム。 - 前記ストリーム処理装置に、前記所定の追加条件として、前記ストリーム処理装置のハードウェア資源への負荷が所定量以上に増加する度に、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項10に記載のストリーム回復プログラム。 - 前記回復ポイントタプルには、その所属する前記ストリームデータを特定するためのストリームIDが格納され、
前記ストリーム処理装置に、前記ストリームデータ内における位置情報を、ストリームIDごとに前記記憶手段に書き出す手順を実行させ、
前記障害回復装置に、ストリームIDごとに前記記憶手段から位置情報を読み取り、その位置情報のうちの最も前に位置する位置情報を前記ストリームデータ内の再投入位置とする手順を実行させることを特徴とする
請求項8から請求項13のいずれか1項に記載のストリーム回復プログラム。 - ストリームデータを配信するストリーム配信装置と、配信される前記ストリームデータをクエリ処理するストリーム処理装置と、前記ストリーム処理装置の障害発生により失われる前記ストリームデータを前記ストリーム処理装置に再投入するための制御を行う障害回復装置と、を用いるストリーム処理システムにおける障害回復装置であって、
前記ストリームデータは、クエリ処理の対象であるデータタプルと、そのデータタプルの前記ストリームデータ内における位置を示す回復ポイントタプルと、を含めて構成され、
前記ストリーム処理装置に発生する障害を検知すると、前記ストリーム処理装置のクエリ処理が済んだ前記データタプルの位置を示す、前記ストリームデータ内における位置情報を記憶手段から読み取り、その位置情報のうちの最も後に位置する位置情報を前記ストリームデータ内の再投入位置とし、その再投入位置を起点とする前記ストリームデータを、前記ストリーム処理装置に再投入する旨を前記ストリーム配信装置に指示し、
前記ストリーム処理装置に、前記クエリ処理において分岐処理を行うときには、分岐ごとに前記回復ポイントタプルを複製し、削除指示に伴って前記回復ポイントタプルの全てを、前記ストリーム処理装置内のプールされているバッファから読み取ったときに、その回復ポイントタプルが示す前記ストリームデータ内における位置情報を、前記記憶手段に書き出す手順を実行させることを特徴とする
障害回復装置。 - 前記ストリーム配信装置に、入力手段を介してユーザから入力された位置情報を、前記ストリームデータ内の前記回復ポイントタプルの追加位置として、前記ストリームデータを構成する手順を実行させることを特徴とする
請求項15に記載の障害回復装置。 - 前記ストリーム処理装置に、所定の追加条件を満たすか否かを判定し、前記所定の追加条件を満たした時点で前記ストリーム配信装置から受信する前記ストリームデータに対して、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項15に記載の障害回復装置。 - 前記ストリーム処理装置に、前記所定の追加条件として、受信する前記ストリームデータのデータ量が所定量になる度に、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項17に記載の障害回復装置。 - 前記ストリーム処理装置に、前記所定の追加条件として、所定時間が経過する度に、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項17に記載の障害回復装置。 - 前記ストリーム処理装置に、前記所定の追加条件として、前記ストリーム処理装置のハードウェア資源への負荷が所定量以上に増加する度に、前記回復ポイントタプルを挿入する手順を実行させることを特徴とする
請求項17に記載の障害回復装置。 - 前記回復ポイントタプルには、その所属する前記ストリームデータを特定するためのストリームIDが格納され、
前記ストリーム処理装置に、前記ストリームデータ内における位置情報を、ストリームIDごとに前記記憶手段に書き出す手順を実行させ、
ストリームIDごとに前記記憶手段から位置情報を読み取り、その位置情報のうちの最も前に位置する位置情報を前記ストリームデータ内の再投入位置とすることを特徴とする
請求項15から請求項20のいずれか1項に記載の障害回復装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009060766A JP5091894B2 (ja) | 2009-03-13 | 2009-03-13 | ストリーム回復方法、ストリーム回復プログラム、および、障害回復装置 |
US12/713,056 US8140917B2 (en) | 2009-03-13 | 2010-02-25 | Stream recovery method, stream recovery program and failure recovery apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009060766A JP5091894B2 (ja) | 2009-03-13 | 2009-03-13 | ストリーム回復方法、ストリーム回復プログラム、および、障害回復装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2010219613A JP2010219613A (ja) | 2010-09-30 |
JP2010219613A5 JP2010219613A5 (ja) | 2011-05-06 |
JP5091894B2 true JP5091894B2 (ja) | 2012-12-05 |
Family
ID=42731670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009060766A Expired - Fee Related JP5091894B2 (ja) | 2009-03-13 | 2009-03-13 | ストリーム回復方法、ストリーム回復プログラム、および、障害回復装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8140917B2 (ja) |
JP (1) | JP5091894B2 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5308403B2 (ja) * | 2010-06-15 | 2013-10-09 | 株式会社日立製作所 | データ処理の障害回復方法、システムおよびプログラム |
US8645606B2 (en) | 2010-06-23 | 2014-02-04 | International Business Machines Corporation | Upbound input/output expansion request and response processing in a PCIe architecture |
US8918573B2 (en) | 2010-06-23 | 2014-12-23 | International Business Machines Corporation | Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment |
US8645767B2 (en) | 2010-06-23 | 2014-02-04 | International Business Machines Corporation | Scalable I/O adapter function level error detection, isolation, and reporting |
US8656228B2 (en) * | 2010-06-23 | 2014-02-18 | International Business Machines Corporation | Memory error isolation and recovery in a multiprocessor computer system |
US8671287B2 (en) | 2010-06-23 | 2014-03-11 | International Business Machines Corporation | Redundant power supply configuration for a data center |
US8683108B2 (en) | 2010-06-23 | 2014-03-25 | International Business Machines Corporation | Connected input/output hub management |
US8745292B2 (en) | 2010-06-23 | 2014-06-03 | International Business Machines Corporation | System and method for routing I/O expansion requests and responses in a PCIE architecture |
US8615586B2 (en) | 2010-06-23 | 2013-12-24 | International Business Machines Corporation | Discovery of logical images at storage area network endpoints |
US8615622B2 (en) | 2010-06-23 | 2013-12-24 | International Business Machines Corporation | Non-standard I/O adapters in a standardized I/O architecture |
US8677180B2 (en) | 2010-06-23 | 2014-03-18 | International Business Machines Corporation | Switch failover control in a multiprocessor computer system |
US8510591B2 (en) | 2010-09-04 | 2013-08-13 | Cisco Technology, Inc. | System and method for providing media server redundancy in a network environment |
US8225137B2 (en) * | 2010-09-04 | 2012-07-17 | Cisco Technology, Inc. | System and method for providing media server redundancy in a network environment |
CN102810073B (zh) * | 2012-06-13 | 2014-11-12 | 天津大学 | 数据后台实时监控处理方法 |
US20140304545A1 (en) * | 2013-04-05 | 2014-10-09 | Hewlett-Packard Development Company, L.P. | Recovering a failure in a data processing system |
US20140304549A1 (en) * | 2013-04-05 | 2014-10-09 | Hewlett-Packard Development Company, L.P. | Recovering a failure in a data processing system |
US9372756B2 (en) * | 2013-05-22 | 2016-06-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Recovery of operational state values for complex event processing based on a time window defined by an event query |
US20160196188A1 (en) * | 2013-09-13 | 2016-07-07 | Hewlett Packard Enterprise Development, LP | Failure recovery of a task state in batch-based stream processing |
WO2016035128A1 (ja) * | 2014-09-02 | 2016-03-10 | 株式会社日立製作所 | ストリームデータ処理システム及び処理方法 |
JP5815108B1 (ja) * | 2014-12-02 | 2015-11-17 | ヤフー株式会社 | 配信装置、配信方法 |
US10185634B2 (en) * | 2016-09-07 | 2019-01-22 | Facebook, Inc. | Detecting data loss and corruption of data processed by a data processing system of an online system during a specified time interval |
US11138076B2 (en) * | 2017-06-30 | 2021-10-05 | Redis Ltd. | Methods, systems, and media for controlling append-only file rewrites |
US10791018B1 (en) * | 2017-10-16 | 2020-09-29 | Amazon Technologies, Inc. | Fault tolerant stream processing |
CN110659083A (zh) * | 2019-09-19 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种程序故障重启后恢复内存数据的方法和系统 |
US11314584B1 (en) * | 2020-11-25 | 2022-04-26 | International Business Machines Corporation | Data quality-based confidence computations for KPIs derived from time-series data |
US11381887B2 (en) * | 2020-12-07 | 2022-07-05 | Rovi Guides, Inc. | Systems and methods for managing interruption of content presentation |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4336611A (en) * | 1979-12-03 | 1982-06-22 | Honeywell Information Systems Inc. | Error correction apparatus and method |
JP2003348125A (ja) * | 2002-05-24 | 2003-12-05 | Sony Corp | 情報配信システム、情報処理置および方法、記録媒体、並びにプログラム |
US7007197B2 (en) * | 2002-05-31 | 2006-02-28 | Microsoft Corporation | Virtual logging system and method |
US7051245B2 (en) * | 2002-11-30 | 2006-05-23 | International Business Machines Corporation | System and method for handling out-of-order data supplied by a real-time feed |
EP1526541A1 (en) * | 2003-10-23 | 2005-04-27 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for recording data and recovering recorded data |
US7076573B2 (en) * | 2003-11-20 | 2006-07-11 | International Business Machines Corporation | Method, apparatus, and program for detecting sequential and distributed path errors in MPIO |
JP4839091B2 (ja) * | 2006-01-27 | 2011-12-14 | 株式会社日立製作所 | データベース回復方法及び計算機システム |
US7895474B2 (en) * | 2007-05-03 | 2011-02-22 | International Business Machines Corporation | Recovery and restart of a batch application |
JP2009010575A (ja) * | 2007-06-27 | 2009-01-15 | Toshiba Corp | マルチキャスト通信のための中継装置、並びに端末装置 |
US7844856B1 (en) * | 2007-12-26 | 2010-11-30 | Emc (Benelux) B.V., S.A.R.L. | Methods and apparatus for bottleneck processing in a continuous data protection system having journaling |
-
2009
- 2009-03-13 JP JP2009060766A patent/JP5091894B2/ja not_active Expired - Fee Related
-
2010
- 2010-02-25 US US12/713,056 patent/US8140917B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010219613A (ja) | 2010-09-30 |
US8140917B2 (en) | 2012-03-20 |
US20100235681A1 (en) | 2010-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5091894B2 (ja) | ストリーム回復方法、ストリーム回復プログラム、および、障害回復装置 | |
JP6028850B2 (ja) | データ多重化システム | |
US9372908B2 (en) | Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation | |
JP5337916B1 (ja) | 情報処理システム | |
CN105956166B (zh) | 数据库读写方法和读写装置 | |
US8959300B2 (en) | Cascade ordering | |
EP2988220B1 (en) | Computer system, computer-system management method, and program | |
JP4571576B2 (ja) | リモートコピー記憶装置システムおよびリモートコピー方法 | |
US20150213100A1 (en) | Data synchronization method and system | |
US8756389B2 (en) | Prevention of overlay of production data by point in time copy operations in a host based asynchronous mirroring environment | |
US20150286671A1 (en) | Transaction system | |
JP2010244486A (ja) | データ処理システム、その処理方法、及び計算機 | |
US20170083419A1 (en) | Data management method, node, and system for database cluster | |
US10049021B2 (en) | Redundant system and redundancy method | |
EP2966572B1 (en) | Database device, program, and data processing method | |
US20150088958A1 (en) | Information Processing System and Distributed Processing Method | |
JP2016224856A (ja) | データベース装置、検索装置、部分グラフ構築方法、検索方法 | |
JP6251965B2 (ja) | 情報システムおよびデータベース復旧方法 | |
US9852031B2 (en) | Computer system and method of identifying a failure | |
JP2009266031A (ja) | 計算機システム及び計算機 | |
US9886359B2 (en) | Redundant system, redundancy method, and computer-readable recording medium | |
US8954384B2 (en) | File storage system and file storage method | |
JP5939053B2 (ja) | リモートバックアップ装置、リモートバックアップシステム、方法およびプログラム | |
CN108599982B (zh) | 数据恢复方法及相关设备 | |
JP2009098715A (ja) | 冗長システム装置並びに冗長システム装置におけるジョブの実行方法及び実行プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110318 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110318 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120724 |
|
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: 20120821 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120914 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150921 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5091894 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |