SAP HANA 사이징(Sizing)

SAP HANA(High Performance Analytic Appliance)의 사이징에 대해서 설명하도록 하겠습니다.

HANA가 In-Memory Database로 하드웨어(Hardware)와 소프트웨어(Software)을 결합한 어플라이선스(Appliance)형태로 구성되어 있습니다.

HANA가 내세우는 장점은 실시간으로 분석이 가능하고 빠른 트랜잭션(Transaction)을 처리하는 것입니다. HANA는 모든 업무처리를 메모리 상에서 수행하고 디스크는 단순이 전원 공급이 중단되었을때 데이터를 보존하기 위해서 존재합니다.

모든 업무 처리(Transaction)를 메모리 상에서 수행하고, 업무 연산(Calculation)을 수행하는 CPU 담당하기 때문에 HANA를 구축할 때 우리 회사에 맞게 몇 개의 CPU를 꽂아야 하고, 메모리를 몇 GB를 넣어야 우리 회사 직원이 느리다고 하지 않고 원하는 결과(리포트)를 처리 할 수 있을지 결정하는 것 이기 때문에 HANA 사이징이 HANA 를 구축하는데 중용한 요소로 작용합니다.

이제 HAHA 를 구축하는데 하드웨어(H/W)정확하게 사이징하는 3가지 방법에 대해서 설명하도록 하겠습니다

  • QuickSizer를 이용한 HANA 사이징(http://service.sap.com/quicksizer)
  • DB 별 스크립트를 이용한 HANA 사이징
  • ABAP 리포트를 이용한 HANA 사이징

 

  1. QuickSizer를 이용한 HANA 사이징(http://service.sap.com/quicksizer)

 

이 사이징은 전통적인 SAP 제품의 사이징 방법으로 SAP사이트에 요구하는 DATA 값을 입력하면 사이징한 결과(CPU, Memory, Disk)이 나오게 된다. 이 방법은 이 사이징을 하는 사이트에 얼마나 정확한 값을 입력하는냐 정확한 사이징을 할 수 있는데 프로젝트를 하다보면 예상 사용자수, 예상 주문건수, 동시 접속자 수, 데이터 량등 이러한 값들을 예상에서 입력해야 하는데 이 숫자 자체도 현업하고 IT담당자들이 예상하는 숫자여서 정확한 H/W 사이징을 현실적으로 불가능합니다.

그러나 간단하게 이 퀵 사이징으로 사이징하는 방법에 대해서 설명하도록 하겠습니다.

이 사이트(http://service.sap.com/quicksizer)에 접속하게 되면 고객에게 발급된 SAP 마켓플레이스의 ID/Password 를 입력하게 되면 사이징할수 있는 화면이 나오게 됩니다.

아래 화면에서 HANA Version을 선택하게 됩니다. Classic Version은 이전 방식으로 사이징했던 방법으로 Oracle, MS SQL, DB2등 전통적인 방식의 사이징은 Classic Version으로 하시면 됩니다. 여기서 우리는 HANA Version으로 선택하고 사이징을 하겠습니다.

Image-0000

Project Name에 프로젝트 이름을 입력하고 Create Project 를 선택하고 신규 프로젝트를 생성하면 사이징하는데 필요한 데이터를 입력할 수 있는 자세한 내용이 나오게 됩니다.

Image-0004

BW powered by SAP HANA 에 대해서 먼저 설명하겠습니다. HANA 가 처음에 솔루션을 출시하게 되면서 BW용으로 처음 나오게 되어서 현재까지 BW용으로 많이 사용하고 있습니다. 이것은 아무래도 BW의 리포트 조회할 때 속도가 중요한 요인이기 때문에 HANA 솔루션 이전에 BIA(Business Intelligence Accelerator)로 많이 사용하였던 고객은 BW on HANA를 사용하는데 큰 거부감 없이 사용하게 되어서 국내 환경에는 BW on HANA가 초기에 많이 설치되고 사용하고 있는 상황입니다.

Image-0002

아래와 같이 빨간색 테두리 안에 필요로 하는 입력 값을 넣는다. 예를 들면 동시사용자(Concurrent users)에 사용자 수를 입력하고, 사용자당 계획된 화면(Plan steps/user)등 사이징에 필요로 하는 값들을 입력한다.

Image-0006

아래와 같이 사이징한 결과를 보기 위해 “Calculate result”버턴을 누루게 되면 결과나 나오게 된다. 이것으로 CPU 는 XS(T-Shirt의 옷 사이즈)로 SAPS 수치 12,000 이 나오고 메모리는 AP서버 199,680MB(199GB), DB서버 196,608MB(196GB)로 나오게 된다.

Image-0005

이러한 SAPS 수치와 메모리 량이 나온 결과를 하드웨어 벤더(IBM, HP, DELL)에 보내게 되면 이 수치에 맞는 H/W 견적서를 받을 수 있다. 예를 들면 IBM의 H/W 벤터 파트너사의 영업 담당자분에게 이 결과를 보내주면 SAPS 수치에 맞는 IBM 서버 모델을 받을 수 있다.

 

  1. DB 별 스크립트를 이용한 HANA 사이징

이 DB 별 HAHA 사이징은 BW on HAHA에만 해당되는 방법이다.

이 방법은 2014년도에 사용하는 방법이지만 정확한 측정이 안되어 사용하는데 참고 사항으로 사용하면 좋을 것 갔습니다.

이 방법은 DB 레벨이서 기존 BW가 설치된 Oracle 환경에서 HANA로 전환했을때 DATA 사이즈를 측정하는 방법입니다.

예를 들면 현재 BW서버가 BW 7.0(Windows 2008, Oracle 10g)가 설치된 것을 BW 7.4(Windows 2012, HANA DB)B로 전환 하는 방법입니다. 이 DB 레벨에서 측정하는 예는 SAP가 설치되지 않는 순수한 Oracle DB를 HANA DB로 전환했을 때 사용할 수 있습니다.

 

이 방법에 SAP Note 1637145 에 첨부된 get_size.zip 파일을 다운로드 하여 DB가 Oralce이면 get_ora_win_size.sql 을 실행하여 결과를 가지고 사이징을 수행합니다.

저는 여기에서 Windows 2008 서버에 Oracle 10g에 대해서 측정 결과를 가지고 설명하도록 하겠습니다. Oracle을 최신 버전으로 업그레이드 없이 BW on HANA로 마이그레이션이 가능하다.

  • Note에 첨부된zip 를 다운로드 한다.

Image-0007

첨부파일에서 get_ora_win_size.sql 을 실행하여 기존에 Windows 2008에 Oracle 10g에 사용하고 있는 BW를 HANA로 마이그레이션 했을 때 필요한 사이즈를 계산할 수 있습니다.

Image-0011

  • 첨부된 파일중에 sql 과 load_RowStore_List.sql 을 같은 디렉토리에 위치합니다.

Image-0012

  • sql 스크립트 부분에서 ‘%dbs_ora_schema%’ 을 스키마 오너인 SAPSR3 로 변경하고 저장한다.
  • 스크립트를 SQLPLUS 명령어로 실행한면 결과가 나온다.

Image-0013

Image-0014

결과에서 보면  Row로 저장되는 테이블 사이즈가 35GB, Column으로 저장되는 사이즈는 66GB이다.여기에서 중요하게 생각되는 부분이 소스 DB에서(기존 BW)에서 Row Table과 Column Table의 사이즈이다.

RowStore Tables [GB]          ColumnStore Tables [GB]            Total Size [GB]

——————–              ———————–               —————

35.15                  66.68                               101.83

 

  • 이 결과를 가지고 계산식을 수행해야 한다. 계산하는 공식은 아래로 설명해 준다.

Image-0016

Image-0015

사이징 공식이 좀 복잡하다. 그러나 우리는 여기서 포기하면 안된다. 정확히 집고 넘어 가야 제대로된 사이징을 했다고 말할 수 있지 않을까?

Image-0017

 

Image-0018

  1. ABAP 리포트를 이용한 HANA 사이징