제2장 Tibero 6 FixSet07

내용 목차

2.1. 신규 기능
2.1.1. DBMS 엔진
2.1.2. 유틸리티
2.2. 변경 기능
2.2.1. DBMS 엔진
2.2.2. 클라이언트 드라이버
2.2.3. 유틸리티
2.3. Notice
2.3.1. 플랫폼별 포함된 Gateway 정보
2.3.2. 프로세스 명 변경

본 장에서는 Tibero 6 FixSet07에 추가된 신규 기능 및 변경된 기능에 대해서 간략히 설명한다.

본 절에서는 신규로 추가된 기능에 대해서 간략히 설명한다.

다음과 같은 기능들이 추가되었다.

  • Character Set

    • 대만어 캐릭터셋 ZHT16BIG5, ZHT16MSWIN950이 추가되었다.

    • 일본어 캐릭터셋 SJISTILDE이 추가되었다.

  • Context Index

    • context index-sync on commit 기능이 추가되었다.

    • context index local partition을 지원한다.

  • DD/DDL

    • including exchange 구문을 지원한다.

      • alter table exchange partition including indexes를 지원한다.

      • LOCAL PARTITION INDEX이면 exchange하는 partition에 대한 local index를 rebuild해주는 기능이 추가되었다.

    • deferred unique constraints 기능이 추가되었다.

    • Log-in audit을 위한 시스템 테이블 및 설정 파라미터가 추가되었다.

    • Partition Index의 Default Tablespace를 변경할 수 있는 기능이 추가되었다.

    • alter table [table_name] drop partition [partition_name] 구문에서 사용되는 update global indexes 옵션 기능이 추가되었다.

    • SOD(Separation of Duties) 환경에서 SYSAUD 사용자가 DBMS_AUDIT_EVENT 패키지를 사용할 수 있도록 기능이 추가되었다.

  • Executor

    • number format 중 B 포맷이 추가되었다.

    • listagg 함수에 대해서 over(partition by clause) 문법에 대한 기능이 추가되었다.

    • xmltype에 getnumberval 함수가 추가되었다.

    • xmltype(object type)에서 length 함수를 지원한다.

    • xmltype(clob)에서 xmlsequence 함수를 지원한다.

    • to_number 함수에 nls_numeric_characters를 인자로 사용 가능하도록 기능이 추가되었다.

    • DBMS_CRYPTO 패키지에 MAC, RANDOMBYTES 메소드가 추가되었다.

    • NCLOB type에 대해 CONCAT, UPPER, LOWER, LIKE, TRIM, SUBSTR, INSTR, PAD 함수를 지원한다.

    • TO_NCLOB 추가 및 REPLACE에 대한 NCLOB을 처리하도록 기능이 추가되었다.

    • TO_BLOB이 추가되었다.

    • merge into 문의 parallel을 지원한다.

  • Frame

    • v$session에 세션별 consumed_cpu_time 정보 컬럼이 추가되었다.

    • DPL 메시지를 압축해서 처리하는 기능이 추가되었다.

    • DBMS_SCHEDULER 기능이 다음과 같이 추가되었다.

      • STOP_JOB 기능이 추가되었다.

      • JOB을 등록하는 경우 crontab expression에서 day of week을 지원한다.

  • Optimizer

    • nvarchar, nchar에 대한 컬럼 통계 수집 기능이 추가되었다.

    • XA COMMIT을 수행하는 경우 mview refresh on commit 기능이 추가되었다.

  • Parser

    • UTF8 전각 콤마를 지원한다.

    • cast(null as index by table or record) 구문이 추가되었다.

  • PSM

    • utl_i18n.unescape_reference 함수가 추가되었다.

    • utl_i18n.transliterate 함수가 추가되었다(단, kana_fwkatakana만 지원한다).

    • PSM 내부에서 TZ_OFFSET 함수를 지원한다.

    • PSM PreProcess 기능이 추가되었다.

    • PSM에서 Dynamic SQL에 out parameter 기능이 추가되었다.

    • SEQUENCE.CURRVAL 기능이 추가되었다.

    • LENGTH(BLOB) 함수를 지원한다.

  • System view

    • 다음의 view가 추가되었다.

      • DBA_RSRC_PLANS view

      • DBA_RSRC_CONSUMER_GROUPS view

      • DBA_RSRC_PLAN_DIRECTIVES view

      • DBA_RSRC_AUDIT view

      • V$INTERCONNECTION view

  • TAC

    • Solaris에서 IPMP로 생성한 인터페이스에 대해 VIP를 지원한다.

  • TAS

    • rebalance force 기능이 추가되었다.

  • TBCM(Tibero Cluster Manager)

    • cmrctl modify로 db, as, vip resource의 retry_cnt와 retry_interval attribute를 동적변경이 가능하도록 기능이 추가되었다.

    • cmrctl show all로 cluster를 구성하고 있는 모든 노드의 local resource를 한 노드에서 볼 수 있는 기능이 추가되었다.

    • cmrctl show vip가 추가되었다.

    • cmrctl show에서 db, as의 경우 retry fail count가 추가되었다.

  • tbstat

    • Windows용 tbstat library를 지원한다.

  • TSC

    • Primary의 테이블스페이스의 상태를 read only, read write로 변경할 수 있는 기능이 추가되었다.

    • 동적으로 TSC 환경을 설정할 수 있는 기능이 추가되었다.

  • Tx(+undo)

    • undo span 기능이 추가되었다.

