SlideShare a Scribd company logo
1 of 87
Databases: zero-downtime
backup & point-in-time
recovery
INTRODUCTION
Bartosz Sypytkowski
▪ @Horusiath
▪ b.sypytkowski@gmail.com
▪ bartoszsypytkowski.com
 How databases persist data on disk
 How to backup changes
 How to restore database
 Optimizations and tricks
AGENDA
B+TREE
B+TREE
P1
k6 k8 k10 k11
P2
k2 k4 k6
P3
k7 v7 k8 v8
P4
k9 v9 k10 v10
P5
k11 v11
P6
k1 v1 k2 v2
P7
k3 v3 k4 v4
P8
k5 v5 k6 v6
B+TREE
ON DISK
P1
P2 P3 P8 P9
P5 P6 P10
P1 P2 P3 P5 P6 P8 P9
Database file
P10
Free pages
Root page
4KiB 4KiB 4KiB
4KiB 4KiB
4KiB
COMPAR
ING
VECTOR
CLOCKS
SQLITE
ARCHITECTURE
Core
Backend
Compiler
Interface
SQL Command
Processor
Virtual Machine
B+Tree
Pager
Virtual File System
Tokenizer
Parser
Code Generator
Rollback
Journal
Write-Ahead
Log
ROLLBACK JOURNAL
SQLITE
ROLLBACK
JOURNAL P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Rollback
Journal
SQLITE
ROLLBACK
JOURNAL P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Rollback
Journal
Locate page
with the
record
SQLITE
ROLLBACK
JOURNAL P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Rollback
Journal
P2
Copy pages to
Rollback
Journal
P1
SQLITE
ROLLBACK
JOURNAL P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Rollback
Journal
P2
P1
Modify
affected
pages
SQLITE
ROLLBACK
JOURNAL P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Rollback
Journal
WRITE-AHEAD LOG
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
Locate page
with the
record
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
P1
P2
Write new
page versions
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
UPDATE users SET name = ‘Joe’ WHERE id = 1;
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
P1
P2
Pager
redirects
pages to new
versions
WRITE-AHEAD LOG
CHECKPOINT
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
PRAGMA checkpoint(TRUNCATE);
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
P1
P2
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
PRAGMA checkpoint(TRUNCATE);
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
P1
P2
Override DB
file with log
data
SQLITE
WRITE-AHEAD
LOG P1
P2 P3
PRAGMA checkpoint(TRUNCATE);
B+Tree
Pager
Database
File
P1
P2
P3
Write-Ahead
Log
EVERY CHANGED PAGE MUST BE
FIRST APPENDED AT THE END OF
THE WRITE-AHEAD LOG FILE
EVERY CHANGE IN THE DATABASE
FILE COMES FROM READING
FRONT-TO-BACK WRITE-AHEAD
LOG FILE
EVERY CHANGED PAGE MUST BE
FIRST APPENDED AT THE END OF
THE WRITE-AHEAD LOG FILE
LOG CAN BE PRETTY USEFUL
SQLITE BACKUP
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1 P4
F2
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1 P4
F2 P3
F3
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1 P4
F2 P3
F3 P1
F4
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1 P4
F2 P3
F3
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1 P4
F2 P3
F3
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
BACKING UP CHANGED PAGES
101
Write-Ahead Log
Database process
Backup service Backup drive
P3
F1 P4
F2 P3
F3
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
RESTORE
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
restore(2024/02/11/10:00:00)
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1
P1
F4
P2
F5
F4-F5-2024/02/10/07:54:10
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
PRAGMA CHECKPOINT(TRUNCATE);
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY
101
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
WHAT IF LOG FILE IS TOO BIG?
COMPAR
ING
VECTOR
CLOCKS
WRITE-AHEAD
LOG FRAMES
https://www.sqlite.org/fileformat.html#the_write_ahead_log
Magic number File version
Database page size Checkpoint Seq. No.
0 4B 8B
Salt
Checksum
WAL HEADER
Page number DB size after commit
Salt
Checksum
Page data (4KiB)
Page number DB size after commit
WAL FRAME 1
WAL FRAME 2
COMPAR
ING
VECTOR
CLOCKS
WRITE-AHEAD
LOG FRAMES
https://www.sqlite.org/fileformat.html#the_write_ahead_log
Magic number File version
Database page size Checkpoint Seq. No.
0 4B 8B
Salt
Checksum
Page number DB size after commit
Salt
Checksum
Page data (4KiB)
Page number DB size after commit
if NOT 0, current
frame marks
transaction commit
ROLLBACK ISSUE
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
BEGIN DEFERRED;
T1
EOF
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
P3
F1
INSERT INTO t(name) VALUES(‘John Doe’);
size_after=0
T1
T1
EOF
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
P3
F1
COMMIT;
P1
F2
size_after=0 size_after=3
T1
T1
EOF
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
P3
F1 P1
F2
size_after=0 size_after=3
T1
BEGIN DEFERRED;
T2
EOF
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
P3
F1 P1
F2
size_after=0 size_after=3
T1
T2
UPDATE t SET banned = 1;
P3
F3 P1
F4
size_after=0 size_after=0
EOF
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
P3
F1 P1
F2
size_after=0 size_after=3
T1
P3
F3 P1
F4
size_after=0 size_after=0
ROLLBACK;
EOF
TRANSACTION
COMMIT & ROLLBACK
Write-Ahead Log
Database process
P3
F1 P1
F2
size_after=0 size_after=3
T1
P3
F3 P1
F4
size_after=0 size_after=0
ROLLBACK;
EOF
what if we already backed up these
frames? :/
DON’T BACKUP FRAMES THAT WERE NOT CONFIRMED AS
COMMITTED
POINT-IN-TIME RECOVRERY PROBLEM
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
restore(2024/02/11/10:00:00)
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
P3
F1 P3
F1 P3
F1 P1
F4 P2
F5
POINT-IN-TIME RECOVRERY PROBLEM
F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
POINT-IN-TIME RECOVRERY PROBLEM
INSERT INTO t(name)
VALUES(‘John Doe’);
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
POINT-IN-TIME RECOVRERY PROBLEM
P5
F1 P1
F2
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
POINT-IN-TIME RECOVRERY PROBLEM
P5
F1 P1
F2
P5
F1
P1
F2
F1-F2-2024/02/13/09:30:00
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
POINT-IN-TIME RECOVRERY PROBLEM
P5
F1 P1
F2
P5
F1
P1
F2
F1-F2-2024/02/13/09:30:00
Write-Ahead Log
Database process
Backup service Backup drive F1-F3-2024/02/10/07:54:00
F4-F5-2024/02/10/07:54:10
F6-F7-2024/02/11/11:02:00
F8-F9-2024/02/12/20:30:00
POINT-IN-TIME RECOVRERY PROBLEM
P5
F1 P1
F2
P5
F1
P1
F2
F1-F2-2024/02/13/09:30:00
Database history is no longer linear!
GENERATIONS
SPLIT LOG HISTORY INTO SESSIONS
COMPAR
ING
VECTOR
CLOCKS
GENERATIONS
G1/F1-F3-2024/02/10/07:54:00
Backup drive
G1/.snapshot
G1/F4-F6-2024/02/10/09:30:00
G1/F7-F8-2024/02/11/03:11:00
G1/F9-F10-2024/02/12/14:44:10
G2/.parent
G2/F1-F2-2024/02/11/04:39:13
G2/F3-F8-2024/02/12/05:12:55
G1
G2
DELTAS
COMPACTING HISTORY
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
Visited pages:
P3
P3
H1
Delta file
Artificial Delta
Header
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
Visited pages:
P2 P3
P3
H1
Delta file
P2
H1
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
Visited pages:
P1 P2 P3
P3
H1
Delta file
P2
H1
P1
H3
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
Visited pages:
P1 P2 P3
Skip P3 since it’s
already present in
visited pages
P3
H1
Delta file
P2
H1
P1
H3
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
Visited pages:
P1 P2 P3 P4
P3
H1
Delta file
P2
H1
P1
H3
P4
H4
DELTAS
Backup drive
P3
F1
P4
F2
P3
F3
F1-F3-2024/02/10/07:54:00
P1
F4
P2
F5
P3
F6
F4-F6-2024/02/10/09:33:00
Compacting process
P3
H1
Delta file
Visited pages:
P1 P2 P3 P4
P2
H1
P1
H3
P4
H4
Skip P3 since it’s
already present in
visited pages
DELTAS CAN BE EASILY MERGED
COMPAR
ING
VECTOR
CLOCKS
DELTA MERGE
P3
H1
Delta
file
P2
H1
P1
H3
P4
H4
F1-F6-2024/02/10/09:33:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F7-F13-2024/02/10/12:02:00
COMPAR
ING
VECTOR
CLOCKS
DELTA MERGE
P3
H1
Delta
file
P2
H1
P1
H3
P4
H4
F1-F6-2024/02/10/09:33:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F7-F13-2024/02/10/12:02:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F1-F13-2024/02/10/12:02:00
Latest delta can be
copied as is
Visited pages:
P1 P3 P4 P5
COMPAR
ING
VECTOR
CLOCKS
DELTA MERGE
P3
H1
Delta
file
P2
H1
P1
H3
P4
H4
F1-F6-2024/02/10/09:33:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F7-F13-2024/02/10/12:02:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F1-F13-2024/02/10/12:02:00
Visited pages:
P1 P3 P4 P5
Skip P3 since it’s
already present in
visited pages
COMPAR
ING
VECTOR
CLOCKS
DELTA MERGE
P3
H1
Delta
file
P2
H1
P1
H3
P4
H4
F1-F6-2024/02/10/09:33:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F7-F13-2024/02/10/12:02:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F1-F13-2024/02/10/12:02:00
Visited pages:
P1 P2 P3 P4 P5
P2
H1
COMPAR
ING
VECTOR
CLOCKS
DELTA MERGE
P3
H1
Delta
file
P2
H1
P1
H3
P4
H4
F1-F6-2024/02/10/09:33:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F7-F13-2024/02/10/12:02:00
F1-F13-2024/02/10/12:02:00
Visited pages:
P1 P2 P3 P4 P5
Skip P1 since it’s
already present in
visited pages
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
P2
H1
COMPAR
ING
VECTOR
CLOCKS
DELTA MERGE
P3
H1
Delta
file
P2
H1
P1
H3
P4
H4
F1-F6-2024/02/10/09:33:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F7-F13-2024/02/10/12:02:00
P5
H1
Delta
file
P1
H1
P3
H3
P4
H4
F1-F13-2024/02/10/12:02:00
Visited pages:
P1 P3 P4 P5
Skip P4 since it’s
already present in
visited pages
SUMMARY
 How does continuous backup and point-in-time recovery work in databases:
