32
Choosing a Computing Architecture Chapter 8

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

Embed Size (px)

Citation preview

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