반응형

1. SAP HANA Replication 이란?

  • SAP HANA System Replication ( HSR ) is a mechanism ensuring the high availability of you SAP system.
    HSR이란 HANA System의 고가용성을 보장하기 위한 매커니즘 이다.
  • System replication is SAP's recommended configuration for addressing SAP HANA Outage reduction due to planed maintenance, faults, and disasters.
    SR은 계획된 유지 관리, 결함, 재난에 대응하여 서비스 중단 시간을 줄이기 위해 SAP에서 권장하는 구성이라고 볼 수 있다.

2. System replication 동작 원리

  • HANA System Replication이 활성화 되면, Secondary DB의 각 서버 프로세스들이 Primary DB와 연결되고 데이터 스냅샷을 요청한다.
  • 그 이후, Primary DB에서의 모든 변경 로그들을 지속적으로 복제한다.

  • Redo log가 복제되기 전 가지는 Primary DB의 트랜잭션은 커밋되지 않고, 이는 SR 구성시 설정하는 복제 모드 설정에 의해 결정된다.
  • System Replication이 수행되는 동안, Secondary DB는 Standby 상태로 유지되고 takeover 발생시 Primary DB의 역할을 넘겨 받아 Active DB로서의 역할을 한다.
    ( 일반적으로 Primary DB는 Active DB, Secondary DB는 Standby DB라고 부른다. )
  • Primary DB에 문제가 발생하면 Secondary DB는 복제모드가 아닌 운영모드로 전환 ( takeover )되며, 이슈가 발생한 DB가 정상화 되면 이를 Secondary DB로서 유지하거나 기존의 구성으로 되돌린다.

3. 이외의 구성

  • System Replication을 이용해 2 tier가 아닌 Active <-> Standby <-> DR ( Disaster Recovery ) 형태의 3 tier로 구성하는 것이 일반적이다.
  • Secondary DB는 Primary DB를 복제하고, DR DB는 Secondary DB를 복제한다. ( 보통 Sync / Async Mode의 차이를 두며 관련 내용은 이후 포스팅 예정 )

  • 물론, Secondary DB와 Third DB가 모두 Primary DB를 복제하는 Multitarget System Replication 구성도 가능하다.
    ( 해당 기능의 경우 HANA version에 따라 지원 가능 여부 확인이 필요하다. )

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

 

Ref.

 

SAP Help Portal

 

help.sap.com

 

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] Database User  (0) 2024.03.17
# [HANA] HANA DB  (0) 2023.12.13
# [HANA] SAP HANA STUDIO 설치  (0) 2023.08.22
# [HANA] HANA version  (0) 2023.02.27
# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
반응형

1. SAP HANA Database User ?

  • SAP HANA Database Users may be technical users or correspond to real end users.
  • HANA DB Users는 기술 사용자이거나 실제 사용자 유저 (End User)를 의미한다.
  • 사용자들이 SAP HANA를 이용해 작업을 (업무) 수행하고자 할 때, 필요한 권한을 가진 계정을 소유하고 있어야 한다.

2. User Type

-  Database Users that Correspond to Real People

  • 사용자가 SAP HANA를 이용해 업무를 처리하기 위해서는 관리자 계정을 통해 생성 된 계정을 사용해야 한다.
  • 사용자가 그룹을 떠날 경우 해당 계정은 삭제 (Drop) 되며, 계정이 소유하고 있던 오브젝트 또한 삭제된다.
    또한, 계정으로 부여한 권한은 자동으로 회수된다.
  • Databasse User들은 CREATE USER 혹은 CREATE RESTRICTED USER 명령어를 이용해 생성된다.

 

    1) Standard Users

      -  해당 유저는 CREATE USER 구문을 통해 생성되어 기본적으로 그들 소유의 schema를 생성할 수 있고
         시스템 뷰의 데이터를 읽을 수 있는 계정이다.

      -  시스템 뷰에 접근하여 읽을 수 있는 권한은 PUBLIC role을 가지고 있으며, 해당 role은 모든 standard user에게 주어진다. 

     2) Restricted users

      -  해당 유저는 CREATE RESTRICCTED USERS 구문을 통해 생성 되어, 기본적으로 아무 권한도 가지지 않은 계정이다.

      -  해당 유저는 Client Application을 통해 SAP HANA에 접근하거나, full SQL 사용을 의도하지 않는 사용자들을 위한 것이다.

      -  사용자 업무를 위해 특정 권한이 필요한 경우 해당 업무를 위한 권한만을 부여하는 것이 일반적이다.

