Databases and Storage - The New Frontier
Databases Storage – The New Frontier
As database and storage administrators and engineers, it is important to understand the effect that storage has on database performance.
It is important to understand that databases are an extension of your storage and requires a holistic view when designing and managing solutions that use the database.
This article gives an overview of the Oracle database storage landscape – past, present and future. It’s not meant as an in-depth technical treatment of the topic but opens the door for more discussion and engagement about database storage.
EvolutionBoth storage and databases continue to evolve (albeit at different paces). About a decade ago the enterprise storage of choice was the Storage Area Network or SAN array. At about the same time the current release of Oracle was 10gR1, which introduced Automatic Storage Management (ASM), which provided mirroring and striping capabilities for data files. Database sizes were typically in the hundreds of gigabytes. With the current database release of Oracle 12c, new storage features such as Automatic Data Optimization (ADO) and Heat Maps have been introduced to enable automatic and intelligent storage tiering within the database.
Data growth has also exploded and sizes ranging from tens to hundreds of terabytes are now common. Features such as advanced compression (with hybrid columnar compression with Oracle ZFS appliance, Pillar Axiom orand Exadata) can significantly reduce the amount of storage required. Additionally when it comes to data resilience, the landscape has also significantly changed from the use of magnetic tape devices such as LTO to highly available disk-based solutions with de-duplication and replication. We’ve also witnessed the proliferation of server virtualization for improving hardware efficiency. Given the evolution rate of these technologies it becomes increasingly important for storage management professionals to keep up and arm themselves with the knowledge needed to work effectively.
“Number rules the universe.”When it comes to storage performance, we’re often directed to bombarded by three specs – latency, bandwidth and IOPS. But does this tell the whole story? The short answer is “No”. Each application has its own I/O requirements that are not captured by vendor benchmarks. Data access workloads (random versus sequential) and ratios, I/O sizes all play a part in storage performance. Your data warehouse on fibre-attached SAN arrays with rotating disks may give excellent performance (throughput and bandwidth) but your OLTP workload for an online application on the same array may totally suck! Can you say latency?
How can one measure storage performance? For seasoned Oracle database professionals the answer may seem obvious – response times. But which metrics are relevant for measurement when storage is involved? The Oracle database has a well-instrumented wait interface. However, it is not perfect due to the nature of sampling. That said tools such as Automatic Workload Repository (AWR) and Statspack can provide a wealth of information about database performance and in particular I/O metrics (including histograms). From a back-end storage perspective, there are tools from storage vendors that provide relevant metrics. Some vendors even provide plug-ins for Oracle Enterprise Manager Cloud Control 12c to enable central collection and reporting of storage metrics.
Speaking of measurement – you can find great tools to benchmark your Oracle database storage such as SLOB and fio.
FlashUp until a few years ago rotating disks had all but dominated enterprise storage. While not a brand new technology, flash storage has started to proliferate the IT infrastructure in the form of SSD and more recently all-flash arrays. Flash provides low-latency I/O. Traditional hard-disks have service times in the milliseconds while that of flash is typically less than 1 millisecond. Does that mean that you should dump all your disks for a flash based solution? While flash is great at providing random I/O, spinning disk is still OK for sequential I/O. While moving all your redo logs to Flash may improve response times, it may not give you the best bang for your buck, especially if there are other I/O bottlenecks. With that said there are other considerations such as operational cost that goes into choosing a flash array. There are other issues such as durability and resilience that affect fFlash technology but these are becoming non-issues as the technology improves.
Software is the new hardwareSo what’s next for database storage? Flash technology is now becoming mainstream and the industry is looking towards [hyper] converged infrastructure. Ah yes another marketing buzzword. In a nutshell, converged infrastructure involves putting storage, network and computing resources in a single hardware unit. It’s no surprise that storage has followed suit in the form of software-defined-storage (SDS) and storage virtual machines (SVM). As an example, some vendors virtualize storage controllers in software. This allows for an agnostic storage back-end i.e. DAS, SAN/FC, NFS. Interestingly, Oracle has continued to implement more storage related features at the database layer e.g. Flex ASM, ACFS aka Cloud Filesystem – a POSIX compliant general purpose filesystem that includes Snapshots, Replication along with DBFS and Direct NFS.
By virtualizing hardware storage resources businesses can become more agile (yes another buzzword) and efficient.
What’s next?With the new storage frontier upon us, how does one keep up and learn more about their database storage?
The IOUG Storage SIG is a great way to keep on what’s going on in the world of Oracle and database storage. There are whitepapers and webinars from Oracle product managers, partners and end-users. Also check out the references section for links to whitepapers, articles and blogs from notable experts in the Oracle community.
ReferencesKevin Closson (SLOB author) - http://kevinclosson.wordpress.com/slob/
Flashdba has an excellent series “Storage for DBAs” http://flashdba.com/storage-for-dbas/
James Morle’s book – Scaling Oracle 8i (still relevant) and SANE SAN 2010 whitepaper- http://www.scaleabilities.co.uk/scalingoracle8i/
Frits Hoogland - http://fritshoogland.wordpress.com/
Michael Webster - http://longwhiteclouds.com/oracle/
Kyle Hailey Lies, Damned Lies, and I/O Statistics– http://www.oraclerealworld.com/lies-damned-lies-and-io-statistics/