(57)【要約】  本開示は、データベース間データ更新の方法及び装置を開示する、データ処理の分野に関する。本開示のデータベース間データ更新の方法は、第一データベースのデータに基づき３行目のデータを生成するステップを含み、この３行目のデータの少なくとも１列のデータは、無演算の演算子であり、この無演算の演算子は、データ変更がないことを示し、３行目のデータに基づき第二データベースの４行目のデータを更新し、３行目のデータの無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用されず、３行目のデータの非無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用される。
2018505464.tif 000002
【特許請求の範囲】
【請求項１】
データベース間データ更新方法であって、
第一データベースのデータに基づき３行目のデータを生成し、前記３行目のデータの少なくとも１列のデータは、無演算の演算子であり、前記無演算の演算子は、データ変更がないことを示し、
前記３行目のデータに基づき第二データベースの４行目のデータを更新し、前記３行目のデータの無演算の演算子列のデータは、前記４行目のデータの対応する列のデータを更新するために利用されず、前記３行目のデータの非無演算の演算子列のデータは、前記４行目のデータの対応する列のデータを更新するために利用される、
ステップを備える、前記方法。
【請求項２】
前記第一データベースは、オフライン・データベースであり、前記第二データベースは、オンライン・データベースである、請求項１の前記方法。
【請求項３】
第一データベースのデータに基づき前記３行目のデータを生成する前記ステップは、
前記オンライン・データベースから前記オフライン・データベースによりデータを受信し、
前記オフライン・データベースにより前記受信したデータに統計解析を実行し、１行目のデータは、前記統計解析の結果に基づき生成され、
前記１行目のデータのデータ、及び２行目のデータのデータが同一のものとして比較される列のデータが無演算の演算子に変換され、前記１行目のデータのデータ、及び前記２行目のデータのデータが異なるものとして比較される列のデータが保存され、前記３行目のデータを生成するように、前記１行目のデータを前記オフライン・データベースの２行目のデータと比較し、前記１行目、２行目、３行目、及び４行目のデータは、同一の定義を有する同数の列を含み、前記２行目のデータは、前記オフライン・データベースが前記オンライン・データベースの４行目のデータを最後に更新した後に前記オフライン・データベース内で前記４行目のデータのバックアップであり、前記２行目のデータは、現在の更新前に前記４行目のデータの状態を表現する、
前記ステップを備える、請求項２の前記方法。
【請求項４】
前記１行目のデータを前記オフライン・データベースの前記２行目のデータと比較する前記ステップ後に、前記３行目のデータを生成する前記ステップは、つぎの比較での使用のために前記２行目のデータのデータを前記１行目のデータのデータと置換するステップをさらに備える、請求項３の前記方法。
【請求項５】
前記３行目のデータに基づき前記第二データベースの前記４行目のデータを更新する前記ステップは、構造化クエリ言語（ＳＱＬ）ＵＰＤＡＴＥステートメントの使用により、前記３行目のデータ全体に基づき前記４行目のデータを更新するステップを備える、請求項１の前記方法。
【請求項６】
前記３行目のデータに基づき前記第二データベースの前記４行目のデータを更新する前記ステップは、オンライン・データベースのアプリケーション・プログラミング・インタフェース（ＡＰＩ）機能の使用により、前記３行目のデータ全体に基づき前記４行目のデータを更新するステップを備える、請求項１の前記方法。
【請求項７】
前記オンライン・データベース、及び前記オフライン・データベースは、銀行口座保有者の基本的な行動データ、及び貸し出し行動データのデータベースである、請求項２の前記方法。
【請求項８】
データベース間データ更新のための装置であって、
プロセッサ、及び
前記プロセッサに操作可能に結合された非一時的なコンピュータ可読媒体、
を備え、
前記非一時的なコンピュータ可読媒体は、前記プロセッサによりアクセスされるときに実行される、その上に格納されたコンピュータ可読命令を含み、前記命令は、
第一データベースのデータに基づき３行目のデータを生成するために構成され、前記３行目のデータの少なくとも１列のデータは、無演算の演算子であり、データ変更がないことを前記無演算の演算子が示す生成モジュール、及び
前記３行目のデータに基づき第二データベースの４行目のデータを更新するために構成され、前記３行目のデータの無演算の演算子列のデータは、前記４行目のデータの対応する列のデータを更新するために利用されず、前記３行目のデータの非無演算の演算子列のデータは、前記４行目のデータの対応する列のデータを更新するために利用される、更新モジュール、
を備える、前記装置。
【請求項９】
前記第一データベースは、オフライン・データベースであり、前記第二データベースは、オンライン・データベースである、請求項８の前記装置。
【請求項１０】
前記生成モジュールは、
前記オンライン・データベースから前記オフライン・データベースによりデータを受信するために構成された受信サブモジュール、
前記オフライン・データベースにより前記受信したデータで統計解析を実行するために構成され、１行目のデータは、前記統計解析の結果に基づき生成される統計サブモジュール、ならびに
前記１行目のデータのデータ、及び２行目のデータのデータが同一のものとして比較される列のデータが無演算の演算子に変換され、前記１行目のデータのデータ、及び前記２行目のデータのデータが異なるものとして比較される列のデータが保存され、前記３行目のデータを生成するように、前記１行目のデータを前記オフライン・データベースの２行目のデータと比較するために構成され、前記１行目、２行目、３行目及び４行目のデータは、同一の定義をもつ同数の列を含み、前記オフライン・データベースが前記オンライン・データベースの４行目のデータを最後に更新した後に前記２行目のデータは、前記オフライン・データベース内の前記４行目のデータのバックアップであり、前記２行目のデータは、現在の更新前に前記４行目のデータの状態を表現する比較サブモジュール、
を備える、請求項９の前記装置。
【請求項１１】
前記生成モジュールは、前記比較サブモジュールが前記１行目のデータを前記２行目のデータと比較した後に、つぎの比較での使用のために前記２行目のデータのデータを前記１行目のデータのデータと置換するために構成された置換サブモジュールを備える、請求項１０の前記装置。
【請求項１２】
前記更新モジュールは、構造化クエリ言語（ＳＱＬ）ＵＰＤＡＴＥステートメントの使用により、前記３行目のデータ全体に基づき前記４行目のデータを更新するために構成された言語更新サブモジュールを備える、請求項８の前記装置。
【請求項１３】
前記更新モジュールは、オンライン・データベースのアプリケーション・プログラミング・インタフェース（ＡＰＩ）機能の使用により、前記３行目のデータ全体に基づき前記４行目のデータを更新するために構成された機能更新サブモジュールを備える、請求項８の前記装置。
【請求項１４】
前記オンライン・データベース、及び前記オフライン・データベースは、銀行口座保有者の基本的な行動データ、及び貸し出し行動データのデータベースである、請求項９の前記装置。
【請求項１５】
デバイスの１つ以上のプロセッサにより実行されるときに、前記デバイスにデータベース間データ更新のためのプロセスを実行させるプログラム命令をその中に埋め込んでいる非一時的なコンピュータ可読記憶媒体であって、前記プロセスは、
第一データベースのデータに基づき３行目のデータを生成し、前記３行目のデータの少なくとも１列のデータは、無演算の演算子であり、前記無演算の演算子は、データ変更がないことを示し、
前記３行目のデータに基づき第二データベースの４行目のデータを更新し、前記３行目のデータの無演算の演算子列のデータは、前記４行目のデータの対応する列のデータを更新するために利用されず、前記３行目のデータの非無演算の演算子列のデータは、前記４行目のデータの対応する列のデータを更新するために利用される、
ことを備える、前記非一時的なコンピュータ可読記憶媒体。
【請求項１６】
前記第一データベースは、オフライン・データベースであり、前記第二データベースは、オンライン・データベースである、請求項１５の前記非一時的なコンピュータ可読記憶媒体。
【請求項１７】
前記第一データベースのデータに基づき前記３行目のデータを生成する前記ステップは、
前記オフライン・データベースにより前記オンライン・データベースからデータを受信し、
前記オフライン・データベースにより前記受信したデータで統計解析を実行し、１行目のデータは、前記統計解析の結果に基づき生成され、
前記１行目のデータのデータ、及び２行目のデータのデータが同一のものとして比較される列のデータが無演算の演算子に変換され、前記１行目のデータのデータ、及び前記２行目のデータのデータが異なるものとして比較される列のデータが保存され、前記３行目のデータを生成するように、前記１行目のデータを前記オフライン・データベースの２行目のデータと比較し、前記１行目、２行目、３行目及び４行目のデータは、同一の定義をもつ同数の列を含み、前記２行目のデータは、前記オフライン・データベースが前記オンライン・データベースの４行目のデータを最後に更新した後の前記オフライン・データベース内の前記４行目のデータのバックアップであり、前記２行目のデータは、現在の更新前の前記４行目のデータの状態を表現する、
ステップを備える、請求項１６の前記非一時的なコンピュータ可読記憶媒体。
【請求項１８】
前記１行目のデータを前記オフライン・データベースの前記２行目のデータと比較する前記ステップ後に、前記３行目のデータを生成する前記ステップは、つぎの比較での使用のために、前記２行目のデータのデータを前記１行目のデータのデータと置換するステップを備える、請求項１７の前記非一時的なコンピュータ可読記憶媒体。
【請求項１９】
前記３行目のデータに基づき前記第二データベースの前記４行目のデータを更新する前記ステップは、構造化クエリ言語（ＳＱＬ）ＵＰＤＡＴＥステートメントの使用により、前記３行目のデータ全体に基づき前記４行目のデータを更新する前記ステップを備える、請求項１５の前記非一時的なコンピュータ可読記憶媒体。
【請求項２０】
前記３行目のデータに基づき前記第二データベースの前記４行目のデータを更新する前記ステップは、オンライン・データベースのアプリケーション・プログラミング・インタフェース（ＡＰＩ）機能の使用により、前記３行目のデータ全体に基づき前記４行目のデータを更新する前記ステップを備える、請求項１５の前記非一時的なコンピュータ可読記憶媒体。
【請求項２１】
前記オンライン・データベース、及び前記オフライン・データベースは、銀行口座保有者の基本的な行動データ、及び貸し出し行動データのデータベースである、請求項１６の前記非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１４年１２月４日に出願された、中国特許出願第２０１４１０７３８２０７．９号の利益を主張し、該出願は、本明細書に参照によりその全体に援用される。
【０００２】
本発明は、一般にデータ処理に関し、さらに特にデータベース間データ更新の技術に関する。
【背景技術】
【０００３】
ラインまたは行の単位に基づき更新された、これらのオンライン・データベースについて、行のデータがそのそれぞれの列でわずかな量の変更を受ける場合に、データ更新時に行のデータ全体を更新する。それは、多数の行のデータを含み、短期間に多くのその行の更新を要求する、データベースに大きな影響を与える。オンライン・データベースに関連するｅコマースの顧客サービスは、１行に相当するデータが数メガバイトまたは数十メガバイトのデータを含みながら、ほとんどすべてのインスタンスを更新する必要がある傾向にあるような、タイプのデータベースである。その結果、このようなデータ更新は、時間もかかり、リソースも浪費する。さらに、データベースへのデータ・インポートに失敗すると、グループの分割は、再ソートされるため、労力及びリソースの浪費になる。
【発明の概要】
【０００４】
本発明の１つの観点により、データベース間データ更新のための方法及び装置を提供される。１行のデータのいくつかの列のみにデータ変更があるときに、データが変更された列のデータのみを更新し、更新されるデータ量を減少させ、データベース更新効率を向上させ、時間及びリソースの浪費を削減する。
【０００５】
本開示の例示的な実施形態により、データベース間データ更新の方法は、第一データベースのデータに基づき３行目のデータを生成するステップを備え、３行目のデータの少なくとも１列のデータは、無演算の演算子であり、この無演算の演算子は、データ変更がないことを示す。またこの方法は、３行目のデータに基づき第二データベースの４行目のデータを更新するステップを備え、３行目のデータの無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用されず、３行目のデータの非無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用される。
【０００６】
本開示の別の例示的な実施形態により、データベース間データ更新のための装置は、第一データベースのデータに基づき３行目のデータを生成するために構成された生成モジュールを含み、３行目のデータの少なくとも１列のデータは、無演算の演算子であり、この無演算の演算子は、データ変更がないことを示す。またこの装置は、３行目のデータに基づき第二データベースの４行目のデータを更新するために構成された更新モジュールを含み、３行目のデータの無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用されず、３行目のデータの非無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用される。
【０００７】
本開示の少なくとも１つの実施形態により、１行のデータのいくつかの列のみにデータ変更があるときに、データベースの行のデータ全体を更新する必要がなく、無演算の演算子を使用して、データ変更が発生した列のデータのみを更新し、更新するデータ量を削減させることが可能である。特に、データベース内の行が大量のデータを含むときに、それは、データベースについての更新効率を大幅に向上させ、時間及びリソースの浪費を減少させる。さらに、データのインポートに失敗すると、行のデータ全体をインポートする必要はないが、無演算の演算子に対応する列のデータを更新するため、さらにリソースの浪費を削減する。
【０００８】
さらに、インターネット内のアプリケーションに関して、ｅコマース・プラットフォームのオンライン・データベースのようなデータベースは、リアルタイムのデータ更新に関する要求が高まっている。更新されるデータ量が莫大である場合に、このようなリアルタイムの要求を満たすことが不可能である。しかしながら、無演算の演算子を使用してデータ変更が行内で発生した列のデータのみを更新し、このようなオンライン・データベースを更新する効率を効果的に高めることが可能である。
【０００９】
さらに、ＳＱＬステートメントを使用して、データベース内へ更新されるデータ行（すなわち、３行目のデータ）をインポートし、データ変更が異なる行の異なる列であるときに、異なる行のためにＳＱＬステートメントを再構文解析する必要がない。代替に、行のデータ全体は、データベース内へ直接インポートされ、ＳＱＬハード構文解析と関連したコストを削減し、データベースについての更新効率を向上させることが可能である。
【００１０】
本開示の１つ以上の実施形態の詳細は、添付の図面、及び以下の説明に記載される。本開示の他の特徴、目的、及び利点は、この説明及び図面から、ならびに特許請求の範囲から明らかであろう。
【００１１】
本明細書に援用され、本明細書の一部を形成し、同様の数字が同様の要素を描写する、添付の図面は、本開示の実施形態を図示し、この説明と併せて、本開示の原理を説明する役割を果たす。
【図面の簡単な説明】
【００１２】
【図１】本開示の第一実施形態に従い、データベース間データ更新の例示的な方法のフローチャートである。
【図２】本開示の好ましい実施形態に従い、取引データの変更を介してデータベース間の例示的なデータ更新を図示する。
【図３】本開示の第三実施形態に従うデータベース間データ更新の装置のブロック図である。
【発明を実施するための形態】
【００１３】
以下の説明において、複数の具体的な詳細は、本開示の完全な理解を提供するために記載される。しかしながら、これらの具体的な詳細なしで本開示を実施することができることは、当業者に明らかになるであろう。本明細書でこれらの説明及び表現は、当業者が他の当業者へ作業内容を最も効率的に伝えるために使用する一般的な手段である。他の実施例において、周知の方法、手順、コンポーネント、及び回路は、本開示の態様を不必要にわかりにくくすることを回避するために詳細に記述されていない。
【００１４】
本明細書で「ｏｎｅ  ｅｍｂｏｄｉｍｅｎｔ（１つの実施形態）」、または「ａｎ  ｅｍｂｏｄｉｍｅｎｔ（実施形態）」への言及は、この実施形態と関連して記述された特定の機能、構造、または特性を本開示の少なくとも１つの実施形態に含むことが可能であることを意味する。本明細書のさまざまな箇所での語句「ｉｎ  ｏｎｅ  ｅｍｂｏｄｉｍｅｎｔ（１つの実施形態において）」の出現は、必ずしもすべての同一の実施形態を指しもせず、他の実施形態の相互に排他的な別個の、または代替の実施形態でもない。本明細書で使用された、用語「上部の」、「下部の」、「頂部の」、「底部の」、「中間の」、「上方向の」、及び「下方向の」は、説明のための相対的な位置を提供することを意図され、絶対座標系を指定することを意図されない。さらに、本開示の１つ以上の実施形態を表現するプロセス・フローチャートまたは図面でのブロックの順序は、いずれかの特定の順序も本質的に示さず、本開示のいずれかの制限も暗示しない。
【００１５】
本開示の実施形態は、図１〜３を参照して本明細書で考察される。しかしながら、当業者は、本開示がこれらの限定された実施形態を超える場合に、これらの図面に関して本明細書で与えられた詳細な説明が説明目的のためであることを容易に理解するであろう。
【００１６】
図１を参照し、本開示の第一実施形態に従い、データベース間データ更新の例示的な方法のフローチャートを示す。「データベース間」データ更新は、データベース間での、またはデータベース中での、データ更新、またはデータ同期として本明細書で規定される。方法１００は、第一データベースのデータに基づき３行目のデータを生成する、ステップ１０１で開始する。この３行目のデータ（以下、３行目、または３行目のデータ）は、データ変更がないことを示す、無演算の演算子として少なくとも１列のデータを含む。つぎに、ステップ１０２で、第二データベースの４行目のデータ（以下、４行目、または４行目のデータ）は、３行目のデータに基づき更新される。３行目の無演算の演算子列のデータは、４行目の対応する列のデータを更新するために利用されない。対照的に、３行目の非無演算の演算子列のデータは、４行目の対応する列のデータを更新するために利用される。
【００１７】
上記で説明された更新方法において、列のデータが無演算の演算子の値を含むときに、そのデータに基づく更新は、スキップされる、すなわち、対応する列のデータの更新がない。換言すれば、３行目のデータに基づきオンライン・データベースの４行目のデータを更新するときに、３行目の列でデータが無演算の演算子である場合に、４行目内の対応する列でデータの更新は、スキップされる。３行目の列でデータが非無演算の演算子であるときのみ、これに応じて４行目内の対応する列でデータは、このような３行目のデータに基づき更新される。この方法１００は、ステップ１０２後に終了する。
【００１８】
構造化クエリ言語（ＳＱＬ）ステートメントを本開示の実施形態で利用し、オンライン・データベースの更新を完了することが可能である。代替に、アプリケーション・プログラミング・インタフェース（ＡＰＩ）機能も利用し、オンライン・データベースの更新を完了することが可能である。
【００１９】
本開示の好ましい実施形態において、上記で説明されたステップ１０２は、ＳＱＬ  ＵＰＤＡＴＥステートメント（表のデータを変更するための標準ステートメント）を利用して、３行目のデータ全体に基づき４行目のデータを更新するステップを備える。非無演算の演算子に対応する列のデータのみが更新されるが、ＳＱＬ  ＵＰＤＡＴＥステートメントは、３行目に対応するすべての列を更新することを示すように、パラメータを指定することが可能である。たとえば、第一データベースとして「生徒」と題する表に関して（それぞれ、Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ、Ｈ、Ｉ及びＪとラベル付けされた１０列に関して）、値（２，４，６，２，９，８，７，３，４，１）を含むｎ行目のデータが値（２，４，１０，２，９，８，１５，３，４，１）に変更されるときに、３列目及び７列目のデータのみを変更する。その結果、生成された３行目のデータは、値（＾ｂ，＾ｂ，１０，＾ｂ，＾ｂ，＾ｂ，１５，＾ｂ，＾ｂ，＾ｂ）を含み、＾ｂは、無演算の演算子を表現する。つぎにＳＱＬ  ＵＰＤＡＴＥステートメントを利用して、第二データベースの４行目のデータを更新し、ＵＰＤＡＴＥステートメントを指定して、すべての列のデータを更新する（すなわち、ＵＰＤＡＴＥステートメントが３行目のデータのすべての列の識別子を含むパラメータを指定する）。しかしながら、更新中に無演算の演算子の値を含む列でデータを更新することの一時的なスキップにより、４行目の３列目及び７列目のデータのみを更新し、他の列のデータは、同じままである。
【００２０】
現在の技術に関して、ＳＱＬ  ＵＰＤＡＴＥステートメントを使用して、これらの特定の列についてパラメータを指定することでいくつかの列のみを更新することが可能である。更新されるデータ表内のすべての行のデータを更新する必要がある異なる列のデータを含む場合に、すべてのデータの行は、実行前に構文解析する必要があるため、ＳＱＬ構文解析の大きな作業負荷をもたらす、対応するＳＱＬ  ＵＰＤＡＴＥステートメントを必要とする。
【００２１】
別の現在の技術に関して、ＳＱＬ構文解析量を減少させるために、ＵＰＤＡＴＥステートメントは、すべての列についてのパラメータを含むように実装されることが可能である。しかしながら、このような技術は、データ変更がない列のデータを更新することにつながる。１つのＳＱＬ構文解析のみを必要とするが、ＵＰＤＡＴＥステートメントを実行する作業負荷は、大きなままである。
【００２２】
したがって、また課題である、当業者がＳＱＬ構文解析量をどのように減少させるか、同時に、ＵＰＤＡＴＥステートメント実行量をどうように減少させるかのジレンマに直面していることがわかる。
【００２３】
本開示の実施形態に従い、ＳＱＬを使用してデータベース内へ更新される行のデータ（すなわち、３行目のデータ）をインポートし、データ変更がある列のデータのみを更新するという目的で、３行目のデータのすべての列の識別子についてのパラメータを含む（すなわち、すべての列を更新する）ＵＰＤＡＴＥステートメントに関して、ＵＰＤＡＴＥステートメントは、実際にはすべての行が異なる列でデータを更新する必要があるにもかかわらず、すべての行を更新するために、一度だけ構文解析される必要がある。ＳＱＬステートメントを再構文解析する必要がないため、ＳＱＬハード構文解析と関連したコストを削減し、データベース更新効率を向上させる。同時に、無演算の演算子、及び対応する処理ステップの使用を通じて、データ更新のない列のデータは、ＳＱＬステートメントの実行中にスキップされるため、ＳＱＬ  ＵＰＤＡＴＥステートメントを実行する作業負荷は、本技術と関連したものよりはるかに少ない。
【００２４】
本開示の別の実施形態において、上記で説明されたステップ１０２は、オンライン・データベースの対応するＡＰＩ機能を利用して、３行目のデータ全体に基づき４行目のデータを更新するステップを備える。
【００２５】
１行のデータのいくつかの列でデータ変更のみがあるときに、このデータベースの行のデータ全体を更新する必要がない。したがって、無演算の演算子を使用して、データ変更が発生している列のデータのみを更新するため、更新するデータ量を減少させることが可能である。特に、大量のデータを含む行については、データベース更新効率を効果的に高めることが可能であり、時間及びリソースの浪費を削減することが可能である。さらに、データ・インポートが失敗すると、行のデータ全体をインポートする必要がなく、無演算の演算子に対応する列のデータのみを更新するため、さらにリソースの浪費を削減する。
【００２６】
本開示の第二実施形態は、データベース間データ更新の方法に関する。第二実施形態は、第一データベースがオフライン・データベースであり、第二データベースがオンライン・データベースであることが主な改良点であることに関して、第一実施形態を改良する。いくつかのウェブ・アプリケーションに関して、たとえば、ｅコマース・プラットフォームのオンライン・データベースは、リアルタイム・データ更新に関する要求が高まっている。更新されるデータ量が大きすぎる場合に、このような要求を満たすことが不可能である。無演算の演算子を使用して、行のデータ内でデータ変更が発生している列のデータのみを更新し、オンライン・データベースの更新効率を高めることが可能である。
【００２７】
特に、上記で説明されたステップ１０１は、オフライン・データベースがオンライン・データベースからデータを受信するステップを備える。さらにステップ１０１は、オフライン・データベースが受信したデータ上で統計解析を実行し、この統計解析の結果に基づき１行目のデータ（以降、１行目、または１行目のデータ）を生成するステップを備える。またステップ１０１は、オフライン・データベースの１行目のデータを２行目のデータと比較し、１行目のデータ、及び２行目のデータのデータを同じものとして比較する列のデータを無演算の演算子に変換し、１行目のデータのデータ、及び２行目のデータのデータを異なるものとして比較する列のデータを保存し、３行目のデータを生成するステップを備える。１行目、２行目、３行目、及び４行目のデータは、同一の定義を有する同数の列を含む。現在の更新前に４行目のデータの状態を表現する、２行目のデータは、オンライン・データベースの４行目のデータのその最後の更新後に、オフライン・データベースにより保存された４行目のデータのバックアップである。
【００２８】
さらに、本開示のいくつかの他の代替の実施形態に従い、他の実装を利用して、３行目のデータを生成することが可能であることを理解することが可能である。たとえば、上記で説明されたステップにおいて、２行目のデータのすべての列のデータが無演算の演算子として実装されながら、ＡＰＩ機能を利用して、１行目のデータからデータを読み出し、２行目のデータへ変更を有するデータを書き込み、３行目のデータを生成することが可能である。
【００２９】
本開示のデータベース間データ更新の方法は、複数のタイプのデータベース間のデータ更新に適用されることが可能である。たとえば、本開示の別の実施形態において、上記で説明されたオンライン・データベース、及びオフライン・データベースは、銀行口座保有者の基本的な行動データ、及び貸し出し行動データのデータベースである。この基本的な行動データは、ショッピング・ウェブサイト・アカウント・ユーザの年齢、性別、生年月日、アカウント・レベルなどのような、データを含むことが可能である。貸し出し行動データは、ショッピング・ウェブサイト・アカウント・ユーザの現在のアカウント残高、取引数、アカウント間の振り込み回数、振り込み金額、取引金額、クレーム数、ショッピング活動レベルなどのようなデータを含むことが可能である。さらに以下の例示的な実装は、本開示の実施形態に従うデータ更新方法を説明する。
【００３０】
ここで図２を参照して、オンライン・データベースのユーザが取引データ内での変更に遭遇している情報をオフライン・データベースが受信した後に、オフライン・データベースは、受信した取引データに統計解析を実行し、１行目のデータを生成する。たとえば、ユーザ取引金額での変更に基づき、オフライン・データベースは、過去一ヶ月、または過去一週間のユーザの総取引金額を統計的に解析し、アップグレードされたユーザ・アカウントへアップグレードされるのにユーザが適格であるレベルに総取引金額が達しているかどうかを判定する。そうである場合に、オフライン・データベースは、基本的な行動データ内のアカウント・データのユーザのレベルを更新する、たとえば、６列目のデータを更新する。つぎに、オフライン・データベースは、１行目のデータ２０２を２行目のデータ２０４と比較し、３行目のデータ２０６を生成し、＾ｂは、無演算の演算子を表現する。６列目のデータのみが変更している事実のため、生成された３行目のデータのみが非無演算の演算子として６列目のデータを含む。その結果、４行目のデータを更新するときに、６列目のデータのみを更新する。
【００３１】
本開示の実施形態は、ソフトウェア、ハードウェア、ファームウェア、及び／またはそれらの組み合わせを使用して実装されることが可能である。ソフトウェア、ハードウェア、ファームウェア、またはそれらの組み合わせを使用して実装されているにもかかわらず、命令コードは、いずれかの種類のコンピュータ可読媒体（たとえば、永続的な、または修正可能な、揮発性の、または不揮発性の、ソリッドの、または非ソリッドの、固定の、または変更可能な媒体など）内に格納されることが可能である。同様に、このような媒体は、たとえば、プログラマブル・アレイ・ロジック（ＰＡＬ）、ランダム・アクセス・メモリ（ＲＡＭ）、プログラム可能な読み出し専用メモリ（ＰＲＯＭ）、読み出し専用メモリ（ＲＯＭ）、電気的に消去可能で再書き込み可能なＲＯＭ（ＥＥＰＲＯＭ）、磁気ストレージ、光ストレージ、デジタル多目的ディスク（ＤＶＤ）、または同様のものを使用して、実装されることが可能である。
【００３２】
図３を参照して、本開示の第三実施形態に従うデータベース間データ更新のための例示的な装置のブロック図を示す。この装置３００は、生成モジュール３０２、及び更新モジュール３０４を含む。生成モジュール３０２は、第一データベースのデータに基づき３行目のデータを生成するために構成され、３行目のデータの少なくとも１列のデータは、無演算の演算子であり、この無演算の演算子は、データ変更がないことを示す。更新モジュール３０４は、３行目のデータに基づき第二データベースの４行目のデータを更新するように構成され、３行目のデータの無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用されず、３行目のデータの非無演算の演算子列のデータは、４行目のデータの対応する列のデータを更新するために利用される。
【００３３】
本開示の好ましい実施形態において、上記で説明された更新モジュールは、構造化クエリ言語（ＳＱＬ）ＵＰＤＡＴＥステートメントの使用により、３行目のデータ全体に基づき４行目のデータを更新するように構成される、言語更新サブモジュールを含む。
【００３４】
本開示の別の好ましい実施形態において、上記で説明された更新モジュールは、オンライン・データベースのアプリケーション・プログラミング・インタフェース（ＡＰＩ）機能の使用により、３行目のデータ全体に基づき４行目のデータを更新するように構成される、機能更新サブモジュールを含む。
【００３５】
第一実施形態は、本開示の本実施形態に対応し、本実施形態は、第一実施形態と協働して実施されることが可能である。第一実施形態で記述された技術的な詳細は、本実施形態に適用されるが、繰り返しを減らすために本明細書で繰り返されない。その結果、本実施形態で記述された技術的な詳細は、第一実施形態に適用される。
【００３６】
本開示の第四実施形態は、データベース間データ更新のための例示的な装置に関する。第四実施形態は、第三実施形態に改良を加え、主な改良点は、第一データベースがオフライン・データベースであり、第二データベースがオンライン・データベースであることである。インターネットのいくつかのアプリケーションに関して、たとえば、ｅコマース・プラットフォームのオンライン・データベースは、リアルタイム・データ更新に関する要求が増している。更新されるデータ量が大きすぎる場合に、このような要求を満たすことが不可能である。無演算の演算子を使用して、データ変更が行のデータで発生している列のデータのみを更新し、オンライン・データベースの更新効率を高めることが可能である。
【００３７】
特に、上記で説明された生成モジュールは、受信サブモジュール、統計サブモジュール、比較サブモジュール、及び置換サブモジュールを含む。受信サブモジュールは、オフライン・データベースのために構成され、オンライン・データベースからデータを受信する。統計サブモジュールは、オフライン・データベースのために構成され、受信したデータに統計解析を実行し、この統計解析の結果に基づき１行目のデータを生成する。比較サブモジュールは、オフライン・データベースの１行目のデータを２行目のデータと比較するように構成されるため、１行目のデータのデータ、及び２行目のデータのデータを同一のものとして比較する列のデータは、無演算の演算子に変換され、１行目のデータのデータ、及び２行目のデータのデータを異なるものとして比較する列のデータは、保存され、３行目のデータを生成する。置換サブモジュールは、比較サブモジュールが１行目のデータを２行目のデータと比較した後に、つぎの比較での使用のために、２行目のデータのデータを１行目のデータのデータと置換するように構成される。
【００３８】
上記で説明されたオンライン・データベース、及びオフライン・データベースは、ラインまたは行の単位に基づき更新され、ラインまたは行のデータ全体は、複数の列を含む。１行目、２行目、３行目、及び４行目のデータは、同一の定義を有する同数の列を含む。２行目のデータは、現在の更新前の４行目のデータの状態を表現し、オンライン・データベースの４行目のデータのその最後の更新後に、オフライン・データベースにより保存された４行目のデータのバックアップである。
【００３９】
本開示のデータベース間データ更新の方法は、複数のタイプのデータベース間でデータ更新に適用されることが可能である。たとえば、本開示の好ましい実施形態において、上記で説明されたオンライン・データベース、及びオフライン・データベースは、銀行口座保有者の基本的な行動データ、及び貸し出し行動データのデータベースである。
【００４０】
さらに、本開示の他の代替の実施形態に従い、オンライン・データベースが以下に限定されないが、交通案内データベース、または監視ビデオ・データベースを含む、他のタイプのデータのデータベースであることが可能であることを理解することが可能である。
【００４１】
本開示の別の実施形態において、オンライン及びオフライン・データベースは、ｅコマース・プラットフォームの取引の統計データを格納するデータベースである。２つのデータベース間のデータ更新をつぎに図示する。統計サブモジュールは、オフライン・データベースを制御し、オンライン・データベースから取引データを受信し、１行目のデータを生成する。たとえば、表がそれぞれデジタル製品、米及び油、野菜及び果物、衣類、乾物、水製品、アクセサリ、ならびに本のカテゴリを提示する８列を含みながら、各行は、数百万単位の各カテゴリの下で売上額を示す。表内の１行目のデータは、値（１５，２０，１８，６４，３１，１５，２０，８）を含む。比較サブモジュールは、１行目のデータを、値（１５，２０，１８，５４，３１，１５，１８，８）を含む２行目のデータと比較するために構成され、３行目のデータ（＾ｂ，＾ｂ，＾ｂ，５４，＾ｂ，＾ｂ，１８，＾ｂ）を生成する。つぎに、更新モジュールは、値（１５，２０，１８，５４，３１，１５，１８，８）を含むオンライン・データベースの４行目のデータを、値（１５，２０，１８，６４，３１，１５，２０，８）を含むものに更新し、無演算の演算子として値を含む列に対応するデータを更新しない。
【００４２】
さらに、本開示の実施形態に従い、実施形態の明確な説明のために、限定された数の列のみを含む例示的なデータベースを示す。実施の削減にもかかわらず、本開示の実施形態があらゆる種類の大規模なデータベースに適用されることを理解することが可能である。
【００４３】
第二実施形態は、本開示の本実施形態に対応し、本実施形態は、第二実施形態と協働して実施されることが可能である。第二実施形態で記述された技術的な詳細は、本実施形態に適用されるが、繰り返しを減らすために本明細書で繰り返されない。その結果、本実施形態で記述された技術的な詳細は、第二実施形態に適用される。
【００４４】
本開示の実施形態により記述されたモジュールまたはブロックが論理モジュール、または論理ブロックであることを指摘する必要がある。物理的に、論理モジュール、または論理ブロックは、１つの物理モジュール、若しくは１つの物理ブロック、１つの物理モジュール、若しくは１つの物理ブロックの部分、または１つより多い物理モジュール、若しくは１つより多い物理ブロックの組み合わせであることが可能である。これらの論理モジュール、または論理ブロックの物理的な実施は、本質的ではない。これらのモジュール、ブロック、及びそれらの組み合わせにより実現された、実現された機能性は、本開示が対処する問題を解決するための鍵である。さらに、本開示の新規性を開示するために、上記で説明された実施形態は、本開示が対処する問題を解決するためにほとんど関連性がない、これらのモジュールまたはブロックについて開示しないが、上記で説明された実施形態が他のモジュールまたはブロックを含むことが不可能であることを意図しない。
【００４５】
また、本開示の特許請求の範囲、及び明細書で、「ｆｉｒｓｔ（第一の）」及び「ｓｅｃｏｎｄ（第二の）」のような用語が実施形態または操作を別の実施形態または操作と区別するためのものであることを指摘する必要がある。これらの実施形態または操作がいずれかのこのような実際の関係または順序を有することを必要としない、または暗示しない。さらに、本明細書で使用されるように、用語「ｃｏｍｐｒｉｓｉｎｇ（を含む）」、「ｉｎｃｌｕｄｉｎｇ（を含む）」、または任意の他の変形形態は、非排他的な包含を網羅することを意図されるため、要素のリストを含むプロセス、方法、物品、または装置は、これらの要素のみを含まないが、このようなプロセス、方法、物品、または装置に明示的に列挙しない、または固有ではない他の要素を含むことができる。さらなる制限がない、語句「ｃｏｍｐｒｉｓｉｎｇ  ａ（を含む）」により列挙される要素は、このような要素を備える、プロセス、方法、物品、または装置を、他の同一の要素を含むものから排除しない。
【００４６】
前述の開示は、特定のブロック図、フローチャート、及び実施例を使用してさまざまな実施形態を説明するが、本明細書で記述された、及び／または図示された各ブロック図コンポーネント、フローチャート・ステップ、操作、及び／またはコンポーネントは、広範囲のハードウェア、ソフトウェア、またはファームウェア（または任意のそれらの組み合わせ）構成を使用して、個別に、及び／または集合的に、実装されることができる。加えて、他のコンポーネント内に含まれたコンポーネントの任意の開示は、多くの他のアーキテクチャを実装し、同一の機能性を達成することが可能であるため、実施例とみなされるべきである。
【００４７】
本明細書で記述された、及び／または図示されたプロセス・パラメータ、及びステップ・シーケンスは、単に実施例として与えられ、所望のように変更されることが可能である。たとえば、本明細書で図示された、及び／または記述されたステップは、特定の順序で示される、または考察されることができるが、これらのステップは、必ずしも図示された、または考察された順序で実行される必要がない。また本明細書で記述された、及び／または図示された、さまざまな例示的な方法は、本明細書で記述された、若しくは図示された１つ以上のステップを省略する、または追加のステップをこれらの開示されたものに加えて含むことができる。
【００４８】
さまざまな実施形態は、完全に機能するコンピューティング・システムという状況において本明細書で記述されている、及び／または図示されているが、１つ以上のこれらの例示的な実施形態は、配布を実際に実行するために使用された特定のタイプのコンピュータ可読媒体にかかわらず、さまざまな形態のプログラム製品として配布されることができる。また本明細書で開示された実施形態は、特定のタスクを実行するソフトウェア・モジュールを使用して実施されることができる。これらのソフトウェア・モジュールは、コンピュータ可読記憶媒体上に、またはコンピューティング・システム内に格納されることができる、スクリプト、バッチ、または他の実行可能なファイルを含むことができる。これらのソフトウェア・モジュールは、コンピューティング・システムが本明細書で開示された例示的な実施形態のうちの１つ以上を実行するように構成することができる。本明細書で開示されたソフトウェア・モジュールのうちの１つ以上は、クラウド・コンピューティング環境内に実装されることができる。クラウド・コンピューティング環境は、インターネット経由でさまざまなサービス及びアプリケーションを提供することができる。これらのクラウド・ベース・サービス（たとえば、サービスとしてのソフトウェア、サービスとしてのプラットフォーム、サービスとしてのインフラストラクチャなど）は、ウェブ・ブラウザ、または他のリモート・インタフェースを介してアクセス可能であることができる。本明細書で記述された、さまざまな機能は、リモート・デスクトップ環境、または任意の他のクラウド・ベース・コンピューティング環境を介して提供されることができる。
【００４９】
本開示及びその利点を詳細に記述しているが、添付の特許請求の範囲により定められるような本開示の趣旨及び範囲から逸脱することなく、本明細書でさまざまな変更、差替、及び代替物を作成することが可能であることを理解するであろう。多くの修正形態及び変形形態は、上記の教示を考慮して可能である。本開示、及びその実用的な適用の原理を最もよく説明するために、これらの実施形態を選択して、記述したことで、企図された特定の用途に適することができるようにさまざまな修正形態で、本開示及びさまざまな実施形態を当業者が最もよく利用することを可能にする。
【００５０】
さらに、本出願の範囲は、本明細書で記述された、プロセス、機械、製品、組成物、手段、方法及びステップの特定の実施形態に限定されることを意図されない。当業者が本開示の開示から容易に理解するように、本明細書で記述された対応する実施形態と、実質的に同一の機能を実行する、または実質的に同一の結果を達成する、既存の、または後に開発される、プロセス、機械、製品、組成物、手段、方法、またはステップは、本開示により利用されることができる。その結果、添付の特許請求の範囲は、このようなプロセス、機械、製品、組成物、手段、方法、またはステップをそれらの範囲内に含むことを意図される。
【００５１】
本開示による実施形態は、このように記述される。本開示は、特定の実施形態で記述されているが、本開示がこのような実施形態により制限されると解釈されるべきではなく、むしろ以下の特許請求の範囲により解釈されるべきであることを理解するであろう。
【図１】
2018505464.tif 000003
【図２】
2018505464.tif 000004
【図３】
2018505464.tif 000005
【国際調査報告】
2018505464.tif 000006