-  Technical Database Users

  • 해당 계정은 실 사용자에 상응하지 않는 계정으로, 사용자가 그룹을 떠나더라도 삭제되지 않는다.
  • 즉, 해당 계정은 사용자를 위해 생성된 것이 아닌 관리자 업무를 위해 존재하는 계정으로 특정 사용자만을 위한 것이 아니다.

3. Standard User

  • SAP HANA를 설치, 업그레이드, 운영하기 위해 필요한 Standard User는 아래와 같다.
  • 실제 본인이 운영하면서 가장 많이 접하게 되는 계정은 SYSTEM이고 조금 딥(?)하게 공부할 필요가 있다고 생각되는
    계정들은 (*) 표시 된 계정이다. ( 만약, 좀 더 정확한 정보를 원한다면 아래의 Ref 를 참고하자 )

User Description
(*) SYSTEM SAP HANA 설치 단계에서 생성 되는 계정으로 다른 데이터 베이스 계정, 테이블 생성 등등의 매우 강력한 권한을 소유한 파워 유저이다.

이외에도, SAP HANA cockpit을 사용할 수 있도록 자동으로 cockpit 관련 몇몇 권한이 해당 계정에 부여되어 있다.
<sid>adm 운영 시스템 사용자로 보통 시스템 운영 관리자로 불리기도 한다.
해당 계정은 SAP SYSTEM의 모든 로컬 자우너에 제한 없이 접근 할 수 있다.
(*) SYS 시스템 테이블, 모니터링 뷰와 같은 데이터베이스 객체를 소유한 테크니컬 데이터베이스 유저이다.
XSSQLCC_AUTO_USER <generated_ID> SQL Connection을 위해 자동으로 생성되는 테크니컬 계정으로 설정을 위해 명시된 권한을 자동으로 부여 받는다.
_SYS_AFL 어플리케이션 함수 라이브러리 ( Application Function Libraries )에 관한 모든 객체를 소유한 테크니컬 유저이다.
_SYS_EPM SAP Performance Management application에 의해 사용되는 테크니컬 유정다.
(*)_SYS_REPO SAP HANA Repository에 의해 사용되는 테크니컬 유저로 아래의 Repository의 모든 객체를 소유하고 있다.

The Repository는 attribute views, analytic views, calculation views, procedures, analytic privileges, roles과 같은 다양한 객체가 포함된 패키지들로 구성되었다.
(*)_SYS_STATISTICS SAP HANA DB의 internal monitoring mechanism에 의해 사용되는 계정으로, 쉽게 말해 데이터베이스의 상태, 성능, 리소스 사용량 등을 수집하여 필요시 alert을 띄워준다.
(일반적으로 데이터베이스 모니터링 시 high alert을 주의 깊게 보는데 해당 역할을 수행하는데 도움을 주는 계정이다. )
_SYS_TASK 모든 프레임워크 오브젝트를 소유한 테크니컬 유저이다.
_SYS_XB 오직 내부 사용을 위해 사용되는 테크니컬 유저이다.

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

 

Ref.

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] SAP HANA System Replication ( HSR )  (0) 2024.03.26
# [HANA] HANA DB  (0) 2023.12.13
# [HANA] SAP HANA STUDIO 설치  (0) 2023.08.22
# [HANA] HANA version  (0) 2023.02.27
# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
반응형

