SAP HANA Archi강의, LandScape, 크기 조정: 튜토리얼 완료

SAP HANA Database는 Main-Memory 중심의 데이터 관리 플랫폼입니다. SAP HANA 데이터베이스는 SUSE에서 실행됩니다. Linux Enterprises Server 및 그 기반 C++ 언어.

SAP HANA Database는 여러 머신에 분산될 수 있습니다.

SAP HANA의 장점은 아래와 같습니다 –

  • SAP HANA는 모든 데이터가 메모리에 로드되고 디스크에서 데이터를 로드할 필요가 없기 때문에 매우 빠르기 때문에 유용합니다.
  • SAP HANA는 하나의 데이터베이스에서 OLAP(On-line analytic)과 OLTP(On-Line Transaction) 목적으로 사용할 수 있습니다.

SAP HANA Database는 일련의 인메모리 처리 엔진으로 구성됩니다. 계산 엔진은 주요 인메모리 처리 엔진입니다. SAP HANA. 관계형 데이터베이스 엔진(행 및 열 엔진), OLAP 엔진 등과 같은 다른 처리 엔진과 함께 작동합니다.

관계형 데이터베이스 테이블은 열 또는 행 저장소에 있습니다.

저장 유형에는 두 가지가 있습니다. SAP 하나 테이블.

  1. 행 유형 저장(행 테이블용)
  2. 컬럼 유형 저장(컬럼 테이블용).

텍스트 데이터와 그래프 데이터는 각각 텍스트 엔진과 그래프 엔진에 있습니다. 엔진이 더 있어요 SAP HANA 데이터베이스. 충분한 공간을 사용할 수 있는 한 이러한 엔진에 데이터를 저장할 수 있습니다.

SAP HANA Archi강의

데이터는 다양한 압축 기술(예: 사전 인코딩, 실행 길이 인코딩, 스파스 인코딩, 클러스터 인코딩, 간접 인코딩)을 통해 압축됩니다. SAP 하나컬럼 매장.

주 메모리 한계에 도달한 경우 SAP HANA, 사용되지 않는 전체 데이터베이스 객체(테이블, 뷰 등)는 메인 메모리에서 언로드되어 디스크에 저장됩니다.

이러한 객체 이름은 애플리케이션 의미 체계에 따라 정의되며 다시 필요할 때 디스크에서 주 메모리로 다시 로드됩니다. 정상적인 상황에서는 SAP HANA 데이터베이스는 데이터 언로드 및 로드를 자동으로 관리합니다.

그러나 사용자는 테이블을 선택하여 개별 테이블의 데이터를 수동으로 로드 및 언로드할 수 있습니다. SAP 하나 스튜디오 해당 스키마에서 마우스 오른쪽 버튼을 클릭하고 "언로드/로드" 옵션을 선택합니다.

SAP HANA 서버는 다음과 같이 구성됩니다.

  1. 인덱스 서버
  2. 전처리기 서버
  3. 이름 서버
  4. 통계 서버
  5. XS 엔진

    SAP HANA Archi강의

  1. SAP HANA 인덱스 서버 SAP HANA Database 메인 서버는 인덱스 서버입니다. 각 서버의 세부 사항은 다음과 같습니다.
  • 그것은 주요 SAP HANA 데이터베이스 구성요소
  • 여기에는 실제 데이터 저장소와 데이터 처리를 위한 엔진이 포함됩니다.
  • 인덱스 서버 프로세스가 수신됨 SQL 또는 MDX 문.

인덱스 서버의 아키텍처는 아래와 같습니다.

SAP HANA Archi강의

