0% found this document useful (0 votes)
17 views21 pages

Understanding Oracle Exadata Features

Exadata Distinctives
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views21 pages

Understanding Oracle Exadata Features

Exadata Distinctives
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

What is Exadata?

• Complete Oracle database server

• Disk storage system

• CPU, memory, network hardware

• Operating system

• Database software

• Fully installed and configured


Cell Storage servers
Intel-based Linux servers
with disk drives

14 cell servers per rack


7 on top, 7 on bottom
12 disks per server
3 Infiniband network switches
1 on top, 2 on bottom

8 Intel Linux database servers


4 on bottom, 4 on top
What is standard about Exadata?

• Off the shelf hardware

• Intel x86 processors

• Standard Sun disk drives, memory

• Infiniband network adapters and switches

• Linux operating system

• Oracle 11gR2 database software


What is unique about Exadata?

• Storage Servers have Oracle database specific features

• Smart Scan – returns only needed data

• Storage Indexes – only accesses needed disk blocks

• Hybrid Columnar Compression – fits data into fewer disk


blocks
Comparison of three db server types

• Compare three types of database servers to demonstrate


features unique to Exadata

• DB server with directly attached disk drives

• DB server attached to a Storage Area Network (SAN)

• Exadata

• With Smart Scan

• Without Smart Scan


Rows, Columns, and Blocks

• A SQL table is a collection of rows – one row per sale

• A row is a list of columns – date, product, customer, amount,…

• A table is broken up into equal sized blocks each with a


number of rows = block size/row size = 8000 bytes/80 bytes =
100 rows per block

• Results of queries are a subset of the columns and a subset of


the rows of a table
Database Server with J ust Disks

DATABASE SERVER

INDEXES

MEMORY
DISKS BLOCKS RESULTS USER
CACHE

COMPRESSION
Database Server with SAN

Disk Array (e.g. XP 24000) Database Server

INDEXES

NETWORK
MEMORY MEMORY
DISKS BLOCKS BLOCKS RESULTS USER
CACHE CACHE

COMPRESSION
Exadata with Smart Scan
Cell Storage Server Database Server

INDEXES

NETWORK
MEMORY
DISKS BLOCKS RESULTS USER
CACHE

COMPRESSION
Exadata without Smart Scan
Cell Storage Server Database Server

INDEXES

NETWORK
MEMORY MEMORY
DISKS BLOCKS BLOCKS RESULTS USER
CACHE CACHE

COMPRESSION
Observations about the three server types

• DB server with disks looks like Exadata Cell server

• Indexes

• Compression

• memory cache

• returns small subset of full data

• DB server with SAN looks like full Exadata system

• Storage server

• High speed network

• Database servers
More observations about the three server
types

• DB server with SAN differs from full Exadata system

• Full database blocks copied over SAN network

• Results only copied over Exadata network

• Database server caches blocks from SAN

• Database server does not cache results from cell server

• Exadata Smart Scan can be turned off

• Without Smart Scan Exadata works just like DB server with SAN
How to Use Exadata Smart Scan

• Queries with full table scans automatically do Smart Scans

• Drop indexes

• Make indexes invisible

• Increase optimizer_index_cost_adj to discourage index use

• Use FULL hints to force full scans


How to avoid Smart Scan

• Add indexes and verify that plan uses them

• Add INDEX hint to force index use

• Set CELL_OFFLOAD_PROCESSING to FALSE

• alter system set CELL_OFFLOAD_PROCESSING=FALSE;

• alter session set CELL_OFFLOAD_PROCESSING=FALSE;

• hint - OPT_PARAM('cell_offload_processing' 'false')


Moving an existing application to Exadata

• Try these options and see which is faster:

• Indexes visible or invisible

• optimizer_index_cost_adj normal (100) or high (> 100)

• CELL_OFFLOAD_PROCESSING=FALSE or TRUE

• All of these options can be tested without changing the


application
Why use Exadata?

• New set of performance enhancing features

• All other Oracle features still available

• Easy to use new features

• Easy to bypass new features


Things to watch out for

• Flash memory (storage server cache) slow

• Normal RAM – 1000x faster than disk

• Cell server cache (Flash) – 10x faster than disk

• Can’t control, no documentation for storage indexes

• What columns are they on?

• What column types can they be on?


Things to watch out for – page 2

• Databases tuned for Exadata are not portable

• Datafiles with HCC won’t work on non-Exadata system

• Applications that have been tuned to work well on Exadata will be


slow on non-Exadata

• Poor performance of TEMP space

• Like all RAC systems with many nodes moving temp space from
node to node kills performance.

• Newer X2-8 may address this – 2 node RAC


Things to watch out for – page 3

• HCC and tables > 255 columns buggy

• Wrong results, errors

• Wrong optimizer stats

• Newness issues

• Bugs, hangs, crashes, unexpected results

• Lack of documentation

• Lack of trained people


Recommendations

• Small number of RAC nodes – 2 if possible

• Use as few new features as possible

• Fewer than 256 columns per table

• Get Exadata VM from Oracle for sandbox