1. SAP HANA 란?

  • HANA ( High performance Analytical Application ) 는 고성능 분석 어플라이언스 라는 의미를 가지고 있다.

    ✓ 어플라이언스란 ? 하드웨어와 소프트웨어가 결합 된 일체형 제품을 의미하는 것으로 SAP HANA의 경우 벤더사를 통해 구매한 뒤, 사용이 가능하다.

  • SAP HANA는 데이터를 디스크에 보관하는 대신 메모리에 저장하는 인 메모리 ( In-Memory ) 방식의 DB 이다.
  • 데이터가 메모리에 저장 및 적재되고 고성능으로 요청을 처리하는 것이 HANA DB의 기본 틀은 맞지만, 다른 시스템과 동일하게 스토리지를 가지고 특정 시점에 데이터를 저장하기 때문에 서버가 종료 되더라도 데이터가 날아가지는 않는다.
  • 운영자 입장에서 서버가 죽은 뒤, 다시 기동하면 데이터를 메모리에 올리는 시간이 필요하기 때문에 데이터가 많은 DB일수록 기동하는데 시간이 걸린다. )
  • 기존의 RDBMS와 달리 열 ( Column )을 기반한 테이블에 데이터를 저장하기 때문에 속도적인 측면에서 상당한 이점을 가진다.

 2. Row-Oriented vs Column-Oriented

  • 가장 왼쪽에 있는 테이블 정보를 기존 DBMS가 사용하는 Row-Oriented 그리고 Column-Oriented 방식으로 적용한 것이다.
  • 만약, Row 방식에서 모든 상품의 Sales의 합을 구하고 싶으면 모든 데이터를 적어도 한번 확인해야 한다.
  • 반면, Column 방식에서는 Sales 부분의 데이터만 확인 후 합을 구하면 되기 때문에 속도적인 측면에서 유리하다.

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

 

Ref.

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] SAP HANA System Replication ( HSR )  (0) 2024.03.26
# [HANA] Database User  (0) 2024.03.17
# [HANA] SAP HANA STUDIO 설치  (0) 2023.08.22
# [HANA] HANA version  (0) 2023.02.27
# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
반응형

0. SAP HANA STUDIO 란?

  • The SAP HANA Studio is an Eclipse-based development and administration tool for working with SAP HANA ( Ref. sap.com )
  • SAP HANA STUDIO란 Eclipese 기반으로 제작된 SAP HANA에서 동작하는 관리용 어플리케이션 툴이다.

 

  • HANA Studio를 설치하기 위해서는 IMC_STUDIO2_[Version].SAR 파일과 SAR 압축 도구인 SAPCAR가 필요하다.
  • HANA Studio 설치 과정은 아래와 같다.

1. SAP HANA 설치 파일 다운로드

  • SAP Support Portal 접속 -> My Support -> Software Downloads

  • "HANA STUDIO" 검색 -> SAP HANA STUDIO2 선택

  • OS 버전을 선택 한 후에 설치하고자 하는 Version 선택

+

2. SAPCAR 설치

  • 설치 파일이 .SAR 로 압축되어 있기 때문에 SAR 파일 해제를 위한 SAPCAR 설치가 추가로 필요하다.
  • SAP Support Portal 접속 -> My Support -> Software Downloads

  • "SAPCAR" 검색 -> SAPCAR 선택

3. .SAR 압축 해제 및 설치

  • SAPCAR.EXE를 사용하여 .SAR 파일 압축 해제를 진행한다.
  • Command : SAPCAR_[Version].EXE -xvf IMC_STUDIO2_[Version].SAR

  • 압축해제 된 폴더로 들어가 hdbsetup.exe 실행

  • HANA Studio 실행

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] Database User  (0) 2024.03.17
# [HANA] HANA DB  (0) 2023.12.13
# [HANA] HANA version  (0) 2023.02.27
# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
반응형

