JP6046523B2 - インメモリ型分散データベース、データ分散方法及びプログラム - Google Patents
インメモリ型分散データベース、データ分散方法及びプログラム Download PDFInfo
- Publication number
- JP6046523B2 JP6046523B2 JP2013044074A JP2013044074A JP6046523B2 JP 6046523 B2 JP6046523 B2 JP 6046523B2 JP 2013044074 A JP2013044074 A JP 2013044074A JP 2013044074 A JP2013044074 A JP 2013044074A JP 6046523 B2 JP6046523 B2 JP 6046523B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- distributed
- memory
- router
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
インメモリ型分散データベース(例えば、MongoDB)は、ハードディスクでデータを管理するデータベースシステムに対比して高速なデータの入出力を実現するため、主にメインメモリ上でデータを管理するよう設計されたものである。
すなわち、インメモリ型分散データベースは、データを複数のノードに分散して記憶するに際し、各ノードのメモリの利用状況を一元的に管理するリソース監視サーバと、各ノードとユーザアプリケーションとの間に位置しユーザアプリケーションからの入出力命令をノードに転送する場合にリソース監視サーバの情報を参照し、書き込むデータに対する空きメモリ容量が少ないノードを避けて命令を転送する分散DBルータを有して構成されている。
前記各ノードは、前記分散DBルータからの入出力命令を受信した時点で、書き込むデータに対する空きメモリ容量が指定された閾値以下の場合は、前記入出力命令を他のノードに転送する転送手段を備える。
ドキュメントの属性と重視するか否かの対応関係は運用者が予め定め、
前記分散DBルータ内に構成されたキャッシュは、前記ユーザアプリケーションからの重要度の属性を重視するドキュメントの入力命令に対して、
信頼性の高いサーバ機器で構成されたノードへの書き込みを行う
ことで前記重視に応じた処理応答を行うことを特徴としている。
請求項5の発明は、請求項3のインメモリ型分散データベースにおいて、
ドキュメントの属性と重視するか否かの対応関係は運用者が予め定め、
前記分散DBルータ内に構成されたキャッシュは、前記ユーザアプリケーションからの応答性能の属性を重視するドキュメントの入力命令に対して、
ノードへの書き込みが実施される前に前記ユーザアプリケーションへのレスポンスを返す処理を行う
ことで前記重視に応じた処理応答を行うことを特徴としている。
請求項6の発明は、請求項3のインメモリ型分散データベースにおいて、
ドキュメントの属性と重視するか否かの対応関係は運用者が予め定め、
前記分散DBルータ内に構成されたキャッシュは、前記ユーザアプリケーションからの応答性能の属性を重視するドキュメントの入力命令に対して、
処理待ちキューにおいて処理順番を優先させる処理を行う
ことで前記重視に応じた処理応答を行うことを特徴としている。
前記分散DBルータからの入出力命令を前記各ノードが受信した時点で、書き込むデータに対する空きメモリ容量が指定された閾値以下の場合は、前記入出力命令を他のノードに転送する手順を備えたことを特徴としている。
ユーザアプリケーションからの入出力命令を前記ノードに転送する場合に前記リソース監視サーバの情報を参照し、書き込むデータに対する空きメモリ容量が少ないノードを避けて命令を転送する分散DBルータと、を有するインメモリ型分散データベースのデータ分散プログラムにおいて、
前記分散DBルータからの入出力命令を前記各ノードが受信した時点で、書き込むデータに対する空きメモリ容量が指定された閾値以下の場合は、前記入出力命令を他のノードに転送する手順をコンピュータに実行させることを特徴としている。
また、分散DBルータ内のキャッシュで入出力命令を保持することにより、データごとに、信頼性、応答性能、優先度等のレベルに応じた取り扱いが可能となる。
本発明のインメモリ型分散データベースは、ユーザアプリケーション1と、ユーザアプリケーション1からのデータを分散させて管理する複数のノード2と、各ノード2のメモリの利用状況を一元的に管理するリソース監視サーバ3と、ユーザアプリケーション1からの入出力命令を各ノード2に転送する分散DBルータ4とにより構築されている。
また、転送手段2cは、閾値を超える空きメモリ容量を有するノード2を選択する転送先決定手段を備えている。この転送先決定手段は、各ノード2にリソース問合せを順次行い、応答を受信することでメモリ空きが有る他のノード2を選択する。これにより、ノード2が分散DBルータ4からの入出力命令を受信した際、当該ノード2において、書き込むデータに対する空きメモリ容量が、運用者が指定した閾値以下である場合は、選択された他のノード2(リソースに空きがあるノード)に入出力命令を転送する。
各ノード2に存在するデータベース2bは、そのノード2に渡ってきたドキュメントをハードディスクに保管するためのものである。すなわち、オンメモリに存在するドキュメントを非同期にハードディスク上に保管することが行われる。これにより、仮にノード2の電源がOFFになりメモリ2a上のデータが消えたとしても、このデータベース2bからメモリ2a上にデータを復旧させることができる。
各ノード2におけるメモリ2aの使用量のチェックは、ノード側から自発的に通知する方法でも良い。この場合、リソース監視サーバ3における定期的な監視トラフィックを削減することができる。
また、リソース監視サーバ3は、いずれかのノード2のメモリの利用状況が、運用者が指定した閾値を超えた場合には、運用者にアラームを通知する。
また、書き込むドキュメントを分散DBルータ4にてキューイングし、優先度の高い属性を持つドキュメントは優先的に処理することが行われる。
先ず、分散DBルータ4によりデータ転送先のノードを選定する場合の処理手順について説明する(図2)。
分散DBルータ4がユーザアプリケーション1から書込みデータを受信した場合(ステップ11)、リソース監視サーバ3に対してリソース問合せ発行を行い、リソース監視サーバ3からの応答を受信する(ステップ12)。リソース監視サーバ3では、定期的に各ノード2のメモリ2aの利用状況を一元的に管理しているので、「空きリソース有」のノード2を把握することができる。
リソース監視サーバ3からの情報が「空きリソース有」の場合(ステップ13)、空きリソース有のノード2に対して書込みデータの送信が行われる(ステップ14)。
そして時間を置いて、ステップ12及びステップ13と同様のリソース問合せ発行及び応答受信(ステップ16)及び空きリソースの有無の判断(ステップ17)を繰り返して行い、「空きリソース有」が存在した場合(ステップ17)、「空きリソース有」のノード2に対して書込みデータの送信を行う(ステップ14)。
ノード2が、分散DBルータ4からの書込みデータを受信すると(ステップ21)、自らのメモリ2aの空きの有無のチェックを行い(ステップ22)、空きメモリの有無を判断する(ステップ23)。
空きメモリ有の場合、ノード2のメモリ2aに対してデータ書込みが行われる(ステップ24)。
すなわち、図4及び図5に示すように、分散DBルータ4から「空きリソース有」のノード2(ノードA)に対して書込みデータの送信51が行われ、リソース問合せ応答受信及び転送先決定処理が開始された場合(ステップ31)、各ノード2(ノードB,C)に対して順次リソースチェック52が行われ、各ノード2(ノードB,C,…)からは順次リソースチェック応答53を受信する(図5)。
転送先を決定するノード2(ノードA)では、各ノード2からの応答を受けるための応答時間が経過しているかどうかを判断する(ステップ32)。
応答時間経過前であれば、リソース問合せ応答を受信し(ステップ33)、リソース問合せ応答があったメモリ空き有(ステップ34)のノード2(ノードC)を転送先として決定する。
メモリ空き有のノードでない場合は(ステップ34)、リソース監視サーバ3への通知を行い(ステップ35)、応答時間経過が経過するまで、リソース問合せ応答を受信し(ステップ33)、メモリ空き有(ステップ34)のノードを転送先として決定する作業が繰り返される。
また、転送先ノードが無い場合は(ステップ28)は、転送先決定を行うノード2にデータ書込みが行われる(ステップ24)。すなわち、ノード2のあるノードから他のノードにドキュメントを転送しようとした場合、転送先も無い(他のノードもメモリの空きが無い)場合は、しかたなくノード2のハードディスクにデータを書込むという手段が取られる。
ユーザアプリケーション1からの書込みデータの送信61を分散DBルータ4が受信し、リソース監視サーバ3に対してリソース問合せ発行62を行い、リソース監視サーバ3から空きリソース無し(ノードのメモリに空きが無い)とのリソース応答63を受信した場合、書込みデータを分散DBルータ4内のキャッシュ4aに蓄積し、リソース監視サーバ3に対してはキャッシュ処理通知64を行い、アプリケーション1へは書込み応答65を行う。
そして、リソース管理サーバ3とノード2との定期的な応答処理後に、ステップ16及びステップ17で空きリソースが見つかった場合、リソース管理サーバ3は分散DBルータ4にリソース空き通知66を行い、これを受けた分散DBルータ4がキャッシュ4aに蓄積されている書込みデータをノードへ転送67する。
また、分散DBルータ4内にキャッシュ4aを構成し、キャッシュ4aで入出力命令を保持制御することにより、データごとに、信頼性、応答性能、優先度等のレベルに応じた応答処理を行うことが可能となる。
Claims (8)
- データを複数のノードに分散して記憶するに際し、前記各ノードのメモリの利用状況を一元的に管理するリソース監視サーバと、
ユーザアプリケーションからの入出力命令を前記ノードに転送する場合に前記リソース監視サーバの情報を参照し、書き込むデータに対する空きメモリ容量が少ないノードを避けて命令を転送する分散DBルータと、を有するインメモリ型分散データベースにおいて、
前記各ノードは、前記分散DBルータからの入出力命令を受信した時点で、書き込むデータに対する空きメモリ容量が指定された閾値以下の場合は、前記入出力命令を他のノードに転送する転送手段を備えたことを特徴とするインメモリ型分散データベース。 - 前記転送手段は、前記閾値を超える空きメモリ容量があるノードを選択する転送先決定手段を備える請求項1に記載のインメモリ型分散データベース。
- 前記分散DBルータ内にキャッシュを構成し、ノードのメモリ使用量超過が解消されるまで入出力命令を前記キャッシュにて保持する請求項1に記載のインメモリ型分散データベース。
- ドキュメントの属性と重視するか否かの対応関係は運用者が予め定め、
前記分散DBルータ内に構成されたキャッシュは、前記ユーザアプリケーションからの重要度の属性を重視するドキュメントの入力命令に対して、
信頼性の高いサーバ機器で構成されたノードへの書き込みを行う
ことで前記重視に応じた処理応答を行う請求項3に記載のインメモリ型分散データベース。 - ドキュメントの属性と重視するか否かの対応関係は運用者が予め定め、
前記分散DBルータ内に構成されたキャッシュは、前記ユーザアプリケーションからの応答性能の属性を重視するドキュメントの入力命令に対して、
ノードへの書き込みが実施される前に前記ユーザアプリケーションへのレスポンスを返す処理を行う
ことで前記重視に応じた処理応答を行う請求項3に記載のインメモリ型分散データベース。 - ドキュメントの属性と重視するか否かの対応関係は運用者が予め定め、
前記分散DBルータ内に構成されたキャッシュは、前記ユーザアプリケーションからの優先度の属性を重視するドキュメントの入力命令に対して、
処理待ちキューにおいて処理順番を優先させる処理を行う
ことで前記重視に応じた処理応答を行う請求項3に記載のインメモリ型分散データベース。 - データを複数のノードに分散して記憶するに際し、前記各ノードのメモリの利用状況を一元的に管理するリソース監視サーバと、
ユーザアプリケーションからの入出力命令を前記ノードに転送する場合に前記リソース監視サーバの情報を参照し、書き込むデータに対する空きメモリ容量が少ないノードを避けて命令を転送する分散DBルータと、を有するインメモリ型分散データベースのデータ分散方法において、
前記分散DBルータからの入出力命令を前記各ノードが受信した時点で、書き込むデータに対する空きメモリ容量が指定された閾値以下の場合は、前記入出力命令を他のノードに転送する手順を備えたことを特徴とするデータ分散方法。 - データを複数のノードに分散して記憶するに際し、前記各ノードのメモリの利用状況を一元的に管理するリソース監視サーバと、
ユーザアプリケーションからの入出力命令を前記ノードに転送する場合に前記リソース監視サーバの情報を参照し、書き込むデータに対する空きメモリ容量が少ないノードを避けて命令を転送する分散DBルータと、を有するインメモリ型分散データベースのデータ分散プログラムにおいて、
前記分散DBルータからの入出力命令を前記各ノードが受信した時点で、書き込むデータに対する空きメモリ容量が指定された閾値以下の場合は、前記入出力命令を他のノードに転送する手順をコンピュータに実行させるデータ分散プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013044074A JP6046523B2 (ja) | 2013-03-06 | 2013-03-06 | インメモリ型分散データベース、データ分散方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013044074A JP6046523B2 (ja) | 2013-03-06 | 2013-03-06 | インメモリ型分散データベース、データ分散方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014174597A JP2014174597A (ja) | 2014-09-22 |
JP6046523B2 true JP6046523B2 (ja) | 2016-12-14 |
Family
ID=51695798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013044074A Active JP6046523B2 (ja) | 2013-03-06 | 2013-03-06 | インメモリ型分散データベース、データ分散方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6046523B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7169575B2 (ja) | 2017-11-22 | 2022-11-11 | 日本電気株式会社 | 着色コンタクトレンズ、着色コンタクトレンズの製造方法及び虹彩照合システム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101886072B1 (ko) * | 2016-12-21 | 2018-08-08 | 세림티에스지(주) | 분산 인 메모리 환경에서 실시간 스트림 데이터 처리를 위한 동적 잡 스케쥴링 시스템 및 방법 |
CN111124316B (zh) * | 2019-12-30 | 2023-12-19 | 青岛海尔科技有限公司 | 存储空间的共享方法和装置及计算机可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003140838A (ja) * | 2001-11-06 | 2003-05-16 | Hitachi Ltd | アレイ記憶装置 |
JP2003308233A (ja) * | 2002-04-17 | 2003-10-31 | Matsushita Electric Ind Co Ltd | ネットワークシステム、端末装置、コンテンツサーバ、及びネットワークを介したコンテンツ記録方法 |
JP2004086721A (ja) * | 2002-08-28 | 2004-03-18 | Nec Corp | データ複製システム、中継装置、データ送受信方法およびストレージ内のデータを複製するためのプログラム |
JP2006079389A (ja) * | 2004-09-10 | 2006-03-23 | Casio Comput Co Ltd | データバックアップ制御装置およびプログラム |
JP2011186810A (ja) * | 2010-03-09 | 2011-09-22 | Fujitsu Ltd | 負荷分散装置、負荷分散方法及び負荷分散プログラム |
JP5304950B2 (ja) * | 2010-08-04 | 2013-10-02 | 株式会社日立製作所 | データベース管理方法、データベース管理装置及びデータベース管理プログラム |
JP2012190377A (ja) * | 2011-03-14 | 2012-10-04 | Kddi Corp | コンテンツ分散保管システム |
-
2013
- 2013-03-06 JP JP2013044074A patent/JP6046523B2/ja active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7169575B2 (ja) | 2017-11-22 | 2022-11-11 | 日本電気株式会社 | 着色コンタクトレンズ、着色コンタクトレンズの製造方法及び虹彩照合システム |
Also Published As
Publication number | Publication date |
---|---|
JP2014174597A (ja) | 2014-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10402220B2 (en) | System and method for supporting a scalable thread pool in a distributed data grid | |
US10318467B2 (en) | Preventing input/output (I/O) traffic overloading of an interconnect channel in a distributed data storage system | |
US10645152B2 (en) | Information processing apparatus and memory control method for managing connections with other information processing apparatuses | |
CN110058786B (zh) | 用于控制存储系统中的写请求的方法、装置和计算机程序产品 | |
US9930133B2 (en) | System and method for managing application performance | |
US20170031622A1 (en) | Methods for allocating storage cluster hardware resources and devices thereof | |
CN110383764B (zh) | 无服务器系统中使用历史数据处理事件的系统和方法 | |
JP6186787B2 (ja) | データ転送装置、データ転送システム、データ転送方法及びプログラム | |
JP6272190B2 (ja) | 計算機システム、計算機、負荷分散方法及びそのプログラム | |
WO2022257719A1 (zh) | 数据库事务处理的方法、系统、电子设备及存储介质 | |
US20180004430A1 (en) | Chunk Monitoring | |
JP6046523B2 (ja) | インメモリ型分散データベース、データ分散方法及びプログラム | |
CN110362426B (zh) | 一种面向突发性负载的选择性副本实现方法及系统 | |
CN117806851A (zh) | 多主机共享的内存系统、内存访问方法、设备和存储介质 | |
CN109478126B (zh) | 计算设备中的在外部管理的i/o饥饿避免 | |
JP5158576B2 (ja) | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム | |
WO2012124295A1 (ja) | コンピュータシステム、制御システム、制御方法および制御プログラム | |
US11169720B1 (en) | System and method for creating on-demand virtual filesystem having virtual burst buffers created on the fly | |
US10148503B1 (en) | Mechanism for dynamic delivery of network configuration states to protocol heads | |
US20130132692A1 (en) | Storage devices and storage systems | |
US10708343B2 (en) | Data repository for a distributed processing environment | |
US11567836B1 (en) | Adaptive throttling of metadata requests | |
JP5937539B2 (ja) | 流量制御装置、通信制御システム、流量制御方法及びプログラム | |
US10705761B2 (en) | Method of and system for scheduling transmission of I/O operations | |
JP6167015B2 (ja) | 情報処理システム、管理プログラム、及びインデックス管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150827 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160511 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160608 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160805 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20160810 |
|
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: 20161109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161117 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6046523 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |