JP6639107B2 - ストレージコントローラ - Google Patents
ストレージコントローラ Download PDFInfo
- Publication number
- JP6639107B2 JP6639107B2 JP2015103220A JP2015103220A JP6639107B2 JP 6639107 B2 JP6639107 B2 JP 6639107B2 JP 2015103220 A JP2015103220 A JP 2015103220A JP 2015103220 A JP2015103220 A JP 2015103220A JP 6639107 B2 JP6639107 B2 JP 6639107B2
- Authority
- JP
- Japan
- Prior art keywords
- simultaneous access
- data
- access group
- unit
- group
- 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
- 238000005065 mining Methods 0.000 claims description 37
- 239000013598 vector Substances 0.000 claims description 37
- 238000005457 optimization Methods 0.000 claims description 16
- 230000002123 temporal effect Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 31
- 238000000034 method Methods 0.000 description 22
- 230000004044 response Effects 0.000 description 14
- 230000010354 integration Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/312—In storage controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6022—Using a prefetch buffer or dedicated prefetch cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/604—Details relating to cache allocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
前記データ配置部は前記時間窓で前記読込み要求されたデータと共にアクセスされるデータを前記プリフェッチバッファに格納することが好ましい。
前記同時アクセスグループマッチング部は前記生成された同時アクセスグループを示すビットベクトルを利用して前記読込み要求されたデータとマッチングする同時アクセスグループを選択することが好ましい。
前記同時アクセスグループマッチング部は、前記プリフェッチバッファの使用空間に対する余裕空間の比率が予め設定された臨界値以上である場合はその長さが最も長い同時アクセスグループを選択し、前記プリフェッチバッファの使用空間に対する余裕空間の比率が予め設定された臨界値未満である場合はその長さが最も短い同時アクセスグループを選択することが好ましい。
外部に位置するストレージアレイに接続され、前記データ配置部は前記ストレージアレイに格納された前記選択された同時アクセスグループに含まれたデータを前記プリフェッチバッファに伝送することが好ましい。
前記プリフェッチバッファのI/Oレートは前記ストレージアレイのI/Oレートより高いことが好ましい。
前記同時アクセスパターンマイニング部によって生成された同時アクセスグループを格納し、前記格納された同時アクセスグループを前記同時アクセスグループマッチング部に提供する同時アクセスグループデータベースをさらに有することが好ましい。
前記同時アクセスグループデータベースに格納される同時アクセスグループに対するレコードは、前記同時アクセスグループのID、発生頻度、長さ及び前記同時アクセスグループに含まれるデータのアドレスリストを含むことが好ましい。
前記第1同時アクセスサブパターンに従うデータに対する読込み要求が発生した場合、前記データ配置部は前記第2同時アクセスサブパターンに従うデータを前記プリフェッチバッファに格納することが好ましい。
前記データ配置部は前記第2同時アクセスサブパターンに従うデータを前記時間間隔の間に前記プリフェッチバッファに格納することが好ましい。
前記クラスタリング部は前記生成された同時アクセスグループに対する時間的発生パターン(temporal occurrence pattern)を示すベクトルを利用して同じ前記時間区間にアクセスされる同時アクセスグループをクラスタリングすることが好ましい。
前記同時アクセスパターンマイニング部によって生成された同時アクセスグループを格納する同時アクセスグループデータベースをさらに有し、前記同時アクセスグループ最適化部は前記同時アクセスグループデータベースに格納された同時アクセスグループに対して最適化を行うことが好ましい。
本発明のいくつかの実施形態で、コントローラ100は読込み要求されたデータを読込みするため、先にプリフェッチバッファ300を検索する。仮に、読込み要求されたデータがプリフェッチバッファ300に存在する場合、コントローラ100はプリフェッチバッファ300に格納されたデータを読込みし、前記読込み要求に対する応答を送信する。これと異なり、読込み要求されたデータがプリフェッチバッファ300に存在しない場合、コントローラ100はストレージアレイ200を検索し、ストレージアレイ200に格納されたデータを読込みし、前記読込み要求に対する応答を送信する。
本発明のいくつかの実施形態で、プリフェッチバッファ300のI/Oレートはストレージアレイ200のI/Oレートより高くてもよい。また、本発明のいくつかの実施形態で、プリフェッチバッファ300はDRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)またはDDR SDRAM (Double Data Rate Synchronous DRAM)をはじめとする揮発性メモリまたはフラッシュメモリをはじめとする不揮発性メモリを含み得る。
本発明のいくつかの実施形態で、同時アクセス分析部120はハードウェアだけでなくソフトウェアでも実現される。例えば、同時アクセス分析部120はFPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、GPGPU(General−Purpose computing on Graphics Processing Units)などを含むハードウェアで実現され得る。一方、同時アクセス分析部120はコントローラ100上で駆動されるファームウェアまたはホストシステムで駆動されるユーザアプリケーションをはじめとするソフトウェアによって実現することができる。
本発明のいくつかの実施形態で、I/O要求構文解析部121は前記識別されたI/O要求と共に、前記識別されたI/O要求が発生した時刻または前記識別されたI/O要求と関連するデータのアドレスに関する情報を同時アクセスパターンマイニング部123に提供し、同時アクセスパターンマイニング部123が同時アクセスパターンを検出するようにし得る。一方、本発明のいくつかの実施形態で、I/O要求構文解析部121は前記識別されたI/O要求を同時アクセスグループマッチング部125に提供し、同時アクセスグループマッチング部125が前記識別されたI/O要求と関連するデータと同時アクセスグループをマッチングするようにし得る。
本発明のいくつかの実施形態で、時間の流れに応じて様々なI/O要求が発生するI/O要求ストリームには予め設定された時間窓が定義され、同時アクセスグループの複数のデータは前記時間窓に含まれて共にアクセスされ得る。同時アクセスパターンと同時アクセスグループを決定する過程についての具体的な説明は図4、図5及び図7を参照して後述する。
本発明のいくつかの実施形態で、同時アクセスグループデータベース127は同時アクセスパターンマイニング部123により生成された同時アクセスグループを格納し、前記格納された同時アクセスグループを前記同時アクセスグループマッチング部125に提供し得る。
本発明のいくつかの実施形態で、同時アクセスグループマッチング部125は同時アクセスグループデータベース127を検索してデータD8とマッチングする同時アクセスグループを選択することもできる。その後、データ配置部128は選択された同時アクセスグループに含まれたデータ(D1、D2、D5)をプリフェッチバッファに格納(ステップS509)する。本発明のいくつかの実施形態で、データ(D1、D2、D5)をプリフェッチバッファに格納(ステップS509)することは、前記読込み要求に対する応答としてデータD8を送信(ステップS507)した後に行われ得る。
具体的には、タイムスロット(2、6、10、13、17、20)でアクセスされる同時アクセスグループ(CGID_01〜CGID_03)は一つの同時アクセスグループ(C_CGID_01)に統合し、タイムスロット(3、8、13、16、19)でアクセスされる同時アクセスグループ(CGID_05、CGID_09、CGID_11、CGID_12)は一つの同時アクセスグループ(C_CGID_03)に統合し、タイムスロット(1、7、13、19)でアクセスされる同時アクセスグループ(CGID_07、CGID_08)は一つの同時アクセスグループ(C_CGID_05)に統合したものである。
図17を参照すると、同時アクセスグループ(CGID_01)に対するTOPベクトル(TOP_VEC[1])は“01000100010010001001”であり、同時アクセスグループ(CGID_04)に対するTOPベクトル(TOP_VEC[4])は“00010100000100001001”として、時間的発生パターンを2進コード化(binary encoding)したものである。
これにより、TOPベクトル(TOP_VEC[1]、TOP_VEC[4])での‘1’の位置はそれぞれ同時アクセスグループ(CGID_01)がアクセスされるタイムスロット(2、6、10、13、17、20)と同時アクセスグループ(CGID_04)がアクセスされるタイムスロット(4、6、12、17、20)に対応する。このような方式で12個の同時アクセスグループ(CGID_01〜CGID_12)の全てに対してそれぞれのTOPベクトル(TOP_VEC[1]〜TOP_VEC[12])を生成し得る。
100 コントローラ
110 プロセッサ
120 同時アクセス分析部
121 I/O要求構文解析部
123 同時アクセスパターンマイニング部
125 同時アクセスグループマッチング部
127 同時アクセスグループデータベース
128 データ配置部
129 同時アクセスグループ最適化部
130 I/Oインターフェース
140 ストレージインターフェース
150 バッファインターフェース
200 ストレージアレイ
300 プリフェッチバッファ
Claims (19)
- 特定の時間区間で共にアクセスされるデータの同時アクセス(co−access)パターンを検出し、前記同時アクセスパターンに従う複数のデータを含む同時アクセスグループを生成する同時アクセスパターンマイニング部と、
前記生成された同時アクセスグループのうち、読込み要求されたデータとマッチングする同時アクセスグループを選択する同時アクセスグループマッチング部と、
前記選択された同時アクセスグループに含まれたデータをプリフェッチ(pre−fetch)バッファに格納するデータ配置部とを有し、
前記読込み要求されたデータとマッチングする同時アクセスグループが複数存在する場合、
前記同時アクセスグループマッチング部はその中から単位時間当りの発生頻度が最も高い同時アクセスグループを選択することを特徴とするストレージコントローラ。 - 前記同時アクセスグループの複数のデータは予め設定された時間窓に含まれ、前記時間窓で共にアクセスされることを特徴とする請求項1に記載のストレージコントローラ。
- 前記データ配置部は前記時間窓で前記読込み要求されたデータと共にアクセスされるデータを前記プリフェッチバッファに格納することを特徴とする請求項2に記載のストレージコントローラ。
- 前記同時アクセスグループマッチング部は前記生成された同時アクセスグループを示すビットベクトルを利用して前記読込み要求されたデータとマッチングする同時アクセスグループを選択することを特徴とする請求項1に記載のストレージコントローラ。
- 前記単位時間当りの発生頻度が最も高い同時アクセスグループが複数存在する場合、
前記同時アクセスグループマッチング部は前記プリフェッチバッファの状態に基づいて一つの同時アクセスグループを選択することを特徴とする請求項1に記載のストレージコントローラ。 - 前記同時アクセスグループマッチング部は、
前記プリフェッチバッファの使用空間に対する余裕空間の比率が予め設定された臨界値以上である場合はその長さが最も長い同時アクセスグループを選択し、
前記プリフェッチバッファの使用空間に対する余裕空間の比率が予め設定された臨界値未満である場合はその長さが最も短い同時アクセスグループを選択することを特徴とする請求項5に記載のストレージコントローラ。 - 前記単位時間当りの発生頻度が最も高い同時アクセスグループが複数存在する場合、
前記同時アクセスグループマッチング部は二つ以上の同時アクセスグループを選択することを特徴とする請求項1に記載のストレージコントローラ。 - 外部に位置するストレージアレイに接続され、
前記データ配置部は前記ストレージアレイに格納された前記選択された同時アクセスグループに含まれたデータを前記プリフェッチバッファに伝送することを特徴とする請求項1に記載のストレージコントローラ。 - 前記プリフェッチバッファのI/Oレートは前記ストレージアレイのI/Oレートより高いことを特徴とする請求項8に記載のストレージコントローラ。
- 受信されたI/O要求の構文解析処理を行い、前記構文解析処理を行ったI/O要求を前記同時アクセスパターンマイニング部または前記同時アクセスグループマッチング部に提供するI/O要求構文解析部をさらに有することを特徴とする請求項1に記載のストレージコントローラ。
- 前記同時アクセスパターンマイニング部によって生成された同時アクセスグループを格納し、前記格納された同時アクセスグループを前記同時アクセスグループマッチング部に提供する同時アクセスグループデータベースをさらに有することを特徴とする請求項1に記載のストレージコントローラ。
- 前記同時アクセスグループデータベースに格納される同時アクセスグループに対するレコードは、
前記同時アクセスグループのID、発生頻度、長さ及び前記同時アクセスグループに含まれるデータのアドレスリストを含むことを特徴とする請求項11に記載のストレージコントローラ。 - 前記同時アクセスパターンは、
前記特定の時間区間の中の第1時間区間で共にアクセスされるデータの第1同時アクセスサブパターンと、
前記特定の時間区間の中の第2時間区間で共にアクセスされるデータの第2同時アクセスサブパターンとを含み、
前記第1同時アクセスサブパターンと前記第2同時アクセスサブパターンは時間間隔をおいてアクセスされることを特徴とする請求項1に記載のストレージコントローラ。 - 前記第1同時アクセスサブパターンに従うデータに対する読込み要求が発生した場合、
前記データ配置部は前記第2同時アクセスサブパターンに従うデータを前記プリフェッチバッファに格納することを特徴とする請求項13に記載のストレージコントローラ。 - 前記データ配置部は前記第2同時アクセスサブパターンに従うデータを前記時間間隔の間に前記プリフェッチバッファに格納することを特徴とする請求項14に記載のストレージコントローラ。
- 特定の時間区間で共にアクセスされるデータの同時アクセス(co−access)パターンを検出し、前記同時アクセスパターンに従う複数のデータを含む同時アクセスグループを生成する同時アクセスパターンマイニング部と、
前記生成された同時アクセスグループ数を減少させるための最適化を行う同時アクセスグループ最適化部と、
前記生成された同時アクセスグループのうち、読込み要求されたデータとマッチングする同時アクセスグループを選択する同時アクセスグループマッチング部と、
前記選択された同時アクセスグループに含まれたデータをプリフェッチ(pre−fetch)バッファに格納するデータ配置部とを有し、
前記読込み要求されたデータとマッチングする同時アクセスグループが複数存在する場合、
前記同時アクセスグループマッチング部はその中から単位時間当りの発生頻度が最も高い同時アクセスグループを選択することを特徴とするストレージコントローラ。 - 前記同時アクセスグループ最適化部は、
同時にアクセスされる同時アクセスグループをクラスタリングするクラスタリング部と、
前記クラスタリングされた同時アクセスグループを一つの同時アクセスグループに統合する同時アクセスグループ統合部とを含むことを特徴とする請求項16に記載のストレージコントローラ。 - 前記クラスタリング部は前記生成された同時アクセスグループに対する時間的発生パターン(temporal occurrence pattern)を示すベクトルを利用して同じ前記時間区間にアクセスされる同時アクセスグループをクラスタリングすることを特徴とする請求項17に記載のストレージコントローラ。
- 前記同時アクセスパターンマイニング部によって生成された同時アクセスグループを格納する同時アクセスグループデータベースをさらに有し、
前記同時アクセスグループ最適化部は前記同時アクセスグループデータベースに格納された同時アクセスグループに対して最適化を行うことを特徴とする請求項16に記載のストレージコントローラ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140060411A KR102295769B1 (ko) | 2014-05-20 | 2014-05-20 | 스토리지 컨트롤러 및 상기 스토리지 컨트롤러의 동작 방법 |
KR10-2014-0060411 | 2014-05-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015219926A JP2015219926A (ja) | 2015-12-07 |
JP6639107B2 true JP6639107B2 (ja) | 2020-02-05 |
Family
ID=53396180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015103220A Active JP6639107B2 (ja) | 2014-05-20 | 2015-05-20 | ストレージコントローラ |
Country Status (5)
Country | Link |
---|---|
US (2) | US9996271B2 (ja) |
EP (1) | EP2947557B1 (ja) |
JP (1) | JP6639107B2 (ja) |
KR (1) | KR102295769B1 (ja) |
CN (1) | CN105094694B (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102305584B1 (ko) * | 2015-01-19 | 2021-09-27 | 삼성전자주식회사 | 언어 모델 학습 방법 및 장치, 언어 인식 방법 및 장치 |
JP2016162243A (ja) * | 2015-03-02 | 2016-09-05 | 富士通株式会社 | データ格納制御プログラム、データ格納制御装置、およびデータ格納制御方法 |
US10592171B2 (en) | 2016-03-16 | 2020-03-17 | Samsung Electronics Co., Ltd. | Multi-stream SSD QoS management |
JP2018124915A (ja) | 2017-02-03 | 2018-08-09 | 富士通株式会社 | 解析プログラム、解析方法及びストレージシステム |
KR102007086B1 (ko) * | 2017-09-29 | 2019-08-02 | 연세대학교 산학협력단 | 프리페치 장치 및 방법과 이에 관한 기록매체 |
FR3076002B1 (fr) * | 2017-12-22 | 2021-05-07 | Bull Sas | Procede d'amelioration du temps d'execution d'une application informatique |
KR102031490B1 (ko) * | 2018-04-26 | 2019-10-11 | 연세대학교 산학협력단 | 프리페치 장치 및 방법 |
FR3086408A1 (fr) * | 2018-09-21 | 2020-03-27 | Bull Sas | Procede de determination du type de sequence temporelle d'acces memoire se deroulant lors d'une execution d'une application informatique |
CN112328185B (zh) * | 2020-12-28 | 2021-03-23 | 烽火通信科技股份有限公司 | 一种基于分布式存储的智能预读方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6910106B2 (en) | 2002-10-04 | 2005-06-21 | Microsoft Corporation | Methods and mechanisms for proactive memory management |
US6963959B2 (en) | 2002-10-31 | 2005-11-08 | International Business Machines Corporation | Storage system and method for reorganizing data to improve prefetch effectiveness and reduce seek distance |
US7496592B2 (en) | 2005-01-31 | 2009-02-24 | International Business Machines Corporation | Systems and methods for maintaining closed frequent itemsets over a data stream sliding window |
JP5094193B2 (ja) | 2007-04-16 | 2012-12-12 | 株式会社日立製作所 | 記憶システム及びその制御方法 |
US8316288B2 (en) | 2007-11-09 | 2012-11-20 | Carnegie Mellon University | High efficiency, high performance system for writing data from applications to a safe file system |
US8327066B2 (en) * | 2008-09-30 | 2012-12-04 | Samsung Electronics Co., Ltd. | Method of managing a solid state drive, associated systems and implementations |
US8214599B2 (en) * | 2008-11-04 | 2012-07-03 | Gridiron Systems, Inc. | Storage device prefetch system using directed graph clusters |
US8214608B2 (en) | 2008-11-04 | 2012-07-03 | Gridiron Systems, Inc. | Behavioral monitoring of storage access patterns |
US8959481B2 (en) | 2009-04-30 | 2015-02-17 | International Business Machines Corporation | Determining system level dependencies |
US8296517B2 (en) * | 2009-08-19 | 2012-10-23 | Oracle International Corporation | Database operation-aware striping technique |
KR101105363B1 (ko) | 2010-01-18 | 2012-01-16 | 연세대학교 산학협력단 | 롱 트랜잭션 데이터 스트림을 위한 빈발항목집합 탐색 방법 |
US8645631B2 (en) * | 2010-03-29 | 2014-02-04 | Via Technologies, Inc. | Combined L2 cache and L1D cache prefetcher |
CN102142992A (zh) | 2011-01-11 | 2011-08-03 | 浪潮通信信息系统有限公司 | 通信告警频繁项集挖掘引擎及冗余处理方法 |
-
2014
- 2014-05-20 KR KR1020140060411A patent/KR102295769B1/ko active IP Right Grant
-
2015
- 2015-05-15 US US14/713,075 patent/US9996271B2/en active Active
- 2015-05-19 CN CN201510257225.XA patent/CN105094694B/zh active Active
- 2015-05-20 JP JP2015103220A patent/JP6639107B2/ja active Active
- 2015-05-20 EP EP15168382.8A patent/EP2947557B1/en active Active
-
2018
- 2018-05-11 US US15/977,883 patent/US10296225B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2947557A1 (en) | 2015-11-25 |
CN105094694B (zh) | 2019-12-10 |
CN105094694A (zh) | 2015-11-25 |
JP2015219926A (ja) | 2015-12-07 |
US20180260117A1 (en) | 2018-09-13 |
KR20150133524A (ko) | 2015-11-30 |
US9996271B2 (en) | 2018-06-12 |
KR102295769B1 (ko) | 2021-08-30 |
EP2947557B1 (en) | 2019-07-03 |
US20150339235A1 (en) | 2015-11-26 |
US10296225B2 (en) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6639107B2 (ja) | ストレージコントローラ | |
CN105612518B (zh) | 用于自主存储器搜索的方法及系统 | |
US10976964B2 (en) | Storage system and method for hit-rate-score-based selective prediction of future random read commands | |
US20170124077A1 (en) | Flash module provided with database operation unit, and storage device | |
US11385836B2 (en) | Read look ahead data size determination | |
CN113614702B (zh) | 基于检测到的读取命令活跃流的自适应预读高速缓存管理器 | |
US11010299B2 (en) | System and method for performing discriminative predictive read | |
KR20200089770A (ko) | 저장 기록 명령에 기록 스트림 속성 활용 | |
US10725781B1 (en) | System and method for chain prediction of multiple read commands | |
US11604749B2 (en) | Direct memory access (DMA) commands for noncontiguous source and destination memory addresses | |
JP7411127B2 (ja) | ストレージ装置及びデータ処理方法 | |
CN113448511B (zh) | 通过链接阵列依序预提取 | |
US20220035566A1 (en) | Pre-suspend before program in a non-volatile memory (nvm) | |
US11106390B1 (en) | Combining in-process reads to reduce die collisions | |
US20180011663A1 (en) | Solid state drive | |
EP3759582B1 (en) | Performing operation on data blocks concurrently and based on performance rate of another operation on data blocks | |
CN112689836A (zh) | 基于加密操作修改数据片段 | |
US20210064368A1 (en) | Command tracking | |
CN112397113B (zh) | 要求延迟及数据值相关的存储器预提取系统及方法 | |
US20220291869A1 (en) | Data processing device | |
US11210225B2 (en) | Pre-fetch for memory sub-system with cache where the pre-fetch does not send data and response signal to host | |
US12007898B2 (en) | Utilizing a designated memory address to pre-fetch for memory sub-system with cache | |
US11119679B2 (en) | Storing data based on a probability of a data graph | |
JP2016015012A (ja) | 記憶装置、制御装置、記憶装置の制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180326 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190305 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190605 |
|
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: 20191203 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191224 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6639107 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |