Publications

Detailed Information

Optimizing Components for Data Durability on Different Software Layers : 다양한 소프트웨어 계층에서 데이터 내구성을 위한 구성 요소 최적화

DC Field Value Language
dc.contributor.advisor염헌영-
dc.contributor.author김화정-
dc.date.accessioned2023-06-29T01:59:59Z-
dc.date.available2023-06-29T01:59:59Z-
dc.date.issued2023-
dc.identifier.other000000174187-
dc.identifier.urihttps://hdl.handle.net/10371/193345-
dc.identifier.urihttps://dcollection.snu.ac.kr/common/orgView/000000174187ko_KR
dc.description학위논문(박사) -- 서울대학교대학원 : 공과대학 컴퓨터공학부, 2023. 2. 염헌영.-
dc.description.abstractData movement between remote systems frequently occurs for various purposes, such as backup, replication, or analysis. Data can be corrupted or lost during transmission due to hardware failures or system crashes. Many systems provide procedures for data durability, such as integrity verification or periodic backups to detect data corruption in a timely manner. These procedures either increase data processing time or require additional I/O operations. In this dissertation, we focus on eliminating redundant operations that degrade system performance in the process of ensuring data durability; we present three optimization schemes on the storage, application, and network layers. For the storage layer, we focus on providing robust data durability on flash-based storage systems without adding delays to the entire data processing time. By involving idle cores, we parallelize the checksum computation and overlap it with I/O operations to mitigate the overhead caused by I/O reordering for robust data durability. On the application layer, we present an efficient backup and recovery scheme by exploiting write-ahead logging (WAL) to provide data durability for database systems. We substantially eliminate additional I/O operations by keeping log data for backup and recovery. Archiving log data, on the other hand, degrades the system performance because the amount of log data to manage grows, and logging operations on the critical path slow down data processing times. To address these limitations, we present an in-transit logging scheme that logs important data by inspecting packets on the network layer at the destination system. The proposed scheme guarantees fault-tolerance by delivering the original requests through local clients on the target system. With the proposed schemes, it is possible to provide data durability on different software layers without adding delays to data processing times or redundant I/O operations. We have implemented and evaluated our schemes on real multi-core systems to show the effectiveness of our approach. Using machines equipped with high-performance storage devices connected via 10 Gbps, we evaluated and compared our schemes to existing schemes. Experimental results demonstrate that the proposed schemes efficiently provide data durability by leveraging idle resources and ready-to-use data on the storage, application, and network layers while providing better system performance.-
dc.description.abstract원격 시스템 간의 데이터 이동은 백업, 복제, 혹은 분석과 같은 다양한 목적으로 빈번하게 발생한다. 데이터는 하드웨어 오류 또는 시스템 충돌로 인해 전송 과정에서 손상되거나 손실될 수 있다. 많은 시스템들은 데이터 손상을 적시에 감지하기 위해 무결성 검증 또는 주기적인 백업과 같은 데이터 내구성을 보장하기 위한 절차를 제공한다. 이러한 절차들은 데이터 처리 시간을 지연시키거나 추가적인 I/O 작업을 필요로 한다. 본 논문에서는 데이터 내구성을 확보하는 과정에서 시스템 성능을 저하시키는 중복 작업을 제거하는 데 중점을 두어, 다양한 소프트웨어 계층 (저장장치, 응용, 그리고 네트워크 계층) 에서 데이터 내구성을 효율적으로 제공하기 위한 세 가지 최적화 기법들을 제안한다. 첫째, 저장장치 계층에서 데이터 내구성을 효율적으로 제공하기 위해서, 저장장치 내부 동작을 고려한 동시적이고 안정적인 종단 간 데이터 무결성 검증 기법을 제시한다. 유휴 CPU 리소스를 활용하여 무결성 검증 계산 과정을 병렬화 하고 I/O 작업과 중첩시킴으로써 안정적인 무결성 검증을 위한 I/O 순서 조정으로 야기되는 오버헤드를 완화한다. 둘째, 응용 계층에서 데이터 내구성을 효율적으로 제공하기 위해서, 데이터베이스 시스템의 미리 쓰기 로깅 (Write-ahead logging, WAL) 을 활용한 효율적 백업 및 복구 기법을 제시한다. 백업 및 복구를 위해 로그 데이터를 보관함으로써 추가적인 I/O 작업을 대부분 제거할 수 있다. 반면, 로그 데이터를 유지하는 것은 로그 데이터 양이 증가함에 따라 관리 부담이 증가하게 되고, 또한 여전히 critical path 상에서 로깅 연산을 수행함으로써 시스템 성능을 저하시키게 된다. 이러한 한계점을 극복하기 위해서, 목적지 시스템의 네트워크 계층에서 패킷을 검사하여 중요한 데이터 로깅을 수행하는 전송 중 로깅 (in-transit logging) 기법을 제시한다. 이 기법은 목적지의 로컬 클라이언트를 통해 원래의 요청들을 전달함으로써 내결함성 (fault-tolerance) 을 보장한다. 제안하는 기법들은 데이터 처리 시간 지연이나 추가적인 I/O 작업 없이도 다양한 소프트웨어 계층에서 데이터 내구성을 제공할 수 있다. 제안하는 기법들의 효과를 증명하기 위해서 실제 멀티 코어 시스템에 구현하여 성능을 평가하였다. 우리는 고성능 저장 장치가 장착된 시스템이 10 Gbps 로 연결된 환경에서 제안하는 기법들의 성능을 평가하고 기존의 기법들과 성능 비교를 수행하였다. 실험 결과는 제안하는 기법들이 유휴 리소스와 즉시 사용할 수 있는 데이터들을 활용하여 스토리지, 응용 및 네트워크 계층에서 효율적으로 데이터 내구성을 제공하면서 더 나은 시스템 성능을 제공할 수 있음을 보여준다.-
dc.description.tableofcontentsChapter 1 Introduction 1
1.1 Motivation 1
1.2 Overview 2
1.3 Contributions 3
1.4 Outline 4

