이주제를이해하는데필요한지식 SQL Programming 인덱스와실행계획확인 데이터압축 100 개념및소개수준 200 중간수준 300 고급수준 400 전문가수준 200 에 100 에 더하여 선수지식 더하여 능숙한사용 Level 300 불필요 기술적세부사항설명 경험, 아키텍

Similar documents
Microsoft PowerPoint - 1_3_DBA_SQL_tuning

DBMS & SQL Server Installation Database Laboratory

歯sql_tuning2

Oracle Database 10g: Self-Managing Database DB TSC

Tablespace On-Offline 테이블스페이스 온라인/오프라인

DW 개요.PDF

untitled

Integ

untitled

Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터

10.ppt

MySQL-Ch10

ETL_project_best_practice1.ppt

PowerPoint 프레젠테이션

< FC1A6BEC8BFE4C3BBBCAD2E687770>

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

Microsoft Word - [Unioneinc] 특정컬럼의 통계정보 갱신_ _ldh.doc

초보자를 위한 분산 캐시 활용 전략

untitled

김기남_ATDC2016_160620_[키노트].key

3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT

APOGEE Insight_KR_Base_3P11


Beyond Relational SQL Server, Windows Server 에디션비교 씨앤토트 SW 기술팀장세원

PowerPoint 프레젠테이션

WINDOW FUNCTION 의이해와활용방법 엑셈컨설팅본부 / DB 컨설팅팀정동기 개요 Window Function 이란행과행간의관계를쉽게정의할수있도록만든함수이다. 윈도우함수를활용하면복잡한 SQL 들을하나의 SQL 문장으로변경할수있으며반복적으로 ACCESS 하는비효율역

슬라이드 1

13주-14주proc.PDF

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

차세대 시스템 개발과 스마트 캠퍼스 구축의 시대! 2014년 현재 대학 정보화 화두는 차세대, 스마트 캠퍼스, 개인정보보호 입니다. 대학 정보화 동향 1990년대 후반부터 2000년대 초반 붐처럼 일었던 학사행정 시스템 구축의 시기를 지나 2000년대 중 후반 부터는

Orcad Capture 9.x

vm-웨어-01장

목 차

Remote UI Guide

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

Microsoft PowerPoint - 27.pptx

1217 WebTrafMon II

Simplify your Job Automatic Storage Management DB TSC

슬라이드 1

PRO1_09E [읽기 전용]

solution map_....

最即時的Sybase ASE Server資料庫診斷工具

R50_51_kor_ch1

Microsoft PowerPoint - CNVZNGWAIYSE.pptx

PCServerMgmt7

ALTIBASE HDB Patch Notes

MAX+plus II Getting Started - 무작정따라하기

untitled

리뉴얼 xtremI 최종 softcopy

Microsoft PowerPoint - 10Àå.ppt

별지 제10호 서식

[Brochure] KOR_TunA

SKINFOSEC-CHR-028-ASP Mssql Cookie Sql Injection Tool 분석 보고서.doc

빅데이터시대 Self-BI 전략 이혁재이사 비아이씨엔에스

결과보고서

PowerPoint 프레젠테이션

Slide 1

ARMBOOT 1

_LG히다찌 브로슈어

04-다시_고속철도61~80p

MS-SQL SERVER 대비 기능

소만사 소개

TITLE

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

금오공대 컴퓨터공학전공 강의자료

<목 차 > 제 1장 일반사항 4 I.사업의 개요 4 1.사업명 4 2.사업의 목적 4 3.입찰 방식 4 4.입찰 참가 자격 4 5.사업 및 계약 기간 5 6.추진 일정 6 7.사업 범위 및 내용 6 II.사업시행 주요 요건 8 1.사업시행 조건 8 2.계약보증 9 3

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

(Exposure) Exposure (Exposure Assesment) EMF Unknown to mechanism Health Effect (Effect) Unknown to mechanism Behavior pattern (Micro- Environment) Re

휠세미나3 ver0.4

MySQL-.. 1