https://www.bartoszsypytkowski.com/db-backup-point-in-time-recovery
 Litestream: https://litestream.io/
 SQLite write-ahead log docs: https://www.sqlite.org/wal.html
REFERENCES

More Related Content

Similar to How do databases perform live backups and point-in-time recovery

2516186 oracle9i-dba-fundamentals-ii-volume-ii
2516186 oracle9i-dba-fundamentals-ii-volume-ii2516186 oracle9i-dba-fundamentals-ii-volume-ii
2516186 oracle9i-dba-fundamentals-ii-volume-ii
Nishant Gupta
 
OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...
OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...
OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...
Kristofferson A
 

Similar to How do databases perform live backups and point-in-time recovery (20)

About Flink streaming
About Flink streamingAbout Flink streaming
About Flink streaming
 
2600Hz - The Next Wave - KazooCon 2015
2600Hz - The Next Wave - KazooCon 2015 2600Hz - The Next Wave - KazooCon 2015
2600Hz - The Next Wave - KazooCon 2015
 
3 Ways to Improve Performance from a Storage Perspective
3 Ways to Improve Performance from a Storage Perspective3 Ways to Improve Performance from a Storage Perspective
3 Ways to Improve Performance from a Storage Perspective
 
Intel® Xeon® Processor E5-2600 v4 Big Data Analytics Applications Showcase
Intel® Xeon® Processor E5-2600 v4 Big Data Analytics Applications ShowcaseIntel® Xeon® Processor E5-2600 v4 Big Data Analytics Applications Showcase
Intel® Xeon® Processor E5-2600 v4 Big Data Analytics Applications Showcase
 
