Computer >> 컴퓨터 >  >> 프로그램 작성 >> 데이터 베이스

Oracle Exadata 플래시 캐시 기능

이 블로그에서는 후기입 플래시 캐시 기능을 포함한 Oracle Exadata Smart Flash Cache 기능 및 아키텍처에 대해 설명합니다.

소개

Exadata Smart Flash Cache 기능에는 다음과 같은 주요 이점이 있습니다.

  • Exadata Smart Flash Cache는 활성 데이터베이스 객체를 플래시로 스테이징하는 기능을 제공합니다.

  • Exadata Smart Flash Logging은 데이터베이스 로깅의 중요한 기능을 가속화합니다.

다시 쓰기 플래시 캐시

플래시 캐시에 쓰는 것이 하드 디스크에 쓰는 것보다 빠르기 때문에 쓰기 집약적인 작업을 개선하는 데 사용되는 후기입 플래시 캐시는 데이터베이스에 대해 과중한 작업을 실행할 때 유용합니다. Oracle에 따르면 애플리케이션에 따라 쓰기 성능은 디스크에 대해 최대 20배(초당 입출력 작업(IOPS)로 측정) 더 빠르고 쓰기 IOPS가 디스크에 비해 10배 더 높을 수 있습니다.

셀 속성 flashCacheMode 캐시 모드를 결정합니다. 가능한 값은 "WriteThrough" 및 "WriteBack"입니다.

현재 캐시 모드를 찾으려면 cellcli 도구와 list cell을 사용하세요. 다음 예와 같이 작업:

CELLCLI> list cell attributes flashcachemode
Oracle Exadata 플래시 캐시 기능 셀 명령 결과 나열

세부 정보를 표시하려면 list cell detail를 사용하세요. 다음 예와 같이 명령:

CELLCLI> list cell detail
Oracle Exadata 플래시 캐시 기능 셀 세부정보 명령 결과 나열

후기입 플래시 캐시 이점

후기입 플래시 캐시는 toflash 캐시를 쓰는 것이 하드 디스크에 쓰는 것보다 훨씬 빠르기 때문에 쓰기 집약적인 작업을 개선합니다. 후기입 플래시 캐시는 온라인 트랜잭션 처리(OLTP)(더 빠른 임의 읽기 및 쓰기) 및 데이터 웨어하우스(DW)(더 빠른 순차 스마트 스캔)를 위한 모든 워크로드에 대한 읽기 및 쓰기를 투명하게 가속화합니다.

후기입 플래시 캐시는 또한 디스크를 데이터와 공유할 때 다시 실행 로그 쓰기의 대기 시간을 줄입니다. cellsrv restart 시 플래시 캐시에서 데이터를 복구할 수 있습니다. .다음 조건 중 하나가 발견되면 다시 쓰기 플래시 캐시 기능을 사용하는 것을 고려하십시오.

  1. "사용 가능한 버퍼 대기"에 대한 상당한 대기 시간

또는

