When analyzing your Google Cloud Platform (GCP) bill for CloudM Backup, you may notice charges for "Operations" (Class A and Class B). This article provides a technical breakdown of how CloudM Backup interacts with Google Cloud Storage (GCS) APIs and which actions trigger these costs.
Operation Classes Defined
Google categorizes API requests into two primary cost classes:
- Class A Operations (Heavy/Write): Actions that modify the bucket state or list contents. These have a higher cost per 1,000 operations.
- Class B Operations (Light/Read): Actions that read bucket state without modifying it. These have a lower cost per 10,000 operations.
CloudM API Call Reference
The following table maps CloudM Backup actions to specific Google API calls.
| Operation Class | API Call | Usage Context |
|---|---|---|
| Class A (Write) | storage.objects.insert | Occurs when creating new files (e.g., Initial Backup, new emails, new Drive files). |
| Class A (List) | storage.objects.list | Occurs during Delta Backups when scanning the bucket to check for existing data and prevent duplicates. |
| Class B (Read) | storage.objects.get | Occurs during Restores (retrieving data) or MD5 checksum verification. |
Impact of Backup Cycles on Operations
1. Initial Backup (Seeding)
The first time a policy runs, CloudM must commit every single item to storage.
- Technical Mechanics: The system executes a
storage.objects.insertcall for every email, file, contact, and calendar event. - Bill Impact: Expect a one-time spike in Class A costs.
2. Delta Backups (Ongoing)
Subsequent backups are "incremental." CloudM scans the live environment and compares it to the stored backup.
- Technical Mechanics:
- The system uses
storage.objects.list(Class A) to list the contents of the bucket for comparison. - It only uses
storage.objects.insert(Class A) if a new or modified item is found.
- The system uses
- Bill Impact: Costs are significantly lower. The primary cost driver is the "List" operation used to verify data integrity.
3. Restores
Restoring data pushes data from GCS back to the live environment.
- Technical Mechanics: The system uses
storage.objects.getto retrieve the payload of every file being restored. - Bill Impact: High Class B volume. This is also where Network Egress fees apply if data crosses regional boundaries.
Technical Optimization
To reduce API operation counts:
- Reduce Frequency: Running backups every hour generates significantly more
storage.objects.listcalls than running once per day. - Exclude Types: Excluding specific file types (e.g.,
.exeor.zip) preventsstorage.objects.insertcalls for those items.