(57)【要約】  本願は、データ格納サービス処理方法及び装置を開示する。該方法では、データ格納中に各データのユーザを取得し、該ユーザのデータを複数のデータセットに分割して、少なくとも２つのサーバに複数のデータセットを分けて格納する。格納したデータに基づいてサービスを処理する際に、サーバは、ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信し、該ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、該データ識別子に対応するデータが存在するか否かを特定して、その結果が肯定的である場合は、データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行し、結果が否定的である場合は、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する。該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納されたデータを用いてサービスを実行することができる。
2019504415.tif 000002
【特許請求の範囲】
【請求項１】
各ユーザのデータを少なくとも２つのサーバに分けて格納するサービス処理方法であって：
ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請をサーバにより受信するステップと；
前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定するステップと；
前記特定するステップの結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行するステップと；
前記特定するステップの結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行するステップと；を備える、
サービス処理方法。
【請求項２】
前記サービスに必要な前記データの前記データ識別子は、前記サービスに必要な前記データのデータ量を備え、
前記ユーザ識別子に対応し前記サーバにローカルに格納サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定する前記ステップは：
前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量が、前記サービスに必要な前記データの前記データ量以上であるか否かを特定するステップを含み、
前記データ量以上であると、前記サーバに前記データ識別子に対応する前記データが存在すると特定し、
前記データ量未満であると、前記サーバに前記データ識別子に対応する前記データが存在しないと特定する、
請求項１に記載のサービス処理方法。
【請求項３】
他のサーバから前記データ識別子に対応する前記データを取得する前記ステップは：
前記サービスに必要な前記データの前記データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量との差分を特定するステップと；
前記他のサーバから、前記ユーザ識別子に対応し前記差分と一致するデータ量を有するデータを取得するステップと；を備える、
請求項２に記載のサービス処理方法。
【請求項４】
前記他のサーバから、前記ユーザ識別子に対応し前記差分と一致するデータ量を有するデータを取得する前記ステップは：
他のサーバの前記ユーザ識別子に対応するデータを、前記データの前記データ量の多い順に、取得したデータ量が前記差分と一致するまで順次取得するステップを備える、
請求項３に記載のサービス処理方法。
【請求項５】
前記ユーザ識別子に対応する前記データの総データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データの前記データ量と、前記ユーザ識別子に対応し前記他のサーバに格納された前記データの前記データ量とを、前記サーバにより更新するステップを更に備える、
請求項２乃至請求項４のいずれか１項に記載のサービス処理方法。
【請求項６】
各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも２つのサーバに分けて格納するサービス処理方法であって：
ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請をサーバにより受信するステップと；
前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定するステップと；
前記金額以上である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと；
前記金額未満である場合は、前記サーバ及び他のサーバから、総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと；を備える、
サービス処理方法。
【請求項７】
前記サーバ及び他のサーバから、総計すると前記金額に当たる副残高を取得する前記ステップは：
前記金額と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額との差分を特定するステップと；
前記ユーザ識別子に対応し前記サーバのローカルに格納された全副残高を取得するステップと；
前記他のサーバから前記差分と一致する残高額の副残高を取得するステップと；を備える、
請求項６に記載のサービス処理方法。
【請求項８】
前記他のサーバから前記差分と一致する残高額の副残高を取得する前記ステップは：
他のサーバの前記ユーザ識別子に対応する副残高を、前記副残高の前記残高額の高い順に、取得した残高額が前記差分と一致するまで順次取得するステップを備える、
請求項７に記載のサービス処理方法。
【請求項９】
前記ユーザ識別子に対応する総残高、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額と、前記ユーザ識別子に対応し前記他のサーバに格納された前記副残高の前記残高額とを、前記サーバにより更新するステップを更に備える、
請求項６乃至請求項８のいずれか１項に記載のサービス処理方法。
【請求項１０】
データ格納方法であって：
各ユーザのデータを取得するステップと；
前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割するステップと；
前記複数のデータセットを少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納するステップと；を備える、
データ格納方法。
【請求項１１】
データ格納方法であって：
各ユーザの総残高を取得するステップと；
前記ユーザの前記総残高を複数の副残高に均等に分割するステップと；
前記複数の副残高を少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納するステップと；を備える、
データ格納方法。
【請求項１２】
各ユーザのデータを少なくとも２つのサーバに分けて格納するサービス処理装置であって：
ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信する受信モジュールと；
前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定する特定モジュールと；
前記特定モジュールの特定結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行する、実行モジュールと；を備える、
サービス処理装置。
【請求項１３】
前記サービスに必要な前記データの前記データ識別子は、前記サービスに必要な前記データのデータ量を備え、
前記特定モジュールは、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量が、前記サービスに必要な前記データの前記データ量以上であるか否かを特定し、
前記実行モジュールは、前記特定モジュールの特定結果が肯定的である場合は、前記サーバに前記データ識別子に対応する前記データが存在すると特定し、前記特定モジュールの特定結果が否定的である場合は、前記サーバに前記データ識別子に対応する前記データが存在しないと特定する、
請求項１２に記載のサービス処理装置。
【請求項１４】
前記実行モジュールは、前記サービスに必要な前記データの前記データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量との差分を特定し、更に、前記他のサーバから、前記ユーザ識別子に対応し前記差分と一致するデータ量を有するデータを取得する、
請求項１３に記載のサービス処理装置。
【請求項１５】
前記実行モジュールは、他のサーバの前記ユーザ識別子に対応するデータを、前記データの前記データ量の多い順に、取得したデータ量が前記差分と一致するまで順次取得する、
請求項１４に記載のサービス処理装置。
【請求項１６】
前記ユーザ識別子に対応する前記データの総データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データの前記データ量と、前記ユーザ識別子に対応し前記他のサーバに格納された前記データの前記データ量とを更新する更新モジュールを更に備える、
請求項１３乃至請求項１５のいずれか１項に記載のサービス処理装置。
【請求項１７】
各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも２つのサーバに分けて格納するサービス処理装置であって：
ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請を受信する受信モジュールと；
前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定する特定モジュールと；
前記特定モジュールの特定結果が肯定的である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、前記サーバと他のサーバとから総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行する、実行モジュールと；を備える、
サービス処理装置。
【請求項１８】
前記実行モジュールは、前記金額と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額との差分を特定して、前記ユーザ識別子に対応し前記サーバのローカルに格納された全副残高を取得し、更に、前記他のサーバから前記差分と一致する残高額の副残高を取得する、
請求項１７に記載のサービス処理装置。
【請求項１９】
前記実行モジュールは、他のサーバの前記ユーザ識別子に対応する副残高を、前記副残高の前記残高額の高い順に、取得した残高額が前記差分と一致するまで順次取得する、
請求項１８に記載のサービス処理装置。
【請求項２０】
前記ユーザ識別子に対応する総残高、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額と、前記ユーザ識別子に対応し前記他のサーバに格納された前記副残高の前記残高額とを更新する更新モジュールを更に備える、
請求項１７乃至請求項１９のいずれか１項に記載のサービス処理装置。
【請求項２１】
データ格納装置であって：
各ユーザのデータを取得する取得モジュールと；
前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割する分割モジュールと；
前記複数のデータセットを少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する格納モジュールと；を備える、
データ格納装置。
【請求項２２】
データ格納装置であって：
各ユーザの総残高を取得する取得モジュールと；
前記ユーザの前記総残高を複数の副残高に均等に分割する分割モジュールと；
前記複数の副残高を少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する格納モジュールと；を備える、
データ格納装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、２０１６年１月６日に提出され「データ格納サービス処理方法及び装置」と題された中国特許出願第２０１６１０００７３６７．５号の優先権を主張し、上記中国特許出願は参照によってその全体が本願に組み込まれる。
【０００２】
本願は、コンピュータ技術分野に関し、特に、データ格納サービス処理方法及び装置に関する。
【背景技術】
【０００３】
ネットワーク技術の発展に伴い、サーバは、より多様化したサービスをユーザに提供することができるようになった。例えば、サーバは、ユーザのチャット履歴記録照会サービスを提供できる。
【０００４】
現在、サーバからユーザへサービスを提供する前に、まず該サーバにユーザのデータを格納する必要がある。従来技術では、通常、サーバはユーザＩＤに基づいてユーザをＮ個のグループ（Ｎは自然数）に分け、各グループのユーザに対応するデータを別々のサーバに格納する。ユーザから送信されたユーザＩＤを含むサービス処理要請をサーバが受信した後、サーバは、まずユーザＩＤに対応するデータを検索する。ユーザＩＤに対応するデータが存在すれば、ユーザＩＤに対応する該データを直接取得し、取得したデータに基づいてサービスを実行する。ユーザＩＤに対応するデータがなければ、サービス処理要請を他のサーバに送信し、他のサーバがユーザＩＤに対応するデータに基づいてサービスを実行する。
【０００５】
例えば、サーバが９人のユーザをユーザＩＤに基づいて３つのグループに分けたとする。各グループは３人のユーザを含む。第１グループのユーザ３人に対応するチャット履歴記録をサーバ１に格納し、第２グループのユーザ３人に対応するチャット履歴記録をサーバ２に格納し、第３グループのユーザ３人に対応するチャット履歴記録をサーバ３に格納する。サーバ１が、ユーザから送信されたユーザＩＤを含むチャット記録照会サービス要請を受信すると、ユーザＩＤに対応するチャット履歴記録がサーバ１から検索される。チャット履歴記録が特定された場合は、特定されたチャット履歴記録をユーザに直接返す。チャット履歴記録を特定できなかった場合は、チャット記録照会サービス要請をサーバ２及び／又はサーバ３に送信し、サーバ２及び／又はサーバ３からユーザＩＤに対応するチャット履歴記録を検索する。
【０００６】
しかしながら、従来技術では、１つ、あるいは複数のサーバが故障する場合、サーバに格納されたデータにアクセスすることができない。言い換えれば、この状況では、一部のユーザは正常にサービスを実行できなくなる。
【発明の概要】
【０００７】
本願の実施態様は、１つ、あるいは複数のサーバが故障したときに、一部のユーザが正常にサービスを実行できないという既存技術の問題を解決するために、データ格納サービス処理方法及び装置を提供する。
【０００８】
本願の一実施態様は、各ユーザのデータを少なくとも２つのサーバに分けて格納するサービス処理方法であって：ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請をサーバにより受信するステップと；前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定するステップと；前記特定するステップの結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行するステップと；前記特定するステップの結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行するステップと；を含むサービス処理方法を提供する。
【０００９】
本願の一実施態様は、各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも２つのサーバに分けて格納するサービス処理方法であって：ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請をサーバにより受信するステップと；前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定するステップと；前記金額以上である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと；前記金額未満である場合は、前記サーバ及び他のサーバから、総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと；を含むサービス処理方法を提供する。
【００１０】
本願の一実施態様は、各ユーザのデータを取得するステップと；前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割するステップと；前記複数のデータセットを少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納するステップと；を含むデータ格納方法を提供する。
【００１１】
本願の一実施態様は、各ユーザの総残高を取得するステップと；前記ユーザの前記総残高を複数の副残高に均等に分割するステップと；前記複数の副残高を少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納するステップと；を含むデータ格納方法を提供する。
【００１２】
本願の一実施態様は、各ユーザのデータを少なくとも２つのサーバに分けて格納するサービス処理装置であって：ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信する受信モジュールと；前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定する特定モジュールと；前記特定モジュールの特定結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行する、実行モジュールと；を含むサービス処理装置を提供する。
【００１３】
本願の一実施態様は、各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも２つのサーバに分けて格納するサービス処理装置であって：ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請を受信する受信モジュールと；前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定する特定モジュールと；前記特定モジュールの特定結果が肯定的である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、前記サーバと他のサーバとから総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行する、実行モジュールと；を含むサービス処理装置を提供する。
【００１４】
本願の一実施態様は、各ユーザのデータを取得する取得モジュールと；前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割する分割モジュールと；前記複数のデータセットを少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する格納モジュールと；を含むデータ格納装置を提供する。
【００１５】
本願の一実施態様は、各ユーザの総残高を取得する取得モジュールと；前記ユーザの前記総残高を複数の副残高に均等に分割する分割モジュールと；前記複数の副残高を少なくとも２つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する格納モジュールと；を含むデータ格納装置を提供する。
【００１６】
本願の実施態様は、データ格納サービス処理方法及び装置を提供する。該方法では、データ格納中に各ユーザのデータを取得し、該ユーザのデータを複数のデータセットに分割して、少なくとも２つのサーバに複数のデータセットを分けて格納する。格納したデータに基づいてサービスを処理する際に、サーバは、ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信し、該ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、該データ識別子に対応するデータが存在するか否かを特定して、結果が肯定的である場合は、データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行し、結果が否定的である場合は、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する。該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納されたデータを用いてサービスを実行することができる。
【図面の簡単な説明】
【００１７】
添付の図面は、本願の理解を更に深めるためのものであり、本願の一部を構成する。本願の例示として提示された実施態様、及び該実施態様に関する説明は、本願の説明するためのものに過ぎず、本願の範囲を限定するものではない。
【００１８】
【図１】図１は、本願の実施態様に係るデータ格納プロセスを示す図である。
【００１９】
【図２Ａ】図２Ａは、本願の実施態様に係る第１データ格納システムを示す概略図である。
【００２０】
【図２Ｂ】図２Ｂは、本願の実施態様に係る第２データ格納システムを示す概略図である。
【００２１】
【図３】図３は、本願の実施態様に係るサービス処理プロセスを示す図である。
【００２２】
【図４】図４は、本願の実施態様に係る残高格納プロセスを示す図である。
【００２３】
【図５】図５は、本願の実施態様に係る決済処理プロセスを示す図である。
【００２４】
【図６】図６は、本願の実施態様に係るデータ格納装置を示す概略構成図である。
【００２５】
【図７】図７は、本願の実施態様に係るサービス処理装置を示す概略構成図である。
【００２６】
【図８】図８は、本願の実施態様に係る残高格納装置を示す概略構成図である。
【００２７】
【図９】図９は、本願の実施態様に係る決済処理装置を示す概略構成図である。
【発明を実施するための形態】
【００２８】
本願の目的、技術的解決策、利点を説明するために、本願の実施態様、及びそれに対応する添付の図面を参照し、下記に本願の技術的解決策を明確且つ完全に説明する。下記に記載する実施態様は、本願の実施態様の一部に過ぎず、全部ではない。当業者が創造的な努力をせずに本願の実施態様に基づいてなし得る全ての実施態様は、本願の保護範囲に包含される。
【００２９】
図１は、本願の実施態様に係るデータ格納プロセスを示す。該プロセスは、下記のステップを含む。
【００３０】
Ｓ１０１：各ユーザに対して、そのユーザに関連するデータを取得する。
【００３１】
本願の実施態様において、データ格納システム全体を図２Ａのように構成することができる。このシステムでは、ユーザデータは少なくとも２つのサーバに格納され、少なくとも２つのサーバのうちのいずれかがＳ１０１〜Ｓ１０３を実行する。あるいは、データ格納システム全体を図２Ｂのように構成することもできる。このシステムでは、ユーザデータは少なくとも２つのサーバに格納され、少なくとも２つのサーバではなく、中間装置の方でステップＳ１０１〜Ｓ１０３を実行することになる。以下の説明では、ステップＳ１０１〜Ｓ１０３を実行する図２Ｂの中間装置を例示として提示する。
【００３２】
実際のアプリケーション（適用）では、サーバからユーザにサービスを提供する前に、ユーザのデータをサーバに格納する必要がある。従って本願では、中間装置はまず各ユーザのデータを取得する。
【００３３】
例えば、サーバがユーザＡにチャット履歴記録照会サービスを提供できると仮定する。中間装置はまず、ユーザＡのチャット履歴記録（データ）を取得する。
【００３４】
Ｓ１０２：ユーザのデータを同じデータ量を有する複数のデータセットに分割する。
【００３５】
本願の実施態様では、ほとんどのデータがデータ属性としてデータ量を含むため、中間装置は取得したユーザのデータをデータ量に基づいて複数のデータセットに分割することができる。後続のサービス処理中に、ユーザから送信されたサービス処理要請は任意のサーバに送信することができ、各サーバはローカルに格納されたデータセットからサービス処理に必要なデータを取得することができるため、ユーザのデータをデータ量に基づいて分割した後は、取得したデータセットは同じデータ量を有することになる。
【００３６】
本願は、別の分割方法も提供している。分割により任意のデータセット２つを取得した後、２つのデータセット間のデータ量の差は、所定の閾値以下となる。閾値は、実施の状況に基づいて設定することができる。
【００３７】
更に、分割により取得したデータセットの数は、ユーザのデータを格納するサーバの数に基づいて決定できることに留意されたい。分割により取得したデータセットの数は、ユーザのデータを格納するサーバの数よりは少なくない。
【００３８】
上記の例示による説明を続けると、ユーザＡが９９個のチャット履歴記録を有し、サーバは合計３つであり、ユーザのデータが同じデータ量を有する複数のデータセットに分割されていると仮定する。中間装置は、ユーザＡのチャット履歴記録を、それぞれ３３個のチャット履歴記録を含むデータセット１、データセット２、データセット３に分割することができる。
【００３９】
Ｓ１０３：複数のデータセットを少なくとも２つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザのデータの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する。
【００４０】
本願の実施態様では、中間装置がユーザのデータを複数のデータセットに分割した後、中間装置は、少なくとも２つのサーバに別々に格納された複数のデータセットを送信することができる。各サーバには、少なくとも１つのデータセットが格納される。
【００４１】
少なくとも２つのサーバでユーザのデータに対する後続の検索を行い、特定したユーザのデータに基づいてサービスを実行することを補助するために、本願では、データセットをサーバのローカルに格納し、それに加えて、ユーザのユーザ識別子、ユーザのデータの総データ量、各サーバのサーバ識別子、各サーバに格納されたデータセットのデータ量を格納する。各サーバのサーバ識別子と、サーバに格納されたデータセットのデータ量との間には、マッピング関係が成立する。言い換えれば、マッピング関係から各サーバに格納されたデータセットのデータ量を知ることができる。
【００４２】
上記の例示による説明を続けると、３３個のチャット履歴記録を含むデータセット１に加えて、サーバ１は表１に示すデータを格納することができる。
【表１】
2019504415.tif 000003
【００４３】
表１に示すデータは、中間装置から各サーバに送信され、サーバに格納される。
【００４４】
該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納されたデータを用いてサービスを実行することができる。
【００４５】
更に、図１に示すステップＳ１０１〜Ｓ１０３を図２Ａに示すサーバのうちいずれかにより実行する際に、サーバは、ユーザのデータを取得し、該データを複数のデータセットに分割して、少なくとも１つのデータセットを格納し、他のデータセットを他のサーバに配布し格納させることができる。一方、サーバは、ユーザのユーザ識別子、ユーザのデータの総データ量、各サーバのサーバ識別子、各サーバに格納されたデータセットのデータ量をローカルに格納し、該データを他のサーバに送信して格納させることもできる。
【００４６】
本願の実施態様では、ステップＳ１０１〜Ｓ１０３を用いてユーザのデータを格納した後、サーバは、別々のサーバに格納されたデータに基づいてサービスを実行することができる。サービス処理プロセス全体を図３に示す。
【００４７】
図３は、本願の実施態様に係るサービス処理プロセスを示す。該プロセスは、下記のステップを含む。
【００４８】
Ｓ３０１：サーバはサービス処理要請を受信する。
【００４９】
本願の実施態様では、ユーザのデータが別々のサーバに格納されているため、ユーザが端末を用いて送信したサービス処理要請は、複数のサーバのうちいずれかに送信される。サービス処理要請は、ユーザ識別子と、サービスに必要なデータのデータ識別子とを含み、いずれのユーザと該ユーザに関連するデータとを処理すべきかサーバに通知する。
【００５０】
Ｓ３０２：ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、データ識別子に対応するデータが存在するか否かを特定する。存在すれば、ステップＳ３０３を実行する。存在しなければ、ステップＳ３０４を実行する。
【００５１】
本願の実施態様では、ユーザから送信されたサービス処理要請を受信した後、サーバはサービス処理要請に含まれるユーザ識別子に基づいてユーザに対応するデータセットを決定し、サービス処理要請に含まれているデータ識別子に基づいて、サービス実行に必要なデータセットを決定する。サーバに格納されているデータセットがデータ識別子に対応するデータを含んでいれば、つまり、サービス実行に必要なデータセットが存在すれば、ステップ３０３を実行する。サーバに格納されているデータセットがデータ識別子に対応するデータを含んでいなければ、つまり、サービス実行に必要なデータセットが存在しなければ、ステップ３０４を実行する。
【００５２】
Ｓ３０３：データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行する。
【００５３】
Ｓ３０４：他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する。
【００５４】
本願の実施態様では、サーバのローカルに格納されたデータのうち、データ識別子に対応するデータが存在しないと特定した後、サーバはデータ取得要請を他のサーバに直接送信して、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行することができる。データ取得要請は、ユーザ識別子とデータ識別子とを含む。
【００５５】
上述した方法では、任意のサーバが故障すると、該サーバに格納されたユーザのデータは使用できなくなるが、他のサーバに格納されたユーザのデータは使用することができる。サービス実行に必要なデータが他のサーバに格納されている可能性がある。従って、サービスを正常に実行することが可能となる。従来技術では、ユーザのデータを格納するサーバが故障すると、サービスそのものを実行することができなかった。従来技術に比べて、該方法は、サービス実行の可能性を大幅に向上する。
【００５６】
実際のアプリケーションでは、サーバは、対応するデータのデータ量に基づいてサービスを実行できる。従って、サービス処理要請に含まれる、サービスに必要なデータのデータ識別子は、サービスに必要なデータのデータ量であっても良い。サーバは、サービス処理要請に含まれる、サービスに必要なデータのデータ量に基づいて、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量が、サービスに必要なデータのデータ量以上であるか否かを特定する。データ量以上であれば、サーバは、該サーバにデータ識別子に対応するデータが存在すると特定する。データ量未満であれば、サーバは、該サーバにデータ識別子に対応するデータが存在しないと特定する。
【００５７】
本願では、ユーザのデータは、上述したサーバのみに格納されている訳ではなく、他のサーバにも格納されているため、サーバにデータ識別子に対応するデータが存在しない場合、つまり、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量が、サービスに必要なデータのデータ量未満である場合、データ識別子に対応するデータを他のサーバから取得することができる。サービスに必要なデータのデータ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量との差分を特定し、他のサーバから、ユーザ識別子に対応し、該差分と一致するデータ量を有するデータを取得する。
【００５８】
更に、本願は、他のサーバから、ユーザ識別子に対応し、差分と一致するデータ量を有するデータを取得する実施態様を提供する。他のサーバのユーザ識別子に対応するデータを、データのデータ量の多い順に、取得したデータ量が差分と一致するまで順次取得するのである。
【００５９】
実際のアプリケーションでは、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量の合計は、特定した差分未満であるはずである。従って、本願では、他のサーバからユーザ識別子に対応し、差分と一致するデータ量を有するデータを取得する前に、サーバはまず、ユーザ識別子に対応し、全てのサーバに格納されたデータのデータ量の合計が、サービスに必要なデータのデータ量以上であるか否かを特定する。データ量以上であれば、サーバは、他のサーバからデータを取得することができる。データ量未満であれば、ユーザのデータ量がサービスを実行するには不十分であることを示すので、サーバは、サービスの実行を直接拒否することができる。
【００６０】
最終的に、取得したデータに基づいてサービスを処理した後、サーバは、ユーザ識別子に対応するローカルに格納されたデータのデータ量を更新する必要がある。すなわち、サーバは、ユーザ識別子に対応するデータの総データ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量と、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量を更新する。ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量が、ユーザから送信されたサービス要請に含まれたデータ量未満である場合、ユーザ識別子に対応するデータのデータ量を、他のサーバから取得することになる。従って、ユーザ識別子に対応するローカルに格納されたデータのデータ量を更新する際に、サーバは更に他のサーバへ更新要請を送信する必要がある。それにより、他のサーバは、ユーザ識別子に対応するデータの総データ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量と、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量とに基づいて、ローカルに格納されたデータを更新する。
【００６１】
上述したサービス処理のサーバは、正常に作動するサーバであることに留意されたい。任意のサーバが故障すると、該サーバは、ユーザから送信されたサービス処理要請や、他のサーバから該サーバに送信されたデータ取得要請を受信することができなくなる。つまり、サービス処理要請を受信したサーバは、他のサーバが故障しているか否かをモニタし、他のサーバのうち故障していないものからデータを取得することができる。
【００６２】
上述した本願の実施態様に係るサービス処理方法において、実際のアプリケーションでは、決済や振込など、金銭に関するサービスを実行する際に、サーバは、金額（つまり、データのデータ量）に基づいてサービスを実行する必要がある。従って、本解決策におけるデータ格納方法とサービス処理方法をより明確に説明するために、下記の記述では、データは口座の残高とする。
【００６３】
図４は、本願の実施態様に係る残高格納プロセスを示す。該プロセスは、下記のステップを含む。
【００６４】
Ｓ４０１：各ユーザの総残高を取得する。
【００６５】
実際のアプリケーションでは、決済口座の残高を用いて購入や決済などのサービスを実行するユーザは、最近、ますます増える傾向にある。残高を用いてサービスを実行する前に、まずは、ユーザの残高をサーバに格納する必要がある。従って、本願では、サーバはまず、各ユーザの総残高を取得する。
【００６６】
例えば、サーバがユーザＡに残高決済サービスを提供すると仮定する。中間装置はまず、ユーザＡの総残高である３００人民元を取得する。
【００６７】
Ｓ４０２：ユーザの総残高を複数の副残高に均等に分割する。
【００６８】
上記の例示による説明を続ける。総残高を均等に分割し、ユーザＡの残高を格納するサーバが３つであると仮定する。従って、中間装置は、ユーザＡの総残高を３つの副残高に均等に分割することができる。具体的には、副残高１が１００人民元、副残高２が１００人民元、副残高３が１００人民元となる。
【００６９】
Ｓ４０３：複数の副残高を少なくとも２つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザのデータの総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する。
【００７０】
本願の実施態様では、少なくとも２つのサーバでユーザの副残高に対する後続の検索を行い、特定したユーザの副残高に基づいて決済サービスを実行することを補助するために、少なくとも２つのサーバに複数の副残高を別々に格納し、その上、ユーザのユーザ識別子、ユーザの総残高、各サーバのサーバ識別子、各サーバに格納された副残高の残高額を格納する。また、ローカルに格納されたデータを他のサーバに送信し、他のサーバもデータを格納する。
【００７１】
上記の例示による説明を続ける。残高額１００人民元の副残高に加えて、サーバ１は表２に示すデータを格納することができる。
【表２】
2019504415.tif 000004
【００７２】
表２に示すデータは、中間装置から各サーバに送信され、サーバに格納される。
【００７３】
該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納された副残高を用いて決済サービスを処理することができる。
【００７４】
本願の実施態様では、ステップＳ１０１〜Ｓ１０３を用いてユーザの総残高を格納した後、サーバは、別々のサーバに格納されたユーザの副残高に基づいて決済サービスを実行することができる。決済サービス処理プロセス全体を図５に示す。
【００７５】
図５は、本願の実施態様に係る決済処理プロセスを示す。該プロセスは、下記のステップを含む。
【００７６】
Ｓ５０１：サーバはサービス処理要請を受信する。
【００７７】
本願の実施態様では、サービス処理要請は、ユーザ識別子と、サービスに必要な金額とを含み、決済を必要とするユーザと、実行に必要な金額とについてサーバに通知する。
【００７８】
上記の例示による説明を続ける。ユーザＡは、商品を購入するとき、残高決済サービスを使用する。従って、ユーザＡは、端末を用いてサーバに決済サービス処理要請を送信することになる。決済サービス処理要請は、ユーザＡのユーザ識別子と、決済サービスに必要な金額の１２０人民元とを含む。サーバ１が該決済サービス処理要請を受信すると仮定する。
【００７９】
Ｓ５０２：ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額が、必要な金額以上であるか否かを特定する。必要な金額以上であれば、ステップ５３０３を実行する。必要な金額未満であれば、ステップＳ５０４を実行する。
【００８０】
上記の例示による説明を続ける。決済サービス処理要請を受信した後、サーバ１は、ユーザＡのユーザ識別子に基づいて、ユーザＡに対応するローカルに格納された副残高の残高額が１００人民元であることを特定し、続いて、決済サービスに必要な金額の１２０人民元に基づいて、ユーザＡに対応するローカルに格納された副残高の残高額が、決済サービスに必要な金額未満であると特定した場合、ステップＳ５０４を実行する。
【００８１】
Ｓ５０３：当該金額に一致するローカルに格納された副残高を取得し、取得した副残高に基づいてサービスを実行する。
【００８２】
Ｓ５０４：サーバと他のサーバとから、総計すると当該金額に当たる副残高を取得し、取得した副残高に基づいてサービスを実行する。
【００８３】
本願の実施態様では、ユーザ識別子に対応するローカルに格納された副残高の残高額がサービスに必要な金額未満であるとサーバが特定すると、ローカルに格納された副残高では、サービスを実行するには不十分ということになる。従って、ユーザ識別子に対応する副残高を他のサーバから取得することができ、サーバと他のサーバとから取得した副残高に基づいてサービスを処理する。
【００８４】
サーバは、サービス処理要請に含まれた金額と、ユーザ識別子に対応しサーバのローカルに格納された副残高の残高額との差分を特定し、ユーザ識別子に対応しサーバのローカルに格納された全副残高を取得し、更に、他のサーバから差分と一致する残高額の副残高を取得して、サーバと他のサーバとから取得した、総計すると当該金額に当たる副残高に基づいてサービスを実行することができる。
【００８５】
故障していない他のサーバから副残高を取得できるということに価値があることを留意されたい。
【００８６】
上記の例示による説明を続ける。サーバ１が、サーバ３は故障し、サーバ２は正常に作動していることを検出したと仮定する。従って、サーバ１は、サービス処理要請に含まれた金額の１２０人民元と、サーバ１にローカルに格納されたユーザＡに対応する副残高の残高額の１００人民元との差分、つまり２０人民元を特定し、正常に作動するサーバ２に差分の２０人民元を含むデータ取得要請を送信して、サーバ２から返された副残高の残高額の２０人民元を受信する。一方、サーバ１は、サーバ１のローカルに格納されたユーザＡに対応する全副残高の１００人民元を取得し、サーバ１から取得した１００人民元と、サーバ２から取得した２０人民元とに基づいて、残高決済処理を実行する。
【００８７】
上述した方法では、任意のサーバが故障すると、該サーバに格納されたユーザの副残高は使用できなくなるが、他のサーバに格納されたユーザの副残高は使用することができる。故障していないサーバに格納されたユーザの副残高の総計がサービスに必要な金額を超えれば、サービスは正常に実行される。しかしながら、従来技術では、ユーザの残高を格納するサーバが故障すると、決済サービスそのものを実行することができなかった。従来技術に比べて、該方法は、決済サービス実行の可能性を大幅に向上させる。
【００８８】
更に、下記の方法では、他のサーバから差分と一致する残高額の副残高を取得することができる。他のサーバのユーザ識別子に対応する副残高を、副残高の残高額の高い順に、取得した残高額が差分と一致するまで順次取得するものである。
【００８９】
最終的に、取得した副残高に基づいてサービスを処理した後、サーバは、ユーザ識別子に対応するローカルに格納された副残高の残高額を更新する必要がある。すなわち、サーバは、ユーザ識別子に対応する総残高と、ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額と、ユーザ識別子に対応し、他のサーバに格納された副残高の残高額を更新する。ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額が、ユーザから送信されたサービス要請に含まれた、サービスに必要な金額未満である場合、サーバは、ユーザ識別子に対応する副残高の残高額を、他のサーバから取得することになる。従って、ユーザ識別子に対応するローカルに格納された副残高の残高額を更新する際に、サーバは更に他のサーバへ更新要請を送信する必要がある。それにより、他のサーバは、ユーザ識別子に対応する総残高と、ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額と、ユーザ識別子に対応し、他のサーバに格納された副残高の残高額とに基づいて、ローカルに格納されたデータを更新する。
【００９０】
サービス処理要請を受信したサーバを除いた他のサーバ全てに格納された副残高の残高額の総計が、特定した差分より多いと仮定する。しかしながら、他のサーバのうち、任意のサーバが故障していて、残りのサーバに格納された副残高の総計が特定した差分より少ない場合、ユーザは決済サービスを処理することができない。このような状況では、決済通知をユーザに返すことができる。決済通知により、ユーザの総残高はそのまま残り、任意のサーバが故障しているため決済サービスのユーザの残高を利用することができないが、サーバの修復次第決済サービスにユーザの残高を使用できることを、ユーザに知らせる。
【００９１】
例えば、合計３つのサーバがあるとする。サーバ１は３０人民元を、サーバ２は３０人民元を、サーバ３は３０人民元を格納している。ユーザが必要とする商品の値段は７０人民元である。サーバ２が故障していると仮定する。ユーザから決済サービス処理要請を受信した後、サーバ１は、正常に作動する他のサーバ（つまりサーバ３）に格納された副残高の残高額が、特定した差分（つまり４０人民元）より少ないと特定する。よって、サーバ１はユーザに決済通知を送信し、ユーザＡの総残高はそのまま９０人民元であるが、現在、ユーザの残高９０人民元はサーバ２が故障しているため決済サービスに使用できず、サーバ２の修復次第、決済サービスの該残高を利用できることを知らせる。
【００９２】
本願では、サーバのローカルに格納された副残高が不足していると、正常に作動する他のサーバから副残高を取得する必要があり、その後、ローカルに格納された副残高と取得した副残高とに基づいて決済サービスを処理する。サーバ間の振込み作業が必要となる訳であるが、サーバ間の振込み作業はサービス処理の効率性を低下させる。従って、本願では、全サーバに格納された各ユーザの副残高の平均残高額が、任意の閾値より高いか否かを特定する。高い場合は、図４及び図５に示された残高格納方法と決済処理方法を適用することができる。低い場合は、図４及び図５に示された残高格納方法と決済処理方法を適用することができない。
【００９３】
本願は、図４及び図５に示された残高格納方法と決済処理方法をユーザが適用できるか否かを特定する実施態様を提供する。全サーバに格納された各ユーザの副残高の平均残高額が、単一の決済サービスを実行するためにユーザが必要とする平均金額より高い場合、ユーザは、図４及び図５に示された残高格納方法と決済処理方法を適用することができる。これにより、サーバ間の振込み作業を有効に回避する。単一の決済サービスを実行するためにユーザが必要とする平均金額は、ユーザの決済履歴における金額に基づいて特定することができる。
【００９４】
以上のように、本願の実施態様に係るデータ格納方法、サービス処理方法、残高格納方法、決済サービス処理方法について説明した。同じ技術的思想に基づき、本願の実施態様は、４つの装置、つまり図６のデータ格納装置、図７のサービス処理装置、図８の残高格納装置、図９の決済サービス処理装置を提供する。
【００９５】
図６は、本願の実施態様に係るデータ格納装置を示す概略構成図である。該装置は、下記の構成要素を含む。
【００９６】
各ユーザのデータを取得する取得モジュール６０１。
【００９７】
ユーザの前記データを同じデータ量を有する複数のデータセットに分割する分割モジュール６０２。
【００９８】
複数のデータセットを少なくとも２つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザのデータの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する格納モジュール６０３。
【００９９】
図７は、本願の実施態様に係るサービス処理装置を示す概略構成図である。各ユーザのデータは少なくとも２つのサーバに分けて格納される。該装置は、下記の構成要素を含む。
ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信する受信モジュール７０１。
ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、データ識別子に対応するデータが存在するか否かを特定する特定モジュール７０２。
特定モジュール７０２の特定結果が肯定的である場合は、データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行し、特定モジュール７０２の特定結果が否定的である場合は、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する、実行モジュール７０３。
サービスに必要なデータのデータ識別子は、サービスに必要なデータのデータ量を含む。
【０１００】
特定モジュール７０２は、記ユーザ識別子に対応しサーバのローカルに格納されたデータのデータ量が、サービスに必要なデータのデータ量以上であるか否かを特定する。
【０１０１】
実行モジュール７０３は、特定モジュール７０２の特定結果が肯定的である場合は、サーバにデータ識別子に対応するデータが存在すると特定し、特定モジュール７０２の特定結果が否定的である場合は、サーバにデータ識別子に対応するデータが存在しないと特定する。
実行モジュール７０３は、サービスに必要な前記データのデータ量と、ユーザ識別子に対応しこの装置にローカルに格納された前記データのデータ量との差分を特定し、更に、他のサーバから、ユーザ識別子に対応し、差分と一致するデータ量を有するデータを取得する。
実行モジュール７０３は、他のサーバのユーザ識別子に対応するデータを、データのデータ量の多い順に、取得したデータ量が差分と一致するまで順次取得する。
【０１０２】
該装置は、ユーザ識別子に対応するデータの総データ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量と、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量とを、更新する更新モジュール７０４を更に含む。
【０１０３】
図８は、本願の実施態様に係る残高格納装置を示す概略構成図である。該装置は、下記の構成要素を含む。
【０１０４】
各ユーザの総残高を取得する取得モジュール８０１。
【０１０５】
ユーザの総残高を複数の副残高に均等に分割する分割モジュール８０２。
【０１０６】
複数の副残高を少なくとも２つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザの総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する格納モジュール８０３。
【０１０７】
図９は、本願の実施態様に係る決済処理装置を示す概略構成図である。各ユーザの決済口座の総残高は、複数の副残高に分割され、複数の副残高は、少なくとも２つのサーバに分けて格納される。該装置は、下記の構成要素を含む。
【０１０８】
ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請を受信する受信モジュール９０１。
【０１０９】
ユーザ識別子に対応しサーバのローカルに格納された副残高の残高額が、前記サービスに必要な金額以上であるか否かを特定する特定モジュール９０２。
【０１１０】
特定モジュール９０２の特定結果が肯定的（Ｙｅｓ）である場合は、対応するローカルに格納された副残高を取得し、取得した副残高に基づいてサービスを実行し、特定モジュール９０２の特定結果が否定的（Ｎｏ）である場合は、サーバと他のサーバとから、総計すると前記必要な金額に当たる副残高を取得し、取得した副残高に基づいてサービスを実行する、実行モジュール９０３。
【０１１１】
実行モジュール９０３は、金額と、ユーザ識別子に対応しサーバのローカルに格納された副残高の残高額との差分を特定して、ユーザ識別子に対応しサーバのローカルに格納された全副残高を取得し、更に、他のサーバから差分と一致する残高額の副残高を取得する。
【０１１２】
実行モジュール９０３は、他のサーバのユーザ識別子に対応する副残高を、副残高の残高額の高い順に、取得した残高額が差分と一致するまで順次取得する。
【０１１３】
該装置は、ユーザ識別子に対応する総残高、ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額と、ユーザ識別子に対応し、他のサーバに格納された副残高の残高額とを更新する更新モジュール９０４を更に含む。
【０１１４】
典型的な構成では、コンピュータ装置は、１つまたは複数のプロセッサ（ＣＰＵ）、入力／出力インターフェイス、ネットワークインターフェイス、及びメモリを含む。
【０１１５】
メモリは、非永続性メモリ、ランダムアクセスメモリ（ＲＡＭ）及び／又は不揮発性メモリ等の、コンピュータで読み出せる媒体の形式、例えば、リードオンリーメモリ（ＲＯＭ）又はフラッシュメモリ（フラッシュＲＡＭ）を含む。このメモリは、コンピュータ読み取り可能な媒体の一例である。
【０１１６】
コンピュータ読み取り可能な媒体は、任意の方法又は技術を用いて情報を記憶する永続的、非永続的、可動式、及び固定式の媒体を含む。情報は、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又はその他のデータであってよい。コンピュータ記憶媒体の例として、パラメータランダムアクセスメモリ（ＰＲＡＭ）、静的ランダムアクセスメモリ（ＳＲＡＭ）、動的ランダムアクセスメモリ（ＤＲＡＭ）、別タイプのランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、電気的消去ができる読み取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、若しくは別のメモリ技術、コンパクトディスク−リードオンリーメモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、若しくは別の光学記憶装置、磁気カセット、磁気テープディスク記憶装置、若しくは別の磁気記憶デバイス、又は、コンピュータデバイスがアクセスできる情報を記憶するために用いられる別の非伝送媒体があるが、これらに限定されない。本明細書での定義によれば、コンピュータ読み取り可能な媒体には、変調したデータ信号やキャリアのような、コンピュータで読み取り可能な一時的な媒体は含まれない。
【０１１７】
用語「含む」「包含する」、又はその何らかの他の変形体は、非排他的な包含を網羅するものとし、要素のリストを含む工程、方法、物品若しくはデバイスは、これらの要素のみを含むのではなく、明示的列挙されてはいない他の要素を含む、又は、係る工程、方法、物品又はデバイスに固有な他の要素を更に含むことにも留意されたい。「１つの〜を含む」と定義された要素は、更なる制約なしに、この要素を含む工程、方法、物品又はデバイスにおける別の同一の要素を更に含む。
【０１１８】
当業者は、本願の実施形態を、方法、システム、コンピュータプログラム製品として提供できることを理解するはずである。そのため、本願は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、又は、ソフトウェアとハードウェアを組み合わせた実施形態を用いることができる。更に、本願は、コンピュータで使用できるプログラムコードを含む１つ以上のコンピュータで使用できる記憶媒体（磁気ディスクメモリ、ＣＤ−ＲＯＭ、光学メモリ等を含むが、これらに限定されない）上で実施されるコンピュータプログラム製品の形態を用いることができる。
【０１１９】
上述のものは本願の一実施形態にすぎず、本願を限定することを意図してはいない。当業者は、本願に様々な修正及び変更を加えることができる。本願の主旨及び原理から逸脱することなくなされた修正、均等物との置換え、改良はいずれも、本開示の特許請求の範囲に含まれる。
【符号の説明】
【０１２０】
６０１、８０１  取得モジュール
６０２、８０２  分割モジュール
６０３、８０３  格納モジュール
７０１、９０１  受信モジュール
７０２、９０２  特定モジュール
７０３、９０３  実行モジュール
７０４、９０４  更新モジュール
【図１】
2019504415.tif 000005
【図２Ａ】
2019504415.tif 000006
【図２Ｂ】
2019504415.tif 000007
【図３】
2019504415.tif 000008
【図４】
2019504415.tif 000009
【図５】
2019504415.tif 000010
【図６】
2019504415.tif 000011
【図７】
2019504415.tif 000012
【図８】
2019504415.tif 000013
【図９】
2019504415.tif 000014
【国際調査報告】
2019504415.tif 000015
2019504415.tif 000016
2019504415.tif 000017
2019504415.tif 000018