본 절에서는 변경 또는 개선된 주요 기능에 대해서 간략히 설명한다.

다음과 같은 기능들이 개선되었다.

  • Cache

    • LOG WRITER가 write에 실패하거나, 원하는 size만큼 wirte에 실패하는 경우 설정된 값 만큼 재시도하도록 개선되었다.

  • Data Dictionary

    • [DBA|ALL|USER]_SEGMENT view의 성능이 개선되었다.

    • [DBA|ALL|USER]_SEGMENT view에 DEFERABLE, DEFERRED 컬럼이 추가되었다.

  • DDL

    • USE_TRUNCATE_PRIVILEGE 파라미터 값이 N인 경우, grant all privileges를 수행하는 경우에도 TRUNCATE할 수 없도록 개선되었다.

  • Executor

    • Bind variable capture 기능이 다음과 같이 개선되었다.

      • 부팅 시에 shared pool에 bind capture 전용으로 고정 크기의 메모리를 할당한다.

      • bind capture용 메모리 할당에 실패했을 때 기존에 저장된 bind variable을 삭제하고, 새로운 variable을 저장한다.

      • Flush 기능이 추가되었다.

        SQL> alter system flush bvc;
    • number sum aggregation 성능이 개선되었다.

    • Group by가 없는 sort aggregation 성능이 개선되었다.

  • Frame

    • TOTAL_SHM_SIZE 파라미터의 기본값이 2GB로 변경되었다.

    • MEMORY_TARGET 파라미터의 기본값이 4GB로 변경되었다.

    • Resource Manager에서 PEP 세션들을 제어하거나 모니터링하는 기능이 추가되었다.

    • Resource 관련 view가 다음과 같이 개선되었다.

      • resource manager를 사용하는 경우 consumer group별, session별 resource 현황을 조회할 수 있다.

      • consumed CPU time, yields, read block 등 stats가 추가되었다.

  • Lock

    • V$LOCK으로 모든 LOCK 정보가 확인 가능하여 WLOCK DUMP 기능이 제거되었다.

  • Optimizer

    • varchar 관련 함수 trim, substr, replace의 성능이 개선되었다.

    • 'rownum = 1'과 'order by desc'가 함께 사용되는 쿼리에 대한 성능이 개선되었다.

    • 소수점이 없는 number에 9999D9999와 같은 소수점을 가진 포맷을 허용하도록 개선되었다.

    • LIST Partition에 대해 range predicate이 쓰인 경우 pruning 성능이 개선되었다.

    • dbms_stats histogram 정확도가 개선되었다.

  • Parser

    • view를 생성하는 경우 join predicate를 분석하는 알고리즘이 개선되었다.

    • HINT 구문 내에서 슬래시( / ) 또는 애스터리스크( * )를 허용하도록 개선되었다.

      SELECT /*+ INDEX_ASC(BASE "QA/DQA.QA1.DAT_KEY") */ * 
      FROM " QA/DQA.QA1.DAT" BASE WHERE KEY IS NOT NULL;
    • PARALLEL HINT를 인자 없이 사용하도록 개선되었다.

  • PSM

    • 1MB로 고정이었던 PSM bcode segment max size 값이 파라미터를 통해 변경이 가능하도록 수정되었다.

  • TAC

    • TAC 환경에서 temp extent alloc/free 작업을 빠르게 대량으로 수행할 경우 여러 tempfile이 존재하더라도 일부만 사용하게 되면서 해당 tempfile을 보호하기 위해 발생하는 Spinlock의 경합을 해소시켜 성능이 향상되었다.

  • TAS

    • TAS rebalance하는 경우 공간이 부족한 디스크로 extent를 옮기려고 할 때, 해당 디스크 용량 부족으로 인해 일정 횟수 이상 실패하는 경우 아래의 규칙에 따라 target 디스크를 변경하도록 개선되었다.

      1. 원래 target 디스크와 동일 failgroup 시도

      2. 해당 extent의 redun들과 겹치지 않는 failgroup 시도

      3. mirroring 포기 후 임의의 디스크로 결정

    • TAS 환경에서도 upgrade controlfile 수행이 가능하도록 수정되었다.

  • TBCM(Tibero Cluster Manager)

    • cmrctl help에 대한 표시가 기존에 미흡한 부분이 있어 다음과 같이 각 Action / Resource Types별로 표시하도록 보완되었다.

      cmrctl help
      Usage: cmrctl [action]
       
      cmrctl help
             cmrctl [action] [res_type]
      
      Action (action):
           add, del, show, start, stop, act, deact, modify
      
      Resource Types (res_type):
           file, network, cluster, service, as, db, vip 
    • CM_RESOURCE_FILE 경로의 파일은 없고 CM_RESOURCE_FILE_BACKUP 경로의 파일만 존재하는 경우 백업 파일을 사용하여 부팅 여부를 사용자가 결정할 수 있도록 수정되었다.

    • CM vip resource에 대해 broadcast address를 추가할 수 있도록 수정되었다.

    • CM vip resource를 root 권한이 아니어도 추가는 가능하도록 수정되었다.

  • TPR(Tibero Performance Repository)

    • TPR repository의 SQLTEXT, SQL_PLAN_STAT, SQL_PLAN 데이터의 delete 속도가 개선되었다.

    • TAC에서 노드 간 ping stat 정보를 리포트 출력 시점이 아닌 해당 스냅샷 구간의 stat으로 저장하도록 개선되었다.