파티션 high_value_clob, high_value_json 칼럼 추가

2023. 4. 12.·Oracle/Administration

Oracle 23c에 파티션의 상위 값을 조회할 수 있는 CLOB 타입의 high_value_clob 칼럼과 JSON 타입의 high_value_json 칼럼이 추가되었습니다. 이제 불편한 LONG 타입의 high_value 칼럼을 사용하지 않아도 됩니다.

All data dictionary views holding partitioning-related metadata, e.g. [ALL_TAB_PARTITIONS], have two additional columns representing the high value (boundary) information of partitions and subpartitions in JSON and CLOB format. Providing the high value (boundary) partitioning information in JSON and as CLOB enables you to use this information programmatically. This enables simple and automated processing of this information for schema retrieval or lifecycle management operations.

 

아래 쿼리로 추가된 칼럼을 확인할 수 있습니다.

-- 1
SELECT table_name, column_id, column_name, data_type
  FROM dba_tab_columns
 WHERE owner = 'SYS'
   AND table_name LIKE 'DBA%PART%'
   AND column_name IN ('HIGH_VALUE_CLOB', 'HIGH_VALUE_JSON');

TABLE_NAME            COLUMN_ID COLUMN_NAME     DATA_TYPE
--------------------- --------- --------------- ---------
DBA_IND_PARTITIONS           44 HIGH_VALUE_CLOB CLOB
DBA_IND_PARTITIONS           45 HIGH_VALUE_JSON JSON
DBA_IND_SUBPARTITIONS        42 HIGH_VALUE_CLOB CLOB
DBA_IND_SUBPARTITIONS        43 HIGH_VALUE_JSON JSON
DBA_TAB_PARTITIONS           54 HIGH_VALUE_CLOB CLOB
DBA_TAB_PARTITIONS           55 HIGH_VALUE_JSON JSON
DBA_TAB_SUBPARTITIONS        52 HIGH_VALUE_CLOB CLOB
DBA_TAB_SUBPARTITIONS        53 HIGH_VALUE_JSON JSON

8 행이 선택되었습니다.

 

테스트를 위해 아래와 같이 테이블을 생성하겠습니다.

-- 2
DROP TABLE t1 PURGE;

CREATE TABLE t1 (c1 NUMBER)
PARTITION BY RANGE (c1) (
    PARTITION p1 VALUES LESS THAN (11)
  , PARTITION p2 VALUES LESS THAN (21)
  , PARTITION pm VALUES LESS THAN (MAXVALUE)
);

 

아래와 같이 high_value_clob, high_value_json 칼럼을 조회할 수 있습니다.

-- 3
SELECT partition_name, high_value, high_value_clob, JSON_SERIALIZE (high_value_json) AS high_value_json
  FROM user_tab_partitions
 WHERE table_name = 'T1';

PARTITION_NAME HIGH_VALUE HIGH_VALUE_CLOB HIGH_VALUE_JSON
-------------- ---------- --------------- --------------------
P1             11         11              {"high_value":11}
P2             21         21              {"high_value":21}
PM             MAXVALUE   MAXVALUE        {"is_maxvalue":true}

3 행이 선택되었습니다.
저작자표시 비영리 변경금지 (새창열림)
'Oracle/Administration' 카테고리의 다른 글
  • IOT에 대한 Advanced LOW 압축
  • Inline LOB의 최대 크기 변경
  • 오브젝트 ID
  • SCAN과 LOAD_BALANCE에 대한 접속 테스트
정희락
정희락
2007년부터 Oracle Database 성능 최적화에 관심을 가져왔습니다. 현재 한국오라클 Engineered Systems Solution Engineering 팀에서 Solution Engineer로 근무하고 있습니다. 이 블로그는 개인적인 연구 목적으로 운영되며 Oracle 사의 공식적인 입장을 대변하지 않습니다.
  • 정희락
    TunA
    정희락
  • 전체
    오늘
    어제
    • 분류 전체보기 (201)
      • Oracle (173)
        • SQL (33)
        • PLSQL (10)
        • Performance (74)
        • Administration (37)
        • Installation (3)
        • Utilities (1)
        • JSON (8)
        • Vector (7)
      • Exadata (15)
      • SQL*Plus (2)
      • Linux (5)
      • Resources (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 도서

    • 불친절한 SQL 프로그래밍
    • 불친절한 PL/SQL 프로그래밍
  • 링크

    • Connor McDonald
    • Frits Hoogland
    • Jonathan Lewis
    • Julian Dontcheff
    • Julian Dyke
    • Kun Sun
    • Maria Colgan
    • Martin Bach
    • Mike Dietrich
    • Tanel Poder
  • 공지사항

  • 인기 글

  • 태그

    12c
    19c
    21c
    23ai
    case study
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
정희락
파티션 high_value_clob, high_value_json 칼럼 추가
상단으로

티스토리툴바