OCI Block Volume Deep Dive
Source: Dev.to
What is OCI Block Volume
OCI Block Volume is a network‑based storage service that provides persistent storage for compute instances.
It is commonly used for:
- Databases
- Application storage
- Boot volumes
- High‑performance workloads
Architecture Overview
Compute Instance
│
▼
Attachment Layer (iSCSI / Paravirtualized)
│
▼
OCI Block Volume Service
│
▼
Distributed Storage Backend
OCI Block Volume is decoupled from compute, meaning storage persists even if the instance is terminated. Data is replicated across multiple storage servers to ensure high availability and durability.
Types of Volumes
- Boot Volume – Used for operating system
- Block Volume – Used for application data
- Volume Backups – Used for snapshots and recovery
Performance
Performance in OCI Block Volume is defined using VPUs (Volume Performance Units per GB). Higher VPUs provide higher IOPS and throughput.
| VPUs | Typical Use |
|---|---|
| 10 | Low‑cost workloads |
| 20 | Balanced workloads |
| 30+ | High‑performance workloads |
Autotuning (Dynamic Scaling)
Autotuning allows OCI to automatically adjust volume performance based on workload demand.
- Workload increase → Performance increases
- Workload decrease → Cost optimized
Attachment Types
iSCSI Attachment
- Uses TCP/IP‑based storage communication
- Requires manual setup
Paravirtualized Attachment
- Uses OCI‑optimized drivers
- Provides better performance with simpler setup
When to Use What
Use Paravirtualized when:
- Simplicity is required
- Standard workloads
Use iSCSI when:
- Maximum performance is required
- Fine‑grained control is needed
Best Practices
- Use paravirtualized attachments when possible
- Enable autotuning
- Separate volumes for OS, logs, and database
- Monitor performance regularly
- Choose correct VPU levels
Conclusion
OCI Block Volume provides flexible and scalable storage for cloud workloads. By understanding architecture, performance tuning, and attachment methods, engineers can design efficient and reliable storage systems in OCI. Proper monitoring and tuning help avoid performance bottlenecks and ensure optimal system behavior.