JP5718974B2 - 情報処理装置、情報処理方法、および、情報処理プログラム - Google Patents
情報処理装置、情報処理方法、および、情報処理プログラム Download PDFInfo
- Publication number
- JP5718974B2 JP5718974B2 JP2013107572A JP2013107572A JP5718974B2 JP 5718974 B2 JP5718974 B2 JP 5718974B2 JP 2013107572 A JP2013107572 A JP 2013107572A JP 2013107572 A JP2013107572 A JP 2013107572A JP 5718974 B2 JP5718974 B2 JP 5718974B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- value
- cache
- group
- file
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
(2)各サーバでは、ログ先行書き込み用ログファイル(以下、WALログとする)を一つ有する。WALログは、書き込み要求に対して永続性を担保する。
(3)各サーバは、(key,value)の削除、更新、追加といったオペレーションのWALログへの書き込みが成功すると、メインメモリ上に確保した(key,value)を格納するためのメインメモリ上のバッファ領域へ書き込みを行う。この時点で、書き込まれた(key,value)は参照可能となる。
(4)上記のメインメモリ上に確保したバッファ領域のデータ量が大きくなった場合、各サーバは、分割した範囲ごとにファイルへ書き込みを行い、バッファ領域を解放する。このように、各サーバは、メインメモリ上のバッファ領域をファイルに書きこんだ時点で、そのバッファ領域を解放することで、WALログの肥大化を防いでいる。
[概要]
以下、本発明の実施形態を第1の実施形態および第2の実施形態に分けて説明する。まず、図1を用いて第1の実施形態の情報処理装置(サーバ)の概要を説明する。図1は、第1の実施形態のサーバの概要を説明する図である。
次に、図2を用いて、サーバ10の構成を説明する。図2は、サーバの機能構成図である。サーバ10は、図2に示すように、補助記憶部11、メインメモリ12、制御部13、および、入出力インタフェース14を備える。
次に、図4を用いて、サーバ10の処理手順を説明する。なお、事前にサーバ10の最大キャッシュサイズ登録部136において、最大キャッシュサイズAの登録を受け付け、メインメモリ12に格納しておくものとする。図4は、サーバの処理手順を説明する図である。
次に、本発明の第2の実施形態を説明する。第1の実施形態と同じ構成、同じ処理については説明を省略する。第2の実施形態のサーバ10aは、バッファ領域の(key,ts,value)群をキャッシュ領域へ移動させるとき、このバッファ領域の(key,ts,value)群のうち、現在時刻から過去所定時間分の(key,ts,value)群をキャッシュ領域へ移動させることを特徴とする。
この第2の実施形態のサーバ10aは、図2の破線で示すキャッシュ保持期間登録部138をさらに備える。また、サーバ10aは、キャッシュ作成部132に代えて、キャッシュ作成部132aを備える。
このようなキャッシュ作成部132aの処理手順を、図8を用いて説明する。図8は、第2の実施形態のキャッシュ作成部の処理手順を説明する図である。なお、サーバ10aは、事前に、キャッシュ保持期間登録部138により、入出力インタフェース14経由で、キャッシュ保持期間の入力を受け付けておくものとする。
また、サーバ10,10aの検索部134が受け付ける検索要求は、keyのみならず、検索の対象であるtsの範囲(タイムスタンプ区間)を含んでいてもよい。この場合、検索部134は、受け付けた検索要求に示される範囲のtsの値を持つ(key,ts,value)を、キャッシュ領域、および、ファイルから検索する。
前記したサーバ10,10aが実行する処理をコンピュータが実行可能な言語で記述したプログラム(情報処理プログラム)で実現することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータで読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより前記した実施形態と同様の処理を実現してもよい。以下に、サーバ10,10aと同様の機能を実現する情報処理プログラムを実行するコンピュータの一例を説明する。
11 補助記憶部
12 メインメモリ
13 制御部
14 入出力インタフェース
130 データ書き込み部
131 ファイル作成部
132,132a キャッシュ作成部
133 バッファ解放部
134 検索部
135 キャッシュ削除部
136 最大キャッシュサイズ登録部
137 リカバリ部
138 キャッシュ保持期間登録部
Claims (7)
- メインメモリ上に、WAL(Write Ahead Logging)ログを備え、前記WALログに、KeyValueストアに用いられる(key,value)の削除、変更、または、追加を示すオペレーションの書き込みが成功すると、前記(key,value)を、前記メインメモリ上のバッファ領域へ書き込む情報処理装置であって、
前記バッファ領域に書き込まれた前記(key,value)の集合である(key,value)群のデータ量が所定の閾値を超えたとき、
前記バッファ領域に書き込まれた(key,value)群をファイルへ書き出すファイル作成部と、
前記バッファ領域に書き込まれた(key,value)群を、前記メインメモリ上に確保されたキャッシュ領域に移動させるキャッシュ作成部と、
前記(key,value)群のファイルへの書き出し、および、前記キャッシュ領域への移動完了後、前記バッファ領域を解放するバッファ解放部と、
前記keyを含む検索要求を受け付けたとき、
前記キャッシュ領域から前記keyを含む(key,value)を検索し、前記キャッシュ領域に前記keyを含む(key,value)がないとき、前記ファイルから前記keyを含む(key,value)を検索する検索部とを備えることを特徴とする情報処理装置。 - 前記キャッシュ領域の前記(key,value)群のデータ量が、所定のデータ量を超えたとき、前記キャッシュ領域の前記(key,value)群のうち、前記検索の時刻または作成時刻の古い(key,value)群から優先的に削除するキャッシュ削除部をさらに備えることを特徴とする請求項1に記載の情報処理装置。
- 前記バッファ領域に書き込まれた前記(key,value)群のデータ量が所定の閾値を超えた場合において、前記バッファ領域に書き込まれた前記(key,value)群に、前記(key,value)の削除を示す情報が含まれていたとき、
前記ファイル作成部は、
前記バッファ領域に書き込まれた(key,value)群をファイルへ書き出す際、前記ファイル内から削除の対象の(key,value)を削除した新たなファイルを作成し、
前記キャッシュ作成部は、
前記バッファ領域に書き込まれた(key,value)群のうち、削除の対象の(key,value)を削除した(key,value)群を、前記キャッシュ領域に移動させることを特徴とする請求項1または請求項2に記載の情報処理装置。 - 前記キャッシュ作成部は、
前記バッファ領域に書き込まれた(key,value)群を、前記キャッシュ領域に移動させるとき、
前記(key,value)群のうち、現在時刻から、過去所定時間分までの間に、更新、または、追加された前記(key,value)群を移動させることを特徴とする請求項1ないし請求項3のいずれか1項に記載の情報処理装置。 - 前記検索部は、
前記検索要求が、検索の対象である(key,value)の作成時刻の範囲をさらに含むとき、前記キャッシュ領域、および、前記ファイルから、前記keyを含み、かつ、前記作成時刻の範囲に作成された(key,value)を検索することを特徴とする請求項1ないし請求項4のいずれか1項に記載の情報処理装置。 - メインメモリ上に、WAL(Write Ahead Logging)ログを備え、前記WALログに、KeyValueストアに用いられる(key,value)の削除、変更、または、追加を示すオペレーションの書き込みが成功すると、前記(key,value)を、前記メインメモリ上のバッファ領域へ書き込む情報処理装置を用いた情報処理方法であって、
前記情報処理装置が、
前記バッファ領域に書き込まれた前記(key,value)の集合である(key,value)群のデータ量が所定の閾値を超えたとき、
前記バッファ領域に書き込まれた(key,value)群をファイルへ書き出すファイル作成ステップと、
前記バッファ領域に書き込まれた(key,value)群を、前記メインメモリ上に確保されたキャッシュ領域に移動させるキャッシュ作成ステップと、
前記(key,value)群のファイルへの書き出し、および、前記キャッシュ領域への移動完了後、前記バッファ領域を解放するバッファ解放ステップと、
前記keyを含む検索要求を受け付けたとき、
前記キャッシュ領域からkeyを含む(key,value)を検索し、前記キャッシュ領域に前記keyを含む(key,value)がないとき、前記ファイルから前記keyを含む(key,value)を検索する検索ステップとを実行することを特徴とする情報処理方法。 - メインメモリ上に、WAL(Write Ahead Logging)ログを備え、前記WALログに、KeyValueストアに用いられる(key,value)の削除、変更、または、追加を示すオペレーションの書き込みが成功すると、前記(key,value)を、前記メインメモリ上のバッファ領域へ書き込むための情報処理プログラムであって、
前記バッファ領域に書き込まれた前記(key,value)の集合である(key,value)群のデータ量が所定の閾値を超えたとき、
前記バッファ領域に書き込まれた(key,value)群をファイルへ書き出すファイル作成ステップと、
前記バッファ領域に書き込まれた(key,value)群を、前記メインメモリ上に確保されたキャッシュ領域に移動させるキャッシュ作成ステップと、
前記(key,value)群のファイルへの書き出し、および、前記キャッシュ領域への移動完了後、前記バッファ領域を解放するバッファ解放ステップと、
前記keyを含む検索要求を受け付けたとき、
前記キャッシュ領域からkeyを含む(key,value)を検索し、前記キャッシュ領域に前記keyを含む(key,value)がないとき、前記ファイルから前記keyを含む(key,value)を検索する検索ステップとをコンピュータに実行させるための情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013107572A JP5718974B2 (ja) | 2013-05-22 | 2013-05-22 | 情報処理装置、情報処理方法、および、情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013107572A JP5718974B2 (ja) | 2013-05-22 | 2013-05-22 | 情報処理装置、情報処理方法、および、情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014229036A JP2014229036A (ja) | 2014-12-08 |
JP5718974B2 true JP5718974B2 (ja) | 2015-05-13 |
Family
ID=52128840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013107572A Active JP5718974B2 (ja) | 2013-05-22 | 2013-05-22 | 情報処理装置、情報処理方法、および、情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5718974B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960212B (zh) * | 2017-12-25 | 2020-07-31 | 北京京东乾石科技有限公司 | 任务发送方法和装置 |
WO2023008008A1 (ja) | 2021-07-30 | 2023-02-02 | 株式会社ソフトギア | 情報処理プログラム、情報処理装置及び情報処理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5405530B2 (ja) * | 2011-06-27 | 2014-02-05 | 日本電信電話株式会社 | 分散データストアシステムおよび障害復旧方法 |
US20130110767A1 (en) * | 2011-10-26 | 2013-05-02 | Nec Laboratories America, Inc. | Online Transaction Processing |
-
2013
- 2013-05-22 JP JP2013107572A patent/JP5718974B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014229036A (ja) | 2014-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107003935B (zh) | 用于优化数据库去重的装置、方法和计算机介质 | |
US10599337B2 (en) | Method and device for writing data and acquiring data in a distributed storage system | |
US8086810B2 (en) | Rapid defragmentation of storage volumes | |
US11580162B2 (en) | Key value append | |
US9043334B2 (en) | Method and system for accessing files on a storage system | |
US9740422B1 (en) | Version-based deduplication of incremental forever type backup | |
US11409616B2 (en) | Recovery of in-memory databases after a system crash | |
EP3316150B1 (en) | Method and apparatus for file compaction in key-value storage system | |
US8850148B2 (en) | Data copy management for faster reads | |
US20150277966A1 (en) | Transaction system | |
CN110597797A (zh) | 表空间碎片回收方法、装置、电子设备及存储介质 | |
KR102345517B1 (ko) | 엣지 컴퓨팅을 위해 데이터중복제거 기술이 적용된 casedb(키 벨류 저장장치) | |
US9690658B2 (en) | Distributed storage system and method | |
KR20210058118A (ko) | CaseDB: 엣지컴퓨팅을 위한 저비용 Put-Intensive 키-벨류 저장장치 | |
JP5718974B2 (ja) | 情報処理装置、情報処理方法、および、情報処理プログラム | |
JP2018045285A (ja) | 情報処理システム、制御装置、処理プログラム、及び処理方法 | |
US8738571B1 (en) | Extended recycle bin | |
US20160188214A1 (en) | Apparatus, method and medium | |
US10430287B2 (en) | Computer | |
KR20220006458A (ko) | 키-밸류 저장 장치 및 키 분류 방법 | |
US10152492B1 (en) | Extended recycle bin for versioning | |
JP6251121B2 (ja) | サーバ、データ管理方法、データ管理プログラム、および、分散Key−Valueストア | |
US20210406243A1 (en) | Non-transitory computer-readable storage medium for storing information processing program, information processing method, and information processing apparatus | |
JP2019101595A (ja) | データベース管理システム及び方法 | |
TWI475419B (zh) | 用於在儲存系統上存取檔案的方法和系統 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150302 |
|
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: 20150317 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150319 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5718974 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |