KR102251811B1 - 하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템 - Google Patents
하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템 Download PDFInfo
- Publication number
- KR102251811B1 KR102251811B1 KR1020150000294A KR20150000294A KR102251811B1 KR 102251811 B1 KR102251811 B1 KR 102251811B1 KR 1020150000294 A KR1020150000294 A KR 1020150000294A KR 20150000294 A KR20150000294 A KR 20150000294A KR 102251811 B1 KR102251811 B1 KR 102251811B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- read data
- hint information
- read
- filtering
- Prior art date
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 33
- 238000012545 processing Methods 0.000 title claims description 23
- 238000001914 filtration Methods 0.000 claims abstract description 138
- 230000004044 response Effects 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 22
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000009413 insulation Methods 0.000 description 1
- 238000005442 molecular electronic Methods 0.000 description 1
- 239000002071 nanotube Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920000642 polymer Polymers 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/24569—Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
도2 는 일 실시예에 따른 컨트롤러를 나타내는 블록도이다.
도3 은 본 발명의 일 실시예에 따른 프로세서를 구체적으로 나타낸 블록도이다.
도4 는 본 발명의 일 실시예에 따른 하드웨어 필터의 블록도를 나타내는 도면이다.
도5 는 본 발명의 일 실시예에 따른 비교기의 블록도를 나타낸 도면이다.
도6 은 데이터 처리 시스템의 동작을 설명하기 위한 일 실시예이다.
도7 은 일 실시예에 따른 비트맵으로 구성된 힌트 정보에 대한 포맷을 나타낸 도면이다.
도8a, 8b, 8c 는 리드 데이터에 대응한 페이지의 데이터 구성에 따른 힌트 정보를 도7 의 표1 따라 나타낸 도면이다.
도9a 및9b 는 본 발명의 다른 일 실시예에 따른 데이터 처리 시스템(900a, 900b)의 동작을 설명하기 위한 도면이다.
도10 은 본 발명의 일 실시예에 따른 데이터 처리 방법에 관한 것을 나타낸 순서도이다.
도11 은 본 발명의 실시 예들에 따른 데이터 저장 장치가 채용된 전자 장치의 일 구현 예를 나타내는 블록도이다.
도 12 는 본 발명의 실시 예들에 따른 데이터 처리 시스템을 포함하는 메모리 카드 시스템을 나타내는 블록도이다.
도13는 본 발명의 실시 예들에 따른 SSD를 포함하는 서버 시스템에 대한 네트워크 구현 예를 나타내는 블록도이다.
MKD 시작부분을 포함하는 경우/ 포함하지 않는 경우 |
[a] = 1 / [a]= 0 |
MKD 중 끝부분을 포함하는 경우/ 포함하지 않는 경우 |
[b] = 1 / [b] = 0 |
MKD 전체 포함하는 경우/ 포함하지 않는 경우 |
[c] = 1 / [c] = 0 |
포함된 MKD 앞에 디리미터(DL) 존재하는 경우/ 존재하지 않는 경우 |
[d] = 1 / [d] = 0 |
포함된 MKD 뒤에 디리미터(DL) 존재하는 경우/ 존재하지 않는 경우 |
[e] = 1 / [e] = 0 |
Claims (10)
- 제1 리드 명령에 응답하여 제1 리드 데이터를 출력하는 제1 기억 장치;
상기 제1 리드 데이터를 저장하는 제2 기억 장치; 및
상기 제1 리드 데이터를 필터링 조건 데이터와 비교한 결과를 기반으로, 제1 힌트 정보를 생성하고, 상기 제1 힌트 정보를 기반으로, 상기 제1 리드 데이터에 대한 필터링 동작 수행 여부를 결정하여, 상기 제1 리드 데이터에 대해 상기 필터링 조건 데이터를 기초로 선택적 필터링 동작을 수행하는 컨트롤러를 포함하며,
상기 선택적 필터링 동작 수행 결과에 따른 제1 필터링된 데이터를 호스트에 전송하는 데이터 저장 장치. - 제1 항에 있어서,
상기 컨트롤러는,
상기 호스트로부터 출력된 필터링 명령에 기반하여 제어 신호를 생성하는 제1 프로세서; 및
상기 제어 신호에 기반하여 상기 필터링 조건 데이터를 생성하는 제2 프로세서를 포함하는 것을 특징으로 하는 데이터 저장 장치. - 제1 항에 있어서,
상기 컨트롤러는,
상기 선택적 필터링 동작의 수행하는 소프트웨어 필터를 포함하는 프로세서를 포함하는 것을 특징으로 하는 데이터 저장 장치. - 제1 항에 있어서,
상기 컨트롤러는,
상기 제1 리드 데이터가 상기 필터링 조건 데이터에 포함된 매칭 키 데이터의 포함 여부에 기반하여, 상기 제1 힌트 정보를 생성하는 것을 특징으로 하는 데이터 저장 장치. - 제4 항에 있어서,
상기 컨트롤러는,
상기 제1 리드 데이터가 상기 매칭 키 데이터의 전부 또는 일부를 포함하는 것을 나타내는 상기 제1 힌트 정보를 수신한 경우, 상기 제1 리드 데이터를 필터링하고,
상기 제1 리드 데이터가 상기 매칭 키 데이터의 전부 또는 일부를 불포함하는 것을 나타내는 상기 제1 힌트 정보를 수신한 경우, 상기 제1 리드 데이터를 필터링하지 않는 것을 특징으로 하는 데이터 저장 장치. - 제4 항에 있어서,
상기 컨트롤러는,
상기 제1 리드 데이터를 필터링 조건 데이터와 비교한 결과를 기반으로, 제1 힌트 정보를 생성하는 하드웨어 필터를 포함하고,
상기 하드웨어 필터는,
상기 매칭 키 데이터를 저장하는 레지스터;
상기 레지스터로부터 출력된 상기 매칭 키 데이터와 상기 제1 리드 데이터를 비교하고, 비교 신호를 생성하는 비교기; 및
상기 비교 신호에 응답하여, 상기 제1 리드 데이터가 상기 매칭 키 데이터의 포함 여부를 나타낸 상기 제1 힌트 정보를 생성하는 힌트 생성부를 포함하는 것을 특징으로 하는 데이터 저장 장치. - 제1 항에 있어서,
상기 제1 기억 장치는, 제2 리드 명령에 응답하여 제2 리드 데이터를 출력하고,
상기 컨트롤러는, 상기 제2 리드 데이터를 상기 필터링 조건 데이터와 비교한 결과를 기반으로, 제2 힌트 정보를 생성하고, 상기 제2 힌트 정보를 기반으로 상기 제2 리드 데이터를 상기 필터링 조건 데이터에 기초한 선택적 필터링 동작을 수행하고,
상기 선택적 필터링 동작 수행 결과에 따른 제2 필터링된 데이터를 호스트에 전송하는 것을 특징으로 하는 데이터 저장 장치. - 리드 명령과 필터링 명령을 출력하는 호스트;
상기 리드 명령에 응답하여, 제1 리드 데이터 및 제2 리드 데이터를 출력하는 제1 기억 장치;
상기 제1 리드 데이터 및 제2 리드 데이터를 저장하는 제2 기억 장치; 및
상기 제1 리드 데이터 및 제2 리드 데이터를 필터링 조건 데이터와 비교하여, 제1 힌트 정보 및 제2 힌트 정보를 생성하는 하드웨어 필터 및 상기 필터링 명령에 응답하여, 상기 제1 힌트 정보 및 상기 제2 힌트 정보를 기반으로, 상기 제1 리드 데이터 및 상기 제2 리드 데이터를 상기 필터링 조건 데이터에 기초한 선택적 필터링 동작을 수행하는 프로세서를 포함하는 컨트롤러를 포함하고,
상기 선택적 필터링 동작 수행 결과에 따른 필터링된 데이터를 호스트에 전송하는 데이터 처리 시스템. - 제8 항에 있어서,
상기 제1 기억 장치는, 비휘발성 메모리 장치로서,
상기 제1 리드 데이터는 상기 제1 기억 장치의 n번째 페이지에 저장되고, 상기 제2 리드 데이터는 상기 제1 기억 장치의 n+1번째 페이지에 저장된 것을 특징으로 하는 데이터 처리 시스템. - 제9항에 있어서,
상기 필터링 조건 데이터는 매칭 키 데이터를 포함하고,
상기 하드웨어 필터는,
상기 제1 리드 데이터가 상기 매칭 키 데이터의 일부분인 제1 매칭 키 데이터를 포함하는지 여부를 나타내는 상기 제1 힌트 정보를 생성하고, 상기 제2 리드 데이터가 상기 키 데이터의 일부분인 제2 매칭 키 데이터를 포함하는지 여부를 나타내는 상기 제2 힌트 정보를 생성하며,
상기 프로세서는,
상기 제1 힌트 정보 및 상기 제2 힌트 정보를 기반으로, 상기 제1 리드 데이터 및 상기 제2 리드 데이터를 동시에 필터링 동작을 수행하는 것을 특징으로 하는 데이터 처리 시스템.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150000294A KR102251811B1 (ko) | 2015-01-02 | 2015-01-02 | 하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템 |
US14/979,796 US10133785B2 (en) | 2015-01-02 | 2015-12-28 | Data storage device including internal hardware filter and data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150000294A KR102251811B1 (ko) | 2015-01-02 | 2015-01-02 | 하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160083761A KR20160083761A (ko) | 2016-07-12 |
KR102251811B1 true KR102251811B1 (ko) | 2021-05-13 |
Family
ID=56286659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150000294A KR102251811B1 (ko) | 2015-01-02 | 2015-01-02 | 하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10133785B2 (ko) |
KR (1) | KR102251811B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113536075B (zh) * | 2021-07-20 | 2024-06-04 | 锐掣(杭州)科技有限公司 | 数据提取方法、装置及存储介质 |
US12210780B2 (en) * | 2022-09-28 | 2025-01-28 | Advanced Micro Devices, Inc. | Filtered responses of memory operation messages |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130060993A1 (en) | 2010-08-31 | 2013-03-07 | Chanik Park | Storage device and stream filtering method thereof |
JP2014026646A (ja) | 2012-06-22 | 2014-02-06 | Semiconductor Energy Lab Co Ltd | 情報処理装置とその駆動方法 |
US20140337562A1 (en) | 2013-05-08 | 2014-11-13 | Fusion-Io, Inc. | Journal management |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3999093B2 (ja) | 2002-09-30 | 2007-10-31 | 株式会社東芝 | 構造化文書検索方法及び構造化文書検索システム |
US6947930B2 (en) | 2003-03-21 | 2005-09-20 | Overture Services, Inc. | Systems and methods for interactive search query refinement |
US7546284B1 (en) * | 2003-06-11 | 2009-06-09 | Blue Titan Software, Inc. | Virtual message persistence service |
KR100854032B1 (ko) * | 2007-02-09 | 2008-08-26 | 삼성전자주식회사 | 메모리 시스템 및 그것의 데이터 저장 방법 |
US7853759B2 (en) | 2007-04-23 | 2010-12-14 | Microsoft Corporation | Hints model for optimization of storage devices connected to host and write optimization schema for storage devices |
EP2441005A2 (en) * | 2009-06-09 | 2012-04-18 | Martin Vorbach | System and method for a cache in a multi-core processor |
US8832133B2 (en) | 2009-08-24 | 2014-09-09 | Microsoft Corporation | Answering web queries using structured data sources |
KR20120004162A (ko) | 2010-07-06 | 2012-01-12 | 삼성전자주식회사 | 데이터베이스 관리 방법 및 이를 이용한 데이터베이스 서버 시스템 |
US20120054420A1 (en) | 2010-08-31 | 2012-03-01 | Jeonguk Kang | Storage device and stream filtering method thereof |
WO2013070800A1 (en) * | 2011-11-07 | 2013-05-16 | Nexgen Storage, Inc. | Primary data storage system with quality of service |
US8751701B2 (en) | 2011-12-26 | 2014-06-10 | Mellanox Technologies Ltd. | Host channel adapter with pattern-type DMA |
KR101621385B1 (ko) | 2012-10-11 | 2016-05-18 | 주식회사 케이티 | 클라우드 스토리지 서비스의 파일 검색 시스템 및 방법, 및 파일 제어 방법 |
KR102103543B1 (ko) * | 2013-11-28 | 2020-05-29 | 삼성전자 주식회사 | 내부 하드웨어 필터를 포함하는 일체형 데이터 저장 장치, 이의 동작 방법, 및 상기 데이터 저장 장치를 포함하는 시스템 |
US10521441B2 (en) * | 2014-01-02 | 2019-12-31 | The George Washington University | System and method for approximate searching very large data |
KR102214511B1 (ko) * | 2014-02-17 | 2021-02-09 | 삼성전자 주식회사 | 두 단계로 페이지를 필터링하는 데이터 저장 장치, 이를 포함하는 시스템, 및 상기 데이터 저장 장치의 동작 방법 |
-
2015
- 2015-01-02 KR KR1020150000294A patent/KR102251811B1/ko active IP Right Grant
- 2015-12-28 US US14/979,796 patent/US10133785B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130060993A1 (en) | 2010-08-31 | 2013-03-07 | Chanik Park | Storage device and stream filtering method thereof |
JP2014026646A (ja) | 2012-06-22 | 2014-02-06 | Semiconductor Energy Lab Co Ltd | 情報処理装置とその駆動方法 |
US20140337562A1 (en) | 2013-05-08 | 2014-11-13 | Fusion-Io, Inc. | Journal management |
Also Published As
Publication number | Publication date |
---|---|
US20160196356A1 (en) | 2016-07-07 |
US10133785B2 (en) | 2018-11-20 |
KR20160083761A (ko) | 2016-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9021189B2 (en) | System and method for performing efficient processing of data stored in a storage node | |
US9092321B2 (en) | System and method for performing efficient searches and queries in a storage node | |
US10210196B2 (en) | Data storage device having internal hardware filter, data storage method and data storage system | |
US10359953B2 (en) | Method and apparatus for offloading data processing to hybrid storage devices | |
US20130151759A1 (en) | Storage device and operating method eliminating duplicate data storage | |
CN106649144B (zh) | 数据储存设备及其操作方法 | |
US9430639B2 (en) | Data de-duplication in a non-volatile storage device responsive to commands based on keys transmitted to a host | |
WO2022037015A1 (zh) | 一种基于持久性内存的列式存储方法、装置及设备 | |
CN108027764B (zh) | 可转换的叶的存储器映射 | |
US11461047B2 (en) | Key-value storage device and operating method | |
US9336135B1 (en) | Systems and methods for performing search and complex pattern matching in a solid state drive | |
US10789003B1 (en) | Selective deduplication based on data storage device controller status and media characteristics | |
US11756619B2 (en) | Key storage for sorted string tables using content addressable memory | |
US10733107B2 (en) | Non-volatile memory apparatus and address classification method thereof | |
EP3506121A1 (en) | Method and apparatus to efficiently perform filtering operations in an in-memory relational database | |
KR102251811B1 (ko) | 하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템 | |
KR20210018570A (ko) | 컨트롤러, 컨트롤러의 동작 방법 및 이를 포함하는 저장 장치 | |
CN114490726A (zh) | 自动灵活模式检测和迁移 | |
KR102695482B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US20230393761A1 (en) | Read Look Ahead Based On Key Analysis In Key Value Data Storage Devices | |
US9690652B2 (en) | Search device and search method searching data based on key | |
CN116414724A (zh) | 存储设备、操作存储设备的方法和操作存储系统的方法 | |
CN114579484A (zh) | 数据存储装置及其操作方法 | |
US20240411456A1 (en) | Memory controller and memory system performing data search | |
US9652162B2 (en) | All-in-one data storage device including internationl hardware filter, method of operating the same, and system including the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20150102 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20191224 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20150102 Comment text: Patent Application |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20210217 |
|
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20210507 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20210510 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20240424 Start annual number: 4 End annual number: 4 |