<올 시작="2">
  • AWR(Automated WorkloadRepository) 보고서에서 쓰기 병목 현상을 확인할 때 높은 I/O 시간
  • 다음 표는 다양한 Exadata X4 구성에 대해 Exadata Smart Flash Cache가 데이터베이스 수준에서 제공하는 성능을 보여줍니다.

    Oracle Exadata 플래시 캐시 기능 엑사데이터 성능표

    출처:https://www.oracle.com/technetwork/database/exadata/exadata-smart-flash-cache-366203.pdf, 7페이지

    지능형 캐싱

    스마트 플래시 캐시는 다음과 같은 지능형 캐싱 이점을 제공합니다.

    • 스마트 플래시 캐시는 다양한 유형의 데이터베이스 I/O를 이해합니다.
    • 자주 액세스하는 데이터 및 인덱스 블록이 캐시됩니다.
    • 제어 파일 읽기 및 쓰기가 캐시됩니다.
    • 파일 헤더 읽기 및 쓰기가 캐시됩니다.
    • 데이터베이스 관리자는 캐싱 우선순위에 영향을 줄 수 있습니다.

    불행히도 캐시에 있는 내용을 쉽게 모니터링할 수 있는 방법은 없습니다. Oracle은 list flashcachecontent를 제공했습니다. cellcli 도구에서 명령을 실행하지만 합계 옵션을 제공하지 않고 개체 번호만 표시합니다.

    Exadata 스마트 플래시 캐시 이해

    Exadata Smart Flash Cache는 이 데이터가 디스크에 안전하게 기록될 수 있을 때까지 redo 데이터를 저장하는 셀(스토리지) 서버의 캐시입니다. Exadatastorage 서버는 상당한 양의 플래시 스토리지와 함께 제공됩니다. 소량은 데이터베이스 로깅에 할당되고 나머지는 사용자 데이터 캐싱에 사용됩니다.

    전체 랙 exadata 서버에서 5TB의 플래시 캐시는 상당한 양의 데이터를 저장할 수 있습니다.

    다음 사용 사례에서 볼 수 있듯이 플래시 캐시는 최대 효율성을 위해 자동으로 관리될 수 있습니다.

    – 사용자는 캐싱 우선 순위에 영향을 미치는 선택적 힌트를 제공할 수 있습니다.

    • 관리자는 특정 데이터베이스에 대해 스마트 플래시 캐시를 비활성화할 수 있습니다.

    Exadata 스토리지 서버 소프트웨어

    Exadata Storage Server 소프트웨어의 두 가지 주요 기능은 ExadataFlash 하드웨어를 활용하여 Exadata 데이터베이스 시스템을 Oracle Database를 배포할 수 있는 빠른 시스템으로 만듭니다. 첫째, Exadata Smart Flash Cache는 활성 데이터베이스 개체를 플래시로 스테이징하는 기능을 제공합니다. 둘째, Exadata SmartFlash Logging은 데이터베이스 로깅의 중요한 기능을 가속화합니다.

    Oracle 데이터베이스를 배포하려면 미션 크리티컬한 복원력이 필요합니다. Oracle 데이터베이스와 함께 ExadataStorage Server 소프트웨어를 사용하면 탄력성을 제공합니다.

    FlashDisk 기반 그리드 디스크 만들기

    그리드 디스크에 모든 Flash Cache를 사용해서는 안 됩니다. Flash Cache를 생성할 때 다음 cellcli 도구 create flashcache와 같이 크기 매개변수를 사용하여 그리드 디스크에 사용할 일부 공간을 보류합니다. 명령:

    CellCLI> create flashcache all size=300g;
    

    다음 create griddisk를 사용하여 플래시 디스크의 남은 여유 공간을 사용하여 그리드 디스크를 만듭니다. 명령:

    CellCLI> create griddisk all flashdisk prefix='RAMDISK‘;
    

    그리드 디스크 세부 정보를 나열하려면 list griddisk를 사용하십시오. 다음 예와 같이 명령:

    CellCLI> list griddisk attributes name, diskType, size – where disktype='FlashDisk‘;
    

    Flash Cache 구성의 가장 큰 장점은 시스템이 온라인 상태이고 I/O 요청을 처리하는 동안 수행할 수 있다는 것입니다.

    후기입 플래시 캐시를 활성화하는 방법

    다시 쓰기 플래시 캐시 기능을 활성화하려면 다음 방법 중 하나를 사용하십시오.

    • 롤링 방식 – 이 방법은 관계형 데이터베이스 관리 시스템(RDBMS) 및 자동 스토리지 관리(ASM) 인스턴스가 작동 중이고 한 번에 하나의 셀 서버에서만 후기입 플래시 캐시를 활성화한다고 가정합니다.

    • 논롤링 방식 – 이 방법은 후기입 플래시 캐시를 활성화하는 동안 RDBMS 및 ASM 인스턴스가 다운되었다고 가정합니다.

    후기입 플래시 캐시를 활성화하기 전에 다음 명령을 실행하여 그리드 디스크 "asmdeactivationoutcome" 및 "asmmodestatus" 속성을 확인합니다. 모든 셀의 모든 그리드 디스크가 각각 "예" 및 "온라인"이고 전체 플래시 캐시가 정상 상태이고 플래시 디스크가 저하되거나 위험 상태가 아닌지 확인합니다.

    # dcli -g cell_group -l root cellcli -e list griddisk attributes asmdeactivationoutcome, asmmodestatus
    

    셀 목록을 활성화하려면 다음 명령을 실행하십시오.

    # dcli -g cell_group -l root cellcli -e list flashcache detail
    
    exadata01cell01: WriteThrough
    exadata01cell02: WriteThrough
    exadata01cell03: WriteThrough
    

    후기입 플래시 캐시를 활성화하려면 각 셀에 대해 다음 명령을 실행하십시오.

    -> Drop cache
    
    CellCLI> drop flashcache;
    
    Flash cache exadata01cell01 successfully dropped.
    
    -> Shut down Cell service
    
    CellCLI> alter cell shutdown services cellsrv;
    
    Stopping CELLSRV services... The SHUTDOWN of CELLSRV services was successful.
    
    -> Change Cell Flash Cache mode to Write Back
    
    CellCLI> alter cell flashCacheMode=writeback;
    
    Cell cel04 successfully altered 
    
    -> Restart the Cell Service
    
    CellCLI> alter cell startup services cellsrv;
    
    Starting CELLSRV services...
    The STARTUP of CELLSRV services was successful.
    
    -> Recreate the Flash Cache
    
    CellCLI> create flashcache all;
    
    Flash cache cel04_FLASHCACHE successfully created
    
    -> Check the State on all Cell Server 
    
    # dcli -g cell_group -l root "cellcli -e list cell attributes flashcachemode"
    
    exadata01cell01: WriteBack
    exadata01cell02: WriteBack
    exadata01cell03: WriteBack
    

    결론

    후기입 플래시 캐시 기능을 사용하여 Exadata Flash 하드웨어를 활용하고 Exadata 데이터베이스 시스템을 Oracle 데이터베이스 배포를 위한 더 빠른 시스템으로 만드십시오. Oracle Exadata 데이터베이스 시스템 내부의 플래시 스토리지는 기본적으로 완전히 플래시 캐시로 사용됩니다. 이를 통해 데이터베이스 버퍼 캐시의 확장과 함께 효과적으로 작동하고 OLTP에 특히 중요한 매우 높은 IOPS 속도를 포함하여 더 빠른 액세스를 제공할 수 있습니다. 또한 Flash Storage의 일부를 사용하여 ASM 디스크 그룹을 구축할 수 있습니다. 이 디스크 그룹에 배치된 파일은 캐싱 없이 플래시 스토리지에 영구적으로 상주합니다.

    주제에 대해 질문이 있는 경우 아래 필드에 자유롭게 의견을 남겨주세요.