1. HANA DB

  - HANA는 기술 지원 및 유지보수의 종료일 없이, 제품에 대한 지원을 제공하지만, 패치 종료 시점인 EOM ( End of Maintenance)을 가진다.
  - The two versions referred to are HANA DB 1.0 and HANA DB 2.0
    HANA DB는 1.0과 2.0으로 구분 지을 수 있다.
  (1) HANA 1.0

  • The HANA 1.0 database will reach end-of-maintenance in June 2021.
    HANA 1.0의 경우 2021년 6월부로 EOM 됐다.

  (2) HANA 2.0

  • New capabilities are introduced twice a year, every time a new SAP HANA Support Package Stack ( SPS ) is released.
    신규 HANA Support Package Stack ( SPS )가 배포 될 때마다, 일년에 두 번 새로운 기능이 도입된다.

    SPS ? HANA의 패치셋 버전으로, 주요 기능 업그레이드 및 Bug Fix가 포함돼 있다.
    Revision ? HANA의 SPS의 하위 개념인 Minor 패치 버전이다.

  • SAP is providing bug fix and security patches for every SPS between RTC of the next and the first subsequent SPS.
    SAP는 처음과 다음 SPS의  RTC 사이의 모든 SPS에 대한 버그 픽스와 보안 패치를 제공한다.

  • Starting with SAP HANA 2.0 SPS000, SAP will not explicitly declare a DSP anymore.
    DPS status is automatically given with RTC of a new SPS.
    새로운 SPS의 RTC에 따라 DPS 상태가 자동으로 부여된다. ( HANA 2.0부터 DPS 상태를 명시해주지 않는다. )

    RTC ( Release to customer ) ? 고객에게 Release 된 시점으로 신규 SPS 발표 / 적용 가능 시점으로 볼 수 있다.
    DPS ( Datacenter Service Point ) ? SPS Revision 중 SAP로부터 보장 받은 안정적인 SPS 버전

  (3) HANA 2.0 SPS Release

Support Package Stack (SPS) Start Revision Last Release Revision or
Maintenance Revision
End of Maintenance
( EOM )
SAP HANA Platfrom 20. SPS 00 SAP HANA 20. SPS 00
Database Revision 000
SAP HANA 2.0 SPS 00
Database Maintenance Revision 002.02
Y
SAP HANA Platfrom 20. SPS 01 SAP HANA 20. SPS 00
Database Revision 010
SAP HANA 2.0 SPS 01
Database Maintenance Revision 012.05
Y
SAP HANA Platfrom 20. SPS 02 SAP HANA 20. SPS 00
Database Revision 020
SAP HANA 2.0 SPS 02
Database Maintenance Revision 024.10
Y
SAP HANA Platfrom 20. SPS 03 SAP HANA 20. SPS 00
Database Revision 030
SAP HANA 2.0 SPS 03
Database Maintenance Revision 037.07
Y
SAP HANA Platfrom 20. SPS 04 SAP HANA 20. SPS 00
Database Revision 040
SAP HANA 2.0 SPS 04
Database Revision 048.06
Y
SAP HANA Platfrom 20. SPS 05 SAP HANA 20. SPS 00
Database Revision 050
SAP HANA 2.0 SPS 05
Database Revision 059.07
2025.12.31
SAP HANA Platfrom 20. SPS 06 SAP HANA 20. SPS 00
Database Revision 060
SAP HANA 2.0 SPS 06
Database Revision 066
2023.12.31

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

 
참고 : https://blogs.sap.com/2020/07/29/understanding-sap-versions/
https://blogs.sap.com/2016/11/23/sap-hana-2.0-revision-strategy/

 

Understanding SAP Versions | SAP Blogs

47 84 116,415 SAP continues to update their offerings to further improve the user experience. While this is great to ensure our ERP systems have the greatest capabilities possible, it can be hard to keep track that our own systems are up to date. That

blogs.sap.com

 

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] HANA DB  (0) 2023.12.13
# [HANA] SAP HANA STUDIO 설치  (0) 2023.08.22
# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
# [HANA] HANA DB - Memory Architecture  (0) 2022.12.29
반응형

HANA DB의 작동 순서는 아래 그림과 같다.

