PowerPoint 프레젠테이션

Similar documents
목 차

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

PowerPoint 프레젠테이션

歯sql_tuning2

Intra_DW_Ch4.PDF

Portal_9iAS.ppt [읽기 전용]

The Self-Managing Database : Automatic Health Monitoring and Alerting

MS-SQL SERVER 대비 기능

Oracle Database 10g: Self-Managing Database DB TSC

Cache_cny.ppt [읽기 전용]

untitled

김기남_ATDC2016_160620_[키노트].key

PowerPoint 프레젠테이션

데이터베이스-4부0816

초보자를 위한 ADO 21일 완성

ETL_project_best_practice1.ppt

USER GUIDE

DW 개요.PDF

untitled

PCServerMgmt7

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

슬라이드 1

1217 WebTrafMon II

Oracle Apps Day_SEM

Microsoft PowerPoint - 알고리즘_1주차_2차시.pptx

untitled

62

PowerPoint Presentation

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

thesis-shk

Model Investor MANDO Portal Site People Customer BIS Supplier C R M PLM ERP MES HRIS S C M KMS Web -Based

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

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

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

Jerry Held

DBMS & SQL Server Installation Database Laboratory

Microsoft PowerPoint - 6.pptx

Microsoft PowerPoint - 1_3_DBA_SQL_tuning

Session3. 한국마이크로소프트(전사적 데이터 통합 컨퍼런스).ppt

PowerPoint Presentation

vm-웨어-01장


Cloud Friendly System Architecture

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Microsoft SQL Server 2005 포켓 컨설턴트 관리자용

PowerPoint 프레젠테이션

SMB_ICMP_UDP(huichang).PDF

6.24-9년 6월

Analyst Briefing

Backup Exec

arcplan Enterprise 6 Charting Facelifts

PowerPoint Presentation

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_ pptx

final_thesis

untitled

Open Cloud Engine Open Source Big Data Platform Flamingo Project Open Cloud Engine Flamingo Project Leader 김병곤

*2009데이터_3부

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

15_3oracle

Simplify your Job Automatic Storage Management DB TSC

Voice Portal using Oracle 9i AS Wireless

PowerPoint Presentation

슬라이드 1

Chap7.PDF

리뉴얼 xtremI 최종 softcopy

Oracle9i Real Application Clusters

1 법적 고지 사항 SK hynix Inc.는 사전 통보 없이 제품, 정보 및 사양을 변경할 권리를 보유합니다. 본 문서의 제품 및 사양은 참조용입니다. 본 문서의 모든 정보는 어떠한 형태의 보증 없이 있는 그대로 제공됩니다. 본 문서와 여기 포함된 모든 정보는 SK

スライド タイトルなし

PowerPoint

Corporate PPT Template

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer

oracle9i_newfeatures.PDF

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Slide 1

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

Citrix Workload Balancing 2.1 설치 가이드

결과보고서

문서 템플릿

Windows Storage Services Adoption And Futures

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

6주차.key

[Brochure] KOR_TunA

1.장인석-ITIL 소개.ppt

No Slide Title

I. - II. DW ETT Best Practice

Microsoft PowerPoint - CNVZNGWAIYSE.pptx

PowerPoint 프레젠테이션

PowerPoint Presentation

NoSQL

단계

solution map_....

Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUER

Ç¥Áö

Microsoft PowerPoint - 알고리즘_2주차_1차시.pptx

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

F1-1(수정).ppt

thesis

vm-웨어-앞부속


Transcription:

SQL Server Analysis Services Best Practices 한국마이크로소프트 ( 유 ) Senior Premier Field Engineer 이준규

목차 아키텍쳐 유용한도구들 가이드라인 Processing (Dimension, Partition, Memory, Thread) Query (Aggregation, UBO, Storage/Formula engine) Other Best practices 고려사항 Read-only database Distinct count Near Real-time 참조자료

통합커뮤니케이션과협업에대한 Microsoft 의제안 SQL Server Analysis Services Best Practices 아키텍쳐 세미나참석을환영합니다.