씨에이에스는 서울특별시 시설관리공단 계약 제1579호( ) 장애인 콜택시 콜센터 차량관제시스템 구축사업 감리용역 에 근거하여 카나스 에서 수행중인 장애인콜택시 콜센터 차량관제시스템 구축사업에 대한 최종감리를 실시하고 본 보고서를 제출합니다

Ç¥Áö

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

NoSQL

Manufacturing6

Microsoft PowerPoint Python-DB

Intra_DW_Ch4.PDF

PowerPoint 프레젠테이션

슬라이드 1

월간 SW 산업동향 ( ~ ) Ⅰ. Summary 1 Ⅱ SW 5 2. SW 7 Ⅲ Ⅳ. SW SW Ⅴ : Big Data, 38

슬라이드 제목 없음

슬라이드 1

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

歯PLSQL10.PDF

Windows 네트워크 사용 설명서

LCD Display

DBPIA-NURIMEDIA

SANsymphony-V

4임금연구겨울-지상토론

PowerPoint 프레젠테이션

K7VT2_QIG_v3

SQL Tuning Business Development DB

MySQL-Ch05

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

단계

빅데이터분산컴퓨팅-5-수정

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

thesis

90

Transcription:

SQL Server 기반의 고성능-대용량 SAP 시스템 만들기 이랜드 시스템스 유규성

이주제를이해하는데필요한지식 SQL Programming 인덱스와실행계획확인 데이터압축 100 개념및소개수준 200 중간수준 300 고급수준 400 전문가수준 200 에 100 에 더하여 선수지식 더하여 능숙한사용 Level 300 불필요 기술적세부사항설명 경험, 아키텍처 지식필요

강사소개 2000.01 ~ 현재 : 이랜드시스템스 DBA / DA

80:20 법칙? 16 19,078 6,155 224,000

순서 시스템정보 성능관리 통계정보관리 인덱스관리 공간관리 Summary

시스템 정보

SAP System Landscape(Korea) DEV QAS PRD Retail ERP Netweaver 7.0 BW Netweaver BI 7.0 DR CRM CRM 5.0 Fashion ERP Netweaver 7.0 BW Netweaver BI 7.0 공통 HR Netweaver 7.0 # 각부문 ( 유통, 패션, 공통 ) 별 User Interface 는 SAP EP 로구축됨.

SAP System Landscape(China) Fashion ERP Netweaver 7.0 BW Netweaver BI 7.0 BPC BPC 5.0 DEV QAS PRD Standby Server ( 한국 ) # User Interface 는 SAP EP 로구축됨.

System 구성및현황 (Korea) Div. Appl. Type No. H/W model CPU RAM Disk OS DBMS DB Size ERP DB 1 APPL 5 Unisys ES7000/one Unisys ES7000/one 32 96 48 96 Hitachi USP Windows 2003 Datacenter IA64 Windows 2003 Datacenter IA64 SQL Server 2008 Enterprise 7 TB 5GB/Day 유통 BW DB 1 APPL 4 HP Superdome HP Superdome 16 32 24 48 Hitachi USP Windows 2003 Datacenter IA64 Windows 2003 Datacenter IA64 SQL Server 2008 Enterprise 6.5 TB CRM DB 1 HP DL580 16 32 APPL 3 HP DL580 24 48 EMC CX700 Windows 2003 Enterprise X64 Windows 2003 Enterprise X64 SQL Server 2005 Enterprise 0.7 TB 패션 ERP BW DB 1 APPL 5 DB 1 APPL 4 HP Superdome HP Superdome HP Superdome HP Superdome 34 96 40 80 28 88 34 64 Hitachi NSC55 EMC CX700 Windows 2003 Datacenter IA64 Windows 2003 Datacenter IA64 Windows 2003 Datacenter IA64 Windows 2003 Datacenter IA64 SQL Server 2008 Enterprise SQL Server 2008 Enterprise 16TB 8TB 12GB/Day 2.9 TB 공통 HR DB 1 APPL 2 HP Superdome HP Superdome 8 24 16 40 Hitachi NSC55 Windows 2003 Datacenter IA64 Windows 2003 Datacenter IA64 SQL Server 2005 Enterprise 0.4 TB

