RISS 학술연구정보서비스

검색

인기 검색어

    다국어 입력

    http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.

    변환된 중국어를 복사하여 사용하시면 됩니다.

    예시)
    • 中文 을 입력하시려면 zhongwen을 입력하시고 space를누르시면됩니다.
    • 北京 을 입력하시려면 beijing을 입력하시고 space를 누르시면 됩니다.
    닫기

    Towards an Efficient and Reliable Storage Stack for Solid-State Drives = 솔리드 스테이트 드라이브를 위한 효율적이고 신뢰성 있는 저장 스택에 대한 연구

    한글로보기

    https://www.riss.kr/link?id=T17315316

    • 0

      상세조회
    • 0

      다운로드
    서지정보 열기
    • 내보내기
    • 내책장담기
    • 공유하기
    • 오류접수

    부가정보

    다국어 초록 (Multilingual Abstract) kakao i 다국어 번역

    The storage stack of an operating system is responsible for abstracting underlying storage devices. Efficiency and reliability are its primary goals. As a component in the storage stack, solid-state drives (SSDs) have been investigated by many studies, aiming to increase their performance with emerging components for SSDs in the storage stack. However, due to the rapid increase in SSD performance and immaturity of these new components, the efficiency and reliability of the storage stack cannot be ensured. Specifically, if the performance of the file system is lower than that of SSDs, system performance is degraded, resulting in inefficiencies. Furthermore, if SSD failures are not promptly handled due to the difference in semantics across different layers of the storage stack, system reliability is adversely affected. Although the storage stack has been studied and improved for decades, several critical issues still remain. This dissertation addresses these challenges by increasing file system performance and mitigating semantic differences within the storage stack. First, log-structured file systems (LFSs), such as F2FS, which are designed to be SSD-friendly, rely on garbage collection (GC) to reclaim logical block addresses (LBAs). However, conventional LFS GC lacks concurrency, limiting its ability to fully exploit the high performance of SSDs. To increase the performance of LFS, we parallelize the LFS GC procedure, thereby improving both LFS performance and storage stack efficiency. This approach, proposed in the dissertation, is used to enhance LFS, resulting in a scalable version of LFS called ScaleLFS. ScaleLFS mitigates contention caused by multiple GC threads employing thread-dedicated resources, lock-free metadata updates, and lock-free protection of file data. ScaleLFS is implemented on F2FS, an LFS in the Linux kernel, and evaluated using a micro-benchmark, macro-benchmark, and a real-world application. Evaluation results show that the use of ScaleLFS leads to up to 3.5×, 4.6×, and 7.0× improvements in performance compared with F2FS, a state-of-the-art scalable LFS, and an existing parallel GC scheme, respectively. Second, the current storage stack employs a passive failure-handling approach, which incurs semantic differences among SSDs, file systems, and applications, thereby delaying failure detection. It can increase the risk of data loss and lower system reliability. To mitigate this semantics difference, an active failure-checking scheme and adaptive failure-point prediction using reinforcement learning are proposed. These approaches enable minimized failure detection time and reduced data loss. Based on the proposed approaches in this dissertation, a reliability-enhancing mechanism called RL-Watchdog is developed. RL-Watchdog is prototyped in the Linux kernel. Experimental results show that the use of RL-Watchdog leads to reductions in data loss by up to 96.7% compared to the current failure-handling procedure, and its accuracy in predicting failure points reaches up to 99.8%.
    번역하기

    The storage stack of an operating system is responsible for abstracting underlying storage devices. Efficiency and reliability are its primary goals. As a component in the storage stack, solid-state drives (SSDs) have been investigated by many studies...

    The storage stack of an operating system is responsible for abstracting underlying storage devices. Efficiency and reliability are its primary goals. As a component in the storage stack, solid-state drives (SSDs) have been investigated by many studies, aiming to increase their performance with emerging components for SSDs in the storage stack. However, due to the rapid increase in SSD performance and immaturity of these new components, the efficiency and reliability of the storage stack cannot be ensured. Specifically, if the performance of the file system is lower than that of SSDs, system performance is degraded, resulting in inefficiencies. Furthermore, if SSD failures are not promptly handled due to the difference in semantics across different layers of the storage stack, system reliability is adversely affected. Although the storage stack has been studied and improved for decades, several critical issues still remain. This dissertation addresses these challenges by increasing file system performance and mitigating semantic differences within the storage stack. First, log-structured file systems (LFSs), such as F2FS, which are designed to be SSD-friendly, rely on garbage collection (GC) to reclaim logical block addresses (LBAs). However, conventional LFS GC lacks concurrency, limiting its ability to fully exploit the high performance of SSDs. To increase the performance of LFS, we parallelize the LFS GC procedure, thereby improving both LFS performance and storage stack efficiency. This approach, proposed in the dissertation, is used to enhance LFS, resulting in a scalable version of LFS called ScaleLFS. ScaleLFS mitigates contention caused by multiple GC threads employing thread-dedicated resources, lock-free metadata updates, and lock-free protection of file data. ScaleLFS is implemented on F2FS, an LFS in the Linux kernel, and evaluated using a micro-benchmark, macro-benchmark, and a real-world application. Evaluation results show that the use of ScaleLFS leads to up to 3.5×, 4.6×, and 7.0× improvements in performance compared with F2FS, a state-of-the-art scalable LFS, and an existing parallel GC scheme, respectively. Second, the current storage stack employs a passive failure-handling approach, which incurs semantic differences among SSDs, file systems, and applications, thereby delaying failure detection. It can increase the risk of data loss and lower system reliability. To mitigate this semantics difference, an active failure-checking scheme and adaptive failure-point prediction using reinforcement learning are proposed. These approaches enable minimized failure detection time and reduced data loss. Based on the proposed approaches in this dissertation, a reliability-enhancing mechanism called RL-Watchdog is developed. RL-Watchdog is prototyped in the Linux kernel. Experimental results show that the use of RL-Watchdog leads to reductions in data loss by up to 96.7% compared to the current failure-handling procedure, and its accuracy in predicting failure points reaches up to 99.8%.

    더보기

    국문 초록 (Abstract) kakao i 다국어 번역

    운영 체제의 저장 스택은 내부 저장 장치들을 추상화하는 역할을 한다. 저장 스택의 중요한 목표로는 효율성과 신뢰성을 들 수 있다. 저장 스택의 구성 요소 중 하나인 솔리드 스테이트 드라이브에 대해 많은 연구가 진행됨에 따라, 그 성능이 높아지고 저장 스택에도 이를 위해 새롭게 구성 요소들이 추가되고 있다. 하지만, 솔리드 스테이트 드라이브의 성능이 빠르게 발전하고, 새롭게 추가된 구성 요소들의 비성숙함에 따라, 저장 스택의 효율성과 신뢰성에 악영향이 발생 한다. 비록 저장 스택이 수십 년에 걸쳐 연구되어 왔더라도, 몇 가지 치명적인 문제들이 여전히 남아 있다. 본 학위 논문은 이러한 문제들을 파일 시스템의 성능을 높이고, 스토리지 스택 내부의 정보 차이를 줄임으로써 해결하고자 한다. 첫 번째 문제는, F2FS와 같이 솔리드 스테이트 드라이브 친화적으로 설계된 로그 구조 파일 시스템은 논리 공간 재활용을 위해 쓰레기 수집 과정에 의존하는데, 기존의 쓰레기 수집 방식은 병렬성이 없기 때문에 솔리드 스테이트 드라이브의 높은 성능을 제대로 활용하지 못한다. 로그 구조 파일시스템의 성능을 높이기 위해, 본 논문은 로그 구조 파일 시스템의 쓰레기 수집을 병렬화하여 파일 시스템의 성능을 향상시키고, 저장 스택의 효율성을 높이고자 한다. 제안된 방법을 로그 구조 파일 시스템에 적용한 것을 ScaleLFS라 명명하였다. ScaleLFS는 스레드 전담 자원 정책, 락-프리 메타데이터 갱신, 락-프리 데이터 보호 기법을 통해 쓰레기 수집 스레드들 간의 경쟁을 줄인다. ScaleLFS는 리눅스 커널 기반 로그 구조 파일 시스템인 F2FS를 기반으로 구현되었으며, 마이크로 및 매트로 벤치마크와 실제 응용 프로그램을 통해 평가되었다. 평가 결과, ScaleLFS는 F2FS, 최신 로그 구조 파일 시스템, 기존 병렬 쓰레기 수집 방식에 비해 각각 최대 3.5배, 4.6배, 7.0배의 성능 향상을 보였다. 두 번째 문제는 저장 장치 고장 감지가 수동적인 방식에 의존하고 있어, 저장 장치와 파일 시스템, 응용 프로그램 간의 정보 간극이 발생하고, 이로 인해 고장 감지가 지연된다는 것이다. 이로 인해 데이터 손실이 커지고 시스템 신뢰성이 저하될 위험이 존재한다. 이러한 정보 간극을 해소하기 위해, 본 논문에서는 능동적인 고장 검사 방식과 강화 학습을 활용한 적응형 고장 시점 예측 기법을 제안한다. 이 기법들은 고장 감지 시간과 데이터 손실을 최소화하는 데 목적이 있다. 제안된 신뢰성 향상 메커니즘은 RL-Watchdog이라 명명되었으며, 리눅스 커널 기반으로 구현되었다. 평가 결과, RL-Watchdog은 기존 고장 감지 방식 대비 최대 96.7%의 데이터 손실을 줄였으며, 고장 시점 예측 정확도는 최대 99.8%에 도달하였다.
    번역하기

    운영 체제의 저장 스택은 내부 저장 장치들을 추상화하는 역할을 한다. 저장 스택의 중요한 목표로는 효율성과 신뢰성을 들 수 있다. 저장 스택의 구성 요소 중 하나인 솔리드 스테이트 드라...

    운영 체제의 저장 스택은 내부 저장 장치들을 추상화하는 역할을 한다. 저장 스택의 중요한 목표로는 효율성과 신뢰성을 들 수 있다. 저장 스택의 구성 요소 중 하나인 솔리드 스테이트 드라이브에 대해 많은 연구가 진행됨에 따라, 그 성능이 높아지고 저장 스택에도 이를 위해 새롭게 구성 요소들이 추가되고 있다. 하지만, 솔리드 스테이트 드라이브의 성능이 빠르게 발전하고, 새롭게 추가된 구성 요소들의 비성숙함에 따라, 저장 스택의 효율성과 신뢰성에 악영향이 발생 한다. 비록 저장 스택이 수십 년에 걸쳐 연구되어 왔더라도, 몇 가지 치명적인 문제들이 여전히 남아 있다. 본 학위 논문은 이러한 문제들을 파일 시스템의 성능을 높이고, 스토리지 스택 내부의 정보 차이를 줄임으로써 해결하고자 한다. 첫 번째 문제는, F2FS와 같이 솔리드 스테이트 드라이브 친화적으로 설계된 로그 구조 파일 시스템은 논리 공간 재활용을 위해 쓰레기 수집 과정에 의존하는데, 기존의 쓰레기 수집 방식은 병렬성이 없기 때문에 솔리드 스테이트 드라이브의 높은 성능을 제대로 활용하지 못한다. 로그 구조 파일시스템의 성능을 높이기 위해, 본 논문은 로그 구조 파일 시스템의 쓰레기 수집을 병렬화하여 파일 시스템의 성능을 향상시키고, 저장 스택의 효율성을 높이고자 한다. 제안된 방법을 로그 구조 파일 시스템에 적용한 것을 ScaleLFS라 명명하였다. ScaleLFS는 스레드 전담 자원 정책, 락-프리 메타데이터 갱신, 락-프리 데이터 보호 기법을 통해 쓰레기 수집 스레드들 간의 경쟁을 줄인다. ScaleLFS는 리눅스 커널 기반 로그 구조 파일 시스템인 F2FS를 기반으로 구현되었으며, 마이크로 및 매트로 벤치마크와 실제 응용 프로그램을 통해 평가되었다. 평가 결과, ScaleLFS는 F2FS, 최신 로그 구조 파일 시스템, 기존 병렬 쓰레기 수집 방식에 비해 각각 최대 3.5배, 4.6배, 7.0배의 성능 향상을 보였다. 두 번째 문제는 저장 장치 고장 감지가 수동적인 방식에 의존하고 있어, 저장 장치와 파일 시스템, 응용 프로그램 간의 정보 간극이 발생하고, 이로 인해 고장 감지가 지연된다는 것이다. 이로 인해 데이터 손실이 커지고 시스템 신뢰성이 저하될 위험이 존재한다. 이러한 정보 간극을 해소하기 위해, 본 논문에서는 능동적인 고장 검사 방식과 강화 학습을 활용한 적응형 고장 시점 예측 기법을 제안한다. 이 기법들은 고장 감지 시간과 데이터 손실을 최소화하는 데 목적이 있다. 제안된 신뢰성 향상 메커니즘은 RL-Watchdog이라 명명되었으며, 리눅스 커널 기반으로 구현되었다. 평가 결과, RL-Watchdog은 기존 고장 감지 방식 대비 최대 96.7%의 데이터 손실을 줄였으며, 고장 시점 예측 정확도는 최대 99.8%에 도달하였다.

    더보기

    목차 (Table of Contents)

    • Abstract i
    • Contents iii
    • List of Figures vi
    • List of Tables ix
    • Chapter 1 Introduction 1
    • Abstract i
    • Contents iii
    • List of Figures vi
    • List of Tables ix
    • Chapter 1 Introduction 1
    • 1.1 Motivation 1
    • 1.1.1 Problems 2
    • 1.2 Contributions 5
    • 1.3 Outline 6
    • Chapter 2 Background 8
    • 2.1 Log-structured File System (LFS) 8
    • 2.2 Opportunities in Application and GC Behaviors 9
    • 2.3 Reinforcement Learning 9
    • 2.4 Related work 10
    • Chapter 3 Towards Efficient Storage Stack for SSDs 14
    • 3.1 Sustained Performance Analysis 14
    • 3.1.1 Sustained Performance on Modern LFSs 14
    • 3.1.2 Identifying Root Causes 15
    • 3.2 Design and Implementation 17
    • 3.2.1 Design Goals of ScaleLFS 17
    • 3.2.2 Strategies of ScaleLFS 18
    • 3.2.3 Overall Architecture of ScaleLFS 18
    • 3.2.4 Dedicated Garbage Collector (DGC) 20
    • 3.2.5 Scalable Victim Manager (SVM) 22
    • 3.2.6 Scalable Victim Protector (SVP) 27
    • 3.2.7 Data and Crash Consistency 29
    • 3.3 Evaluation 31
    • 3.3.1 Micro-benchmark 32
    • 3.3.2 Macro-benchmark 36
    • 3.3.3 Real-world Application 37
    • 3.3.4 Impact of Individual Techniques 39
    • 3.3.5 Side Effect of ScaleLFS 40
    • 3.3.6 Overhead of ScaleLFS 41
    • 3.4 Summary 42
    • Chapter 4 Towards Reliable Storage Stack for SSDs 43
    • 4.1 Anlysis for Failure Handling in Storage Stack 43
    • 4.1.1 Loose-deterministic Failure Check 44
    • 4.1.2 Fixed Command Timeout 46
    • 4.1.3 Delayed Failure Notification 47
    • 4.2 Design and Implementation 48
    • 4.2.1 Overview of RL-Watchdog (RLW) 48
    • iv4.2.2 Light-Weighted Watchdog (LWW) 50
    • 4.2.3 Reinforcement Learning Timeout Predictor (RLTP) 53
    • 4.2.4 Fast Failure Notification (FFN) 58
    • 4.2.5 Putting It All Together 59
    • 4.3 Evaluation 60
    • 4.3.1 Micro Benchmark 63
    • 4.3.2 Macro Benchmark 67
    • 4.3.3 Real-world Application 67
    • 4.3.4 Impact of Individual Techniques 68
    • 4.3.5 Prediction Accuracy 69
    • 4.3.6 Impact of False-Positive Failure Detection 70
    • 4.3.7 Performance Overhead of RLW 71
    • 4.4 Summary 72
    • Chapter 5 Conclusion 74
    • 요약 90
    더보기

    분석정보

    View

    상세정보조회

    0

    Usage

    원문다운로드

    0

    대출신청

    0

    복사신청

    0

    EDDS신청

    0

    동일 주제 내 활용도 TOP

    더보기

    주제

    연도별 연구동향

    연도별 활용동향

    연관논문

    연구자 네트워크맵

    공동연구자 (7)

    유사연구자 (20) 활용도상위20명

    이 자료와 함께 이용한 RISS 자료

    나만을 위한 추천자료

    해외이동버튼