1. OS Boot -> /etc/init.d/sapinit

  - During linux startup ( OS Boot ) by default it starts the process listed under /etc/inid.d, our sapstartsrv is part of this process.
    OS가 부팅되는 동안, /etc/init.d에 있는 프로세스들이 실행되는데, sapinit script를 통해 sapstartsrv 프로세스가 실행된다.

  sapinit script ? /usr/sap/sapservices 파일을 읽어와 인스턴스 별 라이브러리 정보를 가져오고 sapstartsrv 실행 스크립트를 포함하고 있는 스크립트

  ✓ sapstartsrv ? SAP 시스템에서 필요로 하는 프로세스들의 부모 프로세스 역할을 한다.

2. /etc/init.d/sapinit -> sapstartsrv

  - Once the sapstartsrv is running, it can take command to start to or stop the HANA system.
    sapstartsrv가 실행되면 HANA system을 실행시키거나 중지 할 수 있다.

  - Sapstartsrv can also be used to read log or trace file. SAP HANA studio uses both sapstartsrv and SQL connection to determine the system status.
    sapstartsrv는 log 혹은 trace 파일을 읽는데 사용할 수 있고, HANA studio는 sapstartsrv와 SQL Connection을 이용해 시스템의 상태를 확인한다.

3. Sapstartsrv -> HDB daemon

  - Sapstartsrv trigger the startup of HANA daemon processm this is start all the process that responsible for starting all HANA core defined in HDBdaemon.ini
    sapstartsrv는 HANA Daemon 프로세스를 실행시키는 트리거 역할을 하며, Damon 프로세스는 HDBdaemon.ini 파일에 정의된 HANA의 중요한 프로세스들을 모두 실행한다.

 

HANA core process

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] SAP HANA STUDIO 설치  (0) 2023.08.22
# [HANA] HANA version  (0) 2023.02.27
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
# [HANA] HANA DB - Memory Architecture  (0) 2022.12.29
# [HANA] Log segments  (2) 2022.12.28
반응형

1. Used Memory ?

  -  HANA DB에서 현재 사용하고 있는 메모리의 총량으로 DB 관리자가 가장 주의 깊게 모니터링 해야 되는 지표이다.
  -  HANA DB는 기존 RDBS와 달리 In Memory 기반이기 때문에, Used Memory의 상태는 성능과 밀접한 관계를 가진다.

2. Used Memory 구조

 

 Used Memory 구조는 위 이미지와 같이 폭넓게 표현 할 수 있다.

  0)  Memory Pool

    -  SAP가 기동 되면 메모리의 일정 부분을 확보하게 된다. 이때, 미리 확보하는 Memory 공간을 메모리 풀 ( Memory Pool  ) 이라고 한다.

  1)  Code and Stack

    -  HANA DB를 실행하는 엔진 영역으로, Coding으로 이루어진 프로그램 영역이다.

  2)  System Tables

    -  HANA DB SYSTEM 상에서 쓰이는 Table로 구성되어, Table, User, Data Dictionary 정보를 가지고 있다.

  3)  Row Tables

    -  HANA에서 사용하는 Row (열) 단위 테이블이 차지하는 메모리 영역으로, 해당 테이블은 메모리에 Unload가 불가능 하기 때문에 메모리에 항상 load 된 상태이다.

  4)  Column Tables

    -  Column Tables은 HANA에서 사용하는 대부분의 테이블이기 때문에 가장 많은 메모리 공간을 사용한다.
    -  해당 공간은 Main Storage와 Delta Storage 영역으로 나뉘어, Read와 Write를 각각 수행한다.
       흔히 Write를 의미하는 Delta Merge가 이루어지는 동안에는 메모리 사용량이 증가한다.

  5)  DB Management and Temporary Computations

    -  DB 관리를 위한 Management 공간과 DB 작업을 위한 Temporary Computation 영역으로 나뉘며, Temporary Computation 영역은 일반적으로 Workspace로 불린다.
    -  Workspace는 Heap Memory와 Shared Memory 영역으로 구분되며,
       Heap Memory는 특정 프로세스에 할당 돼 사용되고, Shared Memory는 여러 프로세스가 공유해 사용하는 영역이다.

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] HANA version  (0) 2023.02.27
# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Memory Architecture  (0) 2022.12.29
# [HANA] Log segments  (2) 2022.12.28
# [HANA] savepoint  (0) 2022.12.21
반응형