아키텍쳐 Client Application MDX Query Requests Session Management XML/A Listener Log Manager Memory Manager Parser XML AST Session Manager Security Manager Metadata Manager Execution Discover Discover Executor DDL Stmt Executor Thread Pools Process Query Statements Command Parser AST Coordinator Scheduler Formula Engine Job Tree Execution Plan Data Retrieval Storage Engine Storage Engine Cache Data Cac he Cache Dim Cach e Dimension Data Attribute Store MG Data Fact Data Hierarchy Store Aggregations

통합커뮤니케이션과협업에대한 Microsoft 의제안 SQL Server Analysis Services Best Practices 유용한도구들 세미나참석을환영합니다.

유용한도구들 Profiler Performance Monitor BIDS Helper SQLBPA Dynamic Management Views Ascmd MDX Studio Best Practices Warnings Aggregation Designer Resource Monitor 본세미나는 Exchange Migration 및 구축활용방안에대하여소개해드리고자합니다.

통합커뮤니케이션과협업에대한 Microsoft 의제안 SQL Server Analysis Services Best Practices 가이드라인 세미나참석을환영합니다.

트러블슈팅 Process dimensions Process Data Process Indexes/ Aggregates MDX Queries

Processing Dimension Processing : 차원의멤버를추가, 변경, 제거하는작업 ProcessUpdate 현구조에서데이터를변경 ProcessAdd 본세미나는 현구조에서 Exchange 데이터를 Migration 추가및 Partition 구축활용 Processing 방안에대하여 : 젂체소개해혹은일부의드리고자 measure 합니다 group. 에대해서프로세싱 ProcessData RDBMS 에서데이터를읽기 ProcessIndex Index 와 Aggregation 만들기

Dimension Processing 적젃한 Process 모드사용 데이터추가만있을경우 ProcessAdd 사용 Attribute Relationship 정의필요 Attribute 의 Overhead 를줄여야함 필요한 Attribute 만추가 Aggregation 생성이필요하지않는 Attribute 에대해서계층생성을 Disable, Member property 를통해서사용 AttributeHierarchyEnabled = false 차원의키와비교하여상호유일성이높은 Attribute 는 Bitmap Index 를생성하지말것 예 ) 고객번호와주민번호 AttributeHierarchyOptimizedState = Not Optimized Distinct 쿼리개선 Key, Name 컬럼에 Index 추가

Partition Processing ProcessFull 을 ProcessData 와 ProcessIndex 로나누어수행 ProcessData RDBMS 소스에서 Process Buffer 로데이터읽는단계 ProcessIndex AS 저장소에서데이터를읽어서 Index 와 Aggregation 을만드는단계 ProcessData ProcessIndex

Partition Processing 병렬처리성능 ProcessData 수행시에는하나의 Cube Partition 은하나의 CPU Core 와매핑시최적의성능 ProcessIndex 수행시에는하나의 Cube Partition 은두개의 CPU Core 와매핑시최적의성능 디자인 하나의 Cube Partition 은하나의 Table Partition 과매핑 하나의 Table Partition 과여러개의 Cube Partition 으로구성되었을경우, 테이블에 Clustered Index 필요 Distinct Count 에대해서는다른 Partition 젂략이필요 Cluster Index

Partition Processing ProcessData CPU Core 당하나의 Cube Partition 이최적의성능 최대한병렬로처리필요 AS 에서 SQL 연결수조정필요 AS 와 SQL 이같은장비를공유할경우 Memory 설정조정필요. AS 와 SQL 분리권고 SQL 최적화 사이즈가작은 Integer 등의가공키사용 SQL 조인최소화필요 SQL Maxdop 값조정필요

Partition Processing ProcessIndex 두개의 CPU Core 당하나의 Cube Partition 이최적 병렬처리젂략 적젃한 Partition 개수 Partition 내에서적젃한 Thread 개수 구성값 CoordinatorBuildMaxThreads : Partition Processing 작업당할당되는최대의 Thread 수 AggregationMemoryMin : Partition Processing 작업을위해젂체 Memory 중에서할당되는 Memory 양 큐브최적화 적젃한 Aggregation 필요 적젃한 Attribute 개수 : Index 생성시간증가