• Exalogic – can connect to DB via Infiniband

• Switch our DB links to IB

Common questions

Powered by AI

Smart Scan in Exadata systems significantly accelerates data retrieval by bypassing unnecessary data blocks and directly retrieving only the needed data, resulting in substantial performance improvements for queries with full table scans . This is facilitated by Oracle's storage index technology and intelligent data processing features unique to Exadata . However, potential pitfalls include dependency on specific configurations like full table scans—modifying index strategies to fully leverage Smart Scan—and a lack of portability of these tuned settings if the application were to move off Exadata . Additionally, fine-tuning to discourage index use or making them invisible can lead to performance anomalies if not carefully managed .

In Exadata implementations, flash memory serves as a cache that is significantly faster than traditional disk storage (ten times faster) but still trails traditional RAM, which is about a thousand times faster than disk . This setup offers an intermediate performance boost that can benefit read-heavy operations by reducing latency compared to disk access, though not matching the access speeds of RAM . The limitation in speed relative to RAM highlights the need for careful workload management to avoid reliance on flash for performance-critical tasks where RAM would be more appropriate .

Exadata's Hybrid Columnar Compression differs from traditional compression methods by organizing data within the Exadata storage servers in such a way that it is compressed column-by-column rather than row-by-row as in typical database systems . This approach enables data to fit into fewer disk blocks, significantly reducing the storage footprint and improving I/O efficiency, which is advantageous in Exadata environments where large volumes of data are processed . This method mitigates the overhead typically associated with data retrieval operations, making it uniquely effective within Exadata's architecture .

Exadata optimizes SQL table structures and queries through its Smart Scan and Storage Index technologies, which detect when a full table scan is performed and only return the necessary rows and columns, reducing I/O operations significantly . The system divides a SQL table into blocks with equal numbers of rows, streamlining the processing and access of needed data . These optimizations are particularly effective in queries where large datasets are involved, leveraging Exadata-specific technology to avoid unnecessary data retrieval and processing .

To maintain stable and efficient Exadata systems, it is recommended to use a small number of RAC nodes to reduce the complexity and performance drag associated with larger RAC setups . It's also advised to limit the usage of new features to those that are well-supported and documented, and to keep tables with fewer than 256 columns to avoid known issues with large table structures . Ensuring database configurations leverage Exadata features without over-relying on them aids in maintaining adaptability and portability, should the need arise to integrate other systems or revert configurations .

Databases tuned for Exadata utilize features like Hybrid Columnar Compression (HCC) that are not compatible with non-Exadata systems, leading to poor performance when ported . Additionally, applications that rely on Exadata's performance enhancements such as Smart Scan can find diminished efficiency on non-Exadata systems . Recommendations to address these issues include maintaining a small number of RAC nodes, limiting the use of new features, and keeping tables with fewer than 256 columns to avoid complications related to performance and portability .

Exadata systems offer unique features such as Smart Scan, Storage Indexes, and Hybrid Columnar Compression, which optimize data retrieval by only accessing necessary disk blocks and compressing data to fit into fewer blocks . In contrast, a DB server with directly attached disks lacks these optimizations but resembles the Exadata Cell server in that it also employs indexes and a memory cache for quicker access to subsets of data . Meanwhile, a DB server with a SAN mirrors a full Exadata system by having high-speed network capabilities and being able to cache the blocks from the SAN rather than just the results as Exadata does with Smart Scan off . This makes Exadata systems particularly advantageous when full table scans are common, allowing them to outperform configurations without such enhancements .

The challenges in implementing Exadata systems include managing flash memory performance issues, as flash is only ten times faster than disk despite being a form of cache, and the inability to control or extensively document storage index usage . Furthermore, such systems show poor performance with TEMP space, akin to all RAC systems with many nodes, which may be addressed by using fewer RAC nodes or newer models . Additionally, Hybrid Columnar Compression and tables with more than 255 columns are prone to bugs, wrong results, and improper optimizer statistics, exacerbated by newness issues like inadequate training and documentation, leading to potential unreliability .

When migrating an application to an Exadata system, it is recommended to test all optimization options, such as making indexes visible or invisible and adjusting 'optimizer_index_cost_adj', to ascertain which configurations perform best . Leveraging Exadata-specific features like Smart Scan requires the re-evaluation of query strategies, potentially including discouraging index usage with configuration changes to fully utilize full table scans . The system settings like 'CELL_OFFLOAD_PROCESSING' should be experimented with, setting it to TRUE or FALSE, to maximize performance without altering the application itself .

The limitations of portable optimizations in Exadata systems can significantly affect long-term database strategy by creating dependencies on Exadata-specific features that cannot be effectively replicated on non-Exadata platforms . This dependency may limit future flexibility in infrastructure changes or cloud migrations, as data structures and optimization strategies like HCC become unusable outside of Exadata environments . Therefore, in strategizing, it is crucial to balance the use of such performance enhancements against potential future needs for portability and system integration, ensuring that system growth flexibility is not compromised by short-term optimization .

You might also like