1. HANA DB Memory Architecture - 메모리 구조

 

  1) Physical Memory

    -  Physical Memory is installed memory on the host.
    -  호스트에 설치된 물리적인 총 메모리를 뜻하며, Physical Memory = Resident Memory + Free ( OS free 공간 ) 이다.

  2)  Used Memory

    -  Total amount of memory of memory currently use by SAP HANA.
    -  HANA DB에서 현재 사용하고 있는 메모리의 총량

  3)  Resident Memory

    -  Resident Memory is the physical memory actually in operational use by process.
    -  HANA DB 프로세스가 실제로 할당 받은 물리적 메모리의 총량

    Used Memory VS Resident Memory

     - Used Memory는 이름에서 알 수 있듯이 HANA DB에서 실제로 사용하고 있는 메모리이다.
        반면 Resident Memory는 점유하고 있는 메모리를 나타낸다.

        다시 말하면, 현재 사용하고 있는 지표는 Used Memory이고,
        사용했었고 추후에 사용할 여지가 있는 메모리가 Resident Memoy 이다.

     -  만약, Resident Memory가 Full 차게 되면 큰 영향은 없지만,
         Used Memory가 Full 차게 된다면 DB Hang 혹은 Down과 같은 문제가 발생할 수 있다.

   4) Memory Pool

    -  SAP가 기동되면 기본적으로 메모리의 일정 공간을 확보하고 시작되며, 이 공간을 메모리 풀 ( Memory Pool )이라고 한다.
    -  (6) Allocation Limit에 도달하기 전까지 할당 가능

 

  5) Virtual Memory

    -  HANA DB에서 사용하기 위해 운영 체제로 부터 할당 받은 메모리 총량
    -  (6) Allocation Limit 보다는 작고 (2) Used Memory 보다는 높다.

 

  6) Allocation Limit

    -  HANA DB에서 최대로 할당할 수 있는 메모리 크리고, 만양 HANA DB가 Limit 부근 혹은 이상을 사용하게 될 경우 Hang 상태에 빠질 수 있음으로 주의가 필요하다

 

2.  HANA Studio를 이용한 Memory Monitoring

 

NO Subject 1 Subject 2 Contents
1 Database Used Memory Used Memory 현재 SAP HANA에 의해 사용된 총 메모리 양
Peak Used Memory 기존 사용했던 메모리 양의 최대치,
최대 메모리 사용량을 추적하는 지표
Allocation Limit 최대 할당할 수 있는 메모리 양
2 Resident Memory Database Resident 데이터베이스가 상주한 메모리 양
Total Resident 총 상주된 메모리 양
Physical Memory 물리적인 메모리 양
3 CPU Usage Database CPU Usage 데이터베이스가 사용 중인 CPU 양
Total CPU Usage 총 CPU 사용량
Maximum CPU Usage 최대 CPU 사용량

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
# [HANA] Log segments  (2) 2022.12.28
# [HANA] savepoint  (0) 2022.12.21
# [HANA] Multitenant Database  (0) 2022.12.05
반응형