System 구성및현황 (China) Div. Appl. Type No. H/W model CPU RAM Disk OS DBMS DB Size 패션 ERP BW DB 2 Unisys 24 96 APPL 5 Dell Blade 40 80 DB 1 Unisys 24 96 APPL 5 Dell Blade 40 80 Hitachi USP Hitachi USP Windows 2003 Enterprise x64 Windows 2003 Enterprise x64 Windows 2003 Enterprise x64 Windows 2003 Enterprise x64 SQL Server 2008 Enterprise SQL Server 2008 Enterprise 1.1 TB 581 GB

통계 정보 관리

무슨문제일까요? select * from m where firstname = 'JHWHJUG' (1 개행이영향을받음 ) 테이블 'm'. 검색수 1, 논리적읽기수 146, 물리적읽기수 0 Rows Exec StmtText 1 1 SELECT * FROM [m] WHERE [firstname]=@1 1 1 --Clustered Index Scan(OBJECT:([Credit].[dbo].[m].[m_ident]), WHERE:([ Credit].[dbo].[m].[firstname]='JHWHJUG'))

Query execution steps Use Statistics

통계정보란? 옵티마이저가최적의실행계획을판단하는기준 데이터분포정보를통해 dencity를제공하고, 조회결과를예측하게함 sampling... Table 1 Table 2 Table 3 data Key value

통계정보조회하기 sys.sysindexes Statblob 칼럼에저장됨 sys.stats DBCC SHOW_STATISTICS

통계정보조회 DBCC SHOW_STATISTICS ( 테이블, 칼럼 통계명 ) 기본정보 Density vector Histogram

통계정보조회 Density d = 1 / (distinct row count) Predicate Cardinality estimate

통계정보조회 Histogram Captures distribution of values for a column Max number of steps = 200 Used for estimating cardinality of search predicates RANGE_HI_KEY RANGE_ROWS Histogram 의 step 기준칼럼의값 이전 RANGE_HI_KEY < ( row count) < 현재 RANGE_HI_KEY EQ_ROWS RANGE_HI_KEY 값에해당하는 (row count) AVG_RANGE_ROWS RANGE_ROWS / DISTINCT_RANGE_ROWS DISTINCT_RANGE_ROWS 이전 RANGE_HI_KEY < (distinct row count) < 현재 RANGE_HI_KEY

통계정보조회

통계정보자동생성 / 업데이트 Database option AUTO_CREATE_STATISTICS AUTO_UPDATE_STATISTICS AUTO UPDATE uses default sampling sp_autostats Display, change auto-stats setting (ON/OFF) Can disable auto-stats per index, table sp_createstats, sp_updatestats, sp_helpstats

통계정보자동업데이트시점 각통계정보에포함된칼럼의변경된비율 (= sysindexes.rowmodctrs / total rows) 값을기반으로판단 rowmodctrs >= 500 + 20%

통계자동업데이트 - sampling 샘플링비율 55,000 건 : 100 % 100 만건 : 6% ~ 10% 1000 만건 : 1.5 % 1 억건 0.45 % Row count

통계정보관리 대용량 DB 자동통계관리취약점 오래된통계정보 빈약한통계정보 통계정보업데이트많은비용 sampling... 통계정보수정시점 1. 통계정보미반영데이터 2. 자주사용하는데이터 Table 1 time data Key value

Best Practices Use auto create and auto update statistics ALTER DATABASE [DB 명 ] SET AUTO_CREATE_STATISTICS ON; ALTER DATABASE [DB 명 ] SET AUTO_UPDATE_STATISTICS ON; If needed, selectively use FULLSCAN statistics UPDATE STATISTICS WITH FULLSCAN

Best Practices Consider limiting use of multi-statement TVFs and table variables Avoid modification of stored procedure parameters in an SP prior to use in a query CREATE PROCEDURE GetRecentSales (@date datetime) WITH RECOMPILE AS BEGIN IF @date IS NULL SET @date = dateadd("mm",-3,(select MAX(OrderDATE) FROM Sales.SalesOrderHeader)) SELECT * FROM Sales.SalesOrderHeader h, Sales.SalesOrderDetail d WHERE h.salesorderid = d.salesorderid AND h.orderdate > @date END