SAP HANA 인덱스 서버 개요

  • 세션 및 트랜잭션 관리자: 세션 구성 요소는 세션 및 연결을 관리합니다. SAP HANA 데이터베이스. 트랜잭션 관리자는 트랜잭션을 조정하고 제어합니다.
  • SQL 및 MDX 프로세서: SQL 프로세서 구성 요소는 데이터를 쿼리하고 쿼리 처리 엔진, 즉 SQL/SQL 스크립트/R/Calc 엔진으로 보냅니다. MDX 프로세서는 다차원 데이터를 쿼리하고 조작합니다(예: 분석 보기 SAP 하나).
  • SQL/SQL 스크립트/R/계산 엔진: 이 컴포넌트는 SQL/SQL 스크립트를 실행하고 계산 모델에서 변환된 계산 데이터를 실행합니다.
  • 저장소: 저장소는 버전 관리를 유지합니다. SAP HANA 메타데이터 개체(예: 특성 뷰, 분석 뷰, 저장 프로시저).
  • 지속성 레이어: 이 계층은 내장된 기능인 "재해 복구"를 사용합니다. SAP HANA 데이터베이스. 백업은 데이터 볼륨의 저장 지점으로 저장됩니다.
    1. 전처리기 서버

    이 서버는 텍스트 분석에 사용되며 검색 기능을 사용할 때 텍스트에서 데이터를 추출합니다.

    1. 이름 서버

    이 서버에는 시스템 환경에 대한 모든 정보가 포함되어 있습니다. 분산 서버에서 네임 서버에는 실행 중인 각 구성 요소에 대한 정보와 서버에서 데이터의 위치가 포함됩니다. 이 서버에는 데이터가 존재하는 서버에 대한 정보가 포함되어 있습니다.

    1. 통계서버

    통계 서버는 상태, 자원 할당/소모 및 성능과 관련된 데이터를 수집하는 역할을 담당합니다. SAP 하나시스템.

    1. XS 서버

    XS 서버에는 XS 엔진이 포함되어 있습니다. 외부 응용 프로그램과 개발자가 사용할 수 있습니다. SAP XS 엔진 클라이언트를 통한 HANA 데이터베이스. 외부 클라이언트 애플리케이션은 HTTP를 사용하여 HTTP 서버용 XS 엔진을 통해 데이터를 전송할 수 있습니다.

    SAP 하나 조경

    '하나'는 뜻 고성능 분석 기기 하드웨어와 소프트웨어 플랫폼의 결합이다.

    • 컴퓨터 아키텍처의 변화로 인해 CPU, RAM, 하드 디스크 측면에서 더 강력한 컴퓨터가 출시되었습니다.
    • SAP HANA는 모든 데이터가 Main Memory에 저장되어 있어 Disk I/O에서 Main Memory로 자주 데이터를 전송할 필요가 없는 성능 병목 현상을 해결하는 솔루션입니다.

    다음과 같습니다 SAP 하드웨어/소프트웨어 분야의 HANA 혁신.

    SAP 하나 조경

    관계형 데이터 저장소에는 두 가지 유형이 있습니다. SAP HANA: 행 저장소 및 열 저장소.

    행 저장소

    • 이는 기존 데이터베이스와 동일합니다. 예: (Oracle, SQL 서버). 유일한 차이점은 모든 데이터가 메모리의 행 저장 영역에 저장된다는 것입니다. SAP HANA는 데이터가 하드 드라이브에 저장되는 기존 데이터베이스와 다릅니다.

    컬럼 저장소

    • 기둥 저장소는 SAP HANA 데이터베이스를 사용하여 컬럼 방식으로 데이터를 관리합니다. SAP HANA 메모리. 열 테이블은 열 저장소 영역에 저장됩니다. 열 저장소는 쓰기 작업에 좋은 성능을 제공하고 동시에 읽기 작업을 최적화합니다.

    아래 두 가지 데이터 구조를 통해 읽기 및 쓰기 작업 성능이 최적화되었습니다.

    SAP 하나 조경

    메인 스토리지

    메인 스토리지는 데이터의 주요 부분을 담고 있습니다. Main Storage에서는 적절한 데이터 압축 방식(Dictionary Encoding, Cluster 인코딩, 스파스 인코딩, 실행 길이 인코딩 등)은 메모리 절약 및 검색 속도 향상을 목적으로 데이터를 압축하는 데 적용됩니다.

    • 메인 스토리지에서 압축 데이터에 대한 쓰기 작업은 비용이 많이 들기 때문에 쓰기 작업은 메인 스토리지의 압축 데이터를 직접 수정하지 않습니다. 대신 모든 변경 사항은 "Delta 저장."
    • Delta 저장소는 쓰기 작업에 최적화되어 있으며 일반 압축을 사용합니다. 쓰기 작업은 주 저장소에서는 허용되지 않지만 델타 저장소에서는 허용됩니다. 읽기 작업은 두 저장소 모두에서 허용됩니다.

    아래와 같이 "Load into Memory" 옵션을 사용하여 주 메모리에 데이터를 수동으로 로드하고 "Unload from Memory" 옵션을 사용하여 주 메모리에서 데이터를 언로드할 수 있습니다.

    SAP 하나 조경

    Delta 스토리지

    Delta 저장소는 쓰기 작업에 사용되고 기본 압축을 사용합니다. 컬럼 테이블 데이터의 모든 커밋되지 않은 수정 사항은 델타 저장소에 저장됩니다.

    이러한 변경 사항을 주 저장소로 이동하려면 "델타 병합 작업"을 사용합니다. SAP HANA 스튜디오는 아래와 같습니다 –

    SAP 하나 조경

    • 델타 병합 작업의 목적은 델타 저장소에 수집된 변경 사항을 주 저장소로 이동하는 것입니다.
    • 수행 후 Delta SAP 열 테이블의 병합 작업에서 메인 저장소의 내용이 디스크에 저장되고 압축이 다시 계산됩니다.

    데이터를 이동하는 프로세스 Delta 델타 병합 중 메인 스토리지로

    SAP 하나 조경

    버퍼 저장소(L1-)가 있습니다.Delta) 이는 행 저장소입니다. 그래서 SAP HANA에서는 L1-델타로 인해 열 테이블이 행 저장소처럼 작동합니다.

    1. 사용자가 테이블에 업데이트/삽입 쿼리를 실행합니다(물리적 Operator는 SQL 문입니다.)
    2. 데이터는 먼저 L1으로 이동합니다. L1이 데이터를 더 이동하는 경우(L1- 커밋되지 않은 데이터)
    3. 그런 다음 데이터는 열 지향적인 L2-델타 버퍼로 이동합니다. (L2- 커밋된 데이터)
    4. L2-델타 프로세스가 완료되면 데이터는 메인 저장소로 이동합니다.

    따라서 열 저장소는 L1-로 인해 쓰기 최적화와 읽기 최적화가 모두 가능합니다.Delta 그리고 각각 메인 스토리지. L1-Delta 커밋되지 않은 모든 데이터를 포함합니다. 커밋된 데이터는 L2-를 통해 Main Store로 이동합니다.Delta. 메인 스토어 데이터는 지속성 계층으로 이동합니다(여기서 화살표는 열 스토어에서 SQL 문을 보내는 물리적 연산자입니다). 열 스토어에서 SQL 문을 처리한 후, 데이터는 지속성 계층으로 이동합니다.

    예를 들어 아래는 행 기반 테이블입니다.

    SAP 하나 조경

    테이블 데이터는 선형 형식으로 디스크에 저장되므로 행 및 열 테이블에 대해 데이터가 디스크에 저장되는 형식은 다음과 같습니다.

    In SAP HANA 메모리, 이 테이블은 디스크의 Row Store에 형식으로 저장됩니다.

    SAP 하나 조경
    메모리 주소

    그리고 Column에서는 데이터가 다음과 같이 디스크에 저장됩니다.

    SAP 하나 조경

    메모리 주소

    데이터는 디스크에 선형 형식으로 열별로 저장됩니다. 데이터는 압축 기술로 압축할 수 있습니다.

    따라서 Column Store는 메모리 절약의 장점이 있습니다.

    SAP 하나 조경

    SAP HANA 사이징

    사이징은 하드웨어 요구 사항을 결정하는 데 사용되는 용어입니다. SAP RAM, 하드디스크, CPU 등 HANA 시스템

    가장 중요한 크기 조정 구성 요소는 메모리이고, 두 번째로 중요한 크기 조정 구성 요소는 CPU입니다. 세 번째 주요 구성 요소는 디스크이지만 크기 조정은 메모리와 CPU에 전적으로 의존합니다.

    In SAP HANA 구현에서 중요한 작업 중 하나는 비즈니스 요구 사항에 따라 적절한 서버 크기를 결정하는 것입니다.

    SAP HANA DB는 일반 DB와 sizing이 다릅니다. DBMS 측면에서 –

    • 에 대한 주 메모리 요구 사항 SAP HANA( 메모리 크기는 Metadata 및 Transaction 데이터에 따라 결정됩니다. SAP 하나)
    • 에 대한 CPU 요구 사항 SAP HANA(예측 CPU는 정확하지 않을 것으로 추정됩니다).
    • 다음에 대한 디스크 공간 요구 사항 SAP HANA(데이터 지속성 및 데이터 로깅을 위해 계산됨)

    애플리케이션 서버 CPU 및 애플리케이션 서버 메모리는 변경되지 않습니다.

    사이즈 계산을 위해 SAP 정확한 크기를 계산하기 위한 다양한 지침과 방법을 제공했습니다.

    아래 방법을 사용할 수 있습니다.

    1. ABAP 보고서를 사용하여 크기 조정.
    2. DB 스크립트를 사용하여 크기 조정.
    3. Quicksizer 도구를 사용하여 크기 조정.

    Quicksizer 도구를 사용하면 요구 사항이 아래 형식으로 표시됩니다.

    SAP HANA 사이징