1. Log segments ?

 

  -  It has the record of the transaction that have been committed in memory
     메모리에 커밋된 트랜제션들의 기록으로 정의 할 수 있다.

  -  Log volume consists of multiple log segments.
     다수의 log segment는 Log volume을 이룬다

  -  The amount of segments depends on the changes, log and save point interval.
     세그먼트의 크기는 변경, 로그 모드, 세이브 포인트 간격과 연관이 있다.

  -  If the log segment inside log volumes encounters a save point, the following actions occur.
     로그 볼륨 내 로그 세그먼트가 save point에 도달하면 아래와 같은 동작이 진행 된다.

    1)  Data from log segments gets transferred to data volumes after a log segment backup, in cases of log_mode=normal and enable_auto_backup=yes.

        만약, log_mode=normal 이고 enable_auto_backup=yes 이면 로그 백업이 수행되고 관련된 데이터는 data volumes으로 전송 된다.

     2)  Data from log segment gets transferred to data volumes and will be overwritten in cyclic fashion without a log backup when log_mode=overwrite.

         만약, log_mode=overwrite 이면 로그 백업 없이 이와 관련된 data는 data volume으로 전송 된다.

 

2.  Log status

 

  -  log segment 상태 순서 : Writing -> Closed -> Truncated -> Backup -> Free -> Writing

  -  Log volume 영역이 가득 찰 경우, HANA DB는 동작할 수 없는 Hang 상태가 될 수 있기 때문에, Log Back up을 진행해주는 것이 권장된다.

Status Description
Writing The log segment is currently being written.
-> log segment에 쓰여지고 있는 상태로 하나의 log segment는 반드시 write 상태여야 한다.
Closed The log segment is closed by the writer.
-> log segment에 쓰기가 종료된 상태.
Truncated The log segment is not yet backed up. Backup will remove it.
-> log segment가 백업 되지 않은 상태.
BackedUp The log segment has been backed up, but a savepoint has not yet been written.
-> log segment가 백업 됐지만, 세이브 포인트가 지정되지 않아 복구를 위해 보관돼야 하는 상태.
Free The log segment has been backed up, it is not required for restart and can be reused.
-> log segment가 백업 됐고, 재사용 할 수 있는 상태

 

  DB에서 Log segments의 상태를 조회 하는 방법

select b.host, b.service_name, a.state, count(*) 
from "PUBLIC"."M_LOG_SEGMENTS" a 
join "PUBLIC"."M_SERVICES" b on (a.host = b.host AND a.port = b.port) 
group by b.host, b.service_name, a.state;

 

OS에서 Log segments의 상태를 조회 하는 방법

sidadm@hostname:/usr/sap/SID/SYS/global/hdb/custom/config > hdblogdiag seglist /hana/log/SID/mnt0001/hdb00001 | grep -i status | wc -l
sidadm@hostname:/usr/sap/SID/SYS/global/hdb/custom/config > hdblogdiag seglist /hana/log/SID/mnt0001/hdb00002 | grep -i status | wc -l
sidadm@hostname:/usr/sap/SID/SYS/global/hdb/custom/config > hdblogdiag seglist /hana/log/SID/mnt0001/hdb00003 | grep -i status | wc -l
	
Ex ) sidadm@hostname:/usr/sap/SID/SYS/global/hdb/custom/config > hdblogdiag seglist /hana/log/SID/mnt0001/hdb00003 | grep -i Free | wc -l

 

3.  Log Mode

  -  'log_mode' 파라미터를 통해 log segment의 재검색 방식을 조정할 수 있다.

    1)  log_mode = overwrite

        -  Log segment Full 상태가 되면, Log segment의 상태가 Closed로 바뀌고 save point 지정 후 재사용이 가능해진다.
        -  Log backup이 수행되지 않기 때문에 PROD (운영) System에서는 권장되지 않는다.

    2)  log_mode = normal

         -  Automatic Log backup이 활성화 된 경우 자동으로 Log backup이 된다.
         -  save point 이후 Log segment가 백업 되면, Log segment의 상태가 Free가 되어 새로운 Log를 Write할 수 있다.
         -  'basepath_logbackup' 파라미터를 사용해 log를 백업 할 path / directory 설정 가능

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
# [HANA] HANA DB - Memory Architecture  (0) 2022.12.29
# [HANA] savepoint  (0) 2022.12.21
# [HANA] Multitenant Database  (0) 2022.12.05
반응형

