(57)【特許請求の範囲】
【請求項１】
コンピュータで実行可能な命令で構成される１つ以上のプロセッサによって行われる方法であって、
バックアップ・データベースから増分データの主キー情報を取得するステップと、
メイン・データベースと前記バックアップ・データベースとの間で同期される取得した主キー情報に基づき、増分データを前記メイン・データベースで照会するステップと、
見つかった増分データをターゲットのデータ・ウェアハウスに挿入するステップと、を含む方法。
【請求項２】
前記メイン・データベースと前記バックアップ・データベースとの間で同期される前記データは、前記データのすべての項目を含むことなく、前記データの１つ以上のキー項目を含み、前記１つ以上のキー項目は前記データの主キー情報を含む請求項１に記載の方法。
【請求項３】
前記バックアップ・データベースは、フロントエンドのウェブサイトのバックアップ・データベースであり、前記メイン・データベースは前記フロントエンドのウェブサイトのメイン・データベースである請求項１に記載の方法。
【請求項４】
前記取得するステップは、
構文解析した内容を取得するために前記バックアップ・データベースのログ・ファイルを構文解析するステップと、
前記バックアップ・データベースの前記ログ・ファイルにある前記構文解析された内容に基づき、前記バックアップ・データベースにある変更データを逆構文解析するステップと、
前記バックアップ・データベースから前記変更データの前記主キー情報を取り出すステップと、を含む請求項１に記載の方法。
【請求項５】
前記照会するステップは、前記取得した主キー情報に基づき、１つ以上の増分データ一式を、メイン・データベースから照会するために検索関数または検索命令を使用するステップを含む請求項１に記載の方法。
【請求項６】
前記１つ以上の増分データ一式のそれぞれは、
前記増分データの変更タイプと、
前記増分データの変更時刻と、
前記増分データの前記主キー情報と、を含む請求項５に記載の方法。
【請求項７】
前記増分データの変更タイプを取得するステップをさらに含む請求項１に記載の方法。
【請求項８】
前記変更タイプには、
挿入オペレーションによって生じる挿入、
更新オペレーションによって生じる更新
削除オペレーションによって生じる削除
のうち少なくとも１つを含む請求項７に記載の方法。
【請求項９】
前記挿入するステップは、前記増分データを、前記ターゲットのデータ・ウェアハウスでオリジナルのデータ・テーブルとマージするステップを含む請求項１に記載の方法。
【請求項１０】
装置であって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサで以下のアクションを行うために実行可能なコンピュータで実行可能な命令を保存するコンピュータ記憶媒体と、を含む装置であって、
前記アクションは、
バックアップ・データベースから増分データの主キー情報を取得するステップを含み、前記取得するステップは、
前記バックアップ・データベースのログ・ファイルを構文解析するステップと、
前記バックアップ・データベースの前記ログ・ファイルにある前記構文解析された内容に基づき、前記バックアップ・データベースにある変更データを逆構文解析するステップと、
前記バックアップ・データベースから前記変更データの前記主キー情報を取り出すステップと、を含み、
前記アクションは、
前記メイン・データベースと前記バックアップ・データベースとの間で同期される前記取得した主キー情報に基づき、メイン・データベースで増分データを照会するステップと、
見つかった増分データをターゲットのデータ・ウェアハウスに挿入するステップと、を含む装置。
【請求項１１】
前記照会するステップは、前記取得した主キー情報に基づき、前記メイン・データベースから１つ以上の増分データ一式を照会するために検索関数または検索命令を使用するステップを含む請求項１０に記載の装置。
【請求項１２】
前記見つかった１つ以上の増分データ一式には、
前記増分データの変更タイプと、
前記増分データの変更時刻と、
前記増分データの前記主キー情報と、を含む請求項１１に記載の装置。
【請求項１３】
前記変更タイプには、
挿入オペレーションによって生じる挿入、
更新オペレーションによって生じる更新
削除オペレーションによって生じる削除
のうち少なくとも１つを含む請求項１２に記載の装置。
【請求項１４】
前記照会するステップは、
見つかった１つ以上の増分データ一式と、前記ターゲットのデータ・ウェアハウスでオリジナルのテーブルと、を比較し、
前記見つかった１つ以上の増分データ一式を、前記比較の結果に基づき、前記オリジナルのテーブルに更新する請求項１０に記載の装置。
【請求項１５】
前記メイン・データベースと前記バックアップ・データベースとの間で同期する前記データには、前記データの全項目を含むことなく、前記データの１つ以上のキー項目を含み、前記１つ以上のキー項目は前記データの主キー情報を含む請求項１０に記載の装置。
【請求項１６】
前記バックアップ・データベースはフロントエンドのウェブサイトのバックアップ・データベースであり、前記メイン・データベースは、前記フロントエンドのウェブサイトのメイン・データベースである請求項１０に記載の装置。
【請求項１７】
システムであって、
メイン・データベースと、
バックアップ・データベースと、
ターゲットのウェアハウスと、
装置と、を含み
前記装置は、
１つ以上のプロセッサと、
前記１つ以上のプロセッサで以下のアクションを行うために実行可能なコンピュータで実行可能な命令を保存するコンピュータ記憶媒体と、を含む装置であって、
前記アクションは、
バックアップ・データベースから増分データの主キー情報を取得するステップを含み、前記取得するステップは、
前記バックアップ・データベースのログ・ファイルを構文解析するステップと、
前記バックアップ・データベースの前記ログ・ファイルにある前記構文解析された内容に基づき、前記バックアップ・データベースにある変更データを逆構文解析するステップと、
前記バックアップ・データベースから前記変更データの前記主キー情報を取り出すステップと、を含み、
前記アクションは、
前記メイン・データベースと前記バックアップ・データベースとの間で同期される前記取得した主キー情報に基づき、メイン・データベースで１つ以上の増分データ一式を照会するステップと、
見つかった増分データ一式をターゲットのデータ・ウェアハウスに挿入するステップと、を含むシステム。
【請求項１８】
前記メイン・データベースと前記バックアップ・データベースとの間で同期する前記データには、前記データの全項目を含むことなく、前記データの１つ以上のキー項目を含み、前記１つ以上のキー項目は前記データの主キー情報を含む請求項１７に記載のシステム。
【請求項１９】
前記１つ以上の増分データ一式には、
前記増分データの変更タイプと、
前記増分データの変更時刻と、
前記増分データの前記主キー情報と、を含む請求項１７に記載のシステム。
【請求項２０】
前記変更タイプには、
挿入オペレーションによって生じる挿入、
更新オペレーションによって生じる更新
削除オペレーションによって生じる削除
のうち少なくとも１つを含む請求項１９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ伝送技術、具体的には増分データを抽出する方法、装置、およびシステムに関する。
【０００２】
関連出願の相互参照
本願は２０１１年６月２３日に出願された中国特許番号２０１１１０１７０６００．９  “Ｍｅｔｈｏｄ, Ａｐｐａｒａｔｕｓ,  ａｎｄ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｅｘｔｒａｃｔｉｎｇ  Ｉｎｃｒｅｍｅｎｔａｌ  Ｄａｔａ,”の外国優先権を主張するものであり、その全体を本明細書に援用する。
【背景技術】
【０００３】
インターネットの急速な発展に伴い、ウェブサイトが表示するデータ量は急速に増加している。同時に、フロントエンドのウェブサイトとバックエンドのデータ・ウェアハウスとの間で伝送されるデータ量も増加している。バックエンドのデータ・ウェアハウスがデータ計算を行う場合、フロントエンドのウェブサイトからデータを抽出する必要がある。
【０００４】
現在、従来の技術では、データ・ウェアハウスは、データ抽出を行うためにハッシュ演算法を使用する。例えば、フロントエンドのウェブサイトは、テーブルａを持ち、データ量は何億にもなる。毎日の増分データは約６百万になる。データ・ウェアハウスはテーブルの増分データを毎日抽出する必要がある。この抽出プロセスを以下に示す。ステップＡで、テンポラリ・テーブル１が生成される。ステップＢでデータ・ウェアハウスのオリジナルのテーブルａにあるデータを使用してテンポラリ・テーブル２が生成される。ステップＣで、テンポラリ・テーブル１にあるデータがデータ・ウェアハウスにコピーされ、増分データのＩＤ値を取得するための関係演算を使用して、テンポラリ・テーブル２に関連付けられる。ステップＤで、増分データ全体が、ＩＤ値に基づき、フロントエンドのウェブサイトから取り出される。
【０００５】
明らかに、上記のステップＡでは、テーブル１を生成するためにテーブルａにある数億のデータを一度スキャンするのに、２、３時間かかるであろう。データがネットワーク経由でデータ・ウェアハウスに伝送される場合、さらに時間がかかる。さらに、ステップＣでの関係演算も非常に時間がかかる。
【０００６】
従って、増分データのスケールが絶えず拡大し続けるに従い、上記のフロントエンドのウェブサイトにある大きなテーブルから増分データを抽出するには最長で５時間以上かかる場合もある。これは、多くの時間やコンピューティング資源を無駄にするだけでなく、データ・ウェアハウスにおけるデータ計算の遅延が増えることになる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本開示では、多くの時間とシステム資源を節約するだけでなく、増分データ抽出の効率も高める増分データを抽出するための方法、装置、およびシステムを提供する。
【課題を解決するための手段】
【０００８】
本開示では、増分データを抽出するための方法を提供する。バックアップ・データベースのログ・ファイルは構文解析され、バックアップ・データベースのログ・ファイルの構文解析された内容に基づき、バックアップ・データベースの特定の変更データが逆構文解析される。バックアップ・データベースにあるその変更されたデータから、主キー情報が取り出される。バックアップ・データベースと同期するメイン・データベースから、主キー情報に基づき１つ以上の増分データ一式が照会される。見つかった１つ以上の増分データは、ターゲットのデータ・ウェアハウスに挿入される。
【０００９】
本開示では増分データを抽出するための装置も提供する。この装置には、検索ユニット、照会ユニット、および挿入ユニットを含んでもよい。検索ユニットはバックアップ・データベースのログ・ファイルを構文解析し、バックアップ・データベースのログ・ファイルにある構文解析された内容に基づき、バックアップ・データベースにあるその特定の変更データを逆構文解析する。検索ユニットは、バックアップ・データベースにある変更データから主キー情報も取り出す。照会ユニットは、その主キー情報に基づき、メイン・データベースから１つ以上の増分データ一式を照会する。メイン・データベースは、バックアップ・データベースと同期する。挿入ユニットは、見つかった１つ以上の増分データをターゲットのデータ・ウェアハウスに挿入する。
【００１０】
本開示では、増分データを抽出するためのシステムも提供する。このシステムには、メイン・データベース、バックアップ・データベース、ターゲットのデータ・ウェアハウス、および増分データを抽出するための上記の装置を含んでもよい。メイン・データベースとバックアップ・データベースは、抽出する必要がある増分データを保存する。保存されたデータは、メイン・データベースとバックアップ・データベースとの間で同期する。この装置は、増分データの主キー情報をバックアップ・データベースから取り出し、主キー情報に基づき、１つ以上の増分データ一式を、メイン・データベースから照会し、その１つ以上の増分データ一式をターゲットのデータ・ウェアハウスに挿入する。ターゲットのデータ・ウェアハウスは、抽出された１つ以上の増分データ一式を保存する。
【００１１】
本開示の技術では、増分データの主キー情報に基づく変更データを取り出し、将来の処理のために変更データだけをデータ・ウェアハウスに送信する。本技術は多くの時間とシステム資源を節約し、増分データ抽出の効率を高める。
【００１２】
さらに、本技術では、メイン・データベースと同期しているバックアップ・データベースを通して主キー情報を取り出し、その主キー情報に基づきメイン・データベースから１つ以上の増分データ一式に対する照会オペレーションを実行する。その結果、本技術は、増分データを照会する際のメイン・データベースの負荷を減らす。
【００１３】
本開示の実施形態をわかりやすく示すために、以下に本実施形態の説明に使用する図を簡単に説明する。以下の図は本開示のいくつかの実施形態のみに関連することは明白である。当業者は、創造的努力なしに、本開示の図に従い他の図を入手できる。
【図面の簡単な説明】
【００１４】
【図１】本開示の第１の実施形態例に従った増分データを抽出するための方法例を示す流れ図である。
【図２】本開示の第３の実施形態例に従った増分データを抽出するための装置例を示す図である。
【図３】本開示の第４の実施形態例に従った増分データを抽出するためのシステム例を示す図である。
【発明を実施するための形態】
【００１５】
本技術では、増分データの主キー情報に基づき変更データを取り出し、ある例では、将来の処理のために変更データのみをデータ・ウェアハウスに送信する。従って、本技術は多くの時間とシステム資源を節約し、増分データ抽出の効率を高める。
【００１６】
当業者は、本開示の増分データは、フロントエンドのウェブサイトで毎日変更されるデータなどの変更データであると理解するであろう。実際には、こうした増分データは他の形式や他のアプリケーションの変更データであってもよい。増分データは、フロントエンドのウェブサイトの変更データおよび毎日変更されるデータに制限されるものではない。
【００１７】
以下では、図を参照して説明する。以下の例の実施形態は、本開示のいくつかの実施形態にのみ関連することは明白である。当業者は、創造的努力なしに本開示の他の実施形態を入手可能である。
【００１８】
本開示の第１の実施形態例では、増分データを抽出するための方法例を示している。この方法例は、フロントエンドのメイン・データベースとフロントエンドのバックアップ・データベースを含むシステムに適用しうる。図１は、本開示の第１の実施形態例に従い増分データを抽出するための方法例の流れ図である。
【００１９】
１０２で、増分データの主キー情報をフロントエンドのバックアップ・データベースから取得する。主キー情報を取得するための詳細オペレーションは、最新の技術を使用して実施してもよい。さらに、第１の実施形態例では、これに制限されるものではないが、以下の方法を使用してもよい。
【００２０】
フロントエンドのバックアップ・データベースのログ・ファイルが構文解析される。フロントエンドのバックアップ・データベースにあるログは通常バイナリ形式で保存されている。フロントエンドのバックアップ・データベースにあるログ・ファイルの構文解析された内容に基づき、フロントエンドのバックアップ・データベースにあるその特定の変更データは逆構文解析される。フロントエンドのバックアップ・データベースにある変更データから主キー情報が取り出される。
【００２１】
例えば、フロントエンドのユーザは、「値に挿入（１００, ‘ｘｉｎ’, ｓｙｓｄａｔｅ）」などのデータを追加するオペレーションを行う。この増分データの主キー情報を得るには、フロントエンドのバックアップ・データベースのログ・ファイルを構文解析する。フロントエンドのバックアップ・データベースのログ・ファイルにある構文解析した内容に基づき、変更データが見つけられる。この例では、変更データのテーブルａが取得される。変更タイプは、「挿入」オペレーションである。変更データの主キー情報は１００である。つまり、１００は、増分データの主キーである。ある例では、フロントエンドのバックアップ・データベースにあるデータは、リアルタイムの同期によってフロントエンドのメイン・データベースから取得される。他の例では、フロントエンドのメイン・データベースにあるすべてのデータの代わりに、主キー情報などの１つ以上のキー・データ項目をバックアップ・データベースに同期させる場合がある。このデータ同期プロセスは、メイン・データベースからバックアップ・データベースに同期させるデータ項目数を減らすことによって加速しうる。さらに、バックアップ・データベースにあるログ・ファイルの構文解析中に、ログ・ファイルにはいくつかのキー・データ項目が含まれるため、ログ・ファイルを構文解析する速度も加速される場合がある。
【００２２】
１０４では、フロントエンドのメイン・データベースで主キー情報に基づき、１つ以上の増分データが照会される。増分のデータベースの照会と抽出によるフロントエンドのメイン・データベースの負荷を減らすために、この実施形態例では、そのデータがフロントエンドのメイン・データベースから同期されるバックアップ・データベースからその主キー情報を抽出し、その主キー情報に基づき、フロントエンドのメイン・データベースで１つ以上の増分データ一式が照会されてもよい。こうした状況では、フロントエンドのメイン・データベースはメイン・データベースと呼ばれ、メイン・データベースからそのデータが同期されるバックアップ・データベースは、バックアップ・データベースと呼ばれる。
【００２３】
特定の照会オペレーションでは、選択関数などの照会関数または照会命令を使用してもよい。例えば、増分データの主キー情報は、１００、１０８、および２００である。増分データ一式を検索するために照会命令、“ｓｅｌｅｃｔ  ＊  ｆｒｏｍ  ａ  ｗｈｅｒｅ  ｉｄ  ｉｎ  （１００，  １０８，  ２００）”を使用してもよい。他の詳細な照会方法については、本明細書では詳細に説明しない。
【００２４】
実際には、増分データ一式をより正確に検索するには、この実施形態例の方法では主キー情報に加えて増分データの変更タイプの取得を含む場合がある。一般的状況では、変更オペレーションの「挿入（ｉｎｓｅｒｔ）」は、変更のタイプが挿入であることを示し、変更オペレーションの“ｕｐｄａｔｅ”は変更のタイプが更新であることを示し、変更オペレーションの“ｄｅｌｅｔｅ”は変更のタイプが削除であることを示す。他のタイプの変更もありうるが、本開示では詳細には説明しない。
【００２５】
１０６では、見つかった１つ以上の増分データがターゲットのデータ・ウェアハウスに挿入される。例えば、ターゲットのデータ・ウェアハウスに挿入された増分データは、以下に制限されるものではないが、増分データの変更時刻、増分データの変更のタイプ、および増分データの主キー情報を含む場合がある。
【００２６】
見つかった１つ以上の増分データ一式のターゲットのデータ・ウェアハウスへの挿入は、マージ技術を使用して行ってもよい。つまり、見つかった１つ以上の増分データの増分データ一式はターゲットのデータ・ウェアハウスにあるオリジナルのデータ・テーブルにマージしてもよい。または、例えば、見つかった１つ以上の増分データ一式は、ターゲットのデータ・ウェアハウスにある増分データに対応するオリジナルのデータを置き換えるために使用してもよい。他の挿入方法を代わりに使用しても良いが、本明細書では説明しない。
【００２７】
本開示の第２の実施形態例で示しているように、以下で上記の方法例をフロントエンドのウェブサイトで特定の増分データ抽出に関して詳細に説明する。
【００２８】
例えば、フロントエンドのウェブサイトのデータは、テーブルｔによって表され、データ・ウェアハウスにプッシュする必要がある増分データを含む。テーブルｔの構造とデータを表１に示す。表１では、Ｉｄは主キーを表す。
【００２９】
【表１】
0005961689.tif 000002
【００３０】
フロントエンドのウェブサイトのデータを、２０１１年１月１日８：００：００に変更すると、テーブル１のデータは、増分変更がある。例えば、この変更は以下のようになる場合がある。
ｔに値（４,‘Ｗａｎｇ Ｗｕ’，３０，ｍａｌｅ）を挿入;
ｎａｍｅ＝‘Ｌｉ Ｓｉ’の設定年齢＝‘３５’を更新
ｔからｎａｍｅ＝‘Ｚｈａｎｇ Ｓａｎ’を削除
この増分データ抽出オペレーションには、以下のオペレーションが含まれる場合がある。最初のオペレーションで、変更データの主キーと変更タイプが、フロントエンドのウェブサイトのバックアップ・データベースからキャプチャされる場合がある。例えば、テーブル１の変更から取得されたデータは、（４，Ｉ），（２, Ｕ），（１，Ｄ）であり、この場合、Ｉは挿入、Ｕは更新、Ｄは削除のオペレーションをそれぞれ表し、４、２、１は各オペレーションに対応する主キー情報をそれぞれ表す。
【００３１】
第２のオペレーションで、この例では４、２、１の主キー情報に基づき、選択命令などの照会オペレーションが、フロントエンドのウェブサイトのメイン・データベースで行われ、１つ以上の増分データ一式を照会する。バックアップ・データベースにあるデータとメイン・データベースにあるデータは同期されるが、本明細書では詳しく説明しない。
【００３２】
第３のオペレーションでは、見つかった１つ以上の増分データ一式が、増分テーブルに挿入される。この増分テーブルの構造とデータを表２に示す。
【００３３】
【表２】
0005961689.tif 000003
【００３４】
表２では、ｌｏｇ＿ｓｅｑフィールドがリザーブされる。ｌｏｇ＿ｔｉｍｅは、データベースでデータが変更された実際の時刻を表す。ｌｏｇ＿ａｃｔｉｏｎは、（Ｉ, Ｕ, Ｄ）の１つなどのデータに対する変更のタイプを表す値を持つ。ｌｏｇ＿ｉｄは、レコードの主キーを表す。
【００３５】
第４のオペレーションで、データ・ウェアハウスは、増分テーブルにある上記の増分データを、すでに保存されている基本テーブルとマージし、基本テーブルにあるオリジナルのデータと置き換える。このように、フロントエンドのウェブサイトでの増分データ抽出が完了し、データ抽出効率が高まる。
【００３６】
この方法例では、増分データの主キー情報を使用して、変更データを取得し、いくつかの例では、さらなる計算のために変更データをデータ・ウェアハウスに単に送信する。これにより、多くの時間を、システム資源を節約し、増分データ抽出の効率をはるかに高める。
【００３７】
上記の技術に基づき、本開示の第３の実施形態例では、図２に示されている増分データを抽出するための装置例を示す。装置２００には、以下に制限されるものではないが、１つ以上のプロセッサ２０２およびメモリ２０４を含む。このメモリ２０４には、ランダム・アクセス・メモリ（ＲＡＭ）などの揮発性メモリ形式のコンピュータ記憶媒体、およびまたはリード・オンリー・メモリ（ＲＯＭ）またはフラッシュＲＡＭなどの不揮発性メモリを含んでもよい。メモリ２０４は、コンピュータ記憶媒体の例である。
【００３８】
コンピュータ記憶媒体には、コンピュータで実行可能な命令、データ構造、プログラム・モジュールまたはその他のデータなどの情報を記憶するための方法または技術で実現される揮発性、不揮発性、リムーバブル、ノン・リムーバブルの媒体を含む。コンピュータの記憶媒体の例としては、これに限定されるものではないが、コンピューティング・デバイスによるアクセスのための情報を保存する目的で使用する以下の媒体を含む。すなわち、相変化メモリ（ＰＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、他のタイプのランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリー・メモリ（ＲＯＭ）、電気的に消去可能なプログラマブル・リード・オンリー・メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリまたはその他のメモリ技術、コンパクト・ディスク・リード・オンリー・メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、またはその他の光学的記憶媒体、磁気カセット、磁気テープ、磁気ディスク記憶、またはその他の磁気記憶装置、またはその他の非伝送媒体を含む。ここで定義したように、コンピュータ記憶媒体には、変調されたデータ信号や搬送波などの一過性の媒体は含まない。
【００３９】
メモリ２０４は、その中にプログラム・ユニットまたはモジュールおよびプログラム・データを保存してもよい。ある実施形態では、このユニットには、検索ユニット２０６、照会ユニット２０８、および挿入ユニット２１０を含んでもよい。こうしたユニットは従って、１つ以上のプロセッサ２０２で実行可能なソフトウェアによって実現されてもよい。他の実施形態では、このユニットはファームウェア、ハードウェア、ソフトウェア、またはこれらを組み合わせたものによって実現されてもよい。
【００４０】
検索ユニット２０６は、フロントエンドのバックアップ・データベースから増分データの主キー情報を取得する。照会ユニット２０８は、検索ユニット２０６から取得した主キー情報に基づき、フロントエンドのバックアップ・データベースと同期するフロントエンドのメイン・データベースから１つ以上の増分データ一式を照会する。挿入ユニット２１０は、見つかった１つ以上の増分データをターゲットのデータ・ウェアハウスに挿入する。
【００４１】
増分のデータベースの照会によるフロントエンドのメイン・データベースへの負荷を減らすために、この実施形態例では、主キー情報はフロントエンドのメイン・データベースのデータとデータが同期しているバックアップ・データベースから抽出してもよく、この主キー情報に基づきフロントエンドのメイン・データベースで１つ以上の増分データ一式が照会される。こうした状況では、フロントエンドのメイン・データベースは、メイン・データベースと呼ばれ、そのデータがメイン・データベースと同期しているバックアップ・データベースは、バックアップ・データベースと呼ばれる。この実施形態例では、例としてフロントエンドのデータベースでの増分データ抽出を使用している。本開示の技術は、バックエンドのデータベースまたは他のタイプのデータベースでの増分データ抽出に適用してもよい。本開示は、本明細書で制限を課すものではない。
【００４２】
この実施形態例では、検索ユニット２０６は、以下のモジュールも含んでもよい。こうしたモジュールには、構文解析モジュール２１２、逆構文解析モジュール２１４、および読み出しモジュール２１６を含む。構文解析モジュール２１２は、フロントエンドのバックアップ・データベースのログ・ファイルを構文解析する。逆構文解析モジュール２１４は、構文解析モジュール２１２から構文解析されたログ・ファイルを逆構文解析し、フロントエンドのバックアップ・データベースにある特定の変更データを得る。読み出しモジュール２１６は、逆構文解析モジュール２１４によって取得したその特定の変更データから主キー情報を取り出す。
【００４３】
照会ユニット２０８は、呼び出しモジュール２１８および実行モジュール２２０を含むモジュールを持ってもよい。呼び出しモジュール２１８は、照会関数または照会命令を呼び出す。実行モジュール２２０は、呼び出しモジュール２１８によって呼び出された照会関数または照会命令を使用して、照会オペレーションを実行する。例えば、検索ユニット２０６によって取り出された増分データの主キー情報は、１００、１０８、および２００である。呼び出しモジュール２１８は、照会オペレーションが必要な場合に照会関数を呼び出す。実行モジュール２２０は“ｓｅｌｅｃｔ  ＊  ｆｒｏｍ  ａ  ｗｈｅｒｅ  ｉｄ  ｉｎ (１００、１０８、２００)”などの照会関数を実行し、１つ以上の増分データ一式を検索する。この関数の詳細については、本明細書では説明しない。
【００４４】
挿入ユニット２１０は、比較モジュール２２２と更新モジュール２２４を含むモジュールも持ってもよい。比較モジュール２２２は、増分データ一式とターゲットのデータ・ウェアハウスにあるオリジナルのデータ・テーブルとを比較する。更新モジュール２２４は、比較モジュール２２２の比較結果に基づき、増分データ一式をオリジナルのデータ・テーブルで更新する。
【００４５】
他の例では、装置２００は処理ユニット２２６も含んでもよい。処理ユニット２２６は、増分データの変更タイプを取得する。一般的に、処理ユニット２２６が取得する変更タイプでは、変更タイプが“ｉｎｓｅｒｔ”は挿入、“ｕｐｄａｔｅ”は更新、“ｄｅｌｅｔｅ”は削除であることをそれぞれ表す。他のタイプの変更も存在しうるが、本明細書では詳細には説明しない。
【００４６】
装置２００が処理ユニット２２６を含み、挿入ユニット２１０によってターゲットのデータ・ウェアハウスに挿入される増分データは、以下に制限されるものではないが、増分データの変更時刻、増分データの変更タイプ、および増分データの主キー情報が含まれる場合がある。この実施形態例は制限を課すものではない。
【００４７】
上記の技術に基づき、本開示の第４の実施形態例では、増分データの抽出のためにシステム３００を提供する。システム３００には、以下に制限されるものではないが、フロントエンドのメイン・データベース３０２、フロントエンドのバックアップ・データベース３０４、ターゲット・データ・ウェアハウス３０６、および第３の実施形態例で説明したように増分データを抽出するための装置２００を含む。フロントエンドのメイン・データベース３０２とフロントエンドのバックアップ・データベース３０４は、抽出する必要がある増分データを保存する。保存されたデータは、フロントエンドのメイン・データベース３０２とフロントエンドのバックアップ・データベースとの間で同期する。装置２００は、増分データの主キー情報をフロントエンドのバックアップ・データベース３０４から取り出す。装置２００は、増分データの主キー情報をフロントエンドのバックアップ・データベース３０４から取り出し、主キー情報に基づきフロントエンドのメイン・データベース３０２から１つ以上の増分データ一式を照会し、見つかった１つ以上の増分データ一式をターゲット・データ・ウェアハウス３０６に挿入する。ターゲット・データ・ウェアハウス３０６は、抽出された１つ以上の増分データ一式を保存する。例えば、システム３００は単独のサーバまたは分散システムの形式で、ユニットがイントラネットやインターネットなどの可能性があるネットワークを介して接続される場合もある。
【００４８】
当業者は、本開示の実施形態は、方法、システム、またはコンピュータのプログラム製品であることを理解しうるであろう。従って、本開示は、ハードウェア、ソフトウェア、またはこの２つを組み合わせたもので実装されうる。さらに、本開示は、コンピュータ記憶媒体（ＣＤ−ＲＯＭ、光学ディスクなどのディスクを含むが、これに制限されるものではない）で実装可能なコンピュータで実行可能なコードを含む１つ以上のコンピュータ・プログラムの形式であってもよい。ハードウェアとソフトウェアの互換性をより明確に説明するために、本開示では、機能に基づき、一般的に構成要素とステップを各実施形態例で説明した。ソフトウェアまたはハードウェアが実行に使用されるかに関わらず、機能は特定のアプリケーションと技術計画の設計の制約に依存する。当業者は、上記の機能を異なるアプリケーションに対して実装するために異なる方法を使用してもよい。こうした実装は、なおも本開示の保護範囲になるべきである。
【００４９】
本開示は、本開示の実施形態の方法、装置、およびシステムのフローチャートおよび／またはブロック図を参照することによって説明した。フローチャートおよび／またはブロック図の各フローおよび／またはブロック、および各フローおよび／またはブロックを組み合わせたものは、コンピュータ・プログラムの命令によって実装可能であることを理解されたい。こうしたコンピュータ・プログラムの命令は、汎用コンピュータ、特定のコンピュータ、組み込みプロセッサまたはその他のプログラマブル・データ・プロセッサに提供され、マシンを生成し、フローチャートの１つ以上のフローおよび／またはブロック図の１つ以上のブロックが、コンピュータまたはその他のプログラマブル・データ・プロセッサによってオペレーションされる命令を通して生成できるようにする。
【００５０】
こうしたコンピュータ・プログラム命令もコンピュータ記憶媒体に保存可能であり、このコンピュータ・プログラム命令は、コンピュータ記憶媒体に保存されているコンピュータで実行可能な命令が、命令を含むプロダクトを生成するように、コンピュータまたはその他のプログラマブル・データ・プロセッサに一定の方法でオペレーションするように命令できる。この場合、命令はフローチャートの１つ以上のフローおよび／またはブロック図の１つ以上のブロックで指定される機能を実装する。
【００５１】
こうしたコンピュータ・プログラムの命令は、コンピュータまたはその他のプログラマブル・データ・プロセッサが一連のオペレーション・ステップを実行し、コンピュータによって実装されるプロセスを生成するように、コンピュータまたは他のプログラマブル・データ・プロセッサにロード可能である。従って、コンピュータまたはその他のプログラマブル・データ・プロセッサによってオペレーションする命令は、フローチャートの１つ以上のフローおよび／またはブロック図の１つ以上のブロックで指定される機能を実装するためのステップを提供できる。
【００５２】
上記の実施形態例の説明によって、当業者は、実施形態例を実現または使用できる。しかし、本開示は実施形態例に制限されるものではなく、本書で開示されている原理および機能の最大限の範囲に合致するいかなる技術も保護するものとする。
【００５３】
本実施形態は、単に本開示を説明するためのものであり、本開示の範囲を制限する意図はない。当業者は一定の修正、置換、改良をすることが可能であることを理解し、また本開示の原理から逸脱することなく本開示の保護のもと考えるべきである。
【図１】
0005961689.tif 000004
【図２】
0005961689.tif 000005
【図３】
0005961689.tif 000006