Escolar Documentos
Profissional Documentos
Cultura Documentos
Why 64-bit?
How does 64-bit Architecture Augment 32-bit Capabilities Benefits of SQL Server 2000 64-bit
Server and Database Consolidation with 64-bit Interoperability and Management Q&A
Why 64-bit ?
Why 64-bit ?
In order to better understand what 64-bit architecture offers us, we will review:
Compare 32-bit limitations to 64-bit Intel Itanium 2 architecture Microsoft Windows 2003 64-bit changes SQL Server 2000 64-bit changes
Scales well for the most part for large transaction and data warehousing applications
Supports
Up to 32 CPUs Up to 64 GB RAM Fiber mode Clustering for failover VLDB/Terabyte databases Parallelism throughout
Why 64-bit?
Memory Management
As a result SQL Server can only utilize 2 GB Can use /3GB switch in boot.ini
Used for out of process, higher than 8K memory request Can be changed by using startup switch g
Why 64-bit?
SQL Server 32-bit Win 32 Subsystem (Csrss.exe) My 32-bit Application
Max virtual addressing is limited to 4 GB Windows OS splits 2 GB each between User and Kernel
In Windows 2003 64-bit, Kernel and User mode split 8 Terabytes each
Why 64-bit?
SQL Server Address Space
Distributed Query OLE DB Providers OLE Automation Objects Extended Stored Procedures Memory Pool System Data Structures
Starts with 2 GB 3 GB with /3GB Switch in boot.ini 64 GB with AWE /PAE switch in boot.ini
Procedure Cache
Buffer Cache
Why 64-bit?
Memory
AWE Window
AWE Memory
0 GB
Why 64-bit?
Distribution of RAM in SQL Server Memory Pool
250000
200000 Data Pages Free Pages Page Life Expectancy 100000 Procedure Cache Pages Total Pages Avg. # of 8K pages 50000
150000
0 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Real-world ERP stress test analysis on memory contention Higher procedure cache = lower buffer cache = lower cache hit ratio = slower performance
Why 64-bit?
SQL Compiles Verses Auto-Param Attempts
60
50
20
10
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Why 64-bit?
CPU
CPU n
UMS Scheduler
Query Results
Network
Worker Pool
Workers
Workers
Workers
Workers
Work Requests
Network
Context Switching
CPU
Operating System does preemptive scheduling for CPU contention Can result in excess Context Switching
OS spends more resources on context switching and less resources doing the actual work Is a result of processor or disk queues OS performs memory block updates for each thread swapped
Context Switching
Context Switching and Performance
160 140 120 100 80 60 40 20 0 5
144 114 86 89 61 21 3 8 Load Factor Context Switches/Sec 6 15 6 Transactions/Sec % Total Processor 104 95 77 Avg Disk Queue
Higher CPU or I/O contention = Higher context switching = Lower SQL Server throughput
32-bit I/O
I/O limitations
Windows API
Multi-Instance
Cannot effectively use dynamic memory Easy to hit the ceiling with maximum hardware utilization Need to implement CPU affinity
Multi-Instance on 32-bit
Multi-Instance
Memory above 4 GB is only available for buffer pages A single runaway query can cause all instances to suffer Application usage is dynamic and user load is unpredictable
Need to allow single instance adapt to its own hardware affinity SQL Server works best with dynamic configuration of memory and CPU rather than affinitizing hardware resources
If the queries are not memory intensive Fiber mode is not an issue
Agenda
Server and Database Consolidation with 64-bit Interoperability and Management Q&A
264 = 18 billion GB memory addressability Allows pinning of large data sets Allows CPUs to process more data and numerical computations at a time
Best suited for multi-threaded applications that leverage true parallelism on the processor
Design Goals
Improved throughput Better on-chip cache management Improved multiprocessor performance Increased on-die optimization for specific tasks such as encryption Performance and scalability optimized Better parallel processing Floating point performance Manage high or unpredictable work loads Complex data sets High performance for large memory resident data sets
Ability to maximize parallel processing by predicting lines of code before they go through compiler Ensures the caching of data and instructions to the CPU before it is actually required Allows for more processing during each clock cycle
"speculation"
264 = 18 billion GB memory addressability 64-bit Windows Server 2003 is built with a maximum of 16 Terabyte memory addressability 64-bit edition of Windows Server 2003 Datacenter Edition supports up to 512 GB memory
32-bit Intel architecture is limited to a maximum of 32 processors; 64-bit technology removes that barrier Noticeable performance improvements with Fiber mode
Feature
Memory CPUs
64 GB 8 Supported
512 GB 64 Supported
Datacenter Server 64 CPUs, 512 GB, Improved SMP Scaling, 8 Node cluster
Clustering Services
8 nodes
8 nodes
Virtual memory
Paging file size Hyperspace Paged pool Non-paged pool
*16 terabytes
512 terabytes 8 GB 128 GB 128 GB
4 GB
16 terabytes 4 MB 470 MB 256 MB
System cache
System PTEs
1 terabyte
128 GB
1 GB
660 MB
Source: Windows Server 2003 64-bit Edition Technical Overview
Virtual Memory
Extends available physical memory by use of page file On disk file used to extend physical memory by way of swapping pages Special memory region used to map process working set Region in system memory used by Kernel-mode components to allocate system memory Paged pool memory can be swapped
Paging File
Hyperspace
Paged Pool
Non-paged Pool
System Cache
System PTEs
System Page Table Entries used to map kernel stack, memory descriptors and I/O space
CPU parallelism
Better scheduling Less resource contention Better multiprocessing Faster file allocation Multipath I/O
Provides more than one physical path to access storage Extra support points protect against data loss and system failure
WSRM Features:
For example CPU or memory usage targets or limits Apply policies on a date/time schedule
Fix working set size by process Manage committed memory (pagefile usage) Generate, store, view, and export resource utilization accounting records for management, service level agreement (SLA) tracking, and charge-back purposes
Makes SQL Server administration easy as resource management is handled by the OS Benefits Server consolidation implementations
Improve database performance for large complex queries through large memory addressability Reduce disk swapping as compared to large memory on 32-bit server Code-compatible T-SQL No changes in on-disk database files Easy upgrade/migration
Default configuration values are the same Better leverage hardware with dynamic and adaptive algorithms
2003-10-11 16:32:31.53 server Copyright (C) 1988-2002 Microsoft Corporation. 2003-10-11 16:32:31.53 server All rights reserved. 2003-10-11 16:32:31.53 server Server Process ID is 1404. 2003-10-11 16:32:31.53 server Logging SQL Server messages in file 2003-10-11 16:32:31.54 server SQL Server is starting at priority class 'high'(16 CPUs detected). 2003-10-11 16:32:31.55 server Large Page Extensions enabled. 2003-10-11 16:32:31.55 server Large Page Granularity: 16777216 2003-10-11 16:32:31.55 server Large Page Allocated: 32MB 2003-10-11 16:32:32.33 server SQL Server configured for fiber mode processing. 2003-10-11 16:32:32.33 server Processor affinity turned ON, processor mask 0xfffc 2003-10-11 16:32:32.33 server Using dynamic lock allocation. [2500] Lock Blocks, [5000] Lock Owner Blocks. 2003-10-11 16:32:32.48 server Attempting to initialize Distributed Transaction Coordinator. 2003-10-11 16:32:34.50 server I/O affinity turned ON, processor mask 0x0000000000000001 2003-10-11 16:32:34.63 spid2 Starting up database 'master'. 2003-10-11 16:32:34.78 server Using 'SSNETLIB.DLL' version '8.0.760'. 2003-10-11 16:32:34.78 spid5 Starting up database 'model'. 2003-10-11 16:32:41.20 spid2 Recovery complete.
Can effectively use larger memory addressability for higher performance Benefits from parallelism in partition processing Cube queries and processing is much faster Very large dimensions and member properties can be supported in memory Due to large buffer pool avoids use of temporary files during processing
Several orders of magnitude more and larger replicas possible with out impacting overall performance or amount of memory allocated to other objects
Report authoring
Build custom applications using the Web services Publish and manage report definitions as a Web service
Report management
Report delivery
32-bit version available in Beta 2 64-bit version will be available in Yukon time frame
As simple as detach a SQL Server 2000 32bit database and attach it to a SQL Server 2000 64-bit server Can also use BACKUP DATABASE Little more involved if:
Multiple databases are moved to one 64-bit server Multiple servers are moved to one instance 64bit Multiple databases/servers are moved to multiple instances 64-bit
Agenda
Scalability
High Availability
Q&A
High transaction OLTP Data warehousing and analysis (BI) Global-scale Web services E-commerce applications with an unbounded number of users Statistical modeling and analysis Geo-spatial applications
Large data row lookups Large data growths (database size) Large growth in number of users
Applications that involve multiple parallel threads of work, where performance would be enhanced by true parallelism on the processor Applications that use complex and compute-intensive calculations Applications performing data encryption and decryption Improved query performance
Using VLDBs with many concurrent users Query plans that use in-memory hash joins, merge joins, hash aggregates and sorts
Higher degree of CPU parallelism Faster and more accurate threading model Faster query processing & index building Faster I/O (read verses write) Large memory support (512 GB) Improved support for fiber mode
Storage Engine leverages better I/O threading and multipath I/O UMS is more efficient due to Itanium2 architecture enhancements
Application Benefits
Application can
Increase performance through caching Store and manipulate large data sets in memory Can leverage 64-bit API set
In addition
Existing 32-bit applications can run normally using Windows on Windows 64-bit (WOW64-bit) 32-bit and 64-bit applications can run side-by-side
MOLAP dimension processing capabilities expanded beyond 8 million members Faster aggregation processing due to 64-bit memory addressability
TPC Performance
SAP Benchmark
Advanced Planner and Optimizer (APO) Demand Planning (DP)
586,319
600,000 500,000 400,000 300,000 200,000 100,000 0 474,162
Record Performance
586,319 planning scenarios per hour 24% performance advantage over IBM 4 Times better scaling than HP
157,555
Unisys
ES7000
IBM p690
HP
rx5670
Seibel Benchmark
Results:
Siebel 7 Architecture on Unisys ES7000 / Windows 2003 servers and Microsoft SQL Server 2000 (64bit) easily scales to 30,000 concurrent users. Vertical scalability The Siebel 7 Server showed excellent scalability within a Unisys application server. Horizontal scalability The benchmark demonstrates scalability across multiple Unisys servers without degradation. Supporting Siebel 7 Server application services with 3302 database connections on the Unisys ES7000.
Quick millisecond query lookups due to large memory support MOLAP dimension processing capabilities expanded beyond 8 million members MOLAP cube processing in parallel twice as fast as sequential processing MDX queries can scale nicely from 8 to 16 processors
Figure 8 depicts that using 64-bit processing of 4, 8, 16 and 32 million member dimensions were processed. 32-bit was not able to process over 8 million members.
Figure 11 summarizes the resulting cube processing rates when tested with both 8 CPUs and 16 CPUs. Cube processing rate is defined as a number of fact rows processed per minute.
High Performance & Availability Like Mainframe and UNIX, But at Low TCO
Increased productivity Lower cost of ownership New application opportunities 64-bit offers what mainframe and UNIX traditionally offer Unlimited I/O capacity with UNISYS platform Itanium 2 chips are the fastest on the planet TRUE Scaling UP on SQL Server has just begun !
Agenda
Scalability
High Availability
Server and Database Consolidation with 64-bit Interoperability and Management Q&A
64-bit Clustering
Up to 8 Nodes Supported
Client PCs
Private Net
Local Disk
Local Disk
Disk A
Node 4
Disk B
Node 6 Node 8
64-bit Clustering
Nodes limited only by the number supported by the operating system Cannot upgrade 32-bit cluster install to 64-bit
Install 64-bit Windows 2003 Install 64-bit SQL Server Not supported on Windows NT and 2000 Use VFI utility to verify if a resource is 32-bit or 64bit
64-bit Clustering
Utilities supported
Service manager and server network utility All command line utilities are supported
64-bit Clustering
Not available
SQL Mail
SQL Agent Mail can be configured by Enterprise Manager Can use sp_oa* Command line dtsrun.exe is supported
Graphical DTS
Agenda
Server consolidation
Database consolidation
Multi-instances Great fit for Server and Database consolidations TRUE scale-up with 64-bit
Consolidation
Multiple SQL Server machines in to one machine Multiple SQL Server instances in to one instance Multiple SQL Server databases in to one instance
Consolidation involved considerable planning but results can be remarkable Is based on leveraging better, more reliable and more powerful hardware such as UNISYS Can significantly drop the TCO
Reduced Costs
License costs
SQL Server 2000 performs best with default dynamic and adaptive algorithms
Consolidation Framework
Criteria
OLTP verses Data warehousing SQL Server Transactions/sec to BatchRequest/sec ratio Number of concurrent active users Degree of deviation between resource utilization over a period of time DOP for batch process and complex queries Uptime requirements Response time requirements Ownership and management Network requirements
Considerations
Mix the types of applications to avoid contention High volume of transactions can lead to I/O bottleneck In Sysprocesses look for active user count Helpful in planning for hardware upgrades
Allows for better utilization of hardware Allows for proper use of WSRM configuration User requirements must be evaluated for each application that is consolidated Requires skilled DBA Will benefit linked servers and Replication
Security
Departmental charge backs
Consolidation Scenario
Windows 2000 Advanced Server Windows 2003 64-bit Data Center Server SQL Server 2000 Enterprise Edition SQL Server 2000 64-bit
8 GB RAM 8 CPUs to 32 GB RAM 32 CPUs 512 GB RAM 64 CPUs Single/multiple SQL Server Instances
WSRM Affinity
HR
8 CPUs 16 32 64
Finance
SAN RAID Drive H Drive F T R Maintenance Accounting Reporting
Agenda
OS level compatibility
Kernel32, user32
WinSxS directory for 32-bit applications running side by side on 64-bit Program Files directory has separate directories for 32-bit applications and 64-bit applications
Default 32-bit applications install path -- C:\Program Files (x86)\ Default 64-bit applications install path -- C:\Program Files\ Applications can be easily identified
OS level compatibility
Separate HKEY_LOCAL_MACHINE\Software registry trees for 32-bit and 64 bit 32-bit keys are located under HKEY_LOCAL_MACHINE\Software\WOW6432Node Can use Regedit.exe to view registry Registry reflector
OS level compatibility
CPU get <parameters> for CPU related info Path Win32_Process list all process on local system Path Win32_Process call /? list all methods you can call on the process type
Windows 2003 Resource Kit Tools and Administration Tools Pack available for 64-bit
http://www.microsoft.com/downloads/
Tools available in 32-bit version only Can use Enterprise Manager to manage both 32-bit and 64-bit SQL Servers
64-bit Readiness
Database
Business Applications
IT Infrastructure
Anti-Virus: Computer Associates eTrust, Symantec Antivirus Backup/Restore: Legato Systems Management: BMC, OpenView, Tivoli Application Platform: BEA WebLogic
SQL Server 32-bit is suitable for most medium to large scale applications
Significant reduction in TCO, Scalability and Reliability Scaling-Up is much simpler Large-scale server consolidation Simple upgrade and migration paths Interoperability and ease of management