1.  savepoint 란?

    -  변경된 모든 데이터가 페이지 형태로 스토리지에 기록되는 주기적인 시점

    -  savepoint가 지정되는 동안, HANA DB의 변경된 모든 데이터가 메모리에서 데이터 볼륨으로 옮겨진다.

    -  savepoint를 지정하는 이유는 시스템을 시작 할 때 로그를 처음부터 처리할 필요 없이 마지막 savepoint 기점으로 처리를 시작해 재시작 속도를 높이기 위함이다.

    ✓  savepoint parameter on HANA ? global.ini -> [persistence] -> savepoint_interval_s ( Default : 300 (s) = 5 min )

   

    ※ 기본 주기 외 savepoint trigger

      -  startup

      -  soft shutdown

      -  backup

      -  snapshot

       ✓  새 savepoint는 이전 savepoint를 덮어쓰지만 나중에 사용을 위해 이전 savepoint를 저장 하는데 이를 snapshot이라 한다.

      -  reclaim datavolume

      -  auto merge function

      -  manual

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
# [HANA] HANA DB - Memory Architecture  (0) 2022.12.29
# [HANA] Log segments  (2) 2022.12.28
# [HANA] Multitenant Database  (0) 2022.12.05
반응형

1.  Multitenant Database ?

    -  SAP HANA DB는 SAP HANA 1.0 SPS09 버전부터 Multitenant Database 구성이 가능해졌다.

    -  HANA DB는 한 개의 SYSTEM DB와 여러 개의 Tenant DB로 구성할 수 있다.

 

2.  SYSTEM DB vs Tenant DB

    1)  SYSTEM DB

      -  HANA SYSTEM의 전반적인 관리 목적으로 사용되며, HANA SYSTEM 내에 오직 한개만 존재한다.

      -  실 데이터를 가진 데이터베이스가 아니기 때문에 SQL 사용에 제한적이다.

      -  하나의 Name Server를 가지고 있다.

      Name Server ? SAP HANA SYSTEM 전체의 Landscape 정보를 가지고 있다.

          -> 어떤 Tenant DB가 존재하고, 각 Tenant DB는 어느 Host에서 동작하는지에 대한 정보를 가지고 있음

 

      2)  Tenant DB

      -  HANA SYSTEM 내에 Tenant DB라 부르는 한 개 이상의 독립적인 데이터베이스를 의미

      -  Tenant DB는 HANA SYSTEM 내에 설치된 소프트웨어, 자원을 ( CPU, Memory ) 공유

      -  DB User / Repository / Persistence ( 디스크에 저장되는 것 ) / Backups / Traces & Logs를 독립적으로 가지고 있음

      -  Tenant DB는 각각의 Index Server를 가지고 있다.

      Index Server ? 실제로 DB Data가 저장되고, 데이터 처리를 위한 엔진을 실행하는 역할을 한다.

 

 

3.  DB별 수행 가능한 작업

 

SYSTEM DB Tenant DB
HANA SYSTEM 전체 시작 / 중지  
HANA SYSTEM 모니터링 Tenant DB 모니터링
HANA SYSTEM 파라미터 설정 Tenant DB 파라미터 설정
Tenant DB 생성 / 삭제 Tenant DB 스키마 / 테이블 / 인덱스 생성 및 삭제
Tenant DB 기능 활성화 / 비활성화  
SYSTEM DB Backup / Recovery / Replication Tenant DB Backup

 

 

🙋‍♂️ 궁금한 점이나 잘못된 내용을 댓글로 적어주시면 감사하겠습니다 !!

반응형

'SAP > HANA' 카테고리의 다른 글

# [HANA] HANA DB Startup sequence ( HANA DB 실행 순서 )  (0) 2023.02.10
# [HANA] HANA DB - Used Memory  (0) 2023.01.02
# [HANA] HANA DB - Memory Architecture  (0) 2022.12.29
# [HANA] Log segments  (2) 2022.12.28
# [HANA] savepoint  (0) 2022.12.21

+ Recent posts