JP2017120626A5 - - Google Patents

Download PDF

Info

Publication number
JP2017120626A5
JP2017120626A5 JP2016240058A JP2016240058A JP2017120626A5 JP 2017120626 A5 JP2017120626 A5 JP 2017120626A5 JP 2016240058 A JP2016240058 A JP 2016240058A JP 2016240058 A JP2016240058 A JP 2016240058A JP 2017120626 A5 JP2017120626 A5 JP 2017120626A5
Authority
JP
Japan
Prior art keywords
data
write request
storage device
journal
request
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
Application number
JP2016240058A
Other languages
English (en)
Other versions
JP6734768B2 (ja
JP2017120626A (ja
Filing date
Publication date
Priority claimed from US15/089,237 external-priority patent/US9959046B2/en
Application filed filed Critical
Publication of JP2017120626A publication Critical patent/JP2017120626A/ja
Publication of JP2017120626A5 publication Critical patent/JP2017120626A5/ja
Application granted granted Critical
Publication of JP6734768B2 publication Critical patent/JP6734768B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

上記目的を達成するためになされた本発明によるシステムは、ストレージ(格納)装置(device)を含むシステムであって、プロセッサ及びメモリを含むコンピュータと、ストレージ装置と、前記プロセッサ上で実行され、ジャーナル(journal)書込み要請をストレージ装置に伝送し、データ書込み要請をデータストレージシステムに伝送するように動作するアプリケーションと、第2ジャーナル書込み要請を前記ストレージ装置に伝送し、第2データ書込み要請を前記ストレージ装置に伝送するように動作する前記データストレージシステムと、前記ストレージ装置上に位置し、前記ストレージ装置が第1ストリーム(stream)に割り当てられた第1ブロック(block)にジャーナル情報を書き込み、第2ストリームに割り当てられた第2ブロックにデータを書き込み、第3ストリームに割り当てられた第3ブロックに第2ジャーナル情報を書き込むように指示するコントローラと、を含み、前記ジャーナル書込み要請は、前記ジャーナル情報を含み、前記第1ストリームに割り当てられ、前記データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、前記アプリケーションは、前記データ書込み要請を前記プロセッサ上で実行されるデータストレージシステムに伝送するように動作し、前記第2ジャーナル書込み要請は、第2ジャーナル情報を含み、第3ストリームに割り当てられ、前記第2データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、前記第1ストリーム、第2ストリーム、第3ストリームは、データ特性によって定義されることを特徴とする。
上記目的を達成するためになされた本発明による二重書込み方法は、ジャーナル書込み及びデータ書込みの両方を遂行するアプリケーションから書き込まれるデータを識別する段階と、前記アプリケーションから無効データに対するガーベッジコレクション(garbage_collection)を遂行するストレージ装置に、ジャーナル書込み要請を伝送する段階と、前記アプリケーションから前記ストレージ装置にデータ書込み要請を伝送する段階と、前記アプリケーションからデータストレージシステムにデータ書込み要請を伝送する段階と、前記データストレージシステムから前記ストレージ装置に第2ジャーナル書込み要請を伝送する段階と、前記データストレージシステムから前記ストレージ装置に第2データ書込み要請を伝送する段階と、を有し、前記ジャーナル書込み要請は、第1ストリームに割り当てられ、直接入出力(I/O)要請として伝送され、前記データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、バッファリングされた入出力(I/O)要請として伝送され、前記第2ジャーナル書込み要請は、第3ストリームに割り当てられ、前記第2データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、前記ジャーナル書込み要請及び前記第2ジャーナル書込み要請は、前記データ書込み要請の前記データを前記ストレージ装置に確実に書き込むために用いられることを特徴とする
上記目的を達成するためになされた本発明による装置は、非一時的な(Non−Transitory)命令を格納した有形(tangible)のストレージ媒体(tangible storage medium)を含む装置(article)において、前記非一時的な命令がマシンによって実行される時、ジャーナル書込み及びデータ書込みの両方を遂行するアプリケーションから書き込まれるデータを識別する段階と、無効データに対するガーベッジコレクションを遂行するストレージ装置に、前記アプリケーションからジャーナル書込み要請を伝送する段階と、前記アプリケーションからデータストレージシステムにデータ書込み要請を伝送する段階と、前記データストレージシステムから前記ストレージ装置に、第2ジャーナル書込み要請を伝送する段階と、前記データストレージシステムから前記ストレージ装置に、第2データ書込み要請を伝送する段階と、を遂行し、前記ジャーナル書込み要請は、第1ストリームに割り当てられ、直接入出力(I/O)要請として伝送され、前記データ書込み要請は、第2ストリームに割り当てられ、バッファリングされた入出力(I/O)要請として伝送され、前記第2ジャーナル書込み要請は、第3ストリームに割り当てられ、前記第2データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、前記ジャーナル書込み要請及び前記第2ジャーナル書込み要請は、前記データ書込み要請の前記データを前記ストレージ装置に確実に書き込むために用いられることを特徴とする

Claims (21)

  1. ストレージ(格納)装置(device)を含むシステムであって、
    プロセッサ及びメモリを含むコンピュータと、
    ストレージ装置と、
    前記プロセッサ上で実行され、ジャーナル(journal)書込み要請をストレージ装置に伝送し、データ書込み要請をデータストレージシステムに伝送するように動作するアプリケーションと、
    第2ジャーナル書込み要請を前記ストレージ装置に伝送し、第2データ書込み要請を前記ストレージ装置に伝送するように動作する前記データストレージシステムと、
    前記ストレージ装置上に位置し、前記ストレージ装置が第1ストリーム(stream)に割り当てられた第1ブロック(block)にジャーナル情報を書き込み、第2ストリームに割り当てられた第2ブロックにデータを書き込み、第3ストリームに割り当てられた第3ブロックに第2ジャーナル情報を書き込むように指示するコントローラと、を含み、
    前記ジャーナル書込み要請は、前記ジャーナル情報を含み、前記第1ストリームに割り当てられ
    前記データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、
    前記アプリケーションは、前記データ書込み要請を前記プロセッサ上で実行されるデータストレージシステムに伝送するように動作し、
    前記第2ジャーナル書込み要請は、第2ジャーナル情報を含み、第3ストリームに割り当てられ、
    前記第2データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、
    前記第1ストリーム、第2ストリーム、第3ストリームは、データ特性によって定義されることを特徴とするシステム。
  2. 前記コントローラは、前記データ書込み要請が完遂された以後に前記ジャーナル情報を削除するために無効化(invalidate)要請を受信するように動作する、ことを特徴とする請求項1に記載のシステム。
  3. 前記アプリケーションは、前記無効化要請を伝送するように動作する、ことを特徴とする請求項2に記載のシステム。
  4. 前記アプリケーションは、前記データ書込み要請が完遂されたという信号を前記アプリケーションが受信したことに応答して、前記無効化要請を伝送するように動作する、ことを特徴とする請求項3に記載のシステム。
  5. 前記データストレージシステムは、第2無効化要請を伝送するようにさらに動作する、ことを特徴とする請求項1に記載のシステム。
  6. 前記データストレージシステムは、第2データ書込み要請が完了した後、前記ジャーナル情報を削除するために第2無効化要請を伝送するようにさらに動作する、ことを特徴とする請求項5に記載のシステム。
  7. 前記ジャーナル書込み要請は、直接入出力(I/O)要請として伝送され、
    前記データ書込み要請は、バッファリングされた入出力(I/O)要請として伝送され、
    前記ジャーナル書込み要請は、前記データ書込み要請の前記データを前記ストレージ装置に確実に書き込むために用いられることを特徴とする請求項1に記載のシステム。
  8. 前記第2データ書込み要請に含まれるデータは、前記データ書込み要請に含まれるデータであることを特徴とする請求項1に記載のシステム。
  9. 前記ジャーナル書込み要請は、前記データ書込み要請の前記データを前記ストレージ装置に確実に書き込むために用いられることを特徴とする請求項1に記載のシステム。
  10. 前記第3ブロックは、前記第1ブロックであることを特徴とする請求項1に記載のシステム。
  11. 前記ジャーナル書込み要請は、前記アプリケーションによって前記第1ストリームに割り当てられ、
    前記データ書込み要請は、前記アプリケーションによって前記第2ストリームに割り当てられることを特徴とする請求項1に記載のシステム。
  12. 前記第1ブロック及び前記第2ブロックは、単一の媒体(media)タイプであることを特徴とする請求項1に記載のシステム。
  13. ジャーナル書込み及びデータ書込みの両方を遂行するアプリケーションから書き込まれるデータを識別する段階と、
    前記アプリケーションから無効データに対するガーベッジコレクション(garbage_collection)を遂行するストレージ装置に、ジャーナル書込み要請を伝送する段階と、
    前記アプリケーションから前記ストレージ装置にデータ書込み要請を伝送する段階と、
    前記アプリケーションからデータストレージシステムにデータ書込み要請を伝送する段階と、
    前記データストレージシステムから前記ストレージ装置に第2ジャーナル書込み要請を伝送する段階と、
    前記データストレージシステムから前記ストレージ装置に第2データ書込み要請を伝送する段階と、を有し、
    前記ジャーナル書込み要請は、第1ストリームに割り当てられ、直接入出力(I/O)要請として伝送され、
    前記データ書込み要請は、前記データを含み、第2ストリームに割り当てられ、バッファリングされた入出力(I/O)要請として伝送され、
    前記第2ジャーナル書込み要請は、第3ストリームに割り当てられ、
    前記第2データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、
    前記ジャーナル書込み要請及び前記第2ジャーナル書込み要請は、前記データ書込み要請の前記データを前記ストレージ装置に確実に書き込むために用いられることを特徴とする二重書込み方法。
  14. 前記データ書込み要請前記ストレージ装置に書き込まれた以後に、ジャーナル情報を削除するために無効化要請を前記ストレージ装置に伝送する段階をさらに含む、ことを特徴とする請求項13に記載の二重書込み方法。
  15. 前記無効化要請を前記ストレージ装置に伝送する段階は、前記無効化要請を前記アプリケーションから前記ストレージ装置に伝送する段階を含む、ことを特徴とする請求項14に記載の二重書込み方法。
  16. 前記無効化要請を前記アプリケーションから前記ストレージ装置に伝送する段階は、前記ストレージ装置上の前記データ書込み要請が完遂されたという信号を前記アプリケーションで受信する段階を含む、ことを特徴とする請求項15に記載の二重書込み方法。
  17. 前記第2データ書込み要請前記ストレージ装置に書き込まれた以後に、前記第2ジャーナル書込み要請によって書き込まれた前記データを削除するために無効化要請を前記ストレージ装置に伝送する段階をさらに含む、ことを特徴とする請求項13に記載の二重書込み方法。
  18. 非一時的な(Non−Transitory)命令を格納した有形(tangible)のストレージ媒体(tangible storage medium)を含む装置(article)において、
    前記非一時的な命令がマシンによって実行される時、
    ジャーナル書込み及びデータ書込みの両方を遂行するアプリケーションから書き込まれるデータを識別する段階と、
    無効データに対するガーベッジコレクションを遂行するストレージ装置に、前記アプリケーションからジャーナル書込み要請を伝送する段階と、
    前記アプリケーションからデータストレージシステムにデータ書込み要請を伝送する段階と、
    前記データストレージシステムから前記ストレージ装置に、第2ジャーナル書込み要請を伝送する段階と、
    前記データストレージシステムから前記ストレージ装置に、第2データ書込み要請を伝送する段階と、を遂行し、
    前記ジャーナル書込み要請は、第1ストリームに割り当てられ、直接入出力(I/O)要請として伝送され、
    前記データ書込み要請は、第2ストリームに割り当てられ、バッファリングされた入出力(I/O)要請として伝送され、
    前記第2ジャーナル書込み要請は、第3ストリームに割り当てられ、
    前記第2データ書込み要請は、前記データを含み、前記第2ストリームに割り当てられ、
    前記ジャーナル書込み要請及び前記第2ジャーナル書込み要請は、前記データ書込み要請の前記データを前記ストレージ装置に確実に書き込むために用いられることを特徴とする装置。
  19. 前記非一時的な命令を格納した有形のストレージ媒体を含む装置において、前記非一時的な命令がマシンによって実行される時、
    前記データ書込み要請前記ストレージ装置に書き込まれた以後にジャーナル情報を削除するために無効化要請を前記ストレージ装置に伝送する段階をさらに遂行する、ことを特徴とする請求項18に記載の装置。
  20. 前記無効化要請を前記ストレージ装置に伝送する段階は、前記無効化要請を前記アプリケーションから前記ストレージ装置に伝送する段階を含む、ことを特徴とする請求項19に記載の装置。
  21. 前記非一時的な命令を格納した有形のストレージ媒体を含む装置において、前記非一時的な命令がマシンによって実行される時、
    前記第2データ書込み要請前記ストレージ装置に書き込まれた以後に、前記第2ジャーナル書込み要請によって書き込まれた前記データを削除するために無効化要請を前記ストレージ装置に伝送する段階をさらに実行する、ことを特徴とする請求項18に記載の装置。
JP2016240058A 2015-12-30 2016-12-12 二重書込みを遂行するストレージ装置を含むシステム、装置、及びその方法 Active JP6734768B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562273323P 2015-12-30 2015-12-30
US62/273,323 2015-12-30
US15/089,237 US9959046B2 (en) 2015-12-30 2016-04-01 Multi-streaming mechanism to optimize journal based data storage systems on SSD
US15/089,237 2016-04-01

Publications (3)

Publication Number Publication Date
JP2017120626A JP2017120626A (ja) 2017-07-06
JP2017120626A5 true JP2017120626A5 (ja) 2020-01-30
JP6734768B2 JP6734768B2 (ja) 2020-08-05

Family

ID=59226308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016240058A Active JP6734768B2 (ja) 2015-12-30 2016-12-12 二重書込みを遂行するストレージ装置を含むシステム、装置、及びその方法

Country Status (5)

Country Link
US (1) US9959046B2 (ja)
JP (1) JP6734768B2 (ja)
KR (1) KR102412978B1 (ja)
CN (1) CN106933747B (ja)
TW (1) TWI702500B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107422992A (zh) * 2017-07-31 2017-12-01 郑州云海信息技术有限公司 一种SSD运行时Journal保存方法及系统
US11386002B2 (en) * 2018-10-04 2022-07-12 ScaleFlux, Inc. Enhancing solid-state storage device speed performance through stream-aware garbage collection
CN109491616B (zh) 2018-11-14 2022-05-24 三星(中国)半导体有限公司 数据的存储方法和设备
KR20200145151A (ko) 2019-06-20 2020-12-30 삼성전자주식회사 맵핑 정보를 축약하는 플래시 변환 계층 구조를 이용하여 메모리 리소스를 관리하는 데이터 저장 장치
KR102698959B1 (ko) * 2020-01-29 2024-08-27 삼성전자주식회사 키-값 스토리지 장치들에 대한 입출력 성능을 향상을 위한 키 값 객체 입출력들 그룹화
KR20210156190A (ko) 2020-06-17 2021-12-24 삼성전자주식회사 스토리지 장치 지원 실시간 가상 머신 마이그레이션
KR20220086934A (ko) 2020-12-17 2022-06-24 에스케이하이닉스 주식회사 비휘발성 메모리 시스템의 저널링 제어 장치 및 방법

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128630A (en) * 1997-12-18 2000-10-03 International Business Machines Corporation Journal space release for log-structured storage systems
CA2511304C (en) 2002-12-24 2011-09-20 Lg Electronics, Inc. Dual journaling store method and storage medium thereof
US7363420B2 (en) * 2003-12-15 2008-04-22 Nortel Networks Limited Method and file structures for managing data on a flash disk
US7197599B2 (en) * 2003-12-29 2007-03-27 Intel Corporation Method, system, and program for managing data updates
JP2008165624A (ja) * 2006-12-28 2008-07-17 Hitachi Ltd 計算機システム及び第1記憶装置
US20090119352A1 (en) 2007-11-05 2009-05-07 Steven Joseph Branda Method for Optimizing Generational Garbage Collection Through Object Life Heuristics
WO2009079478A1 (en) * 2007-12-14 2009-06-25 Virident Systems, Inc. Distributing metadata across multiple different disruption regions within an asymmetric memory system
JP2011515727A (ja) * 2008-02-12 2011-05-19 ネットアップ,インコーポレイテッド ハイブリッド媒体ストレージシステムアーキテクチャ
US8949684B1 (en) * 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8725951B2 (en) 2010-04-12 2014-05-13 Sandisk Enterprise Ip Llc Efficient flash memory-based object store
JP2012084127A (ja) 2010-09-15 2012-04-26 Toshiba Corp 半導体装置
US8738882B2 (en) 2011-06-03 2014-05-27 Apple Inc. Pre-organization of data
US9389805B2 (en) * 2011-08-09 2016-07-12 Seagate Technology Llc I/O device and computing host interoperation
US10203881B2 (en) 2011-12-19 2019-02-12 Apple Inc. Optimized execution of interleaved write operations in solid state drives
KR20140069659A (ko) * 2012-11-29 2014-06-10 성균관대학교산학협력단 플래시 메모리용 파일 시스템
US9075731B2 (en) * 2013-01-23 2015-07-07 Vmware, Inc. Using transaction entries to achieve crash consistency when performing write-behind caching using a flash storage-based cache
JP6005566B2 (ja) * 2013-03-18 2016-10-12 株式会社東芝 情報処理システム、制御プログラムおよび情報処理装置
KR101567134B1 (ko) 2013-03-29 2015-11-09 이화여자대학교 산학협력단 비휘발성 메모리에 기반하여 저널링 기능을 통합한 버퍼 캐시 장치, 저널링 파일 시스템 및 저널링 방법
WO2015126518A2 (en) 2014-02-20 2015-08-27 Rambus Inc. High performance persistent memory
JP2016170583A (ja) 2015-03-12 2016-09-23 株式会社東芝 メモリシステムおよび情報処理システム
US20160283124A1 (en) 2015-03-25 2016-09-29 Kabushiki Kaisha Toshiba Multi-streamed solid state drive
US9696935B2 (en) 2015-04-24 2017-07-04 Kabushiki Kaisha Toshiba Storage device that secures a block for a stream or namespace and system having the storage device
US20170139825A1 (en) * 2015-11-17 2017-05-18 HGST Netherlands B.V. Method of improving garbage collection efficiency of flash-oriented file systems using a journaling approach

Similar Documents

Publication Publication Date Title
JP2017120626A5 (ja)
JP2015144000A5 (ja)
JP2010055557A5 (ja)
JP2015069651A5 (ja)
JP2010113702A5 (ja)
JP2014524610A5 (ja)
JP2014513338A5 (ja) 仮想ディスクの最適圧縮のための方法、コンピュータ可読記憶媒体及びシステム
JP2011519461A5 (ja)
TWI702500B (zh) 使用多串流的系統、方法以及製品
US9400603B2 (en) Implementing enhanced performance flash memory devices
JP2012242961A5 (ja)
JP2004021556A5 (ja)
CN105339909B (zh) 存储系统和有别名的存储器
JP2016186828A5 (ja) 記憶装置および記憶制御方法
JP2008171278A5 (ja)
JP2011508296A5 (ja)
JP2018531471A6 (ja) 分散キャッシュライブマイグレーション
JP2015150706A5 (ja)
CN104239252A (zh) 数据存储系统的数据传输方法、装置及系统
JP2018129074A5 (ja) ストレージシステム、およびストレージシステムの制御方法
WO2014100954A1 (zh) 数据控制方法及系统
TWI530785B (zh) 電腦系統及非揮發性記憶體的控制方法
TWI540511B (zh) 用以存取虛擬機器之電腦系統及方法
CN105229622B (zh) 应用和硬件设备之间的通信系统和方法
KR20090098275A (ko) 플래시 메모리 시스템