Choosing a Computing Architecture Chapter 8. Architectural Requirements...

32
Choosing a Computing Architecture Chapter 8

Transcript of Choosing a Computing Architecture Chapter 8. Architectural Requirements...

Page 1: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Choosing a Computing Architecture

Chapter 8

Page 2: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Architectural Requirements

Scalability Manageability Availability Extensibility

Flexibility Integration

User Business

Budget Technology

Page 3: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Strategy for Architecture Definition

Obtain existing architecture plansObtain existing capacity plansDocument existing interfacesPrepare capacity planPrepare technical architectureDocument operating system requirementsDevelop recovery plansDevelop security and control plansCreate architectureCreate technical risk assessment

Page 4: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Hardware Architecture

Involve all expertsNew technologyOld technologyNetworking

Page 5: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Hardware Architectures

RobustAvailableReliableExtensibleScalableSupportableRecoverableParallel

VLM64-bitConnectiveOpen

Page 6: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Hardware Architectures

SMPClusterMPPNUMAHybrids use SMP and MPP

Page 7: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Evaluation Criteria

Determine the platform for your needs

SMP Clusters NUMA MPP

HighLow Scalability

Maturity Low

High

Page 8: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallel Processing

Parallel daily operations

Shared resources - Memory - Disk - NothingLoosely or tightly

coupled

Database

Application

Hardware

Operating system

Page 9: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Making the Right Choice

Requirements differ from operational systems

Benchmark - Available from vendors - Develop your own - Use realistic queriesScalability important

Page 10: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

SMP

Communication by shared memoryDisk controllers accessible to all CPUsProven technology

Shared memory

CPU CPU CPUCPU

Common bus

Shared disks

Page 11: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

SMP

Benefits: - High concurrency - Workload balancing - Moderate scalability - Easy administrationLimitations: - Memory (cluster for improvements) - Bandwidth

Page 12: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

NUMA

Loosely coupled shared memory

CPU CPU CPU CPU CPU CPU

Sharedmemory

Sharedmemory

Disk Disk

Nonuniformmemory access

Shared bus

Page 13: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

NUMABenefits: - Fully scalable, incremental additions to disk, CPU, and bandwidth - Performs better than MPP - Suited for Oracle serverLimitations: - The technology is new and less proven - You need new tools for easy system management - NUMA is more expensive than SMP

Page 14: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Clusters

CPU CPU CPU

Sharedmemory

Node 1CPU CPU CPU

Sharedmemory

Node 2CPU CPU CPU

Sharedmemory

Node 3

Common high-speed busCommon high-speed bus

Page 15: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Clusters Shared disk, loosely coupled Dedicated memory High-speed bus Shared resources SMP node Benefits:

- High availability - Single database concept, incremental growth Limitations:

- Scalability, internode synchronization needed - Operating system overhead

Page 16: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

MPP

CPU CPU CPU CPU

Memory Memory Memory Memory

Disk Disk Disk Disk

Page 17: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

MPP

A shared nothing architectureMany nodesFast accessExclusive memory on a nodeLow cost per nodeScalablenCUBE configuration

Page 18: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

MPP Benefits

Unlimited incremental growthVery scalableFast accessLow cost per nodeGood for DSS

Page 19: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

MPP Limitations

Rigid partitioningCache consistencyRestricted disk accessHigh memory cost per nodesHigh management burdenCareful data placement

Page 20: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Windows NT

Architecture based on the client-server model Benefits: - Include built-in Web services - Scalability - Ease of management and control Limitations: - Not as secure - Cannot execute programs remotely - Lack linear scalability beyond four processors - Addressing space for applications is limited to two gigabytes

Page 21: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Architectural Tiers

Tiered structures: - Modular - Logical separationDistributed structures: - Two-tier - Three-tier - Four-tier (and more)

Page 22: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Middleware

Technologies for integration

Gateway

Page 23: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Database Server Requirements

RobustAvailableReliableExtensibleScalableSupportableRecoverableParallel

Page 24: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallelism

DatabaseQueryLoadIndexSortBackupRecovery

Page 25: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Further Considerations

Optimization strategyPartitioning strategySummarization strategyIndexing techniquesHardware and software scalabilityAvailabilityAdministration

Page 26: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Server Environments

Operationalservers

Warehouseservers

Data martservers

•Open DBMS•Network, relational, hierarchical•Mainframe proprietary DBMS•Oracle, IMS, DB2, VSAM, Rdb, Non Stop SQL, RMS

•Open DBMS•Relational•General purpose and warehouse-specific DBMS•Oracle, Informix, Sybase, IBM DB2, NCR/AT&T Teradata Red Brick

•Open DBMS•Relational and multidimensional•General purpose and warehouse specific DBMS•Oracle, Oracle Express, Arbor Essbase, MS SQL Server, NT

Page 27: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallel Processing

A large task broken into smaller tasks:Concurrent executionOne or more processors

Processor 1

Processor 1Processor 2Processor 3Processor 4

Parallel

Elapsed timeNot parallel

Page 28: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallel Database

Increased speedImproved scalability

Performance gains - Availability - Flexibility - More users

Processor 1Processor 2Processor 3Processor 4

Parallel

Page 29: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallel Query

SQL code split among server processes.Sub-Query

Sub-Query

Sub-Query

Query

Page 30: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallel Load

Bypass SQL processing to speed throughput.

Page 31: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Parallel Processing

Index Reduces the time to createSort Allocates memory in cache efficientlyBackup Runs simultaneously from any node - Offline - OnlineRecovery Runs simultaneously from redo logsSummaries Uses the CREATE TABLES AS SELECT statement

Page 32: Choosing a Computing Architecture Chapter 8. Architectural Requirements ScalabilityManageabilityAvailabilityExtensibility FlexibilityIntegration UserBusiness.

Summary

This lesson discussed the following topics:

Outlining the basic architecture requirements for a warehouse

Highlighting the benefits and limitations of all the different hardware architectures