Embedded Transaction Support Inside SSD With Small-Capacity Non-Volatile Disk Cache
Flash-based Solid State Drives (SSDs) have proved to be ideal devices that support embedded transaction protocols inside SSDs. Existing embedded transaction protocols in SSDs effectively improve transaction throughput, but still incur high transaction overhead and long recovery time. While it is rea...
Saved in:
| Published in | IEEE transactions on knowledge and data engineering Vol. 34; no. 5; pp. 2148 - 2163 |
|---|---|
| Main Authors | , , , , |
| Format | Journal Article |
| Language | English |
| Published |
New York
IEEE
01.05.2022
The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Subjects | |
| Online Access | Get full text |
| ISSN | 1041-4347 1558-2191 |
| DOI | 10.1109/TKDE.2020.3004518 |
Cover
| Abstract | Flash-based Solid State Drives (SSDs) have proved to be ideal devices that support embedded transaction protocols inside SSDs. Existing embedded transaction protocols in SSDs effectively improve transaction throughput, but still incur high transaction overhead and long recovery time. While it is reasonable to provide a small-capacity non-volatile (NVM-based) disk cache in the SSDs, in this paper, we propose a new embedded transaction protocol called Non-volatile Cache Transaction (NVCTX). NVCTX reduces transaction overhead and provides fast recovery by leveraging the small-capacity NVM-based disk cache from two aspects. First, we store transactional metadata, which is of small amount but is frequently accessed, in the NVM-based disk cache rather than in the flash memory. Second, we introduce two techniques, i.e., a dynamic allocation algorithm and a hybrid storing method, to improve the performance when the capacity of the NVM-based disk cache is very limited. We have implemented NVCTX on a real hardware board called Cosmos+ FPGA platform, and modified ext4 file system and NVMe (Non-Volatile Memory express) driver to be compatible with the transactional interfaces provided by NVCTX. For comparison, we also implement SCC, BPCC, WAL, and X-FTL protocols in the firmware of Cosmos+ FPGA platform. Evaluations using DBMS (Database Management System) and file system workloads show that, compared to four typical transaction protocols (SCC, BPCC, WAL, and X-FTL), NVCTX improves transaction throughput by up to 136.5, 9.4, 131.6 and 29.9 percent, reduces write traffic to flash memory by up to 42.8, 4.1, 62.4, 31.2 percent, lowers garbage collection overhead by up to 93.2, 63, 66.5, 22.1 percent, and shortens recovery time to 1/2574, 1/2559, 1/95 and 1/2 respectively compared with SCC, BPCC, WAL, and X-FTL. |
|---|---|
| AbstractList | Flash-based Solid State Drives (SSDs) have proved to be ideal devices that support embedded transaction protocols inside SSDs. Existing embedded transaction protocols in SSDs effectively improve transaction throughput, but still incur high transaction overhead and long recovery time. While it is reasonable to provide a small-capacity non-volatile (NVM-based) disk cache in the SSDs, in this paper, we propose a new embedded transaction protocol called Non-volatile Cache Transaction (NVCTX). NVCTX reduces transaction overhead and provides fast recovery by leveraging the small-capacity NVM-based disk cache from two aspects. First, we store transactional metadata, which is of small amount but is frequently accessed, in the NVM-based disk cache rather than in the flash memory. Second, we introduce two techniques, i.e., a dynamic allocation algorithm and a hybrid storing method, to improve the performance when the capacity of the NVM-based disk cache is very limited. We have implemented NVCTX on a real hardware board called Cosmos+ FPGA platform, and modified ext4 file system and NVMe (Non-Volatile Memory express) driver to be compatible with the transactional interfaces provided by NVCTX. For comparison, we also implement SCC, BPCC, WAL, and X-FTL protocols in the firmware of Cosmos+ FPGA platform. Evaluations using DBMS (Database Management System) and file system workloads show that, compared to four typical transaction protocols (SCC, BPCC, WAL, and X-FTL), NVCTX improves transaction throughput by up to 136.5, 9.4, 131.6 and 29.9 percent, reduces write traffic to flash memory by up to 42.8, 4.1, 62.4, 31.2 percent, lowers garbage collection overhead by up to 93.2, 63, 66.5, 22.1 percent, and shortens recovery time to 1/2574, 1/2559, 1/95 and 1/2 respectively compared with SCC, BPCC, WAL, and X-FTL. |
| Author | Tan, Huailiang Zhu, Peng Lu, Youyou He, Zaihong Tan, Yanjie |
| Author_xml | – sequence: 1 givenname: Yanjie surname: Tan fullname: Tan, Yanjie email: tanyanjiecws@hnu.edu.cn organization: College of Computer Science and Electronic Engineering, Hunan University, Changsha, China – sequence: 2 givenname: Huailiang orcidid: 0000-0001-9980-8015 surname: Tan fullname: Tan, Huailiang email: tanhuailiang@hnu.edu.cn organization: College of Computer Science and Electronic Engineering, Hunan University, Changsha, China – sequence: 3 givenname: Peng surname: Zhu fullname: Zhu, Peng email: 525907705@qq.com organization: College of Computer Science and Electronic Engineering, Hunan University, Changsha, China – sequence: 4 givenname: Youyou orcidid: 0000-0002-6214-5390 surname: Lu fullname: Lu, Youyou email: luyouyou@tsinghua.edu.cn organization: Department of Computer Science and Technology, Tsinghua University, Beijing, China – sequence: 5 givenname: Zaihong surname: He fullname: He, Zaihong email: hezaihong@hnu.edu.cn organization: College of Computer Science and Electronic Engineering, Hunan University, Changsha, China |
| BookMark | eNp9kL1OwzAURi1UJErhARCLJeYUX9tJnBG1BSoqGFJgjBzbUV3SJNju0LcnUSsGBqZ7h-_cn3OJRk3bGIRugEwBSHa_fpkvppRQMmWE8BjEGRpDHIuIQgajviccIs54eoEuvd8SQkQqYIzyxa40WhuN1042Xqpg2wbn-65rXcDLxlttcJ7P8acNG5zvZF1HM9lJZcMBv7ZN9NHWMtja4Ln1X3gm1cZcofNK1t5cn-oEvT8u1rPnaPX2tJw9rCJFKQuRZpoKJUklJTCdlIqWqRKSGFFSzcskNgIqwxIldZylaZlA_1CcclISCiyp2ATdHed2rv3eGx-Kbbt3Tb-yoAmPM8EpQJ9KjynlWu-dqYr-djm8GZy0dQGkGAwWg8FiMFicDPYk_CE7Z3fSHf5lbo-MNcb85jOgPIlT9gPpcHzj |
| CODEN | ITKEEH |
| CitedBy_id | crossref_primary_10_14778_3598581_3598584 |
| Cites_doi | 10.1109/TKDE.2011.32 10.1109/MSST.2014.6855535 10.1145/1994.2207 10.14778/2180912.2180917 10.1145/2189750.2151018 10.1109/TKDE.2011.122 10.1145/2463676.2465326 10.1145/3281030 10.1109/TKDE.2015.2453154 10.1109/TC.2015.2389828 10.1145/1242520.1242521 10.1109/TCE.2018.2885102 10.1145/7239.7266 10.1145/170036.170042 10.1145/128765.128770 10.1145/356842.356847 10.1145/375663.375751 10.1109/HPCA.2017.15 10.1007/978-3-642-38562-9_40 10.1109/HPCA.2011.5749738 10.14778/3015274.3015276 10.1145/2517349.2522724 10.1109/NVMSA.2014.6927193 10.1145/2499369.2465563 10.1145/3064176.3064204 10.1145/800221.806714 10.14778/3372716.3372719 10.1109/ICDE.2017.88 10.1145/3164541.3164556 10.1145/1994.1995 |
| ContentType | Journal Article |
| Copyright | Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2022 |
| Copyright_xml | – notice: Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2022 |
| DBID | 97E RIA RIE AAYXX CITATION 7SC 7SP 8FD JQ2 L7M L~C L~D |
| DOI | 10.1109/TKDE.2020.3004518 |
| DatabaseName | IEEE Xplore (IEEE) IEEE All-Society Periodicals Package (ASPP) 1998–Present IEEE Electronic Library (IEL) CrossRef Computer and Information Systems Abstracts Electronics & Communications Abstracts Technology Research Database ProQuest Computer Science Collection Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Academic Computer and Information Systems Abstracts Professional |
| DatabaseTitle | CrossRef Technology Research Database Computer and Information Systems Abstracts – Academic Electronics & Communications Abstracts ProQuest Computer Science Collection Computer and Information Systems Abstracts Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Professional |
| DatabaseTitleList | Technology Research Database |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Engineering Computer Science |
| EISSN | 1558-2191 |
| EndPage | 2163 |
| ExternalDocumentID | 10_1109_TKDE_2020_3004518 9124657 |
| Genre | orig-research |
| GrantInformation_xml | – fundername: National Natural Science Foundation of China grantid: 61672218 funderid: 10.13039/501100001809 – fundername: Hunan Provincial Innovation Foundation For Postgraduate grantid: CX2018B229 funderid: 10.13039/501100010083 |
| GroupedDBID | -~X .DC 0R~ 29I 4.4 5GY 6IK 97E AAJGR AARMG AASAJ AAWTH ABAZT ABQJQ ABVLG ACGFO ACIWK AENEX AGQYO AHBIQ AKJIK AKQYR ALMA_UNASSIGNED_HOLDINGS ASUFR ATWAV BEFXN BFFAM BGNUA BKEBE BPEOZ CS3 DU5 EBS EJD F5P HZ~ IEDLZ IFIPE IPLJI JAVBF LAI M43 MS~ O9- OCL P2P PQQKQ RIA RIE RNS RXW TAE TN5 UHB AAYXX CITATION 7SC 7SP 8FD JQ2 L7M L~C L~D |
| ID | FETCH-LOGICAL-c223t-d3d28ca0faa13d6bc2b7c8a0e8b2d4b65e81fe36cad5977b611555740b02136f3 |
| IEDL.DBID | RIE |
| ISSN | 1041-4347 |
| IngestDate | Sun Jun 29 12:35:14 EDT 2025 Wed Oct 01 02:06:24 EDT 2025 Thu Apr 24 22:54:17 EDT 2025 Wed Aug 27 02:36:14 EDT 2025 |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 5 |
| Language | English |
| License | https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html https://doi.org/10.15223/policy-029 https://doi.org/10.15223/policy-037 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c223t-d3d28ca0faa13d6bc2b7c8a0e8b2d4b65e81fe36cad5977b611555740b02136f3 |
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| ORCID | 0000-0001-9980-8015 0000-0002-6214-5390 |
| PQID | 2645984211 |
| PQPubID | 85438 |
| PageCount | 16 |
| ParticipantIDs | ieee_primary_9124657 proquest_journals_2645984211 crossref_citationtrail_10_1109_TKDE_2020_3004518 crossref_primary_10_1109_TKDE_2020_3004518 |
| ProviderPackageCode | CITATION AAYXX |
| PublicationCentury | 2000 |
| PublicationDate | 2022-05-01 |
| PublicationDateYYYYMMDD | 2022-05-01 |
| PublicationDate_xml | – month: 05 year: 2022 text: 2022-05-01 day: 01 |
| PublicationDecade | 2020 |
| PublicationPlace | New York |
| PublicationPlace_xml | – name: New York |
| PublicationTitle | IEEE transactions on knowledge and data engineering |
| PublicationTitleAbbrev | TKDE |
| PublicationYear | 2022 |
| Publisher | IEEE The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Publisher_xml | – name: IEEE – name: The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| References | ref13 ref12 ref15 ref37 Zheng (ref41) ref14 ref36 ref30 Prabhakaran (ref29) ref10 ref32 Axboe (ref35) ref2 ref1 ref17 ref39 ref19 ref18 Narayanan (ref26) 2012; 40 Gray (ref11) 1992 Tarasov (ref7) ref24 ref23 ref25 ref20 ref21 Kopytov (ref16) 2014 Smith (ref31) 2010 ref28 Song (ref33) ref27 ref8 Mathur (ref22) ref9 ref4 ref3 ref6 ref5 ref40 |
| References_xml | – ident: ref25 doi: 10.1109/TKDE.2011.32 – ident: ref30 doi: 10.1109/MSST.2014.6855535 – ident: ref2 doi: 10.1145/1994.2207 – ident: ref9 doi: 10.14778/2180912.2180917 – volume: 40 start-page: 401 issue: 1 year: 2012 ident: ref26 article-title: Whole-system persistence publication-title: ACM SIGARCH Comput. Architecture News doi: 10.1145/2189750.2151018 – ident: ref27 doi: 10.1109/TKDE.2011.122 – start-page: 1 volume-title: Proc. Flash Memory Summit ident: ref33 article-title: Cosmos openSSD: A pcie-based open source SSD platform – ident: ref15 doi: 10.1145/2463676.2465326 – ident: ref3 doi: 10.1145/3281030 – volume-title: Transaction Processing: Concepts and Techniques year: 1992 ident: ref11 – ident: ref8 doi: 10.1109/TKDE.2015.2453154 – ident: ref19 doi: 10.1109/TC.2015.2389828 – ident: ref7 article-title: Filebench benchmark – ident: ref39 doi: 10.1145/1242520.1242521 – ident: ref40 doi: 10.1109/TCE.2018.2885102 – ident: ref24 doi: 10.1145/7239.7266 – ident: ref18 doi: 10.1145/170036.170042 – ident: ref23 doi: 10.1145/128765.128770 – ident: ref10 doi: 10.1145/356842.356847 – ident: ref17 doi: 10.1145/375663.375751 – year: 2014 ident: ref16 article-title: Sysbench manual – ident: ref14 doi: 10.1109/HPCA.2017.15 – ident: ref6 doi: 10.1007/978-3-642-38562-9_40 – ident: ref28 doi: 10.1109/HPCA.2011.5749738 – ident: ref36 doi: 10.14778/3015274.3015276 – ident: ref4 doi: 10.1145/2517349.2522724 – start-page: 465 volume-title: Proc. 11th USENIX Symp. Operating Syst. Des. Implementation ident: ref41 article-title: Fast databases with fast durability and recovery through multicore parallelism – ident: ref20 doi: 10.1109/NVMSA.2014.6927193 – ident: ref37 doi: 10.1145/2499369.2465563 – ident: ref12 doi: 10.1145/3064176.3064204 – volume-title: PostgreSQL 9.0: High Performance year: 2010 ident: ref31 – ident: ref1 doi: 10.1145/800221.806714 – start-page: 147 volume-title: Proc. 8th USENIX Conf. Operating Syst. Des. Implementation ident: ref29 article-title: Transactional flash – ident: ref21 doi: 10.14778/3372716.3372719 – ident: ref32 doi: 10.1109/ICDE.2017.88 – ident: ref13 doi: 10.1145/3164541.3164556 – start-page: 21 volume-title: Proc. Linux Symp. ident: ref22 article-title: The new ext4 filesystem: Current status and future plans – ident: ref35 article-title: Fio-flexible io tester – ident: ref5 doi: 10.1145/1994.1995 |
| SSID | ssj0008781 |
| Score | 2.378246 |
| Snippet | Flash-based Solid State Drives (SSDs) have proved to be ideal devices that support embedded transaction protocols inside SSDs. Existing embedded transaction... |
| SourceID | proquest crossref ieee |
| SourceType | Aggregation Database Enrichment Source Index Database Publisher |
| StartPage | 2148 |
| SubjectTerms | Algorithms Cosmos Data base management systems Data storage Embedded transaction protocol Field programmable gate arrays Firmware Flash memory (computers) Garbage collection Heuristic algorithms Memory management Metadata Nonvolatile memory NVM-based disk cache Protocols Random access memory Recovery time small-capacity Solid state devices solid state drive throughput transaction recovery |
| Title | Embedded Transaction Support Inside SSD With Small-Capacity Non-Volatile Disk Cache |
| URI | https://ieeexplore.ieee.org/document/9124657 https://www.proquest.com/docview/2645984211 |
| Volume | 34 |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVIEE databaseName: IEEE Electronic Library (IEL) customDbUrl: eissn: 1558-2191 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0008781 issn: 1041-4347 databaseCode: RIE dateStart: 19890101 isFulltext: true titleUrlDefault: https://ieeexplore.ieee.org/ providerName: IEEE |
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1LTwIxEJ4gJz2IokYUTQ-ejIvdLdstRwMY1OAFVG6b7WMj4WVkufjrnZYFnzHeemiTJtPOfNPOfB_AmWYJ04raFmWlPfR-xkMfKLw0TDl6SqWoe7ro3vPOQ_12EA4KcLHuhTHGuOIzU7ND95evZ2phn8ouGxiMeBhtwEYk-LJXa-11ReQESTG7wJyI1aP8B9Onjcv-XauNmWCACaqjUxFfYpATVfnhiV14uS5Bd7WxZVXJqLbIZE29feNs_O_Od2A7x5nkankwdqFgpmUorTQcSH6ly7D1iZBwD3rtiTToijTpf-iIE6v8iSid3DhtT9LrtcjTMHsmvUkyHntNDLcKsTy5n029x5mtrRsb0hrOR6Rp2aL34eG63W92vFx2wVOIFTJPMx0IldA0SXymuVSBjJRIqBEy0HXJQyP81DCuEm3J6yRHUBmGUZ1KxAuMp-wAitPZ1BwC8bVoJFIHWiGKCHwlmOQaQQMuQuBC_QrQlSFilXOSW2mMcexyE9qIre1ia7s4t10FztdLXpaEHH9N3rO2WE_MzVCB6sracX5l53FgaXUE7tI_-n3VMWwGtvfBVTtWoZi9LswJIpJMnrqj-A7YWdpb |
| linkProvider | IEEE |
| linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3JTsMwEB2xHIADZRWFAj5wQqQ4ceK4R9QWlaW9tCy3KF4iKkqLIL3w9YzdtKxC3HywJUtjz7yxZ94DONIsZVpR26KstIfez3joA4WXRRlHT6kUdU8X7Q5v3YSX99H9HJzMemGMMa74zFTt0P3l65Ea26ey0xoGIx7F87AYhWEYTbq1Zn5XxE6SFPMLzIpYGBd_mD6tnfauGk3MBQNMUR2hivgShZysyg9f7ALMeQna061N6koeq-NcVtXbN9bG_-59DVYLpEnOJkdjHebMcANKUxUHUlzqDVj5REm4Cd3mkzTojDTpfSiJE6v9iTidXDh1T9LtNshdP38g3ad0MPDqGHAVonnSGQ2925GtrhsY0ui_PpK65YvegpvzZq_e8grhBU8hWsg9zXQgVEqzNPWZ5lIFMlYipUbIQIeSR0b4mWFcpdrS10mOsDKK4pBKRAyMZ2wbFoajodkB4mtRS6UOtEIcEfhKMMk1wgZchNCF-mWgU0MkqmAlt-IYg8RlJ7SWWNsl1nZJYbsyHM-WPE8oOf6avGltMZtYmKEMlam1k-LSviaBJdYRuEt_9_dVh7DU6rWvk-uLztUeLAe2E8LVPlZgIX8Zm33EJ7k8cMfyHXJv3ag |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Embedded+Transaction+Support+Inside+SSD+With+Small-Capacity+Non-Volatile+Disk+Cache&rft.jtitle=IEEE+transactions+on+knowledge+and+data+engineering&rft.au=Tan%2C+Yanjie&rft.au=Tan%2C+Huailiang&rft.au=Zhu%2C+Peng&rft.au=Lu%2C+Youyou&rft.date=2022-05-01&rft.issn=1041-4347&rft.eissn=1558-2191&rft.volume=34&rft.issue=5&rft.spage=2148&rft.epage=2163&rft_id=info:doi/10.1109%2FTKDE.2020.3004518&rft.externalDBID=n%2Fa&rft.externalDocID=10_1109_TKDE_2020_3004518 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1041-4347&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1041-4347&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1041-4347&client=summon |