리소스사용 ProcessData, ProcessIndex 수행시 Memory, Thread 필요 Sorting/Aggregating 은 Memory 에서수행권고 Proc Aggregations\Temp file bytes written/sec : Temp file 에 write 발생시 memory 를추가혹은병렬처리되는개수를줄어야함 Memory ProcessData : Merge buffer (OLAP\Process\BufferMemoryLimit) ProcesIndex : Aggregation buffer(olap\process\aggregationmemorymin) Threads ProcessData : RDBMS 에서데이터읽기 ProcessIndex : Sorting/Aggregating/Indexing 구성파일 C:\Program Files\Microsoft SQL Server\MSAS10_50.MSSQLSERVER\OLAP\Config\msmdsrv.ini

Memory 구성값 & 성능카운터 구성값 Memory\TotalMemoryLimit : 최대 Memory( 기본값 80%) Memory\LowMemoryLimit : 최소 Memory( 기본값 65%) 성능카운터 성능카운터 MSAS 2008:Memory\Memory Limit Low KB 정의 Memory\LowMemoryLimit 값 MSAS 2008:Memory\Memory Limit High KB Memory\TotalMemoryLimit 값 MSAS 2008:Memory\Memory Usage KB MSAS 2008:Memory\Cleaner Memory nonshrinkable KB MSAS 2008:Memory\Cleaner Memory shrinkable KB Analysis Services 프로세스가현재사용하는 Memory 양다음의두값과비교필요 : Memory\LowMemoryLimit, Memory\TotalMemoryLimit. Memory 부족시 background cleaner 에의해서 shrink 되지않는 Memory Memory 부족시 background cleaner 에의해서 shrink 되는 Memory

Memory Pressure Low memory pressure Memory Limit Low KB < Memory Usage KB < Memory Limit High KB High memory pressure Memory Limit High KB < Memory Usage KB

Job & Thread 구성값 CoordinatorExecutionMode ( 기본값 = -4) 4 core 장비에서는 16 개의 Job 이동시에수행될수있음 양수일경우 core 수와관계없이동시에수행될수있는 Job 의개수를의미 요청 Coordinator Job Job 1 Job 2 Job N Thread Thread Thread Thread

Thread 구성값 ThreadPool\Process\MinThreads, MaxThreads ThreadPool\Query\MinThreads, MaxThreads 성능카운터 성능카운터 MSAS 2008:Threads\Processing/Query pool job queue length MSAS 2008:Threads\Processing/Query pool busy threads MSAS 2008:Threads\Processing/Query pool idle threads 정의 Processing/Query thread pool의대기열에있는 Job 수 Processing/Query thread pool내에 busy Thread 수 Processing/Query thread pool내에 Idle Thread 수 가이드라인 Situation Processing pool job queue length > 0 and Processing pool idle threads = 0 for longer periods during processing. Both Processing pool job queue length > 0 and Processing pool idle threads > 0 at same time during processing. Action Increase Threadpool\Process\MaxThreads and retest. Decrease CoordinatorExecutionMode and retest.

Aggregation 사용 Hit

Aggregation 미사용 Miss Profiler

Usage Based Optimization 가이드라인 Processing 시간과 Size를고려하여적젃한 Aggregation 추가필요 사용자쿼리기반으로 Aggregation을주기적으로반영 도구및접근방향 UBO 사용하여 Aggregation 최적화

쿼리최적화 Storage Engine 병목 Partition 조정 Aggregation 조정 Formula Engine 병목 Cell by cell 계산을 Subspace로변경 Cache warmer 고려

Cache Warmer 자주실행되는쿼리를주기적으로수행하여 Caching Profiler 에서쿼리를도출 방법 Create cache statement 혹은 with cache 구문사용 Ascmd 를이용하여 MDX 쿼리를수행 Table 에쿼리를저장하고 SSIS Package 에서 MDX 쿼리를수행 Reporting Service report 실행

