Snapshot Management
Snapshot management in SuiPulse allows you to capture and manage point-in-time states of data streams.
Overview
Snapshot management enables:
- Creating stream snapshots
- Updating snapshot data
- Retrieving snapshot information
- Managing snapshot ownership
Creating Snapshots
import { SuiPulse, Network } from "@suipulse/sdk";
import { Ed25519Keypair } from "@mysten/sui.js/keypairs/ed25519";
// Initialize SuiPulse
const keypair = Ed25519Keypair.fromSecretKey(/* your private key */);
const suiPulse = new SuiPulse(keypair, Network.MAINNET);
// Create a snapshot
const response = await suiPulse.createSnapshot("0x123...", {
metadata: "Snapshot metadata",
});
Managing Snapshots
// Get snapshot data
const snapshot = await suiPulse.getSnapshotData("0x123...");
// Update snapshot data
await suiPulse.updateSnapshot("0x123...", new Uint8Array([1, 2, 3]));
// Get snapshot version
const version = await suiPulse.getSnapshotVersion("0x123...");
// Get associated stream ID
const streamId = await suiPulse.getSnapshotStreamId("0x123...");
Snapshot Configuration
interface SnapshotConfig {
metadata: string;
}
Best Practices
-
Data Management
- Create snapshots regularly
- Verify snapshot integrity
- Monitor snapshot versions
-
Performance
- Optimize snapshot size
- Manage snapshot frequency
- Handle large datasets
-
Security
- Control snapshot access
- Verify snapshot ownership
- Protect snapshot data
Use Cases
- Data backup
- State verification
- Historical analysis
- Data recovery
- Audit trails
Next Steps
- Learn about Stream Management
- Explore Access Control
- Check out Event Handling