Data as a Service
Data as a Service Data as a Service
Data as a Service
 
Sprint 89
Sprint 89Sprint 89
Sprint 89
 
oracle upgrade 2015_509_Swonger_ppt.pptx
oracle upgrade 2015_509_Swonger_ppt.pptxoracle upgrade 2015_509_Swonger_ppt.pptx
oracle upgrade 2015_509_Swonger_ppt.pptx
 
2516186 oracle9i-dba-fundamentals-ii-volume-ii
2516186 oracle9i-dba-fundamentals-ii-volume-ii2516186 oracle9i-dba-fundamentals-ii-volume-ii
2516186 oracle9i-dba-fundamentals-ii-volume-ii
 
Chicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyChicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - Mediafly
 
SQL on Azure
SQL on AzureSQL on Azure
SQL on Azure
 
The New Root Zone DNSSEC KSK
The New Root Zone DNSSEC KSKThe New Root Zone DNSSEC KSK
The New Root Zone DNSSEC KSK
 
Erp ehp6 medialist
Erp ehp6 medialistErp ehp6 medialist
Erp ehp6 medialist
 
Inf bco2891 release candidate v11 copy
Inf bco2891 release candidate v11 copyInf bco2891 release candidate v11 copy
Inf bco2891 release candidate v11 copy
 
Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101
 
