430
ordered map
erase operation, 291
find operation, 288, 289
insert operation, 289–291
Collision, 194
Compare-and-exchange (CMPXCHG)
operation, 286
Concurrent data
structures, 286–287
config_setup() function, 145, 149
Content delivery networks
(CDN), 263
Copy-on-write (CoW), 192, 193
count_all() function, 150
create() abstract method, 266
D
Data at rest, 17
Data in-flight, 17
Data Loss Count (DLC), 342–346
Data structure
hash table and transactions, 194
persistence, 197, 200–202
sorted array, versioning, 202–206
Data visibility, 23
DAX-enabled file system, 179, 184
DB-Engines, 143
deleteNodeFromSLL(), 273
deleteRowFromAllIndexedColumns()
function, 273
delete_row() method, 272
Direct access (DAX), 19, 66
Direct Data IO (DDIO), 352
Direct memory access (DMA), 12, 347
Dirty reads, 233
Dynamic random-access memory
(DRAM), 11, 155
E
Ecosystem, persistent containers
begin() and end(), 138
implementation, 134
iterating, 136, 138
memory layout, 134
snapshots, 138
std::vector, 135, 136
vector, 135
Enhanced Asynchronous DRAM
Refresh (eADR), 18
Error correcting codes (ECC), 333
errormsg() method, 150
exists() method, 150
External fragmentation, 177, 188
F
Fence
code, 21, 22
libpmem library, 23
PMDK, 22
pseudocode, 21
SFENCE instructions, 23
flush() function, 217, 242
Flushing
msync(), 20
non-temporal stores, 19
optimized flush, 19
temporal locality, 19
Fragmentation, 187
func() function, 237
G
General-purpose remote replication
method (GPRRM)
performance implications, 355
persistent data, 354, 355
Concurrent data structures (cont.)
Index
Précédent

- 449/457

Suivant