Exadata

Exadata

IN 조건에 대한 INTERNAL_FUNCTION과 오프로딩

문자 값이 암시적 데이터 변환에 의해 날짜 값으로 변환되면 INTERNAL_FUNCTION로 표시되고 스토리지 인덱스를 사용할 수 없게 됩니다. 이와 관련하여 예전에 암시적 데이터 변환과 오프로딩 글을 작성했습니다. 앞서 작성한 IN 조건과 INTERNAL_FUNCTION 글도 INTERNAL_FUNCTION으로 표시된 IN 조건의 스토리지 인덱스 사용 여부에 대한 검증을 위해 작성했습니다. 테스트를 위해 아래와 같이 테이블을 생성하고, _serial_direct_read 파라미터를 ALWAYS로 설정하겠습니다. -- 1-1 DROP TABLE t1 PURGE; CREATE TABLE t1 (c1, c2, c3) NOLOGGING AS SELECT 1, CEIL (ROWNUM / 1000000), LPA..

Exadata

HCC 압축 후 블록 I/O 증가 현상

테이블을 HCC 압축하면 인덱스를 통해 테이블을 액세스하는 쿼리의 블록 I/O가 증가하고 이로 인해 쿼리의 성능이 저하될 수 있습니다. 테스트를 위해 아래와 같이 테이블을 생성하겠습니다. -- 1 DROP TABLE t1 PURGE; CREATE TABLE t1 ( c01, c02, c03, c04, c05, c06, c07, c08, c09, c10 , c11, c12, c13, c14, c15, c16, c17, c18, c19, c20 , c21, c22, c23, c24, c25, c26, c27, c28, c29, c30 ) NOLOGGING PARALLEL 10 PARTITION BY RANGE (c01) ( PARTITION p01 VALUES LESS THAN ( 2) , PARTITION..

Exadata

ASM Partner Disk 조회

Exadata에서 1개의 ASM Disk는 8개의 ASM Partner Disk를 가집니다. ASM 인스턴스에서 아래 쿼리를 수행하면 ASM Partner Disk를 조회할 수 있습니다. 1번 셀의 0번 디스크는 2번 셀의 0, 2, 5, 6번 디스크, 3번 셀의 0, 6, 7, 10번 디스크와 파트너링되어 있습니다. -- 1 SELECT disk , LISTAGG (partner, ',') WITHIN GROUP (ORDER BY partner) AS partner_disk FROM (SELECT cell || '[' || disk || ']' AS disk , partner_cell || '[' || LISTAGG (partner_disk, ',') WITHIN GROUP (ORDER BY numbe..

Exadata

cell single block physical read 대기 이벤트 세분화

19.15.0.0.220419, 21.6.0.0.220419 버전부터 cell single block physical read 대기 이벤트가 아래와 같이 세분화되었습니다. 이전 버전의 cell single block physical read 대기 이벤트는 flash cache, xrmem cache, RDMA 값을 포함하고 있습니다. 해당 버전부터 HC 스토리지의 경우 cell single block physical read 대기 이벤트는 hard disk에 대한 값만 표시합니다. latency는 RDMA, xrmem cache, flash cache, hard disk 순으로 높습니다. 참고로 Exadata System Software 23.1.0 버전을 지원하는 오라클 데이터베이스 버전부터 cell ..

Exadata

Flash Cache Space Usage

AWR 리포트의 Flash Cache Space Usage 항목은 DBA_HIST_CELL_GLOBAL 테이블의 데이터로 flash cache의 사용량을 비율로 표시합니다. 19.19 버전부터 Default OLTP에 synced dirty data를 표시하는 %Synced 값이 추가되었습니다. 이번 버전까지는 %Unflushed 값에 %Synced 값이 포함되어 있었습니다. 아래 쿼리로 현재 Flash Cache Space Usage 정보를 조회할 수 있습니다. SELECT cell_name , ROUND (space / POWER (1024, 3), 2) AS space -- , ROUND (def_oltp_clean / POWER (1024, 3), 2) AS def_oltp_clean , ROUN..

Exadata

LOB 오프로딩

System Software User's Guide의 Operation Not Being Offloaded 항목에는 쿼리가 compressed LOB이나 out-of-line LOB을 포함하면 오프로딩이 동작하지 않는다는 내용이 포함되어 있습니다. A smart I/O operation cannot be offloaded to the Exadata storage servers in the following cases: The query contains a compressed or out-of-line LOB. An out-of-line LOB stores LOB data apart from the other row data and is typically larger than 4 KB in size. 테스..

Exadata

암시적 데이터 변환과 오프로딩

System Software User's Guide의 Operation Not Being Offloaded 항목에 함수 오프로딩과 관련된 아래의 내용이 포함되어 있습니다. 암시적 데이터 변환은 오프로딩되지 않는 INTERNAL_FUNCTION 함수를 수행할 수 있고 이로 인해 쿼리의 성능이 저하될 수 있습니다. A smart I/O operation cannot be offloaded to the Exadata storage servers in the following cases: Although offloading is supported for most SQL operators and functions, Oracle Exadata System Software does not support offload..

Exadata

참조 칼럼 수와 오프로딩

System Software User's Guide의 Operation Not Being Offloaded 항목에는 쿼리가 255개 이상의 단일 테이블 칼럼을 참조하면 오프로딩이 동작하지 않고 HCC 압축을 사용하면 제한을 회피할 수 있다는 내용이 포함되어 있습니다. A smart I/O operation cannot be offloaded to the Exadata storage servers in the following cases: A query that has more than 255 columns referenced, and the heap table is uncompressed, or Basic or OLTP compressed. However, such queries on tables com..

Exadata

HCC Compression for Array Inserts #2

지난 글에 이어 HCC Compression for Array Inserts 기능에 대한 INSERT SELECT 문과 Array INSERT 문을 Conventional Path와 Direct Path로 수행했을 때의 동작을 비교하겠습니다. 테스트를 위해 아래와 같이 테이블을 생성하겠습니다. -- 1-1 DROP TABLE ts PURGE; CREATE TABLE ts (c1, c2, c3, c4, c5, c6) AS SELECT ROWNUM , LPAD (ORA_HASH (ROWNUM, 4294967295, 0), 10, '0') , LPAD (ORA_HASH (ROWNUM, 4294967295, 1), 10, '0') , LPAD (ORA_HASH (ROWNUM, 4294967295, 2), 10,..

Exadata

HCC Compression for Array Inserts #1

12.2 버전에 HCC Compression for Array Inserts 기능이 추가되어 Conventional Path로 수행되는 INSERT SELECT 문과 ARRAY INSERT 문도 HCC 압축이 가능해졌습니다. Hybrid Columnar Compression (HCC) can now be used during array inserts into tables. This means that the SQL INSERT SELECT statement without the APPEND hint can use HCC, and array inserts from programmatic interfaces such as PL/SQL and the Oracle Call Interface (OCI) can u..

Exadata

ExaWatcher Charts

ExaWatcher는 엑사데이터 시스템의 스토리지 서버 및 데이터베이스 서버에서 성능 데이터를 수집하는 유틸리티입니다. GetExaWatcherResults.sh 쉘 스크립트로 ExaWatcher에서 수집한 데이터를 추출할 수 있습니다. $ cd /opt/oracle.ExaWatcher $ sh GetExaWatcherResults.sh -h [INFO ] "--help" option detected, GetExaWatcherResults will display the help information. All the other command line inputs will be ignored. GetExaWatcherResults.sh is a convenient script to collect a spec..

Exadata

Exadata Flash Cache 내용 조회

Exadata Flash Cache 내용을 조회하는 External Table을 생성해보겠습니다. 먼저 아래 내용으로 fc_content_ext.sh 파일을 작성하고 권한을 설정합니다. $ vi fc_content_ext.sh #!/bin/bash /usr/local/bin/dcli -g /home/oracle/cell_group -l root cellcli -e \ LIST FLASHCACHECONTENT ATTRIBUTES \ dbID, dbUniqueName, objectNumber, tableSpaceNumber, cachedSize, cachedKeepSize, cachedWriteSize, \ columnarCacheSize, columnarKeepSize, hitCount, missCount..

정희락
'Exadata' 카테고리의 글 목록