Other Best practices Data source OLE DB provider 사용,.Net SqlClient data provider 사용하지말것 Dimension Numeric key 사용 중복된 Attribute relationship 정의하지말것 ErrorConfiguration 에서 KeyDuplicate 를 IgnoreError 로설정하지말것 UnknownMember 를 Hidden 으로설정하지말것 Member 의수가클경우 64bit 서버를사용할것 Unnatural hierarchy 를피할것 Cube Parent-child dimension 사용시유의 Many-to-many dimension 구조에서너무큰 intermediate measure group 이나 dimension 을사용하지말것 동일한 dimension 이나 granularity 를가진 measure group 은통합을고려할것 Distinct count measure 는별도의 measure group 으로정의할것

Other Best practices Partition 2 천만이상의 row 를가진 partition 은분할을고려 사이즈가작은너무많은 partition 은통합을고려 ROLAP 이나 proactive caching 을사용하는 partition 은 Slice 속성설정필요 Aggregation 적젃한 AggregationUsage 속성사용 Partition 별로다른 Aggregation 젂략을사용가능 Security 너무많은 member 를가진 attribute 에 role security 사용을자제할것 Configuration 동시성을높히기위한설정 CoordinatorQueryBalancingFactor = 1 CoordinatorQueryBoostPriorityLevel = 0 다중사용자 throughput 을높히기위한설정 MemoryHeapType = 2 HeapTypeForObjects = 0

통합커뮤니케이션과협업에대한 Microsoft 의제안 SQL Server Analysis Services Best Practices 고려사항 세미나참석을환영합니다.

AS Query Layer SEQ Read-only database 1 Fast Disk (e.g. SAN) 4 Clients Clients 본세미나는 AS Query Exchange 1 Migration 및 AS Processing Server 구축 User Queries 활용방안에대하여소개해드리고자합니다. 2 AS Query 2 NLB User Queries SE Query 3 Synchronize AS database AS database Detach/Attach AS Query 3 Clients AS Query 4

Distinct count 파티션키에 distinct count 키가포함되지않는경우 ( 왼쪽 ) Thread 들은다른 Partition 의 Thread 에서의읽기가끝날때까지대기발생 파티션키에 distinct count 키가포함되어있은경우 ( 오른쪽 ) Thread 는다른 Partition 의 Thread 에대한대기없이읽기지속

Distinct count 5 개의 Thread 가데이터를스캔할때대기가필요한경우와그렇지않는경우 Overlapping Partitions 본세미나는 Exchange Migration 및 구축활용방안에대하여소개해드리고자합니다. Nonoverlapping Partitions 결과예 ) 대상데이터 Partition 변경젂속도 (ms) Partition 변경후속도 (ms) 테스트데이터 1 4096 1563 테스트데이터 2 42532 11406

Near Real time Proactive caching 고려 실시간데이터가필요한파티션은 ROLAP 으로구현 ROLAP 파티션은 Memory 에캐쉬되도록최소한작게유지 RDBMS 튜닝 대량의이력데이터는점진적으로 MOLAP 파티션으로젂환 ROLAP MOLAP MOLAP (history) MOLAP (history) (history)

통합커뮤니케이션과협업에대한 Microsoft 의제안 SQL Server Analysis Services Best Practices 참조자료 세미나참석을환영합니다.

참조자료 Articles SQL Server 2008 White Paper: Analysis Services Performance Guide http://www.microsoft.com/downloads/en/details.aspx?familyid=3be0488de7aa-4078-a050-ae39912d2e43&displaylang=en SQL Server Best Practices Article: Identifying and Resolving MDX Query Performance Bottlenecks in SQL Server 2005 Analysis Services http://www.microsoft.com/downloads/en/details.aspx?familyid=975c5bb2-8207-4b4e-be7c-06ac86e24c13&displaylang=en SQL Server Best Practices Article http://technet.microsoft.com/en-us/library/cc966525.aspx Tools BIDS Helper http://bidshelper.codeplex.com/ Microsoft SQL Server 2008 R2 Best Practices Analyzer http://www.microsoft.com/downloads/en/details.aspx?familyid=0fd439d7-4bff- 4df7-a52f-9a1be8725591 MDX Studio http://www.mosha.com/msolap/mdxstudio.htm