JP2019504415A - データ格納サービス処理方法及び装置 - Google Patents

データ格納サービス処理方法及び装置 Download PDF

Info

Publication number
JP2019504415A
JP2019504415A JP2018535349A JP2018535349A JP2019504415A JP 2019504415 A JP2019504415 A JP 2019504415A JP 2018535349 A JP2018535349 A JP 2018535349A JP 2018535349 A JP2018535349 A JP 2018535349A JP 2019504415 A JP2019504415 A JP 2019504415A
Authority
JP
Japan
Prior art keywords
data
server
amount
balance
user
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.)
Granted
Application number
JP2018535349A
Other languages
English (en)
Other versions
JP6975153B2 (ja
Inventor
ユ,リィングアン
Original Assignee
アリババ グループ ホウルディング リミテッド
アリババ グループ ホウルディング リミテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by アリババ グループ ホウルディング リミテッド, アリババ グループ ホウルディング リミテッド filed Critical アリババ グループ ホウルディング リミテッド
Publication of JP2019504415A publication Critical patent/JP2019504415A/ja
Application granted granted Critical
Publication of JP6975153B2 publication Critical patent/JP6975153B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/227Payment schemes or models characterised in that multiple accounts are available, e.g. to the payer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/363Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes with the personal data of a user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Technology Law (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本願は、データ格納サービス処理方法及び装置を開示する。該方法では、データ格納中に各データのユーザを取得し、該ユーザのデータを複数のデータセットに分割して、少なくとも2つのサーバに複数のデータセットを分けて格納する。格納したデータに基づいてサービスを処理する際に、サーバは、ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信し、該ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、該データ識別子に対応するデータが存在するか否かを特定して、その結果が肯定的である場合は、データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行し、結果が否定的である場合は、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する。該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納されたデータを用いてサービスを実行することができる。

Description

本願は、2016年1月6日に提出され「データ格納サービス処理方法及び装置」と題された中国特許出願第201610007367.5号の優先権を主張し、上記中国特許出願は参照によってその全体が本願に組み込まれる。
本願は、コンピュータ技術分野に関し、特に、データ格納サービス処理方法及び装置に関する。
ネットワーク技術の発展に伴い、サーバは、より多様化したサービスをユーザに提供することができるようになった。例えば、サーバは、ユーザのチャット履歴記録照会サービスを提供できる。
現在、サーバからユーザへサービスを提供する前に、まず該サーバにユーザのデータを格納する必要がある。従来技術では、通常、サーバはユーザIDに基づいてユーザをN個のグループ(Nは自然数)に分け、各グループのユーザに対応するデータを別々のサーバに格納する。ユーザから送信されたユーザIDを含むサービス処理要請をサーバが受信した後、サーバは、まずユーザIDに対応するデータを検索する。ユーザIDに対応するデータが存在すれば、ユーザIDに対応する該データを直接取得し、取得したデータに基づいてサービスを実行する。ユーザIDに対応するデータがなければ、サービス処理要請を他のサーバに送信し、他のサーバがユーザIDに対応するデータに基づいてサービスを実行する。
例えば、サーバが9人のユーザをユーザIDに基づいて3つのグループに分けたとする。各グループは3人のユーザを含む。第1グループのユーザ3人に対応するチャット履歴記録をサーバ1に格納し、第2グループのユーザ3人に対応するチャット履歴記録をサーバ2に格納し、第3グループのユーザ3人に対応するチャット履歴記録をサーバ3に格納する。サーバ1が、ユーザから送信されたユーザIDを含むチャット記録照会サービス要請を受信すると、ユーザIDに対応するチャット履歴記録がサーバ1から検索される。チャット履歴記録が特定された場合は、特定されたチャット履歴記録をユーザに直接返す。チャット履歴記録を特定できなかった場合は、チャット記録照会サービス要請をサーバ2及び/又はサーバ3に送信し、サーバ2及び/又はサーバ3からユーザIDに対応するチャット履歴記録を検索する。
しかしながら、従来技術では、1つ、あるいは複数のサーバが故障する場合、サーバに格納されたデータにアクセスすることができない。言い換えれば、この状況では、一部のユーザは正常にサービスを実行できなくなる。
本願の実施態様は、1つ、あるいは複数のサーバが故障したときに、一部のユーザが正常にサービスを実行できないという既存技術の問題を解決するために、データ格納サービス処理方法及び装置を提供する。
本願の一実施態様は、各ユーザのデータを少なくとも2つのサーバに分けて格納するサービス処理方法であって:ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請をサーバにより受信するステップと;前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定するステップと;前記特定するステップの結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行するステップと;前記特定するステップの結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行するステップと;を含むサービス処理方法を提供する。
本願の一実施態様は、各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも2つのサーバに分けて格納するサービス処理方法であって:ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請をサーバにより受信するステップと;前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定するステップと;前記金額以上である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと;前記金額未満である場合は、前記サーバ及び他のサーバから、総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと;を含むサービス処理方法を提供する。
本願の一実施態様は、各ユーザのデータを取得するステップと;前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割するステップと;前記複数のデータセットを少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納するステップと;を含むデータ格納方法を提供する。
本願の一実施態様は、各ユーザの総残高を取得するステップと;前記ユーザの前記総残高を複数の副残高に均等に分割するステップと;前記複数の副残高を少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納するステップと;を含むデータ格納方法を提供する。
本願の一実施態様は、各ユーザのデータを少なくとも2つのサーバに分けて格納するサービス処理装置であって:ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信する受信モジュールと;前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定する特定モジュールと;前記特定モジュールの特定結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行する、実行モジュールと;を含むサービス処理装置を提供する。
本願の一実施態様は、各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも2つのサーバに分けて格納するサービス処理装置であって:ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請を受信する受信モジュールと;前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定する特定モジュールと;前記特定モジュールの特定結果が肯定的である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、前記サーバと他のサーバとから総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行する、実行モジュールと;を含むサービス処理装置を提供する。
本願の一実施態様は、各ユーザのデータを取得する取得モジュールと;前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割する分割モジュールと;前記複数のデータセットを少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する格納モジュールと;を含むデータ格納装置を提供する。
本願の一実施態様は、各ユーザの総残高を取得する取得モジュールと;前記ユーザの前記総残高を複数の副残高に均等に分割する分割モジュールと;前記複数の副残高を少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する格納モジュールと;を含むデータ格納装置を提供する。
本願の実施態様は、データ格納サービス処理方法及び装置を提供する。該方法では、データ格納中に各ユーザのデータを取得し、該ユーザのデータを複数のデータセットに分割して、少なくとも2つのサーバに複数のデータセットを分けて格納する。格納したデータに基づいてサービスを処理する際に、サーバは、ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信し、該ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、該データ識別子に対応するデータが存在するか否かを特定して、結果が肯定的である場合は、データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行し、結果が否定的である場合は、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する。該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納されたデータを用いてサービスを実行することができる。
添付の図面は、本願の理解を更に深めるためのものであり、本願の一部を構成する。本願の例示として提示された実施態様、及び該実施態様に関する説明は、本願の説明するためのものに過ぎず、本願の範囲を限定するものではない。
図1は、本願の実施態様に係るデータ格納プロセスを示す図である。
図2Aは、本願の実施態様に係る第1データ格納システムを示す概略図である。
図2Bは、本願の実施態様に係る第2データ格納システムを示す概略図である。
図3は、本願の実施態様に係るサービス処理プロセスを示す図である。
図4は、本願の実施態様に係る残高格納プロセスを示す図である。
図5は、本願の実施態様に係る決済処理プロセスを示す図である。
図6は、本願の実施態様に係るデータ格納装置を示す概略構成図である。
図7は、本願の実施態様に係るサービス処理装置を示す概略構成図である。
図8は、本願の実施態様に係る残高格納装置を示す概略構成図である。
図9は、本願の実施態様に係る決済処理装置を示す概略構成図である。
本願の目的、技術的解決策、利点を説明するために、本願の実施態様、及びそれに対応する添付の図面を参照し、下記に本願の技術的解決策を明確且つ完全に説明する。下記に記載する実施態様は、本願の実施態様の一部に過ぎず、全部ではない。当業者が創造的な努力をせずに本願の実施態様に基づいてなし得る全ての実施態様は、本願の保護範囲に包含される。
図1は、本願の実施態様に係るデータ格納プロセスを示す。該プロセスは、下記のステップを含む。
S101:各ユーザに対して、そのユーザに関連するデータを取得する。
本願の実施態様において、データ格納システム全体を図2Aのように構成することができる。このシステムでは、ユーザデータは少なくとも2つのサーバに格納され、少なくとも2つのサーバのうちのいずれかがS101〜S103を実行する。あるいは、データ格納システム全体を図2Bのように構成することもできる。このシステムでは、ユーザデータは少なくとも2つのサーバに格納され、少なくとも2つのサーバではなく、中間装置の方でステップS101〜S103を実行することになる。以下の説明では、ステップS101〜S103を実行する図2Bの中間装置を例示として提示する。
実際のアプリケーション(適用)では、サーバからユーザにサービスを提供する前に、ユーザのデータをサーバに格納する必要がある。従って本願では、中間装置はまず各ユーザのデータを取得する。
例えば、サーバがユーザAにチャット履歴記録照会サービスを提供できると仮定する。中間装置はまず、ユーザAのチャット履歴記録(データ)を取得する。
S102:ユーザのデータを同じデータ量を有する複数のデータセットに分割する。
本願の実施態様では、ほとんどのデータがデータ属性としてデータ量を含むため、中間装置は取得したユーザのデータをデータ量に基づいて複数のデータセットに分割することができる。後続のサービス処理中に、ユーザから送信されたサービス処理要請は任意のサーバに送信することができ、各サーバはローカルに格納されたデータセットからサービス処理に必要なデータを取得することができるため、ユーザのデータをデータ量に基づいて分割した後は、取得したデータセットは同じデータ量を有することになる。
本願は、別の分割方法も提供している。分割により任意のデータセット2つを取得した後、2つのデータセット間のデータ量の差は、所定の閾値以下となる。閾値は、実施の状況に基づいて設定することができる。
更に、分割により取得したデータセットの数は、ユーザのデータを格納するサーバの数に基づいて決定できることに留意されたい。分割により取得したデータセットの数は、ユーザのデータを格納するサーバの数よりは少なくない。
上記の例示による説明を続けると、ユーザAが99個のチャット履歴記録を有し、サーバは合計3つであり、ユーザのデータが同じデータ量を有する複数のデータセットに分割されていると仮定する。中間装置は、ユーザAのチャット履歴記録を、それぞれ33個のチャット履歴記録を含むデータセット1、データセット2、データセット3に分割することができる。
S103:複数のデータセットを少なくとも2つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザのデータの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する。
本願の実施態様では、中間装置がユーザのデータを複数のデータセットに分割した後、中間装置は、少なくとも2つのサーバに別々に格納された複数のデータセットを送信することができる。各サーバには、少なくとも1つのデータセットが格納される。
少なくとも2つのサーバでユーザのデータに対する後続の検索を行い、特定したユーザのデータに基づいてサービスを実行することを補助するために、本願では、データセットをサーバのローカルに格納し、それに加えて、ユーザのユーザ識別子、ユーザのデータの総データ量、各サーバのサーバ識別子、各サーバに格納されたデータセットのデータ量を格納する。各サーバのサーバ識別子と、サーバに格納されたデータセットのデータ量との間には、マッピング関係が成立する。言い換えれば、マッピング関係から各サーバに格納されたデータセットのデータ量を知ることができる。
上記の例示による説明を続けると、33個のチャット履歴記録を含むデータセット1に加えて、サーバ1は表1に示すデータを格納することができる。
Figure 2019504415
表1に示すデータは、中間装置から各サーバに送信され、サーバに格納される。
該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納されたデータを用いてサービスを実行することができる。
更に、図1に示すステップS101〜S103を図2Aに示すサーバのうちいずれかにより実行する際に、サーバは、ユーザのデータを取得し、該データを複数のデータセットに分割して、少なくとも1つのデータセットを格納し、他のデータセットを他のサーバに配布し格納させることができる。一方、サーバは、ユーザのユーザ識別子、ユーザのデータの総データ量、各サーバのサーバ識別子、各サーバに格納されたデータセットのデータ量をローカルに格納し、該データを他のサーバに送信して格納させることもできる。
本願の実施態様では、ステップS101〜S103を用いてユーザのデータを格納した後、サーバは、別々のサーバに格納されたデータに基づいてサービスを実行することができる。サービス処理プロセス全体を図3に示す。
図3は、本願の実施態様に係るサービス処理プロセスを示す。該プロセスは、下記のステップを含む。
S301:サーバはサービス処理要請を受信する。
本願の実施態様では、ユーザのデータが別々のサーバに格納されているため、ユーザが端末を用いて送信したサービス処理要請は、複数のサーバのうちいずれかに送信される。サービス処理要請は、ユーザ識別子と、サービスに必要なデータのデータ識別子とを含み、いずれのユーザと該ユーザに関連するデータとを処理すべきかサーバに通知する。
S302:ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、データ識別子に対応するデータが存在するか否かを特定する。存在すれば、ステップS303を実行する。存在しなければ、ステップS304を実行する。
本願の実施態様では、ユーザから送信されたサービス処理要請を受信した後、サーバはサービス処理要請に含まれるユーザ識別子に基づいてユーザに対応するデータセットを決定し、サービス処理要請に含まれているデータ識別子に基づいて、サービス実行に必要なデータセットを決定する。サーバに格納されているデータセットがデータ識別子に対応するデータを含んでいれば、つまり、サービス実行に必要なデータセットが存在すれば、ステップ303を実行する。サーバに格納されているデータセットがデータ識別子に対応するデータを含んでいなければ、つまり、サービス実行に必要なデータセットが存在しなければ、ステップ304を実行する。
S303:データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行する。
S304:他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する。
本願の実施態様では、サーバのローカルに格納されたデータのうち、データ識別子に対応するデータが存在しないと特定した後、サーバはデータ取得要請を他のサーバに直接送信して、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行することができる。データ取得要請は、ユーザ識別子とデータ識別子とを含む。
上述した方法では、任意のサーバが故障すると、該サーバに格納されたユーザのデータは使用できなくなるが、他のサーバに格納されたユーザのデータは使用することができる。サービス実行に必要なデータが他のサーバに格納されている可能性がある。従って、サービスを正常に実行することが可能となる。従来技術では、ユーザのデータを格納するサーバが故障すると、サービスそのものを実行することができなかった。従来技術に比べて、該方法は、サービス実行の可能性を大幅に向上する。
実際のアプリケーションでは、サーバは、対応するデータのデータ量に基づいてサービスを実行できる。従って、サービス処理要請に含まれる、サービスに必要なデータのデータ識別子は、サービスに必要なデータのデータ量であっても良い。サーバは、サービス処理要請に含まれる、サービスに必要なデータのデータ量に基づいて、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量が、サービスに必要なデータのデータ量以上であるか否かを特定する。データ量以上であれば、サーバは、該サーバにデータ識別子に対応するデータが存在すると特定する。データ量未満であれば、サーバは、該サーバにデータ識別子に対応するデータが存在しないと特定する。
本願では、ユーザのデータは、上述したサーバのみに格納されている訳ではなく、他のサーバにも格納されているため、サーバにデータ識別子に対応するデータが存在しない場合、つまり、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量が、サービスに必要なデータのデータ量未満である場合、データ識別子に対応するデータを他のサーバから取得することができる。サービスに必要なデータのデータ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量との差分を特定し、他のサーバから、ユーザ識別子に対応し、該差分と一致するデータ量を有するデータを取得する。
更に、本願は、他のサーバから、ユーザ識別子に対応し、差分と一致するデータ量を有するデータを取得する実施態様を提供する。他のサーバのユーザ識別子に対応するデータを、データのデータ量の多い順に、取得したデータ量が差分と一致するまで順次取得するのである。
実際のアプリケーションでは、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量の合計は、特定した差分未満であるはずである。従って、本願では、他のサーバからユーザ識別子に対応し、差分と一致するデータ量を有するデータを取得する前に、サーバはまず、ユーザ識別子に対応し、全てのサーバに格納されたデータのデータ量の合計が、サービスに必要なデータのデータ量以上であるか否かを特定する。データ量以上であれば、サーバは、他のサーバからデータを取得することができる。データ量未満であれば、ユーザのデータ量がサービスを実行するには不十分であることを示すので、サーバは、サービスの実行を直接拒否することができる。
最終的に、取得したデータに基づいてサービスを処理した後、サーバは、ユーザ識別子に対応するローカルに格納されたデータのデータ量を更新する必要がある。すなわち、サーバは、ユーザ識別子に対応するデータの総データ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量と、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量を更新する。ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量が、ユーザから送信されたサービス要請に含まれたデータ量未満である場合、ユーザ識別子に対応するデータのデータ量を、他のサーバから取得することになる。従って、ユーザ識別子に対応するローカルに格納されたデータのデータ量を更新する際に、サーバは更に他のサーバへ更新要請を送信する必要がある。それにより、他のサーバは、ユーザ識別子に対応するデータの総データ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量と、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量とに基づいて、ローカルに格納されたデータを更新する。
上述したサービス処理のサーバは、正常に作動するサーバであることに留意されたい。任意のサーバが故障すると、該サーバは、ユーザから送信されたサービス処理要請や、他のサーバから該サーバに送信されたデータ取得要請を受信することができなくなる。つまり、サービス処理要請を受信したサーバは、他のサーバが故障しているか否かをモニタし、他のサーバのうち故障していないものからデータを取得することができる。
上述した本願の実施態様に係るサービス処理方法において、実際のアプリケーションでは、決済や振込など、金銭に関するサービスを実行する際に、サーバは、金額(つまり、データのデータ量)に基づいてサービスを実行する必要がある。従って、本解決策におけるデータ格納方法とサービス処理方法をより明確に説明するために、下記の記述では、データは口座の残高とする。
図4は、本願の実施態様に係る残高格納プロセスを示す。該プロセスは、下記のステップを含む。
S401:各ユーザの総残高を取得する。
実際のアプリケーションでは、決済口座の残高を用いて購入や決済などのサービスを実行するユーザは、最近、ますます増える傾向にある。残高を用いてサービスを実行する前に、まずは、ユーザの残高をサーバに格納する必要がある。従って、本願では、サーバはまず、各ユーザの総残高を取得する。
例えば、サーバがユーザAに残高決済サービスを提供すると仮定する。中間装置はまず、ユーザAの総残高である300人民元を取得する。
S402:ユーザの総残高を複数の副残高に均等に分割する。
上記の例示による説明を続ける。総残高を均等に分割し、ユーザAの残高を格納するサーバが3つであると仮定する。従って、中間装置は、ユーザAの総残高を3つの副残高に均等に分割することができる。具体的には、副残高1が100人民元、副残高2が100人民元、副残高3が100人民元となる。
S403:複数の副残高を少なくとも2つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザのデータの総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する。
本願の実施態様では、少なくとも2つのサーバでユーザの副残高に対する後続の検索を行い、特定したユーザの副残高に基づいて決済サービスを実行することを補助するために、少なくとも2つのサーバに複数の副残高を別々に格納し、その上、ユーザのユーザ識別子、ユーザの総残高、各サーバのサーバ識別子、各サーバに格納された副残高の残高額を格納する。また、ローカルに格納されたデータを他のサーバに送信し、他のサーバもデータを格納する。
上記の例示による説明を続ける。残高額100人民元の副残高に加えて、サーバ1は表2に示すデータを格納することができる。
Figure 2019504415
表2に示すデータは、中間装置から各サーバに送信され、サーバに格納される。
該方法では、任意のサーバが故障したとしても、ユーザは他のサーバに格納された副残高を用いて決済サービスを処理することができる。
本願の実施態様では、ステップS101〜S103を用いてユーザの総残高を格納した後、サーバは、別々のサーバに格納されたユーザの副残高に基づいて決済サービスを実行することができる。決済サービス処理プロセス全体を図5に示す。
図5は、本願の実施態様に係る決済処理プロセスを示す。該プロセスは、下記のステップを含む。
S501:サーバはサービス処理要請を受信する。
本願の実施態様では、サービス処理要請は、ユーザ識別子と、サービスに必要な金額とを含み、決済を必要とするユーザと、実行に必要な金額とについてサーバに通知する。
上記の例示による説明を続ける。ユーザAは、商品を購入するとき、残高決済サービスを使用する。従って、ユーザAは、端末を用いてサーバに決済サービス処理要請を送信することになる。決済サービス処理要請は、ユーザAのユーザ識別子と、決済サービスに必要な金額の120人民元とを含む。サーバ1が該決済サービス処理要請を受信すると仮定する。
S502:ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額が、必要な金額以上であるか否かを特定する。必要な金額以上であれば、ステップ5303を実行する。必要な金額未満であれば、ステップS504を実行する。
上記の例示による説明を続ける。決済サービス処理要請を受信した後、サーバ1は、ユーザAのユーザ識別子に基づいて、ユーザAに対応するローカルに格納された副残高の残高額が100人民元であることを特定し、続いて、決済サービスに必要な金額の120人民元に基づいて、ユーザAに対応するローカルに格納された副残高の残高額が、決済サービスに必要な金額未満であると特定した場合、ステップS504を実行する。
S503:当該金額に一致するローカルに格納された副残高を取得し、取得した副残高に基づいてサービスを実行する。
S504:サーバと他のサーバとから、総計すると当該金額に当たる副残高を取得し、取得した副残高に基づいてサービスを実行する。
本願の実施態様では、ユーザ識別子に対応するローカルに格納された副残高の残高額がサービスに必要な金額未満であるとサーバが特定すると、ローカルに格納された副残高では、サービスを実行するには不十分ということになる。従って、ユーザ識別子に対応する副残高を他のサーバから取得することができ、サーバと他のサーバとから取得した副残高に基づいてサービスを処理する。
サーバは、サービス処理要請に含まれた金額と、ユーザ識別子に対応しサーバのローカルに格納された副残高の残高額との差分を特定し、ユーザ識別子に対応しサーバのローカルに格納された全副残高を取得し、更に、他のサーバから差分と一致する残高額の副残高を取得して、サーバと他のサーバとから取得した、総計すると当該金額に当たる副残高に基づいてサービスを実行することができる。
故障していない他のサーバから副残高を取得できるということに価値があることを留意されたい。
上記の例示による説明を続ける。サーバ1が、サーバ3は故障し、サーバ2は正常に作動していることを検出したと仮定する。従って、サーバ1は、サービス処理要請に含まれた金額の120人民元と、サーバ1にローカルに格納されたユーザAに対応する副残高の残高額の100人民元との差分、つまり20人民元を特定し、正常に作動するサーバ2に差分の20人民元を含むデータ取得要請を送信して、サーバ2から返された副残高の残高額の20人民元を受信する。一方、サーバ1は、サーバ1のローカルに格納されたユーザAに対応する全副残高の100人民元を取得し、サーバ1から取得した100人民元と、サーバ2から取得した20人民元とに基づいて、残高決済処理を実行する。
上述した方法では、任意のサーバが故障すると、該サーバに格納されたユーザの副残高は使用できなくなるが、他のサーバに格納されたユーザの副残高は使用することができる。故障していないサーバに格納されたユーザの副残高の総計がサービスに必要な金額を超えれば、サービスは正常に実行される。しかしながら、従来技術では、ユーザの残高を格納するサーバが故障すると、決済サービスそのものを実行することができなかった。従来技術に比べて、該方法は、決済サービス実行の可能性を大幅に向上させる。
更に、下記の方法では、他のサーバから差分と一致する残高額の副残高を取得することができる。他のサーバのユーザ識別子に対応する副残高を、副残高の残高額の高い順に、取得した残高額が差分と一致するまで順次取得するものである。
最終的に、取得した副残高に基づいてサービスを処理した後、サーバは、ユーザ識別子に対応するローカルに格納された副残高の残高額を更新する必要がある。すなわち、サーバは、ユーザ識別子に対応する総残高と、ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額と、ユーザ識別子に対応し、他のサーバに格納された副残高の残高額を更新する。ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額が、ユーザから送信されたサービス要請に含まれた、サービスに必要な金額未満である場合、サーバは、ユーザ識別子に対応する副残高の残高額を、他のサーバから取得することになる。従って、ユーザ識別子に対応するローカルに格納された副残高の残高額を更新する際に、サーバは更に他のサーバへ更新要請を送信する必要がある。それにより、他のサーバは、ユーザ識別子に対応する総残高と、ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額と、ユーザ識別子に対応し、他のサーバに格納された副残高の残高額とに基づいて、ローカルに格納されたデータを更新する。
サービス処理要請を受信したサーバを除いた他のサーバ全てに格納された副残高の残高額の総計が、特定した差分より多いと仮定する。しかしながら、他のサーバのうち、任意のサーバが故障していて、残りのサーバに格納された副残高の総計が特定した差分より少ない場合、ユーザは決済サービスを処理することができない。このような状況では、決済通知をユーザに返すことができる。決済通知により、ユーザの総残高はそのまま残り、任意のサーバが故障しているため決済サービスのユーザの残高を利用することができないが、サーバの修復次第決済サービスにユーザの残高を使用できることを、ユーザに知らせる。
例えば、合計3つのサーバがあるとする。サーバ1は30人民元を、サーバ2は30人民元を、サーバ3は30人民元を格納している。ユーザが必要とする商品の値段は70人民元である。サーバ2が故障していると仮定する。ユーザから決済サービス処理要請を受信した後、サーバ1は、正常に作動する他のサーバ(つまりサーバ3)に格納された副残高の残高額が、特定した差分(つまり40人民元)より少ないと特定する。よって、サーバ1はユーザに決済通知を送信し、ユーザAの総残高はそのまま90人民元であるが、現在、ユーザの残高90人民元はサーバ2が故障しているため決済サービスに使用できず、サーバ2の修復次第、決済サービスの該残高を利用できることを知らせる。
本願では、サーバのローカルに格納された副残高が不足していると、正常に作動する他のサーバから副残高を取得する必要があり、その後、ローカルに格納された副残高と取得した副残高とに基づいて決済サービスを処理する。サーバ間の振込み作業が必要となる訳であるが、サーバ間の振込み作業はサービス処理の効率性を低下させる。従って、本願では、全サーバに格納された各ユーザの副残高の平均残高額が、任意の閾値より高いか否かを特定する。高い場合は、図4及び図5に示された残高格納方法と決済処理方法を適用することができる。低い場合は、図4及び図5に示された残高格納方法と決済処理方法を適用することができない。
本願は、図4及び図5に示された残高格納方法と決済処理方法をユーザが適用できるか否かを特定する実施態様を提供する。全サーバに格納された各ユーザの副残高の平均残高額が、単一の決済サービスを実行するためにユーザが必要とする平均金額より高い場合、ユーザは、図4及び図5に示された残高格納方法と決済処理方法を適用することができる。これにより、サーバ間の振込み作業を有効に回避する。単一の決済サービスを実行するためにユーザが必要とする平均金額は、ユーザの決済履歴における金額に基づいて特定することができる。
以上のように、本願の実施態様に係るデータ格納方法、サービス処理方法、残高格納方法、決済サービス処理方法について説明した。同じ技術的思想に基づき、本願の実施態様は、4つの装置、つまり図6のデータ格納装置、図7のサービス処理装置、図8の残高格納装置、図9の決済サービス処理装置を提供する。
図6は、本願の実施態様に係るデータ格納装置を示す概略構成図である。該装置は、下記の構成要素を含む。
各ユーザのデータを取得する取得モジュール601。
ユーザの前記データを同じデータ量を有する複数のデータセットに分割する分割モジュール602。
複数のデータセットを少なくとも2つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザのデータの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する格納モジュール603。
図7は、本願の実施態様に係るサービス処理装置を示す概略構成図である。各ユーザのデータは少なくとも2つのサーバに分けて格納される。該装置は、下記の構成要素を含む。
ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信する受信モジュール701。
ユーザ識別子に対応し、サーバのローカルに格納されたデータのうち、データ識別子に対応するデータが存在するか否かを特定する特定モジュール702。
特定モジュール702の特定結果が肯定的である場合は、データ識別子に対応するローカルに格納されたデータを取得し、取得したデータに基づいてサービスを実行し、特定モジュール702の特定結果が否定的である場合は、他のサーバからデータ識別子に対応するデータを取得し、取得したデータに基づいてサービスを実行する、実行モジュール703。
サービスに必要なデータのデータ識別子は、サービスに必要なデータのデータ量を含む。
特定モジュール702は、記ユーザ識別子に対応しサーバのローカルに格納されたデータのデータ量が、サービスに必要なデータのデータ量以上であるか否かを特定する。
実行モジュール703は、特定モジュール702の特定結果が肯定的である場合は、サーバにデータ識別子に対応するデータが存在すると特定し、特定モジュール702の特定結果が否定的である場合は、サーバにデータ識別子に対応するデータが存在しないと特定する。
実行モジュール703は、サービスに必要な前記データのデータ量と、ユーザ識別子に対応しこの装置にローカルに格納された前記データのデータ量との差分を特定し、更に、他のサーバから、ユーザ識別子に対応し、差分と一致するデータ量を有するデータを取得する。
実行モジュール703は、他のサーバのユーザ識別子に対応するデータを、データのデータ量の多い順に、取得したデータ量が差分と一致するまで順次取得する。
該装置は、ユーザ識別子に対応するデータの総データ量と、ユーザ識別子に対応し、サーバのローカルに格納されたデータのデータ量と、ユーザ識別子に対応し、他のサーバに格納されたデータのデータ量とを、更新する更新モジュール704を更に含む。
図8は、本願の実施態様に係る残高格納装置を示す概略構成図である。該装置は、下記の構成要素を含む。
各ユーザの総残高を取得する取得モジュール801。
ユーザの総残高を複数の副残高に均等に分割する分割モジュール802。
複数の副残高を少なくとも2つのサーバに分けて格納し、更に、各サーバに、ユーザのユーザ識別子と、ユーザの総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する格納モジュール803。
図9は、本願の実施態様に係る決済処理装置を示す概略構成図である。各ユーザの決済口座の総残高は、複数の副残高に分割され、複数の副残高は、少なくとも2つのサーバに分けて格納される。該装置は、下記の構成要素を含む。
ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請を受信する受信モジュール901。
ユーザ識別子に対応しサーバのローカルに格納された副残高の残高額が、前記サービスに必要な金額以上であるか否かを特定する特定モジュール902。
特定モジュール902の特定結果が肯定的(Yes)である場合は、対応するローカルに格納された副残高を取得し、取得した副残高に基づいてサービスを実行し、特定モジュール902の特定結果が否定的(No)である場合は、サーバと他のサーバとから、総計すると前記必要な金額に当たる副残高を取得し、取得した副残高に基づいてサービスを実行する、実行モジュール903。
実行モジュール903は、金額と、ユーザ識別子に対応しサーバのローカルに格納された副残高の残高額との差分を特定して、ユーザ識別子に対応しサーバのローカルに格納された全副残高を取得し、更に、他のサーバから差分と一致する残高額の副残高を取得する。
実行モジュール903は、他のサーバのユーザ識別子に対応する副残高を、副残高の残高額の高い順に、取得した残高額が差分と一致するまで順次取得する。
該装置は、ユーザ識別子に対応する総残高、ユーザ識別子に対応し、サーバのローカルに格納された副残高の残高額と、ユーザ識別子に対応し、他のサーバに格納された副残高の残高額とを更新する更新モジュール904を更に含む。
典型的な構成では、コンピュータ装置は、1つまたは複数のプロセッサ(CPU)、入力/出力インターフェイス、ネットワークインターフェイス、及びメモリを含む。
メモリは、非永続性メモリ、ランダムアクセスメモリ(RAM)及び/又は不揮発性メモリ等の、コンピュータで読み出せる媒体の形式、例えば、リードオンリーメモリ(ROM)又はフラッシュメモリ(フラッシュRAM)を含む。このメモリは、コンピュータ読み取り可能な媒体の一例である。
コンピュータ読み取り可能な媒体は、任意の方法又は技術を用いて情報を記憶する永続的、非永続的、可動式、及び固定式の媒体を含む。情報は、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又はその他のデータであってよい。コンピュータ記憶媒体の例として、パラメータランダムアクセスメモリ(PRAM)、静的ランダムアクセスメモリ(SRAM)、動的ランダムアクセスメモリ(DRAM)、別タイプのランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電気的消去ができる読み取り専用メモリ(EEPROM)、フラッシュメモリ、若しくは別のメモリ技術、コンパクトディスク−リードオンリーメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、若しくは別の光学記憶装置、磁気カセット、磁気テープディスク記憶装置、若しくは別の磁気記憶デバイス、又は、コンピュータデバイスがアクセスできる情報を記憶するために用いられる別の非伝送媒体があるが、これらに限定されない。本明細書での定義によれば、コンピュータ読み取り可能な媒体には、変調したデータ信号やキャリアのような、コンピュータで読み取り可能な一時的な媒体は含まれない。
用語「含む」「包含する」、又はその何らかの他の変形体は、非排他的な包含を網羅するものとし、要素のリストを含む工程、方法、物品若しくはデバイスは、これらの要素のみを含むのではなく、明示的列挙されてはいない他の要素を含む、又は、係る工程、方法、物品又はデバイスに固有な他の要素を更に含むことにも留意されたい。「1つの〜を含む」と定義された要素は、更なる制約なしに、この要素を含む工程、方法、物品又はデバイスにおける別の同一の要素を更に含む。
当業者は、本願の実施形態を、方法、システム、コンピュータプログラム製品として提供できることを理解するはずである。そのため、本願は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、又は、ソフトウェアとハードウェアを組み合わせた実施形態を用いることができる。更に、本願は、コンピュータで使用できるプログラムコードを含む1つ以上のコンピュータで使用できる記憶媒体(磁気ディスクメモリ、CD−ROM、光学メモリ等を含むが、これらに限定されない)上で実施されるコンピュータプログラム製品の形態を用いることができる。
上述のものは本願の一実施形態にすぎず、本願を限定することを意図してはいない。当業者は、本願に様々な修正及び変更を加えることができる。本願の主旨及び原理から逸脱することなくなされた修正、均等物との置換え、改良はいずれも、本開示の特許請求の範囲に含まれる。
601、801 取得モジュール
602、802 分割モジュール
603、803 格納モジュール
701、901 受信モジュール
702、902 特定モジュール
703、903 実行モジュール
704、904 更新モジュール

Claims (22)

  1. 各ユーザのデータを少なくとも2つのサーバに分けて格納するサービス処理方法であって:
    ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請をサーバにより受信するステップと;
    前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定するステップと;
    前記特定するステップの結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行するステップと;
    前記特定するステップの結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行するステップと;を備える、
    サービス処理方法。
  2. 前記サービスに必要な前記データの前記データ識別子は、前記サービスに必要な前記データのデータ量を備え、
    前記ユーザ識別子に対応し前記サーバにローカルに格納サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定する前記ステップは:
    前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量が、前記サービスに必要な前記データの前記データ量以上であるか否かを特定するステップを含み、
    前記データ量以上であると、前記サーバに前記データ識別子に対応する前記データが存在すると特定し、
    前記データ量未満であると、前記サーバに前記データ識別子に対応する前記データが存在しないと特定する、
    請求項1に記載のサービス処理方法。
  3. 他のサーバから前記データ識別子に対応する前記データを取得する前記ステップは:
    前記サービスに必要な前記データの前記データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量との差分を特定するステップと;
    前記他のサーバから、前記ユーザ識別子に対応し前記差分と一致するデータ量を有するデータを取得するステップと;を備える、
    請求項2に記載のサービス処理方法。
  4. 前記他のサーバから、前記ユーザ識別子に対応し前記差分と一致するデータ量を有するデータを取得する前記ステップは:
    他のサーバの前記ユーザ識別子に対応するデータを、前記データの前記データ量の多い順に、取得したデータ量が前記差分と一致するまで順次取得するステップを備える、
    請求項3に記載のサービス処理方法。
  5. 前記ユーザ識別子に対応する前記データの総データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データの前記データ量と、前記ユーザ識別子に対応し前記他のサーバに格納された前記データの前記データ量とを、前記サーバにより更新するステップを更に備える、
    請求項2乃至請求項4のいずれか1項に記載のサービス処理方法。
  6. 各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも2つのサーバに分けて格納するサービス処理方法であって:
    ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請をサーバにより受信するステップと;
    前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定するステップと;
    前記金額以上である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと;
    前記金額未満である場合は、前記サーバ及び他のサーバから、総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行するステップと;を備える、
    サービス処理方法。
  7. 前記サーバ及び他のサーバから、総計すると前記金額に当たる副残高を取得する前記ステップは:
    前記金額と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額との差分を特定するステップと;
    前記ユーザ識別子に対応し前記サーバのローカルに格納された全副残高を取得するステップと;
    前記他のサーバから前記差分と一致する残高額の副残高を取得するステップと;を備える、
    請求項6に記載のサービス処理方法。
  8. 前記他のサーバから前記差分と一致する残高額の副残高を取得する前記ステップは:
    他のサーバの前記ユーザ識別子に対応する副残高を、前記副残高の前記残高額の高い順に、取得した残高額が前記差分と一致するまで順次取得するステップを備える、
    請求項7に記載のサービス処理方法。
  9. 前記ユーザ識別子に対応する総残高、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額と、前記ユーザ識別子に対応し前記他のサーバに格納された前記副残高の前記残高額とを、前記サーバにより更新するステップを更に備える、
    請求項6乃至請求項8のいずれか1項に記載のサービス処理方法。
  10. データ格納方法であって:
    各ユーザのデータを取得するステップと;
    前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割するステップと;
    前記複数のデータセットを少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納するステップと;を備える、
    データ格納方法。
  11. データ格納方法であって:
    各ユーザの総残高を取得するステップと;
    前記ユーザの前記総残高を複数の副残高に均等に分割するステップと;
    前記複数の副残高を少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納するステップと;を備える、
    データ格納方法。
  12. 各ユーザのデータを少なくとも2つのサーバに分けて格納するサービス処理装置であって:
    ユーザ識別子と、サービスに必要なデータのデータ識別子とを含むサービス処理要請を受信する受信モジュールと;
    前記ユーザ識別子に対応し前記サーバのローカルに格納されたデータのうち、前記データ識別子に対応するデータが存在するか否かを特定する特定モジュールと;
    前記特定モジュールの特定結果が肯定的である場合は、前記データ識別子に対応する前記ローカルに格納されたデータを取得し、取得した当該データに基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、他のサーバから前記データ識別子に対応する前記データを取得し、取得した当該データに基づいて前記サービスを実行する、実行モジュールと;を備える、
    サービス処理装置。
  13. 前記サービスに必要な前記データの前記データ識別子は、前記サービスに必要な前記データのデータ量を備え、
    前記特定モジュールは、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量が、前記サービスに必要な前記データの前記データ量以上であるか否かを特定し、
    前記実行モジュールは、前記特定モジュールの特定結果が肯定的である場合は、前記サーバに前記データ識別子に対応する前記データが存在すると特定し、前記特定モジュールの特定結果が否定的である場合は、前記サーバに前記データ識別子に対応する前記データが存在しないと特定する、
    請求項12に記載のサービス処理装置。
  14. 前記実行モジュールは、前記サービスに必要な前記データの前記データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データのデータ量との差分を特定し、更に、前記他のサーバから、前記ユーザ識別子に対応し前記差分と一致するデータ量を有するデータを取得する、
    請求項13に記載のサービス処理装置。
  15. 前記実行モジュールは、他のサーバの前記ユーザ識別子に対応するデータを、前記データの前記データ量の多い順に、取得したデータ量が前記差分と一致するまで順次取得する、
    請求項14に記載のサービス処理装置。
  16. 前記ユーザ識別子に対応する前記データの総データ量と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記データの前記データ量と、前記ユーザ識別子に対応し前記他のサーバに格納された前記データの前記データ量とを更新する更新モジュールを更に備える、
    請求項13乃至請求項15のいずれか1項に記載のサービス処理装置。
  17. 各ユーザの総残高を複数の副残高に分割し、前記複数の副残高を少なくとも2つのサーバに分けて格納するサービス処理装置であって:
    ユーザ識別子と、サービスに必要な金額とを含むサービス処理要請を受信する受信モジュールと;
    前記ユーザ識別子に対応し前記サーバのローカルに格納された副残高の残高額が、前記金額以上であるか否かを特定する特定モジュールと;
    前記特定モジュールの特定結果が肯定的である場合は、前記金額に対応するローカルに格納された副残高を取得し、取得した当該副残高に基づいて前記サービスを実行し、前記特定モジュールの特定結果が否定的である場合は、前記サーバと他のサーバとから総計すると前記金額に当たる副残高を取得し、取得した当該副残高に基づいて前記サービスを実行する、実行モジュールと;を備える、
    サービス処理装置。
  18. 前記実行モジュールは、前記金額と、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額との差分を特定して、前記ユーザ識別子に対応し前記サーバのローカルに格納された全副残高を取得し、更に、前記他のサーバから前記差分と一致する残高額の副残高を取得する、
    請求項17に記載のサービス処理装置。
  19. 前記実行モジュールは、他のサーバの前記ユーザ識別子に対応する副残高を、前記副残高の前記残高額の高い順に、取得した残高額が前記差分と一致するまで順次取得する、
    請求項18に記載のサービス処理装置。
  20. 前記ユーザ識別子に対応する総残高、前記ユーザ識別子に対応し前記サーバのローカルに格納された前記副残高の前記残高額と、前記ユーザ識別子に対応し前記他のサーバに格納された前記副残高の前記残高額とを更新する更新モジュールを更に備える、
    請求項17乃至請求項19のいずれか1項に記載のサービス処理装置。
  21. データ格納装置であって:
    各ユーザのデータを取得する取得モジュールと;
    前記ユーザの前記データを同じデータ量を有する複数のデータセットに分割する分割モジュールと;
    前記複数のデータセットを少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記データの総データ量と、各サーバのサーバ識別子と、各サーバに格納されたデータセットのデータ量とを格納する格納モジュールと;を備える、
    データ格納装置。
  22. データ格納装置であって:
    各ユーザの総残高を取得する取得モジュールと;
    前記ユーザの前記総残高を複数の副残高に均等に分割する分割モジュールと;
    前記複数の副残高を少なくとも2つのサーバに分けて格納し、更に、各サーバに、前記ユーザのユーザ識別子と、前記ユーザの前記総残高と、各サーバのサーバ識別子と、各サーバに格納された副残高の残高額とを格納する格納モジュールと;を備える、
    データ格納装置。
JP2018535349A 2016-01-06 2016-12-27 データ格納サービス処理方法及び装置 Active JP6975153B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610007367.5 2016-01-06
CN201610007367.5A CN106952085B (zh) 2016-01-06 2016-01-06 一种数据存储与业务处理的方法及装置
PCT/CN2016/112297 WO2017118318A1 (zh) 2016-01-06 2016-12-27 一种数据存储与业务处理的方法及装置

Publications (2)

Publication Number Publication Date
JP2019504415A true JP2019504415A (ja) 2019-02-14
JP6975153B2 JP6975153B2 (ja) 2021-12-01

Family

ID=59273290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018535349A Active JP6975153B2 (ja) 2016-01-06 2016-12-27 データ格納サービス処理方法及び装置

Country Status (9)

Country Link
US (1) US20180315030A1 (ja)
EP (1) EP3401862A4 (ja)
JP (1) JP6975153B2 (ja)
KR (1) KR102327572B1 (ja)
CN (1) CN106952085B (ja)
PH (1) PH12018501449A1 (ja)
SG (1) SG11201805826VA (ja)
TW (1) TWI686703B (ja)
WO (1) WO2017118318A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109727010A (zh) * 2018-05-14 2019-05-07 网联清算有限公司 业务查询方法、装置、计算机设备和存储介质
CN110728799A (zh) * 2019-10-15 2020-01-24 恩亿科(北京)数据科技有限公司 一种余量更新方法及装置
CN112001801A (zh) * 2020-10-28 2020-11-27 支付宝(杭州)信息技术有限公司 在区块链***中进行资源转移的方法和装置
CN112669160B (zh) * 2021-03-18 2021-06-29 恒生电子股份有限公司 数据处理方法、装置、电子设备及存储介质
CN113645304B (zh) * 2021-08-13 2023-06-16 恒生电子股份有限公司 数据服务处理方法及相关设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058717A (ja) * 2001-08-21 2003-02-28 Hitachi Software Eng Co Ltd 分散課金処理システムでの残金管理方法、残金管理プログラム及び分散課金処理システム
JP2005092739A (ja) * 2003-09-19 2005-04-07 Ricoh Co Ltd ストレージ装置、画像形成装置、文書処理方法、文書処理プログラム及び記録媒体
JP2005518011A (ja) * 2002-02-14 2005-06-16 ペッシン,ザッカリー 分散型資本システムの装置および方法
JP2011221730A (ja) * 2010-04-08 2011-11-04 Universal Entertainment Corp 決済システム
JP2012118709A (ja) * 2010-11-30 2012-06-21 Brother Ind Ltd 配信システム、ストレージ容量決定プログラム、及びストレージ容量決定方法
JP2013152664A (ja) * 2012-01-26 2013-08-08 Hitachi Omron Terminal Solutions Corp 自動取引装置
US20130282542A1 (en) * 2012-04-18 2013-10-24 The Royal Bank Of Scotland Plc Method, apparatus and system for retrieving financial data

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148377A (en) * 1996-11-22 2000-11-14 Mangosoft Corporation Shared memory computer networks
US20010044786A1 (en) * 2000-03-14 2001-11-22 Yoshihito Ishibashi Content usage management system and method, and program providing medium therefor
US7280971B1 (en) * 2000-06-09 2007-10-09 At&T Bls Intellectual Property, Inc. Method and system for server-based error processing in support of legacy-based usage and billing systems
US20050182720A1 (en) * 2003-02-24 2005-08-18 Wow! Technologies, Inc. Online payment system and method
US20060041505A1 (en) * 2002-10-11 2006-02-23 900Email Inc. Fee-based message delivery system
CN101784028B (zh) * 2009-01-16 2014-07-23 北京金山软件有限公司 一种移动终端软件业务订购的方法及***
GB0920644D0 (en) * 2009-11-25 2010-01-13 Geniedb System for improved record consistency and availability
CN102088491B (zh) * 2011-02-01 2013-06-26 西安建筑科技大学 一种面向分散式的云存储安全架构及其数据存取方法
US20120239560A1 (en) * 2011-03-04 2012-09-20 Pourfallah Stacy S Healthcare payment collection portal apparatuses, methods and systems
US20130346302A1 (en) * 2012-06-20 2013-12-26 Visa International Service Association Remote Portal Bill Payment Platform Apparatuses, Methods and Systems
CN103152423A (zh) * 2013-03-15 2013-06-12 安科智慧城市技术(中国)有限公司 一种云存储***及其数据存取方法
CN104252457B (zh) * 2013-06-25 2018-11-23 北京百度网讯科技有限公司 一种用于对数据集合进行管理的方法与设备
CN104424316B (zh) * 2013-09-06 2018-06-05 华为技术有限公司 一种数据存储方法、数据查询方法、相关装置和***
CN104794114B (zh) * 2014-01-16 2018-04-03 阿里巴巴集团控股有限公司 一种数据处理方法及装置
JP6012663B2 (ja) * 2014-05-21 2016-10-25 ソフトバンク株式会社 電子バリュー管理システム及びプログラム
US20180082370A1 (en) * 2016-09-21 2018-03-22 Mastercard International Incorporated Credit card product with dynamic interest rate based on balance/spending in merchant categories

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058717A (ja) * 2001-08-21 2003-02-28 Hitachi Software Eng Co Ltd 分散課金処理システムでの残金管理方法、残金管理プログラム及び分散課金処理システム
JP2005518011A (ja) * 2002-02-14 2005-06-16 ペッシン,ザッカリー 分散型資本システムの装置および方法
JP2005092739A (ja) * 2003-09-19 2005-04-07 Ricoh Co Ltd ストレージ装置、画像形成装置、文書処理方法、文書処理プログラム及び記録媒体
JP2011221730A (ja) * 2010-04-08 2011-11-04 Universal Entertainment Corp 決済システム
JP2012118709A (ja) * 2010-11-30 2012-06-21 Brother Ind Ltd 配信システム、ストレージ容量決定プログラム、及びストレージ容量決定方法
JP2013152664A (ja) * 2012-01-26 2013-08-08 Hitachi Omron Terminal Solutions Corp 自動取引装置
US20130282542A1 (en) * 2012-04-18 2013-10-24 The Royal Bank Of Scotland Plc Method, apparatus and system for retrieving financial data

Also Published As

Publication number Publication date
SG11201805826VA (en) 2018-08-30
EP3401862A4 (en) 2019-02-27
CN106952085A (zh) 2017-07-14
WO2017118318A1 (zh) 2017-07-13
TWI686703B (zh) 2020-03-01
KR102327572B1 (ko) 2021-11-17
CN106952085B (zh) 2021-06-25
KR20180109921A (ko) 2018-10-08
US20180315030A1 (en) 2018-11-01
JP6975153B2 (ja) 2021-12-01
TW201727517A (zh) 2017-08-01
PH12018501449A1 (en) 2019-03-18
EP3401862A1 (en) 2018-11-14

Similar Documents

Publication Publication Date Title
US11632441B2 (en) Methods, systems, and devices for electronic note identifier allocation and electronic note generation
CN108595157B (zh) 区块链数据的处理方法、装置、设备和存储介质
KR101959153B1 (ko) 데이터베이스에서의 계좌와 관련된 거래 요청의 효율적인 처리를 위한 시스템
US20210157800A1 (en) Blockchain-based transaction processing methods, apparatuses, and electronic devices
US10439937B2 (en) Service addressing in distributed environment
US11481765B2 (en) Blockchain-based transaction processing method and apparatus and electronic device
JP2019504415A (ja) データ格納サービス処理方法及び装置
CN109408590B (zh) 分布式数据库的扩容方法、装置、设备及存储介质
US11250395B2 (en) Blockchain-based transaction processing methods and apparatuses and electronic devices
US20180293257A1 (en) Method for accessing distributed database and distributed data service apparatus
CN106529953B (zh) 一种对业务属性进行风险识别的方法及装置
WO2022267769A1 (zh) 图数据生成的方法及装置
US11863675B2 (en) Data flow control in distributed computing systems
CN110737425B (zh) 一种计费平台***的应用程序的建立方法及装置
CN114036031A (zh) 一种企业数字中台中资源服务应用的调度***和方法
CN107122362A (zh) 云数据库资源扩展和服务扩展的方法和***
US9652766B1 (en) Managing data stored in memory locations having size limitations
CN109214884B (zh) 需求撮合方法及装置、电子设备
CN110889040B (zh) 用于推送信息的方法和装置
CN107391252A (zh) 一种资源处理方法及装置
JP2017091213A (ja) データベース更新処理システムおよびデータベース更新処理方法
CN111866096A (zh) 一种用于医疗***的负载均衡方法及装置
CN113656411A (zh) 用于图数据入库的方法及其装置
CN114237875A (zh) 一种集群管理方法、装置、设备及计算机存储介质
CN110287004A (zh) 基于docker容器技术的基础环境镜像预热方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191227

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20200605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201210

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20201228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210527

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: 20211101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211105

R150 Certificate of patent or registration of utility model

Ref document number: 6975153

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150