JP5576836B2 - 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム - Google Patents
呼処理データ保存方法、呼処理データ振り分け装置およびプログラム Download PDFInfo
- Publication number
- JP5576836B2 JP5576836B2 JP2011166232A JP2011166232A JP5576836B2 JP 5576836 B2 JP5576836 B2 JP 5576836B2 JP 2011166232 A JP2011166232 A JP 2011166232A JP 2011166232 A JP2011166232 A JP 2011166232A JP 5576836 B2 JP5576836 B2 JP 5576836B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- call processing
- processing data
- processor
- data
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
また、あるデータについてのハッシュ値を生成するアルゴリズムであるハッシュアルゴリズムの1つとして、コンシステントハッシュ(Consistent Hashing)(非特許文献4参照)が知られている。
また、呼処理データ振り分け装置は、コンシステントハッシュに基づいて、書き込み要求を示すリクエストに含まれるユニークな識別情報をキーとして、2以上のハッシュ関数それぞれに導入することにより、書き込み要求を示すリクエストの送信先となる2以上のプロセッサを決定する。よって、本発明によれば、複数の複製データ間の一貫性を保ちつつ、可用性や冗長性を低下させず、スケーラブルにデータの書き込みを行うことができる。
さらに、呼処理データ振り分け装置は、コンシステントハッシュに基づいて、読み込み要求を示す第2のリクエストに含まれるユニークな識別情報をキーとして、2以上のハッシュ関数のうちの1つを選択して導入することにより、呼処理データをデータストアに保存させた2以上のプロセッサのうちから1つのプロセッサを選択して、読み込み要求を示す第2のリクエストを送信し、データを送信することができる。よって、本発明によれば、アクセス頻度が高い場合でも、呼処理データへの対等な振り分けが可能となり、オーバヘッドを防ぐことができる。
図1は、比較例である従来のデータベースクラスタの全体構成を示す概念図である。
比較例である従来のデータベースクラスタは、図1に示すように、ロードバランサ(Balancer:各図において「B」と表記)と、複数のディスパッチャ(Dispatcher:各図において「D」と表記)と、複数のプロセッサ(Processor:各図において「P」と表記)と、複数のデータストア(Storage:各図において「S」と表記)とを含んで構成される。
図2は、比較例のデータベースクラスタにおけるディスパッチャDの振り分け処理を説明するための図である。図2(a)は、データを書き込むリクエストをデータベースクラスタが受信した場合の振り分け処理を示し、図2(b)は、データを読み込むリクエストをデータベースクラスタが受信した場合の処理を示している。なお、扱うデータは、XML形式でデータストアSが保存するものとする。
次に、比較例であるデータベースクラスタにおける冗長化処理について説明する。既存のデータベースクラスタでは、プロセッサPがデータストアSに対してデータを書き込む際に、データの冗長化、可用性を高めるために複製を作成する。
図3は、比較例である既存のデータベースクラスタにおける冗長化処理を説明するための図である。図3(a)は、データの書き込み時の複製処理を示し、図3(b)は、データの読み込み時の処理を示している。
次に、本実施形態に係る呼処理データ保存方法について説明する。
図4は、本実施形態に係るディスパッチャD(呼処理データ振り分け装置)を含むデータベースクラスタの全体構成を示す概念図である。図4(a)は、書き込み時における処理を示し、図4(b)は、読み込み時における処理を示している。
次に、本実施形態に係るディスパッチャD(呼処理データ振り分け装置)について詳細に説明する。
図5は、本実施形態に係るディスパッチャD(呼処理データ振り分け装置)の構成例を示すブロック図である。
ディスパッチャDは、ロードバランサBおよび複数のプロセッサPと通信可能に接続され(適宜図4参照)、ロードバランサBから取得したリクエストを、プロセッサPに振り分ける装置であり、図5に示すように、制御部10と、入出力部20と、メモリ部30と、記憶部40とを含んで構成される。
また、この入出力部20は、通信回線を介して情報の送受信を行う通信インタフェースと、不図示のキーボード等の入力装置やモニタ等の出力装置等との間で入出力を行う入出力インタフェースとから構成される。
具体的には、関数選択部131は、構文解析部12が、リクエストの内容を、「PUT(書き込み)」であると解析した場合には、設定されている各ハッシュ値計算部132(132a,132b,132c)を選択し、その選択したハッシュ値計算部132に対して、リクエストを引き渡す。
また、関数選択部131は、構文解析部12が、リクエストの内容を、「GET(読み込み)」であると解析した場合には、ランダム若しくはラウンドロビンで、設定されているハッシュ値計算部132(132a,132b,132c)のうちの1つを選択し、その選択したハッシュ値計算部132に対して、リクエストを引き渡す。
続いて、ハッシュ値計算部132は、ハッシュ空間上での配置から、その領域を担当するプロセッサPを、リクエストの振り分け先として決定する。
また、関数選択部131により、複数のハッシュ値計算部132(132a,132b,132c)のうちの1つのハッシュ値計算部132が、ランダム若しくはラウンドロビンで選択されることで、アクセス頻度が偏在している読み込み時であっても、複製データへの対等な振り分けが可能になる。
なお、ディスパッチャD1,D2,D3は、それぞれ同じ複数のハッシュ関数(h1,h2,h3)を備えたハッシュ値計算部132(132a,132b,132c)を備える。
次に、本実施形態に係る呼処理データ保存方法について、図4を参照して詳細に説明する(適宜図5参照)。
まず、図4(a)を参照して、書き込み時の処理について説明する。
リクエスタ(不図示)からの書き込み要求としてのリクエストを取得したロードバランサBは、ラウンドロビンで振り分け先のディスパッチャDを決定し、そのリクエストを送信する。ここでは、振り分け先としてディスパッチャD1が選択される。
続いて、ハッシュ値計算部132(132a,132b,132c)それぞれは、ハッシュ空間上での配置から、その領域を担当するプロセッサPを、リクエストの振り分け先として決定する。
そして、各ハッシュ値計算部132a,132b,132cは、情報送信部14を介して、リクエストをそれぞれが決定したプロセッサP(P1,P2,P3)に送信する。
次に、図4(b)を参照して、読み込み時の処理について説明する(適宜図5参照)。なお、ここでは、図4(a)の書き込み処理により、同じXMLファイルのデータがデータストアS(S1,S2,S3)に書き込まれているものとする。
そして、ハッシュ値計算部132aは、情報送信部14を介して、リクエストを決定したプロセッサP1に送信する。
11 情報受信部
12 構文解析部
13 振り分け処理部
14 情報送信部
20 入出力部
30 メモリ部
40 記憶部
131 関数選択部
132 ハッシュ値計算部
B ロードバランサ
D ディスパッチャ(呼処理データ振り分け装置)
P プロセッサ
S データストア
Claims (3)
- リクエスタから送信されたリクエストを、プロセッサに振り分ける複数の呼処理データ振り分け装置と、前記呼処理データ振り分け装置から受信したリクエストに基づき、呼処理データをデータストアに保存させる複数の前記プロセッサと、前記プロセッサの指示により前記呼処理データを保存する複数の前記データストアとを備えるデータベースクラスタの呼処理データ保存方法であって、
前記呼処理データ振り分け装置は、
前記リクエスタから前記リクエストを受信し、前記受信したリクエストの内容を構文解析するステップと、
前記構文解析した結果、前記リクエストが前記呼処理データの書き込み要求であると解析した場合に、
前記複数のプロセッサのうちから2以上のプロセッサを、前記書き込み要求を示すリクエストの送信先に決定するステップと、
前記決定した2以上のプロセッサそれぞれに、前記書き込み要求を示すリクエストを送信するステップと、を実行し、
前記2以上のプロセッサそれぞれは、
前記書き込み要求を示すリクエストを受信し、自身と接続する前記データストアそれぞれに前記呼処理データを保存させるステップを実行し、
前記呼処理データ振り分け装置は、
前記書き込み要求を示すリクエストの送信先を決定するステップにおいて、
コンシステントハッシュに基づき、前記複数のプロセッサの担当領域をハッシュ空間上に設定するステップと、
前記書き込み要求を示すリクエストに含まれるユニークな識別情報をキーとして抽出するステップと、
前記抽出したキーを、2以上のハッシュ関数それぞれに導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記書き込み要求を示すリクエストの送信先となる前記2以上のプロセッサを決定するステップと、を含んで実行し、
前記呼処理データ振り分け装置は、
前記リクエスタから第2の前記リクエストを受信し、前記受信した第2のリクエストの内容を構文解析するステップにおいて、前記構文解析した結果、前記第2のリクエストが前記データストアそれぞれに保存した呼処理データの読み込み要求であると解析した場合に、
前記読み込み要求を示す第2のリクエストに含まれるユニークな識別情報をキーとして抽出するステップと、
前記抽出したキーを、前記2以上のハッシュ関数のうちの1つを選択して導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記読み込み要求を示す第2のリクエストの送信先となる前記プロセッサを決定するステップと、
前記決定したプロセッサに、前記読み込み要求を示す第2のリクエストを送信するステップと、を実行し、
前記読み込み要求を示す第2のリクエストを受信したプロセッサは、
自身と接続する前記データストアから前記呼処理データを取得して、前記呼処理データ振り分け装置に返信するステップを実行し、
前記呼処理データ振り分け装置は、
前記返信された前記呼処理データを、前記リクエスタに送信するステップを実行すること
を特徴とする呼処理データ保存方法。 - リクエスタから送信されたリクエストを、複数のプロセッサに振り分けることにより、呼処理データをデータストアに保存させる呼処理データ振り分け装置であって、
前記リクエスタから前記リクエストを受信し、前記受信したリクエストの内容を構文解析する構文解析部と、
前記構文解析部が構文解析した結果、前記リクエストが前記呼処理データの書き込み要求であると解析した場合に、
コンシステントハッシュに基づき、前記複数のプロセッサの担当領域をハッシュ空間上に設定し、
前記書き込み要求を示すリクエストに含まれるユニークな識別情報をキーとして抽出し、
前記抽出したキーを、2以上のハッシュ関数それぞれに導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記複数のプロセッサのうち、前記書き込み要求を示すリクエストの送信先となる2以上のプロセッサを決定し、前記決定した2以上のプロセッサそれぞれに、前記書き込み要求を示すリクエストを送信する振り分け処理部と、を備え、
前記構文解析部が、前記リクエスタから第2の前記リクエストを受信し構文解析した結果、前記第2のリクエストが前記データストアそれぞれに保存した呼処理データの読み込み要求であると解析した場合に、
前記振り分け処理部が、
前記読み込み要求を示す第2のリクエストに含まれるユニークな識別情報をキーとして抽出し、
前記抽出したキーを、前記2以上のハッシュ関数のうちの1つを選択して導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記読み込み要求を示す第2のリクエストの送信先となる前記プロセッサを決定し、前記決定したプロセッサに、前記読み込み要求を示す第2のリクエストを送信すること
を特徴とする呼処理データ振り分け装置。 - コンピュータを、請求項2に記載の呼処理データ振り分け装置として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011166232A JP5576836B2 (ja) | 2011-07-29 | 2011-07-29 | 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011166232A JP5576836B2 (ja) | 2011-07-29 | 2011-07-29 | 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013030035A JP2013030035A (ja) | 2013-02-07 |
JP5576836B2 true JP5576836B2 (ja) | 2014-08-20 |
Family
ID=47787011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011166232A Expired - Fee Related JP5576836B2 (ja) | 2011-07-29 | 2011-07-29 | 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5576836B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015033451A1 (ja) * | 2013-09-06 | 2015-03-12 | 株式会社日立製作所 | 分散ストレージシステム及びそのデータアクセス方法 |
JP6305078B2 (ja) * | 2014-01-29 | 2018-04-04 | キヤノン株式会社 | システムおよび制御方法 |
JP6571614B2 (ja) * | 2016-09-02 | 2019-09-04 | 日本電信電話株式会社 | 振分装置、通信システム及びデータ振分方法 |
JP6674871B2 (ja) * | 2016-09-08 | 2020-04-01 | 日本電信電話株式会社 | 異種データベース管理装置、方法及びプログラム |
CN116703651B (zh) * | 2023-08-08 | 2023-11-14 | 成都秦川物联网科技股份有限公司 | 一种智慧燃气数据中心运行管理方法、物联网系统和介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5396848B2 (ja) * | 2008-12-16 | 2014-01-22 | 富士通株式会社 | データ処理プログラム、サーバ装置およびデータ処理方法 |
-
2011
- 2011-07-29 JP JP2011166232A patent/JP5576836B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013030035A (ja) | 2013-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111480154B (zh) | 批量数据摄取的方法、系统和介质 | |
Wang et al. | HydraDB: a resilient RDMA-driven key-value middleware for in-memory cluster computing | |
EP1330907B1 (en) | Method and apparatus for real-time parallel delivery of segments of a large payload file | |
US10803015B2 (en) | Caching system and method | |
CA2512312C (en) | Metadata based file switch and switched file system | |
US8805984B2 (en) | Multi-operational transactional access of in-memory data grids in a client-server environment | |
JP5576836B2 (ja) | 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム | |
US20120166403A1 (en) | Distributed storage system having content-based deduplication function and object storing method | |
JP6408433B2 (ja) | 負荷分散プログラムおよびサーバ | |
US20070220302A1 (en) | Session failover management in a high-availability server cluster environment | |
CN104834722A (zh) | 基于cdn的内容管理系统 | |
KR20120072907A (ko) | 오브젝트를 복수 개의 데이터 노드들의 위치에 기반하여 분산 저장하는 분산 저장 시스템 및 그 위치 기반 분산 저장 방법 및 컴퓨터에 의하여 독출 가능한 저장 매체 | |
KR20120072908A (ko) | 복수 개의 프락시 서버를 포함하는 분산 저장 시스템 및 그 오브젝트 관리 방법 및 컴퓨터에 의하여 독출가능한 저장 매체 | |
EP2791819A1 (en) | Content delivery network | |
CN110300188B (zh) | 数据传输系统、方法和设备 | |
Zhao et al. | Sdpaxos: Building efficient semi-decentralized geo-replicated state machines | |
WO2015021178A1 (en) | System and method for processing web service transactions using timestamp data | |
WO2015021172A1 (en) | System and method for storing and processing web service requests | |
US11025688B1 (en) | Automated streaming data platform | |
WO2018072450A1 (en) | Method for elastic geographical database replication | |
JP2014041550A (ja) | データ移行処理システムおよびデータ移行処理方法 | |
CN109067898A (zh) | 一种通过文件散列分布降低内容分发网络边缘节点回源率的方法 | |
EP2523423A1 (en) | Method and system for providing a distributed scalable hosting environment for web services | |
CN110928911A (zh) | 审校请求处理系统、方法、装置、计算机可读存储介质 | |
US10992748B1 (en) | Verification of event-based synchronization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20130201 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130819 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140311 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140502 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140508 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140528 |
|
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: 20140701 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140704 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5576836 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |