Index
Part I: Overview
1 Log Structured Store (LSS)
2 Serial element
3 Seid
Part II: Architecture
4 LSS - Under the hood
5 Chunk size
6 Storage assumptions and failure model
7 Write ordering on storage devices
8 Log structured store versus Write ahead logging
9 Check pointing
10 Cleaning
11 Lazy writer
12 Clustering
13 MSSN
Part III: Operations and administration
14 Reading serial elements
15 Writing serial elements
16 Seid allocation
17 Durability
18 Backup and hot standby for the LSS
19 LssCompare.exe
20 LssApplyDeltas.exe
Part IV: API reference
21 CEDA LSS API
22 CreateOrOpenLSS
23 LssSettings
24 ILogStructuredStore
25 ReadOnlyBuffer
26 IContiguousSerialElement
27 ILssTransaction
28 LssStats
29 LssDumpSettings
Part V: Performance
30 LSS Performance
31 CEDA LSS versus Oracle BerkeleyDB
32 LSS performance measurement code
33 NuoDB ingestion rate measurement
34 Kyoto Cabinet ingestion rate measurement
35 Kyoto Cabinet without tuning
Part VI: Implementation
36 Implementation overview
37 Storage medium
38 RootBlock
38.1 MSSN
38.2 Challis algorithm
39 The log
39.1 Log Flush Units
39.2 LogRecord
39.3 LogRecordPosition
40 LssTxn
40.1 SerialElementWriter
41 SegmentWriter
41.1 SegmentBeingWrittenInMemory
41.2 LazyWriter
41.3 LazyWriterQueue
41.4 SegmentQueue
41.5 Flushing the log
41.6 LazyFlusher
42 LazyCleaner
43 SegmentCache
43.1 Segment
43.2 SegmentAccessor
43.3 Segment Eviction Queue (SEQ)
44 Recoverable Packet Map (RPM)
45 Segment Utilisation Table (SUT)
45.1 ISUT
45.2 SmallSUT
45.3 LargeSUT
45.4 SUTSection
45.5 SUTSectionRef
45.6 Free Segment Stack (FSS)
45.7 Reservations
45.8 SegIdStack
45.9 SegmentUnreserver
46 CheckPoint
46.1 LazyCheckPointer
47 Recovery
47.1 RecoveryLogRecordVisitor
48 ReadSerialElement
49 DeltaFile
50 CopyStore
51 DumpLss
52 Component source reference
53 Third-party literature
Part VII: Proposals
54 Implementation status and open issues
55 Fully asynchronous LSS
56 Asynchronous loading of serial elements
57 Proposed MVCC support in the LSS
58 Proposed MVCC support in cxPersistStore
59 Backup enhancements
60 RPM improvements
61 Compacting the store
62 Arena allocation for RPM nodes
63 Other Proposals
Part VIII: History
64 Historical documents
65 Legacy Seid encoding
66 LSS - old documentation from 2005
Part IX: Version 2
67 Introduction
68 LSS API
69 Seids
69.1 Multiple Address Spaces in a Working Set
69.2 Space
69.3 SpaceDirectory
69.4 Recoverable Packet Map (RPM)
70 cxSerialise
71 Random Access Store (RAS)
71.1 RAS Writes
71.2 RAS Reads
71.3 RAS Error Handling
72 Segment Cache
73 Partition
74 PartitionDirectory
75 Log
76 Segment Utilisation Table (SUT)
Part VIII: History
Earlier LSS designs and documentation.
Previous
63 Other Proposals
Next
64 Historical documents