Behind story in publisher that developer doesn't know
Behind story in publisher that developer doesn't knowBehind story in publisher that developer doesn't know
Behind story in publisher that developer doesn't know
 
Taming Oracle EBS R12.x Accrual Reconciliation Load
Taming Oracle EBS R12.x Accrual Reconciliation LoadTaming Oracle EBS R12.x Accrual Reconciliation Load
Taming Oracle EBS R12.x Accrual Reconciliation Load
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
 
[NetApp] Managing Big Workspaces with Storage Magic
[NetApp] Managing Big Workspaces with Storage Magic[NetApp] Managing Big Workspaces with Storage Magic
[NetApp] Managing Big Workspaces with Storage Magic
 
DataEngConf SF16 - Collecting and Moving Data at Scale
DataEngConf SF16 - Collecting and Moving Data at Scale DataEngConf SF16 - Collecting and Moving Data at Scale
DataEngConf SF16 - Collecting and Moving Data at Scale
 
OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...
OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...
OakTableWorld 2013: Ultimate Exadata IO monitoring – Flash, HardDisk , & Writ...
 

More from Bartosz Sypytkowski

More from Bartosz Sypytkowski (14)

Postgres indexes: how to make them work for your application
Postgres indexes: how to make them work for your applicationPostgres indexes: how to make them work for your application
Postgres indexes: how to make them work for your application
 
Scaling connections in peer-to-peer applications
Scaling connections in peer-to-peer applicationsScaling connections in peer-to-peer applications
Scaling connections in peer-to-peer applications
 
Rich collaborative data structures for everyone
Rich collaborative data structures for everyoneRich collaborative data structures for everyone
Rich collaborative data structures for everyone
 
Postgres indexes
Postgres indexesPostgres indexes
Postgres indexes
 
Behind modern concurrency primitives
Behind modern concurrency primitivesBehind modern concurrency primitives
Behind modern concurrency primitives
 
Collaborative eventsourcing
Collaborative eventsourcingCollaborative eventsourcing
Collaborative eventsourcing
 
Behind modern concurrency primitives
Behind modern concurrency primitivesBehind modern concurrency primitives
Behind modern concurrency primitives
 
Living in eventually consistent reality
Living in eventually consistent realityLiving in eventually consistent reality
Living in eventually consistent reality
 
Virtual machines - how they work
Virtual machines - how they workVirtual machines - how they work
Virtual machines - how they work
 
Short story of time
Short story of timeShort story of time
Short story of time
 
Akka.NET streams and reactive streams
Akka.NET streams and reactive streamsAkka.NET streams and reactive streams
Akka.NET streams and reactive streams
 
Collaborative text editing
Collaborative text editingCollaborative text editing
Collaborative text editing
 
The last mile from db to disk
The last mile from db to diskThe last mile from db to disk
The last mile from db to disk
 
GraphQL - an elegant weapon... for more civilized age
GraphQL - an elegant weapon... for more civilized ageGraphQL - an elegant weapon... for more civilized age
GraphQL - an elegant weapon... for more civilized age
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 

How do databases perform live backups and point-in-time recovery