JP2013030035A - 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム - Google Patents
呼処理データ保存方法、呼処理データ振り分け装置およびプログラム Download PDFInfo
- Publication number
- JP2013030035A JP2013030035A JP2011166232A JP2011166232A JP2013030035A JP 2013030035 A JP2013030035 A JP 2013030035A JP 2011166232 A JP2011166232 A JP 2011166232A JP 2011166232 A JP2011166232 A JP 2011166232A JP 2013030035 A JP2013030035 A JP 2013030035A
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】ロードバランサBからのリクエストを受信し、受信したリクエストをプロセッサPに振り分けることによりデータをデータストアSに保存させるディスパッチャD(呼処理データ振り分け装置)が、複数のハッシュ関数を備える。そして、ディスパッチャD(呼処理データ振り分け装置)は、データ書き込み時に、複数のハッシュ関数に同一キーを入力することで、複数のプロセッサPを選択してリクエストを送信し、各データストアSにデータを保存する。
【選択図】図4
Description
また、あるデータについてのハッシュ値を生成するアルゴリズムであるハッシュアルゴリズムの1つとして、コンシステントハッシュ(Consistent Hashing)(非特許文献4参照)が知られている。
図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 (9)
- リクエスタから送信されたリクエストを、プロセッサに振り分ける複数の呼処理データ振り分け装置と、前記呼処理データ振り分け装置から受信したリクエストに基づき、呼処理データをデータストアに保存させる複数の前記プロセッサと、前記プロセッサの指示により前記呼処理データを保存する複数の前記データストアとを備えるデータベースクラスタの呼処理データ保存方法であって、
前記呼処理データ振り分け装置は、
前記リクエスタから前記リクエストを受信し、前記受信したリクエストの内容を構文解析するステップと、
前記構文解析した結果、前記リクエストが前記呼処理データの書き込み要求であると解析した場合に、
前記複数のプロセッサのうちから2以上のプロセッサを、前記書き込み要求を示すリクエストの送信先に決定するステップと、
前記決定した2以上のプロセッサそれぞれに、前記書き込み要求を示すリクエストを送信するステップと、を実行し、
前記2以上のプロセッサそれぞれは、
前記書き込み要求を示すリクエストを受信し、自身と接続する前記データストアそれぞれに前記呼処理データを保存させるステップを実行すること
を特徴とする呼処理データ保存方法。 - 前記呼処理データ振り分け装置は、
前記書き込み要求を示すリクエストの送信先を決定するステップにおいて、
コンシステントハッシュに基づき、前記複数のプロセッサの担当領域をハッシュ空間上に設定するステップと、
前記書き込み要求を示すリクエストに含まれるユニークな識別情報をキーとして抽出するステップと、
前記抽出したキーを、2以上のハッシュ関数それぞれに導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記書き込み要求を示すリクエストの送信先となる前記2以上のプロセッサを決定するステップと、を含んで実行すること
を特徴とする請求項1に記載の呼処理データ保存方法。 - 前記呼処理データ振り分け装置は、
前記リクエスタから第2の前記リクエストを受信し、前記受信した第2のリクエストの内容を構文解析するステップにおいて、前記構文解析した結果、前記第2のリクエストが前記データストアそれぞれに保存した呼処理データの読み込み要求であると解析した場合に、
前記書き込み要求を示すリクエストの送信先に決定した2以上のプロセッサのうちの1つを選択し、前記読み込み要求を示す第2のリクエストの送信先に決定するステップと、
前記決定したプロセッサに、前記読み込み要求を示す第2のリクエストを送信するステップと、を実行し、
前記読み込み要求を示す第2のリクエストを受信したプロセッサは、
自身と接続する前記データストアから前記呼処理データを取得して、前記呼処理データ振り分け装置に返信するステップを実行し、
前記呼処理データ振り分け装置は、
前記返信された前記呼処理データを、前記リクエスタに送信するステップを実行すること
を特徴とする請求項1に記載の呼処理データ保存方法。 - 前記呼処理データ振り分け装置は、
前記リクエスタから第2の前記リクエストを受信し、前記受信した第2のリクエストの内容を構文解析するステップにおいて、前記構文解析した結果、前記第2のリクエストが前記データストアそれぞれに保存した呼処理データの読み込み要求であると解析した場合に、
前記読み込み要求を示す第2のリクエストに含まれるユニークな識別情報をキーとして抽出するステップと、
前記抽出したキーを、前記2以上のハッシュ関数のうちの1つを選択して導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記読み込み要求を示す第2のリクエストの送信先となる前記プロセッサを決定するステップと、
前記決定したプロセッサに、前記読み込み要求を示す第2のリクエストを送信するステップと、を実行し、
前記読み込み要求を示す第2のリクエストを受信したプロセッサは、
自身と接続する前記データストアから前記呼処理データを取得して、前記呼処理データ振り分け装置に返信するステップを実行し、
前記呼処理データ振り分け装置は、
前記返信された前記呼処理データを、前記リクエスタに送信するステップを実行すること
を特徴とする請求項2に記載の呼処理データ保存方法。 - リクエスタから送信されたリクエストを、複数のプロセッサに振り分けることにより、呼処理データをデータストアに保存させる呼処理データ振り分け装置であって、
前記リクエスタから前記リクエストを受信し、前記受信したリクエストの内容を構文解析する構文解析部と、
前記構文解析部が構文解析した結果、前記リクエストが前記呼処理データの書き込み要求であると解析した場合に、
前記複数のプロセッサのうちから2以上のプロセッサを、前記書き込み要求を示すリクエストの送信先に決定し、前記決定した2以上のプロセッサそれぞれに、前記書き込み要求を示すリクエストを送信する振り分け処理部と、
を備えることを特徴とする呼処理データ振り分け装置。 - 前記振り分け処理部は、
コンシステントハッシュに基づき、前記複数のプロセッサの担当領域をハッシュ空間上に設定し、
前記書き込み要求を示すリクエストに含まれるユニークな識別情報をキーとして抽出し、
前記抽出したキーを、2以上のハッシュ関数それぞれに導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記書き込み要求を示すリクエストの送信先となる前記2以上のプロセッサを決定すること
を特徴とする請求項5に記載の呼処理データ振り分け装置。 - 前記構文解析部が、前記リクエスタから第2の前記リクエストを受信し構文解析した結果、前記第2のリクエストが前記データストアそれぞれに保存した呼処理データの読み込み要求であると解析した場合に、
前記振り分け処理部が、
前記書き込み要求を示すリクエストの送信先に決定した2以上のプロセッサのうちの1つを選択し、前記読み込み要求を示す第2のリクエストの送信先に決定し、前記決定したプロセッサに、前記読み込み要求を示す第2のリクエストを送信すること
を特徴とする請求項5に記載の呼処理データ振り分け装置。 - 前記構文解析部が、前記リクエスタから第2の前記リクエストを受信し構文解析した結果、前記第2のリクエストが前記データストアそれぞれに保存した呼処理データの読み込み要求であると解析した場合に、
前記振り分け処理部が、
前記読み込み要求を示す第2のリクエストに含まれるユニークな識別情報をキーとして抽出し、
前記抽出したキーを、前記2以上のハッシュ関数のうちの1つを選択して導入することにより、ハッシュ値を計算し、前記ハッシュ空間上の前記プロセッサの担当領域に基づき、前記読み込み要求を示す第2のリクエストの送信先となる前記プロセッサを決定し、前記決定したプロセッサに、前記読み込み要求を示す第2のリクエストを送信すること
を特徴とする請求項6に記載の呼処理データ振り分け装置。 - コンピュータを、請求項5乃至請求項8のいずれか1項に記載の呼処理データ振り分け装置として機能させるためのプログラム。
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 true JP2013030035A (ja) | 2013-02-07 |
JP5576836B2 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) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150215395A1 (en) * | 2014-01-29 | 2015-07-30 | Canon Kabushiki Kaisha | System and control method |
JP6067863B2 (ja) * | 2013-09-06 | 2017-01-25 | 株式会社日立製作所 | 分散ストレージシステムの制御方法 |
JP2018036978A (ja) * | 2016-09-02 | 2018-03-08 | 日本電信電話株式会社 | 振分装置、通信システム及びデータ振分方法 |
JP2018041322A (ja) * | 2016-09-08 | 2018-03-15 | 日本電信電話株式会社 | 異種データベース管理装置、方法及びプログラム |
CN116703651A (zh) * | 2023-08-08 | 2023-09-05 | 成都秦川物联网科技股份有限公司 | 一种智慧燃气数据中心运行管理方法、物联网系统和介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010146067A (ja) * | 2008-12-16 | 2010-07-01 | Fujitsu Ltd | データ処理プログラム、サーバ装置およびデータ処理方法 |
-
2011
- 2011-07-29 JP JP2011166232A patent/JP5576836B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010146067A (ja) * | 2008-12-16 | 2010-07-01 | Fujitsu Ltd | データ処理プログラム、サーバ装置およびデータ処理方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6067863B2 (ja) * | 2013-09-06 | 2017-01-25 | 株式会社日立製作所 | 分散ストレージシステムの制御方法 |
US20150215395A1 (en) * | 2014-01-29 | 2015-07-30 | Canon Kabushiki Kaisha | System and control method |
JP2015141622A (ja) * | 2014-01-29 | 2015-08-03 | キヤノン株式会社 | システムおよび制御方法 |
JP2018036978A (ja) * | 2016-09-02 | 2018-03-08 | 日本電信電話株式会社 | 振分装置、通信システム及びデータ振分方法 |
JP2018041322A (ja) * | 2016-09-08 | 2018-03-15 | 日本電信電話株式会社 | 異種データベース管理装置、方法及びプログラム |
CN116703651A (zh) * | 2023-08-08 | 2023-09-05 | 成都秦川物联网科技股份有限公司 | 一种智慧燃气数据中心运行管理方法、物联网系统和介质 |
CN116703651B (zh) * | 2023-08-08 | 2023-11-14 | 成都秦川物联网科技股份有限公司 | 一种智慧燃气数据中心运行管理方法、物联网系统和介质 |
Also Published As
Publication number | Publication date |
---|---|
JP5576836B2 (ja) | 2014-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111480154B (zh) | 批量数据摄取的方法、系统和介质 | |
US10523545B2 (en) | System and method for managing VoIP session continuity information using logical scalable units | |
US10630779B2 (en) | System and method for using VoIP session continuity information using logical scalable units | |
Wang et al. | HydraDB: a resilient RDMA-driven key-value middleware for in-memory cluster computing | |
CN106657287B (zh) | 一种数据访问方法及系统 | |
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 | |
WO2016179894A1 (zh) | 基于cdn的内容管理系统 | |
JP6408433B2 (ja) | 負荷分散プログラムおよびサーバ | |
KR20120072907A (ko) | 오브젝트를 복수 개의 데이터 노드들의 위치에 기반하여 분산 저장하는 분산 저장 시스템 및 그 위치 기반 분산 저장 방법 및 컴퓨터에 의하여 독출 가능한 저장 매체 | |
WO2013090699A1 (en) | Content delivery network | |
KR20120072908A (ko) | 복수 개의 프락시 서버를 포함하는 분산 저장 시스템 및 그 오브젝트 관리 방법 및 컴퓨터에 의하여 독출가능한 저장 매체 | |
CN110300188B (zh) | 数据传输系统、方法和设备 | |
JP4319971B2 (ja) | セッション情報管理システム、セッション情報管理方法およびそのプログラム | |
US11025688B1 (en) | Automated streaming data platform | |
WO2018072450A1 (en) | Method for elastic geographical database replication | |
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 | |
US11157454B2 (en) | Event-based synchronization in a file sharing environment | |
CN111294383B (zh) | 物联网服务管理系统 | |
JP5658621B2 (ja) | 信号振分複製先決定システム、信号振分複製先決定方法およびプログラム | |
JP5723330B2 (ja) | 分散処理システムおよび分散処理方法 |
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 |