Chapter 2 Background 6
2.1 The Internal Structure and Operations of Flash-based SSD 6
2.2 Data Integrity Verification Procedure 8
2.3 Existing Database Backup and Recovery Schemes 10
2.3.1 Physical Backup and Recovery 10
2.3.2 Logical Backup and Recovery 10
2.4 Packet Inspection 11

Chapter 3 Related Work 14
3.1 Data Corruption inside Flash-based SSD 14
3.2 Data Integrity Verification 15
3.3 Backup and Recovery 16
3.4 Logging Optimization 17
3.5 Packet Inspection 18
3.6 eBPF 19

Chapter 4 Providing Data Durability for the Storage Layer 20
4.1 Overview 20
4.2 Motivation 25
4.3 Design and Implementation 26
4.3.1 Overall Architecture 26
4.3.2 Design and Implementation 27
4.4 Evaluation 35
4.4.1 Experimental Setup 35
4.4.2 Performance Results and Analysis 36
4.5 Summary 44

Chapter 5 Providing Data Durability in the Application Layer 45
5.1 Overview 45
5.2 Motivation 48
5.3 Design and Implementation 50
5.3.1 Overall Procedure 50
5.3.2 Design 52
5.3.3 Implementation 57
5.4 Evaluation 59
5.4.1 Experimental Setup 59
5.4.2 Performance Results and Analysis 60
5.5 Summary 64

Chapter 6 Providing Data Durability in the Network Layer 65
6.1 Overview 65
6.2 Motivation 68
6.3 Design and Implementation 68
6.3.1 Design 68
6.4 Evaluation 77
6.4.1 Experimental Setup 77
6.4.2 Performance Results and Analysis 77
6.5 Summary 82

Chapter 7 Discussion 83
7.1 Providing Data Durability for Storage and Database Systems 83
7.2 Limitations 84

Chapter 8 Conclusion 86

요약 102
-
dc.format.extentviii, 103-
dc.language.isoeng-
dc.publisher서울대학교 대학원-
dc.subjectStorage system-
dc.subjectDatabase system-
dc.subjectData durability-
dc.subject.ddc621.39-
dc.titleOptimizing Components for Data Durability on Different Software Layers-
dc.title.alternative다양한 소프트웨어 계층에서 데이터 내구성을 위한 구성 요소 최적화-
dc.typeThesis-
dc.typeDissertation-
dc.contributor.AlternativeAuthorHwajung Kim-
dc.contributor.department공과대학 컴퓨터공학부-
dc.description.degree박사-
dc.date.awarded2023-02-
dc.identifier.uciI804:11032-000000174187-
dc.identifier.holdings000000000049▲000000000056▲000000174187▲-
Appears in Collections:
Files in This Item:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share