JP6289883B2 - ストレージ装置 - Google Patents
ストレージ装置 Download PDFInfo
- Publication number
- JP6289883B2 JP6289883B2 JP2013244857A JP2013244857A JP6289883B2 JP 6289883 B2 JP6289883 B2 JP 6289883B2 JP 2013244857 A JP2013244857 A JP 2013244857A JP 2013244857 A JP2013244857 A JP 2013244857A JP 6289883 B2 JP6289883 B2 JP 6289883B2
- Authority
- JP
- Japan
- Prior art keywords
- database
- conversion table
- logical
- transaction
- processing
- 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
NAND型フラッシュメモリを用いた記憶媒体をデータベースのストレージとして使う従来のストレージ装置について説明する。
揮発性メモリ30Aは、キャッシュメモリ31と、消去済ページリスト32と、ブロック状態テーブル33と、論物変換テーブル34とを有している。
不揮発性メモリ40は、電源を供給しなくても記憶を保持するメモリであって、例えばNANDメモリチップである。
キャッシュメモリ31は、データを一時的に保存するための記憶領域である。
なお、データが更新される時は、データ管理部60は、常に別の物理アドレスに更新データを書き込む。
次に、従来のストレージ装置1Aの書込み処理(書込み動作)を説明する。図17は、従来のストレージ装置1Aの書込み処理の例を示すフローチャートである。
データ管理部60は、この書き込み要求に対応するデータ(更新データなど)を、揮発性メモリ30Aのキャッシュメモリ31上に書き込む(S1720)。
次に、データ管理部60は、揮発性メモリ30Aの消去済ページリスト32の先頭から書き込み先物理ページを取得する(S1730)。
以上で、従来のストレージ装置1Aは、書込み処理を終了する。
次に、従来のストレージ装置1Aの消去処理(消去動作)を説明する。図18は、従来のストレージ装置1Aの消去処理の例を示すフローチャートである。
以上で従来のストレージ装置1Aは消去処理(消去動作)を終了する。
[従来のストレージ装置のトランザクション・コミット処理]
以上で、従来のストレージ装置1Aのトランザクション・コミット処理は終了する。
従来のストレージ装置1Aのトランザクション・ロールバック処理を説明する。図20は、従来のストレージ装置1Aのトランザクション・ロールバック処理の例を示すフロー図である。
以上で、従来のストレージ装置1Aのトランザクション・ロールバック処理は終了する。
本発明の目的は、トランザクション処理を、コミット(COMMIT)およびロールバック(ROLLBACK)共、高速に実行する技術を提供することにある。
[0.用語の定義]
本明細書中で使用する用語の定義を述べる。
「論物変換テーブル」とは、論理アドレスをNAND型フラッシュメモリの物理アドレスに変換するためのテーブルをいう。
「トランザクション」とは、データベースにおいて、一連の処理を一つの作業としてまとめて行う処理をいう。
「コミット」とは、トランザクション処理の結果をデータベースに反映する処理をいう。
「ロールバック」とは、トランザクション処理の結果を取り消す処理をいう。
本発明の実施の形態は、ストレージ装置として提案される。このストレージ装置は、論物変換テーブルを利用してトランザクション処理のコミットやロールバックを実現することで、処理時間を短縮する装置である。
本発明の実施の形態にかかるストレージ装置の構成について説明する。図1は、本実施の形態に係るストレージ装置の構成例を示す機能ブロック図である。なお、機能ブロック図中に示す構成要素は、ストレージ装置の機能を機能ごとにまとめてブロックとして捉えたものであり、ストレージ装置が各構成要素に対応する基板、装置、回路、部品などの物理的構成要素を備えていなければならないことを意味するわけではない。また、「接続されている」とは、データ、情報、命令などの送受信、受け取り、受け渡しなどが可能な状態になっていることをいい、互いに配線で連結されているような物理的な接続に限られる意味ではない。本明細書中の他の構成要素の機能ブロック図の説明についても同様である。
次に、ストレージ装置1の動作を説明する。
[2.1.ストレージ装置のトランザクション・コミット処理]
ストレージ装置1のトランザクション・コミット処理を説明する。図2は、ストレージ装置1のトランザクション・コミット処理の例を示すフロー図である。
以上で、ストレージ装置1のトランザクション・コミット処理は終了する。
ストレージ装置1のトランザクション・ロールバック処理を説明する。図3は、ストレージ装置1のトランザクション・ロールバック処理の例を示すフロー図である。
以上で、ストレージ装置1のトランザクション・ロールバック処理は終了する。
次に、ストレージ装置1のトランザクション処理について説明する。図4は、ストレージ装置1のトランザクション処理の例を示すフローチャートである。
ステップS240に続いて、ストレージ装置1、より詳しくはデータベース処理部20は、トランザクション状態であるか否かを判定する(S250)。
以上でコマンド文処理の説明を終了する。
ステップS320に続いて、ストレージ装置1、より詳しくはデータベース処理部20は、トランザクション状態を終了する(S330)。
以上で、COMMIT処理は終了する。
ステップS420に続いて、ストレージ装置1、より詳しくはデータベース処理部20は、トランザクション状態を終了する(S430)。
以上で、ROLLBACK処理は終了する。
以上でトランザクション処理の説明を終了する。
上述したトランザクション処理(S10〜S60)におけるトランザクション用論物変換テーブル35、論物変換テーブル34、不揮発性メモリの記憶内容の書き換えの例を述べる。
図9に、トランザクション処理前のトランザクション用論物変換テーブル35、論物変換テーブル34、不揮発性メモリ40の記憶内容例を示す。トランザクション処理前において、図9に示す論物変換テーブル34は、論理アドレス「0」、論理アドレス「1」、論理アドレス「2」、論理アドレス「3」のそれぞれに対応するレコードを有している。論理アドレス「0」に対応するレコードは、対応する物理アドレスとして、不揮発性メモリ40のブロック「1」のページ「0」を記憶している。また、論理アドレス「1」に対応するレコードは、対応する物理アドレスとして、不揮発性メモリ40のブロック「2」のページ「1」を記憶している。論理アドレス「2」に対応するレコードは、対応する物理アドレスとして、不揮発性メモリ40のブロック「1」のページ「2」を記憶している。論理アドレス「3」に対応するレコードは、対応する物理アドレスとしてブロック「4」のページ「0」を記憶している。論物変換テーブル34の各レコードと、不揮発性メモリ40のブロック及びページとの対応関係を図中の矢印線で示す。
図9に示した状態の後、ストレージ装置1が以下のコマンド文(SQL文)を受け取ったものとする。
BEGIN;
UPDATE table1 SET x1=n WHERE id=m;
図10に示した状態の後、ストレージ装置1がさらに以下のコマンド文(SQL文)を受け取ったものとする。
UPDATE table1 SET x2=n WHERE id=b;
図11に示した状態の後、ストレージ装置1がさらにコマンド文(SQL文)であるCOMMIT文を受け取ったものとする。
ストレージ装置1、より詳しくはデータベース処理部20は、トランザクション用論物変換テーブル35に書き込まれているデータをすべて削除する。
図12にこの時点の状態のトランザクション用論物変換テーブル35、論物変換テーブル34、不揮発性メモリの記憶内容例を示す。
図11に示した状態の後、ストレージ装置1がさらにコマンド文(SQL文)であるROLLBACK文を受け取った場合の動作を説明する。
図13にこの時点の状態のトランザクション用論物変換テーブル35、論物変換テーブル34、不揮発性メモリの記憶内容例を示す。
(1) 本実施の形態にかかるストレージ装置1によれば、トランザクション処理を、コミットおよびロールバック共、高速に実行することができる。
以上、本発明の実施の形態を説明したが、本発明はこれらに限定されるものではなく、発明の趣旨を逸脱しない範囲内において、種々の変更、追加、組み合わせ等が可能である。
Claims (2)
- データベースを記憶する不揮発性メモリと、
前記データベースを一時的に記憶するキャッシュメモリと、
前記不揮発性メモリにおける書き込み可能なページの物理アドレスを記憶する消去済ページリストと、
前記不揮発性メモリにおける各ブロックのページの状態を管理するデータを保存するブロック状態テーブルと、
データの論理アドレスと、これに対応する前記不揮発性メモリの物理アドレスを対応付けて記憶する第1の変換テーブルと、
データの論理アドレスと、これに対応する前記不揮発性メモリの物理アドレスを対応付けて記憶する第2の変換テーブルと、
前記データベースを操作する命令であるコマンド文を受け取り、このコマンド文を解釈してデータベースの変更内容及び前記データの論理アドレスを決定し、前記データベースの変更内容に基づいて、前記キャッシュメモリ上のデータベースの内容を変更し、前記消去済ページリストから前記不揮発性メモリにおける書き込み先物理アドレスを取得し、前記キャッシュメモリ上のデータベースの変更された内容に対応する論理アドレスと、前記書き込み先物理アドレスと、を対応付けて、前記第2の変換テーブルに書き込み、トランザクション処理の結果をデータベースに反映させることを意味する命令を受け取ると、前記第2の変換テーブルの内容を前記第1の変換テーブルに反映させ、前記ブロック状態テーブルにおいて、前記書き込み先物理アドレスに対応するページの状態を有効とし、前記データベースの変更元の物理アドレスに対応するページの状態を無効とする第1の処理手段と、
前記キャッシュメモリ上のデータベースの変更された内容を、前記不揮発性メモリの前記書き込み先物理アドレスへバックグラウンドで書き込む第2の処理手段と
を有するストレージ装置。 - 前記第1の処理手段は、トランザクション処理の結果を取り消すことを意味する命令を受け取ると、前記第2の変換テーブルの内容を前記第1の変換テーブルに反映させずに、前記第2の変換テーブルの内容を取り消し、前記ブロック状態テーブルにおいて、前記書き込み先物理アドレスに対応するページの状態を無効とする
請求項1に記載のストレージ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013244857A JP6289883B2 (ja) | 2013-11-27 | 2013-11-27 | ストレージ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013244857A JP6289883B2 (ja) | 2013-11-27 | 2013-11-27 | ストレージ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015103147A JP2015103147A (ja) | 2015-06-04 |
JP6289883B2 true JP6289883B2 (ja) | 2018-03-07 |
Family
ID=53378768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013244857A Expired - Fee Related JP6289883B2 (ja) | 2013-11-27 | 2013-11-27 | ストレージ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6289883B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6293709B2 (ja) * | 2015-07-22 | 2018-03-14 | 株式会社東芝 | ストレージシステムおよびストレージシステム用プログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6957236B1 (en) * | 2002-05-10 | 2005-10-18 | Oracle International Corporation | Providing a useable version of a data item |
US7752382B2 (en) * | 2005-09-09 | 2010-07-06 | Sandisk Il Ltd | Flash memory storage system and method |
US8103822B2 (en) * | 2009-04-26 | 2012-01-24 | Sandisk Il Ltd. | Method and apparatus for implementing a caching policy for non-volatile memory |
US9104690B2 (en) * | 2011-01-27 | 2015-08-11 | Micron Technology, Inc. | Transactional memory |
-
2013
- 2013-11-27 JP JP2013244857A patent/JP6289883B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015103147A (ja) | 2015-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI670594B (zh) | 資料儲存裝置 | |
JP4524309B2 (ja) | フラッシュメモリ用のメモリコントローラ | |
US20150046670A1 (en) | Storage system and writing method thereof | |
KR102275563B1 (ko) | 호스트-관리 비휘발성 메모리 | |
TWI531963B (zh) | Data storage systems and their specific instruction enforcement methods | |
JP2011253251A (ja) | データ記憶装置及びデータ書き込み方法 | |
WO2017025039A1 (zh) | 一种面向闪存存储的数据访问方法及其装置 | |
TW202001573A (zh) | 記憶系統 | |
TWI671631B (zh) | 記憶體管理方法以及儲存控制器 | |
JP4745465B1 (ja) | 半導体記憶装置及び半導体記憶装置の制御方法 | |
KR20140094278A (ko) | 반도체 장치 및 이의 동작 방법 | |
JP2018504692A (ja) | トランザクション処理方法及び装置、並びにコンピュータシステム | |
WO2017113059A1 (zh) | 一种差异数据备份方法、存储***和差异数据备份装置 | |
JP2010287049A (ja) | メモリシステムおよびメモリシステムの管理方法 | |
KR20210050592A (ko) | 저장 디바이스 상의 네임스페이스에서의 오류 검사 | |
EP3385846B1 (en) | Method and device for processing access request, and computer system | |
TW201734793A (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI640864B (zh) | 重疊輸入輸出記憶體管理單元映射及第二層記憶體讀取之二階命令緩衝器 | |
US20140219041A1 (en) | Storage device and data processing method thereof | |
US20210026763A1 (en) | Storage device for improving journal replay, operating method thereof, and electronic device including the storage device | |
KR20200056533A (ko) | 맵 스케줄링을 수행하기 위한 스토리지 장치 및 그것을 포함하는 전자 장치 | |
JP4242245B2 (ja) | フラッシュrom制御装置 | |
US20140218767A1 (en) | Image forming apparatus, memory management method for image forming apparatus, and program | |
KR20100121389A (ko) | 플래시 메모리를 기반으로 하는 저장 장치 및 그것을 포함한 사용자 장치 | |
JP6289883B2 (ja) | ストレージ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160921 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170613 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170810 |
|
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: 20180109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180207 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6289883 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |