PDU Features
Comprehensive PostgreSQL data recovery capabilities explained in detail. Click on any feature below to learn more about how it works.
Instant Recovery
Recover in minutes—faster than PITR—and restore deleted data even without backups.
Traditional PITR needs a base backup plus WAL replay, which can take hours. PDU reads data files directly to rebuild rows in minutes, even when no PITR chain exists. When WAL is present, you can still apply time or transaction filters—but they are optional for immediately rescuing deleted data.
Key Highlights
- Minutes instead of hours compared to PITR replay
- Works even without base backups or WAL archives
- Instantly restores deleted data after incidents
- Optional time/transaction filtering when WAL exists
Use Cases
- 1Emergency recovery when no PITR backups are available
- 2Rapid restore of accidentally deleted records or tables
- 3Minimizing downtime versus full PITR replay
- 4Retrieving critical rows while PITR chain is incomplete
Technical Details
01Direct heap/page scanning without requiring base backups02Reconstructs tuples and schema metadata from on-disk pages03Optional WAL/time filters applied when WAL is present04Outputs recovered data separately to keep sources untouched
WAL-Based Recovery
Recover deleted or updated data from archived WAL files with time range and transaction filtering.
WAL (Write-Ahead Logging) is PostgreSQL's mechanism to ensure data integrity. PDU leverages WAL archives to recover data that has been deleted or updated, allowing you to restore your database to any point in time covered by your WAL archives.
Key Highlights
- Point-in-time recovery to any moment within WAL archive coverage
- Transaction-level filtering for precise data extraction
- Time range specification for targeted recovery operations
- Support for both full and partial WAL archive sets
Use Cases
- 1Recovering accidentally deleted records from the past few hours
- 2Restoring data to a state before a faulty batch update
- 3Extracting specific transactions for audit purposes
- 4Rolling back unwanted changes without full database restore
Technical Details
01Parses WAL segment files (16MB each by default)02Decodes INSERT, UPDATE, DELETE operations from WAL records03Supports PostgreSQL's standard WAL format across versions 10-1804Works with both compressed and uncompressed WAL archives
Safe & Non-destructive
Read-only operations ensure your original data files remain completely untouched.
PDU is designed with safety as the top priority. All recovery operations are strictly read-only, meaning your original data files, WAL archives, and database structures remain completely unchanged during the recovery process. This eliminates any risk of further data loss during recovery attempts.
Key Highlights
- 100% read-only operations on source files
- No modifications to original data directory
- Safe to run on production backup copies
- Multiple recovery attempts without risk
Use Cases
- 1Attempting recovery on production database copies without risk
- 2Testing different recovery strategies safely
- 3Training and learning database recovery techniques
- 4Forensic analysis of database state
Technical Details
01Opens all files in read-only mode (O_RDONLY)02Creates output in separate directory structure03Never writes to source data directory04Memory-mapped file access for efficiency without modification
Fragment Scanning
Recover dropped or truncated tables through advanced fragment scanning technology.
Fragment scanning is PDU's most advanced recovery technology. When tables are dropped or truncated, PostgreSQL marks the space as free but doesn't immediately overwrite the data. PDU scans data files at the page level to find and recover these fragments, even without table structure information.
Key Highlights
- Recovers data from DROP TABLE operations
- Retrieves truncated table contents
- Works even without original table schema
- The only publicly documented method for DROP TABLE recovery without backups
Use Cases
- 1Recovering from accidental DROP TABLE commands
- 2Restoring data after TRUNCATE operations
- 3Salvaging data from corrupted table files
- 4Emergency recovery when backups are unavailable
Technical Details
01Scans PostgreSQL heap pages (8KB blocks)02Identifies valid tuple headers and data03Reconstructs table structure from page contents04Handles both live and dead tuple recovery
PostgreSQL 10-18
Version-specific executables for PostgreSQL 10 through 18 with full compatibility.
PostgreSQL's internal storage format changes between major versions. PDU provides version-specific executables that understand each version's data file format, page layout, and system catalog structure, ensuring accurate recovery regardless of your PostgreSQL version.
Key Highlights
- Dedicated executables for each PostgreSQL major version
- Full compatibility with version-specific storage formats
- Automatic version detection from data files
- Support for the latest PostgreSQL 18
Use Cases
- 1Recovering data from legacy PostgreSQL 10 databases
- 2Working with mixed-version database environments
- 3Upgrading databases while preserving recovery capability
- 4Testing recovery procedures across different versions
Technical Details
01Version-specific page header parsing02Adapted tuple header interpretation per version03System catalog format awareness04TOAST value handling for each version
Lower Learning Curve
Simple CLI commands with lower learning cost compared to pg_filedump.
Unlike low-level tools such as pg_filedump that require deep PostgreSQL internals knowledge, PDU provides intuitive commands with clear output. Designed for DBAs and developers who need to recover data quickly without becoming storage format experts.
Key Highlights
- Intuitive command-line interface
- Clear, human-readable output
- Comprehensive documentation and examples
- Progressive complexity for advanced users
Use Cases
- 1Emergency recovery by on-call DBAs
- 2Data recovery by development teams
- 3Learning PostgreSQL internals through practical use
- 4Rapid response to data incidents
Technical Details
01Subcommand-based CLI structure (add, unload, scan, etc.)02Built-in help with usage examples03Verbose mode for detailed operation logging04JSON output option for programmatic integration
Ready to Try PDU?
Get started with PDU today and experience professional-grade PostgreSQL data recovery.