Best Practices Consider more frequent statistics gathering for ascending keys Use asynchronous statistics update if synchronous update causes undesired delay ALTER DATABASE [Credit] SET AUTO_UPDATE_STATISTICS_ASYNC ON

Best Practices Consider filtered statistics for heterogeneous data, for partitioned tables Auto Stats OFF for tables VBHDR, VBDATA, VBMOD(SAP)

Best Practices 상황에맞는적절한수동업데이트작업 인덱스별샘플링비율관리 통계업데이트주기관리 행수 통계업데이트기준 1 만 ~200 만 rowmodctr >= 1.0% 200 만 ~500 만 rowmodctr >= 0.8% 500 만 ~1 천만건 rowmodctr >= 0.5% 1 천만건 ~ 변경 rows >= 5 만건 수정빈도높은최근데이터와 filtered statistics 에대한별도관리

Creating indexes Guidelines Check table statistics Only selective fields should be used Selective fields should take precedence, Avoid creating unselective index

Creating indexes Guidelines Limit the number of fields used in an index to as few as possible Reduce the number of indexes created per table to as slow as possible If >=, <=, >, < or between is used, indexes can be only used up to the column where these are used

Creating indexes Guidelines Check missing indexes (SAP) covering index, filtered index 활용 필요시적절한 clustered 인덱스로교체 운영 DB에서온라인으로생성후 CTS 전송 (SAP) index 사용정보를확인후불필요한인덱스는비활성화 (SAP) 인덱스힌트를지양하고세밀한통계정보로인덱스사용률높이기

공간 관리

효율적인대용량데이터관리 데이터보존정책 아카이빙 데이터압축 저장공간감소, 성능향상기대 압축백업 백업공간감소 백업및복원시간단축

데이터보존정책 데이터압축 아카이빙 [ 데이터저장소재배치 ] 자주사용되는데이터만최적의장소에보관하도록하여속도향상, 저장소비용절감 초고속저장소 가장빈번히사용되는데이터 고속대용량저장소 빈도낮으나, 필요시사용할수있도록유지하는데이터 저속대용량저장소 비즈니스상더이상필요없는데이터는제거 재무 3 년 재무 회계 3 년 회계 [ 프로그램최적화 ] 필요한데이터만처리하도록프로그램개선하여시스템속도향상 생산 영업 1 년 1 년 저장소이관 생산 영업 5 년, 10 년 저장소이관 영구보존 / 제거 물류 18 개월 물류 데이터생명주기 (Data Life Cycle)

데이터압축 행압축 4 바이트 1 바이트

데이터압축 페이지압축 : 접두사

데이터압축 페이지압축 : 사전

데이터압축사례 대상테이블선정 Table size 기준 Top 150 (80:20) 변경비율 < 5% (update+delete)/(slect single + select + insert) 압축방식 페이지압축선택 반복되는데이터패턴이많음 (SAP 특성 ) 순차저장, 조회위주의데이터 CPU 유휴자원준비

ST04 테이블크기상위 150 개추출

ST02 - 테이블변경비율확인 ST02> 세부분석메뉴 > 테이블호출통계

데이터 압축 결과

데이터압축결과 50% 의데이터공간절감 데이터증가속도둔화

데이터압축작업을할때.. 대용량테이블의압축 압축대상테이블의별도의통계관리 압축작업 통계업데이트작업간 blocking 발생 압축수행전 DB 복구모델을 Simple이나 Bulk logged 모드로변경할것 압축작업진행간모니터링및결과기록프로그램

SUMMARY

Summary 세밀한통계정보관리로똑똑한옵티마이저만들자 자동통계업데이트활성화 상황에맞는적절한수동업데이트작업 테이블파티셔닝활용 SQL Server의특성을활용한인덱스관리 선택도, 적절한클러스터드인덱스사용하도록변경 온라인인덱스생성 filtered index, covering index

Summary SQL Server의특성을활용한공간관리 보존기간내 : 압축, 보존기간이후 : 아카이빙 아카이빙작업에적절한인덱스추가 데이터압축시변경비율 (5% 이내 ) + Size 기준으로대상선정, 통계관리작업과조율 백업정책, 압축백업적용

감사합니다