(57)【特許請求の範囲】
【請求項１】
オンライン分析処理を行うためのデータ処理方法であって、
選定された少なくとも２つのパーティションフィールドによって、オンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得するステップと、
前記少なくとも２つのパーティションフィールドによって、前記オンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得するステップと、
同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計するステップと、を含み、
前記少なくとも２つのパーティションフィールドは、時間フィールド、業務フィールド及びカスタマイズフィールドのうちの少なくとも２つを含む
ことを特徴とするオンライン分析処理を行うためのデータ処理方法。
【請求項２】
同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計する前記ステップは、
各前記増分データパーティションにおけるデータと、それに対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行うステップを含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記複数の既存データパーティションのデータインデックスを構築するステップと、
前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行うステップと、を更に含む
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う前記ステップは、
各前記増分データパーティションにおけるデータに対して、前記データインデックスに基づいて、各前記増分データパーティションに対応する前記既存データパーティションにおいてクエリを行うステップと、
クエリが成功した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータとに対してユニオン操作を行うステップと、を含む
ことを特徴とする請求項３に記載の方法。
【請求項５】
前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う前記ステップは、
各前記増分データパーティションにおけるデータに対して、前記データインデックスに基づいて、各前記増分データパーティションに対応する前記既存データパーティションにおいてクエリを行うステップと、
クエリが失敗した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータとに対してマージ操作を行うステップと、を含む
ことを特徴とする請求項３又は４に記載の方法。
【請求項６】
オンライン分析処理を行うためのデータ処理装置であって、
選定された少なくとも２つのパーティションフィールドによってオンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得するとともに、前記少なくとも２つのパーティションフィールドによって前記オンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得するパーティション分割モジュールと、
同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計するデータ処理モジュールと、を備え、
前記少なくとも２つのパーティションフィールドは、時間フィールド、業務フィールド及びカスタマイズフィールドのうちの少なくとも２つを含む
ことを特徴とするオンライン分析処理を行うためのデータ処理装置。
【請求項７】
前記データ処理モジュールはさらに、
各前記増分データパーティションにおけるデータと、それに対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う
ことを特徴とする請求項６に記載の装置。
【請求項８】
前記複数の既存データパーティションのデータインデックスを構築するデータインデックス構築モジュールを更に備え、
前記データ処理モジュールはさらに、前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う
ことを特徴とする請求項７に記載の装置。
【請求項９】
前記データ処理モジュールは、
各前記増分データパーティションにおけるデータに対して、前記データインデックスに基づいて、各前記増分データパーティションに対応する前記既存データパーティションにおいてクエリを行うクエリサブモジュールと、
前記クエリサブモジュールによるクエリが成功した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータとに対して、ユニオン操作を行うユニオン操作サブモジュールと、を備える
ことを特徴とする請求項８に記載の装置。
【請求項１０】
前記データ処理モジュールは、
前記クエリサブモジュールによるクエリが失敗した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータとに対して、マージ操作を行うマージ操作サブモジュールを更に備える
ことを特徴とする請求項９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、２０１８年２月２６日に提出された出願番号がＮｏ．２０１８１０１６０００９．７である中国出願の優先権を主張し、参照によりそのすべての内容を本明細書に組み込む。
【０００２】
本発明はデータ処理の技術分野に関し、具体的には、オンライン分析処理を行うためのデータ処理方法及び装置に関する。
【背景技術】
【０００３】
今日のインターネットには膨大なデータが含まれている。ワイヤレスネットワークの急速な成長、端末デバイスの普及、保険ビジネスのオンライン化などによって、ユーザが保険に対してより便利に照会、加入、内容編集を行うことができるようになった。しかしながら、データ、ユーザ、保険商品に対する分析及び意思決定をより便利に行うためにデータ記憶の電子化が推進されるにつれて、保険データの内容及びデータ量の規模がますます大きくなってきた。
【０００４】
オンライン保険ビジネスデータは主に業務データベースに記憶されている。新規作成、変更、編集、削除などの迅速な操作に適合するために、すなわち、業務の迅速な応答をサポートするために、オンラインデータベースは主にＯＬＴＰ（Ｏｎ−Ｌｉｎｅ  Ｔｒａｎｓａｃｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ）モードが用いられている。
【０００５】
データの価値を最大限に発揮させるために、データ分析者、営業担当者、意思決定者は、このような膨大な保険データを分析して、ユーザの特徴、顧客グループの特徴、保険ビジネスの特徴を発見することによって、データ運営及び意思決定のためにデータの根拠を提供する。このようなデータ分析モードにおいては、ＯＬＡＰ（オンライン分析処理システム、Ｏｎ−Ｌｉｎｅ  Ａｎａｌｙｔｉｃａｌ  Ｐｒｏｃｅｓｓｉｎｇ）の方式によってデータに対する迅速且つ多次元の分析及びクエリを実現している。
【０００６】
オンライン事務データとオフライン分析データには使用上の区別が存在するため、データはＯＬＴＰモードからＯＬＡＰモードに移行する必要がある。従来のデータ処理方式においては、保険証券の番号ＩＤやユーザなどの情報に基づいて種類が異なる様々なデータを集計してから、ＯＬＡＰによるデータの多次元分析を行う。
【０００７】
従来のインターネットデータ集計手段では、データの多次元分析を行う前に、日ごとに、週ごとに又は月ごとに一度、データに対して一括処理のみを実施している。しかしながら、このような手段は、膨大なデータ量を有する保険データに不向きである。従来のデータとは異なり、保険金融データは、一定時間ごとにデータを変更し、さらに当該データ変更をＯＬＡＰのデータ倉庫に反映する必要がある。つまり、バックトラッキングによってデータの変化と元々データ倉庫にあるデータとに対してユニオン処理、マージ処理を行う必要がある。そのため、変化したデータ量が大きい場合に一括処理の方式を採用すると、不必要な計算リソースが大量に消費されてしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以上に鑑みて、本発明は、オンライン分析処理を行うためのデータ処理方法及び装置を提供することによって、データ量が膨大な業務データが頻繁に変化する場合においてデータを速やかに集計して、データ集計にかかる不必要な計算量を削減することを実現する。前記技術案は以下の通りである。
【課題を解決するための手段】
【０００９】
第１の態様は、オンライン分析処理を行うためのデータ処理方法を提供する。前記方法は、
選定されたパーティションフィールドによって、オンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得するステップと、
前記パーティションフィールドによって、前記オンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得するステップと、
同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計するステップと、を含む。
【００１０】
第１の態様に基づいて、第１の可能な実施形態において、同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計する前記ステップは、
各前記増分データパーティションにおけるデータと、それに対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行うステップを含む。
【００１１】
第１の態様における第１の可能な実施形態に基づいて、第２の可能な実施形態において、前記方法は、
前記複数の既存データパーティションのデータインデックスを構築するステップと、前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行うステップと、を更に含む。
【００１２】
第１の態様乃至第１の態様における第２の可能な実施形態のいずれか１種類に基づいて、第３の可能な実施形態において、前記パーティションフィールドは時間フィールド、業務フィールド及びカスタマイズフィールドのうちの１つ又は複数の組合せを含む。
【００１３】
第１の態様における第２の可能な実施形態に基づいて、第４の可能な実施形態において、前記複数の既存データパーティションのデータインデックスを構築する前記ステップは、
二分木又はハッシュテーブルによって前記データインデックスを構築するステップを含む。
【００１４】
第１の態様における第２の可能な実施形態に基づいて、第５の可能な実施形態において、前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータに対して、ユニオン操作及び／又はマージ操作を行う前記ステップは、
各前記増分データパーティションにおけるデータに対して、前記データインデックスに基づいて、各前記増分データパーティションに対応する前記既存データパーティションにおいてクエリを行うステップと、
クエリが成功した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータに対してユニオン操作を行うステップと、を含む。
【００１５】
第１の態様における第２又は第１の態様における第５の可能な実施形態に基づいて、第６の可能な実施形態において、前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータに対して、ユニオン操作及び／又はマージ操作を行う前記ステップは、
各前記増分データパーティションにおけるデータに対して、前記データインデックスに基づいて、各前記増分データパーティションに対応する前記既存データパーティションにおいてクエリを行うステップと、
クエリが失敗した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータに対して、マージ操作を行うステップと、を含む。
【００１６】
第１の態様乃至第１の態様における第６のいずれか１種類の可能な実施形態に基づいて、第７の可能な実施形態において、前記同一のパーティションラベルを有する前記増分データパーティションにおけるデータと、前記既存データパーティションにおけるデータを集計する前記ステップの後、前記方法は、
変換及びロードを行うことによって、集計されたデータを所定位置にアウトプットして、前記オンライン分析処理システムによるデータ分析を行うステップ、及び／又は、
データ更新済みを示す提示情報を下流のデータ処理ユニットに出力するステップを含む。
【００１７】
第２の態様は、オンライン分析処理を行うためのデータ処理装置を提供する。前記装置は、
選定されたパーティションフィールドによってオンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得するとともに、前記パーティションフィールドによって前記オンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得するパーティション分割モジュールと、
同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計するデータ処理モジュールと、を備える。
【００１８】
第２の態様に基づいて、第１の可能な実施形態において、前記データ処理モジュールはさらに、各前記増分データパーティションにおけるデータと、それに対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う。
【００１９】
第２の態様における第１の可能な実施形態に基づいて、第２の可能な実施形態において、前記装置は、前記複数の既存データパーティションのデータインデックスを構築するデータインデックス構築モジュールを更に備える。前記データ処理モジュールは、前記複数の既存データパーティションのデータインデックスに基づいて、各前記増分データパーティションにおけるデータと、対応する前記既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う。
【００２０】
第２の態様乃至第２の態様における第２の可能な実施形態のいずれか１種類に基づいて、第３の可能な実施形態において、前記パーティションフィールドは時間フィールド、業務フィールド及びカスタマイズフィールドのうちの１つ又は複数の組合せを含む。
【００２１】
第２の態様における第２の可能な実施形態に基づいて、第４の可能な実施形態において、前記データインデックス構築モジュールは、具体的に、二分木又はハッシュテーブルによって前記データインデックスを構築する。
【００２２】
第２の態様における第２の可能な実施形態に基づいて、第５の可能な実施形態において、前記データ処理モジュールは、
各前記増分データパーティションにおけるデータに対して、前記データインデックスに基づいて、各前記増分データパーティションに対応する前記既存データパーティションにおいてクエリを行うクエリサブモジュールと、
前記クエリサブモジュールによるクエリが成功した場合、前記増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータとに対して、ユニオン操作を行うユニオン操作サブモジュールと、を備える。
【００２３】
第２の態様における第５の可能な実施形態に基づいて、第６の可能な実施形態において、前記データ処理モジュールは、
前記クエリサブモジュールによるクエリが失敗した場合、当該増分データパーティションにおけるデータと、当該データに関連する前記既存データパーティションにおけるデータとに対して、マージ操作を行うマージ操作サブモジュールを更に備える。
【００２４】
第２の態様乃至第２の態様における第６のいずれか１種類の可能な実施形態に基づいて、第７の可能な実施形態において、前記装置は、
変換及びロードを行うことによって、集計されたデータを所定位置に導出して、前記オンライン分析処理システムによるデータ分析を行うデータ導出モジュールを更に備える。
【００２５】
第２の態様乃至第２の態様における第７の可能な実施形態のいずれか１種類に基づいて、８種類目の可能な実施形態において、前記装置は、
集計が終了した後、データの更新済みを示す提示情報を下流のデータ処理ユニットに出力する情報出力モジュールを更に備える。
【発明の効果】
【００２６】
本発明の実施例は、オンライン分析処理を行うためのデータ処理方法及び装置を提供し、オンライン分析処理システムにおける増分データ及び既存データのそれぞれに対してパーティション分割を行うことによって、同一のパーティションラベルを有する前記増分データパーティションにおけるデータと前記既存データパーティションにおけるデータとを集計する。その結果、データ集計処理プロセスが迅速になるとともに、データ全体に対する不必要な操作を省略し、データ計算量を大幅に削減することができる。また、データに対する迅速な集計を実現することによって、営業担当者が全次元の保険データに基づいてデータ及び業務データの展開を行うことができるように協力する。
【図面の簡単な説明】
【００２７】
本発明の実施例に係る技術案をより明確に説明するために、以下、実施例の説明において必要となる図面について簡単な説明を行う。明らかに、以下の図面は本発明の一部の実施例に過ぎず、当業者であれば、これらの図面に基づいて、創造的な労働をせずに他の図面を取得することができる。
【図１】本発明の実施例により提供されるオンライン分析処理を行うためのデータ処理方法のフローチャートである。
【図２】本発明の実施例により提供されるオンライン分析処理を行うためのデータ処理方法のフローチャートである。
【図３】本発明の実施例により提供されるデータパーティションの結果、及び、パーティションにおけるデータインデックスの構築結果である。
【図４】本発明の実施例により提供されるオンライン分析処理を行うためのデータ処理装置のダイアグラムである。
【発明を実施するための形態】
【００２８】
本発明の目的、技術案及び長所をより明確にするために、以下、本発明の実施例による図面を参照しながら、本発明の実施例に係る技術案について明確且つ完全な説明を行う。明らかに、説明する実施例は本発明の一部の実施例に過ぎず、すべての実施例ではない。本発明における実施例に基づいて、当業者により創造的な労働をせずに得られる他の実施例は、すべて本発明の保護範囲に属する。
【００２９】
本発明の実施例は、オンライン分析処理を行うためのデータ処理方法を提供する。当該方法は、データ量が膨大な保険データが頻繁に変化する場合において、データを速やかに集計して、データ集計にかかる不必要な計算量を削減することを実現することができる。なお、本発明の実施例に係る方法は、他のデータ量が膨大な業務データにも応用することができ、本発明は具体的な応用シーンについて限定しない。
【００３０】
図１は、本発明の実施例に基づいて示されるオンライン分析処理を行うためのデータ処理方法のフローチャートである。図１に示すように、当該方法は以下のステップを含む。
【００３１】
１０１：選定されたパーティションフィールドによって、オンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得する。
【００３２】
１０２：パーティションフィールドによって、オンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得する。
【００３３】
１０３：同一のパーティションラベルを有する前記増分データパーティションにおけるデータと、前記既存データパーティションにおけるデータとを集計する。
【００３４】
図２は、本発明の実施例に基づいて示されるオンライン分析処理を行うためのデータ処理方法のフローチャートである。図１に示すように、当該方法は以下のステップを含む。
【００３５】
２０１：選定されたパーティションフィールドによって、オンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得する。
【００３６】
通常、増分データと既存データとをユニオンする場合には同一のデータ種類、例えば、取引ＩＤ、一意のＩＤなどの情報を用いており、同時に、既存データの変化は時間の経過とともに少なくなるため、増分データ及び既存データに対してパーティション分割を行うとき、データが形成された後に変化が発生しないフィールドをパーティションフィールドとして選定することができる。ここで、選定されたパーティションフィールドは時間フィールド、業務フィールド及びカスタマイズフィールドのうちの１つ又は複数の組合せを含んでもよい。時間フィールドは取引データの形成時間であってもよく、業務フィールドはチャンネル、地域などのフィールドであってもよい。
【００３７】
具体的に、当該プロセスは、
オンライン分析処理システムに新規入力される増分データに対して、データのクリーニング、変換を含むＥＴＬ処理を行うことによって、増分データをオンライン分析処理に相応しい記憶形式に変換するステップと、
データが形成された後に変化が発生しないフィールドをパーティションフィールドとして選定し、ＥＴＬ処理された増分データに対してパーティションフィールドによってパーティション分割を行って、複数の互いに異なる増分データパーティションを取得するステップと、を含んでもよい。
【００３８】
また、増分データ及び既存データに対してパーティション分割を行うとき、データパーティションを抽象化することによって、より多くのパーティション方式の選択をサポートすることができる。例えば、時間フィールドをパーティションフィールドとする場合、時間パーティションを抽象化してから、データミッションの周期的な処理方式によって、それぞれをより細分化したパーティション組織に調整することができる。つまり、データの周期的な処理方式が年、月、週、日を単位とするものであれば、それに対応するデータパーティション方式も年、月、週、日によってパーティションを行うことである。
【００３９】
さらに、増分データ及び既存データに対してパーティション分割を行うとき、より粒度が細かいパーティション方式を追加して、業務における実際のニーズによって細粒度のパーティションフィールドをマージすることができる。例えば、実際の業務においてチャンネルと地域それぞれに対応する取引データが重ならない場合、時間フィールド＋業務フィールド［チャンネル、地域］をパーティションフィールドとして増分データ及び既存データのそれぞれに対してパーティション分割を行うことができる。
【００４０】
２０２：パーティションフィールドによって、オンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得するとともに、複数の既存データパーティションのデータインデックスを構築する。
【００４１】
ここで、横方向における拡張をより速やかに実現するために、既存データをビッグデータのプラットフォームによって記憶してもよく、例えば、Ｈａｄｏｏｐによってビッグデータを記憶する。
【００４２】
ここで、増分データに対するパーティション分割と同一のパーティションフィールドを用いて既存データに対してパーティション分割を行って、複数の既存データパーティションを取得する。
【００４３】
ここで、複数の既存データパーティションのデータインデックスを構築するプロセスは、以下の内容を含んでもよい。
【００４４】
二分木を用いて各既存データパーティションのデータインデックステーブルを構築する。なお、当該データインデックステーブルは二分木データ構造を有し、データインデックステーブルにはデータラベルと既存データとの写像関係が含まれる。
【００４５】
二分木は特別な木構造であり、二分木においていずれのノードも最大で２つの子ノードを有し、一般的には左の子ノードと右の子ノードと称される。また、二分木の子は左と右に分けられており、順番は任意に逆転することができない。二分木は再帰的に定義される。
【００４６】
そのほか、ハッシュテーブル（ｈａｓｈ）の方式によって複数の既存データパーティションのデータインデックスを構築してもよい。
【００４７】
本発明の実施例は、データインデックスの具体的な構築プロセスについて制限しない。
【００４８】
本発明の実施例において、Ｈｂａｓｅの索引方式によってデータの位置推定及びアップデート操作を行ってもよく、Ｍｙｓｑｌデータベースによってインデックスの構築及びアップデートを行ってもよく、ｌｅｖｅｌＤＢなどの小規模のローカルファイルデータベースによってインデックスの構築とデータのアップデートを行ってもよい。
【００４９】
２０３：同一のパーティションラベルの有無によって、複数の増分データパーティションと複数の既存データパーティションとの対応関係を確立する。
【００５０】
ここで、複数の増分データパーティションと複数の既存データパーティションは、それぞれのパーティションラベルを有する。
【００５１】
具体的に、本発明の実施例は具体的な構築プロセスについて制限しない。
【００５２】
図３は、本発明の実施例によるデータパーティションの結果と、パーティションにおけるデータインデックスの構築結果とを示す。図３では、形成時間をパーティションフィールドとして、オンライン分析処理システムにおける増分データ及び既存データのそれぞれに対してパーティション分割を行って、互いに異なる複数の増分データパーティション及び互いに異なる複数の既存データパーティションを取得する。ここで、複数の増分データパーティションと複数の既存データパーティションは、いずれも｛ｄａｙ｝、｛ｄａｙ−１｝、・・・｛ｄａｙ−ｎ｝、｛ｄａｙ−ｎ−１｝・・・．を含むため、同一のパーティションラベルを有する増分データパーティション及び既存データパーティションに対して対応関係を確立することができる。また、図３からわかるように、既存データの各パーティションにおけるデータインデックスと各パーティションとは一対一に対応する。
【００５３】
本発明の実施例においては、同一のパーティションラベルの有無に基づいて複数の増分データパーティションと複数の既存データパーティションとの対応関係を確立することによって、同一のパーティションにおけるデータに対するユニオン、マージ処理を可能にするとともに、データを集計するための無駄な試行を減少して、データの集計にかかる不必要な計算量を削減することができる。
【００５４】
２０４：複数の既存データパーティションのデータインデックスに基づいて、各増分データパーティションにおけるデータと、対応する既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行う。
【００５５】
具体的に、当該プロセスは以下の内容を含んでもよい。
【００５６】
ａ．各増分データパーティションにおけるデータに対して、データインデックスに基づいて、各増分データパーティションに対応する既存データパーティションにおいてクエリを行う。
【００５７】
具体的に、当該プロセスは以下の内容を含んでもよい。
【００５８】
各増分データパーティションにおけるデータのデータラベルを確認し、データインデックステーブルにおいて当該データラベルに対するクエリを行う。当該データラベルがデータインデックステーブルに存在する場合、データインデックステーブルにおいて当該データラベルに対応する既存データを特定する。
【００５９】
ｂ．クエリが成功した場合、増分データと、それに関連する既存データとに対してユニオン操作を行うが、クエリが失敗した場合、増分データに対してマージ操作を行う。
【００６０】
例えば、ユーザｕｓｅｒ１が２０１７−１０−１０の日に取引データを生成する場合、対応する取引データＩＤはＩＤ_ｕｓｅｒ１であり、形成時間は２０１７−１０−１０である。当該取引データを既存データとしてオンライン分析処理システムのデータ倉庫に記憶し、時間フィールドによって当該既存データに対してパーティションを行うと、当該既存データは２０１７−１０−１０パーティションに入ることになる。ユーザｕｓｅｒ１が業務上の必要によって２０１７−１２−１５に取引データＩＤ_ｕｓｅｒ１を変更する場合、変更する内容は取引データＩＤ以外の任意のデータ、例えば、連絡先、増加した身分情報などである。このときの取引データは、増分データとしてオンライン分析処理システムに入力される。時間フィールドによって当該増分データに対してパーティションを行うと、当該増分データは２０１７−１０−１０パーティションに入ることになる。明らかに、取引データＩＤ_ｕｓｅｒ１は、２０１７−１０−１０パーティションにおいてクエリされることができる。よって、データに対してユニオン処理を行うことは、すなわち、データが変更された２０１７−１０−１０パーティションと、履歴の既存データである２０１７−１０−１０パーティションと、それぞれのデータに対してユニオン操作を行うことになる。具体的なユニオン操作は、取引データＩＤによって処理を行うことである。ここで、取引データＩＤはＩＤ_ｕｓｅｒ１のＩＤ値であり、変更した連絡先や増加した身分情報をデータのユニオン処理によって履歴データに記憶する。
【００６１】
選択的に、ステップ２０４の後、本発明の実施例による方法は、
変換及びロードを行うことによって、ユニオン操作及び／又はマージ操作が行われた後のデータを所定位置に導出して、前記オンライン分析処理システムによるデータ分析を行うステップと、及び／又は、
データ更新済みを示す提示情報を下流のデータ処理ユニットに出力するステップと、を更に含む。
【００６２】
本発明の実施例により提供されるオンライン分析処理を行うためのデータ処理方法は、実際の応用においてＯＬＡＰに対してデータ処理を行う場合、データに対するパーティション整理については、形成時間に基づいてデータに対してパーティション整理を行うような一般的なパーティション整理方式を採用することができる。既存データについては、記憶手段としてＨＢａｓｅを用いて、ｒｏｗｋｅｙの方式によってインデックスにおいてソート検索を行うことができるので、データの位置を速やかに把握することができる。また、ＨｉｖｅはＳＱＬライクであり、複数のクエリエンジンがサポートできるという特徴を有するため、Ｈｉｖｅを履歴データ全体の基本メモリとして用いると、Ｈｉｖｅに基づいてより便利且つ迅速に多次元ＯＬＡＰ分析を行うことができる。さらに、バッチデータの更新ごとに、パーティションごとの処理を行う。各パーティションに対して処理を行うときには、更新されるデータに対してｒｏｗｋｅｙによって位置特定と読取りを行い、データの更新を行うとともに、データをＨＢａｓｅに再び書き込む。最後に、変化したデータをパーティションデータからＨｉｖｅに直接導出すればよい。導出操作においてはデータの更新マージ操作が不要であるため、速やかな実行が可能である。
【００６３】
本発明の実施例により提供されるオンライン分析処理を行うためのデータ処理方法は、オンライン分析処理システムにおける増分データ及び既存データのそれぞれに対してパーティション分割を行い、パーティションにおいてデータインデックスを構築し、さらに同一のパーティションにおいてデータのユニオンとマージ処理を行う。データの検索と対象データの更新をインデックスによって行うため、更新される必要があるデータのみを検索及び更新すればよいので、データのユニオンとマージ処理のプロセスを速やかに行うことができるようになるとともに、データ全体に対して不必要な操作を実施することを回避して、データの計算量を大幅に削減することができる。また、本発明の実施例はデータに対する迅速なユニオン操作を実現することによって、営業担当者が完全な次元を有する保険データに基づいてデータ及び業務の展開を行うことができるように協力する。本発明の実施例による方法は、保険金融データについてのシーンにおいて非常に有利であり、特に保険の場合、形成データが多く変化が頻繁に発生するため、データに対する迅速なユニオンとマージ操作の利点はより明らかである。
【００６４】
図４は、本発明の実施例により提供されるオンライン分析処理を行うためのデータ処理装置のダイアグラムである。図４に示すように、当該装置３は、
選定されたパーティションフィールドによってオンライン分析処理システムにおける増分データに対してパーティション分割を行って、複数の増分データパーティションを取得するとともに、パーティションフィールドによってオンライン分析処理システムにおける既存データに対してパーティション分割を行って、複数の既存データパーティションを取得するパーティション分割モジュール３１と、
複数の既存データパーティションのデータインデックスを構築するデータインデックス構築モジュール３２と、
同一のパーティションラベルの有無によって、複数の増分データパーティションと複数の既存データパーティションとの対応関係を確立する対応関係確立モジュール３３と、
複数の既存データパーティションのデータインデックスに基づいて、各増分データパーティションにおけるデータと、対応する既存データパーティションにおけるデータとに対して、ユニオン操作及び／又はマージ操作を行うデータ処理モジュール３４と、を備える。
【００６５】
選択的に、パーティションフィールドは時間フィールド、業務フィールド及びカスタマイズフィールドのうちの１つ又は複数の組合せを含む。
【００６６】
選択的に、データインデックス構築モジュール３２は、具体的に、二分木又はハッシュテーブルによってデータインデックスを構築する。
【００６７】
選択的に、データ処理モジュール３４は、
各増分データパーティションにおけるデータに対して、データインデックスに基づいて、各増分データパーティションに対応する既存データパーティションにおいてクエリを行うクエリサブモジュール３４１と、
クエリサブモジュール３４１によるクエリが成功した場合、増分データと、増分データに関連する既存データとに対してユニオン操作を行うユニオン操作サブモジュール３４２と、
クエリサブモジュール３４２によるクエリが失敗した場合、増分データに対してマージ操作を行うマージ操作サブモジュール３４３と、を備える。
【００６８】
選択的に、装置３は、
変換及びロードを行うことによって、ユニオン操作及び／又はマージ操作が行われた後のデータを所定位置に導出して、オンライン分析処理システムによるデータ分析を行うデータ導出モジュール３５と、
データ更新済みを示す提示情報を下流のデータ処理ユニットに出力する情報出力モジュール３６と、を更に備える。
【００６９】
本発明の実施例は、オンライン分析処理を行うためのデータ処理装置を提供する。当該装置は、オンライン分析処理システムにおける増分データ及び既存データのそれぞれに対してパーティション分割を行い、パーティションにおいてデータインデックスを構築し、さらに同一のパーティションにおいてデータのユニオンとマージ処理を行う。データの検索と対象データの更新をインデックスによって行うため、更新される必要があるデータのみを検索及び更新すればよいのでデータのユニオンとマージ処理のプロセスが速やかに行われることができるようになるとともに、データ全体に対して不必要な操作を実施することを回避して、データの計算量を大幅に削減することができる。また、本発明の実施例はデータに対する迅速なユニオン操作を実現することによって、営業担当者が完全な次元を有する保険データに基づいてデータ及び業務の展開を行うことができるように協力する。本発明の実施例による方法は、保険金融データについてのシーンにおいて非常に有利であり、特に保険の場合、形成データが多く変化が頻繁に発生するため、データに対する迅速なユニオンとマージ操作の利点はより明らかである。
【００７０】
上述のすべての選択的な技術案は、任意の組み合わせによって本発明の選択的な実施例を構成することができ、ここでは詳しい説明を省略する。
【００７１】
なお、上述の実施例により提供されるオンライン分析処理を行うためのデータ処理装置がオンライン分析処理を行うためのデータ処理方法を実行するシーンについて、ここでは上述の各機能モジュールの分け方を例として説明したが、実際の応用においては、必要に応じて異なる機能モジュールに上述の機能を配分して実行することもできる。つまり、デバイスの内部構造を異なる機能モジュールに区切って、上述のすべて又は一部の機能を遂行する。また、上述の実施例により提供されるオンライン分析処理を行うためのデータ処理装置と、オンライン分析処理を行うためのデータ処理方法の実施例とは、同一の発明思想に属するため、その具体的な実現プロセスについては、方法の実施例を参照すればよく、ここでは説明を省略する。
【００７２】
当業者であれば理解できる通り、上述の実施例によるすべて又は一部のステップは、ハードウェアによって実行してもよく、プログラムを用いて関連のハードウェアに命令を出して実行させてもよい。前記プログラムは、コンピュータ読取可能な記憶媒体に記憶されていてもよい。前記記憶媒体は、リードオンリーメモリ、磁気ディスク又はコンパクトディスクなどであってもよい。
【００７３】
以上の内容は、本発明の好ましい実施例に過ぎず、本発明を制限するためのものではない。本発明の精神と原則の範囲内で行われる任意の変更、同等な置換、更新などは、すべて本発明の保護範囲に属するべきである。
【図１】
0006928677.tif 000002
【図２】
0006928677.tif 000003
【図３】
0006928677.tif 000004
【図４】
0006928677.tif 000005