Download SQL Server 2000 Enterprise Edition (64-bit)

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Microsoft Access wikipedia , lookup

Database model wikipedia , lookup

Clusterpoint wikipedia , lookup

Tandem Computers wikipedia , lookup

Relational model wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Btrieve wikipedia , lookup

Team Foundation Server wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

SQL wikipedia , lookup

Open Database Connectivity wikipedia , lookup

PL/SQL wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Transcript
SQL Server 2000 Enterprise Edition (64-bit):
Advantages of a 64-Bit Environment
March 2004
Abstract: Microsoft SQL Server 2000 Enterprise Edition (64-bit) offers dramatic
improvements in memory availability and parallel processing performance compared
with SQL Server software running in a 32-bit environment. This paper describes the
capabilities of the 64-bit solution, highlights differences from the 32-bit environment,
and discusses some of the applications and usage scenarios that can benefit from
running on a SQL Server platform optimized for a 64-bit environment. The paper is
intended to help the reader identify potential applications for Microsoft SQL Server 2000
(64-bit) and set appropriate expectations for deployment and performance.
The information contained in this document represents the current view of Microsoft
Corporation on the issues discussed as of the date of publication. Because Microsoft
must respond to changing market conditions, it should not be interpreted to be a
commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of
any information presented after the date of publication.
This white paper is for informational purposes only. MICROSOFT MAKES NO
WARRANTIES, EXPRESS OR IMPLIED, AS TO THE INFORMATION IN THIS DOCUMENT.
Complying with all applicable copyright laws is the responsibility of the user. Without
limiting the rights under copyright, no part of this document may be reproduced, stored
in or introduced into a retrieval system, or transmitted in any form or by any means
(electronic, mechanical, photocopying, recording, or otherwise), or for any purpose,
without the express written permission of Microsoft Corporation.
Microsoft may have patents, patent applications, trademarks, copyrights, or other
intellectual property rights covering subject matter in this document. Except as
expressly provided in any written license agreement from Microsoft, the furnishing of
this document does not give you any license to these patents, trademarks, copyrights,
or other intellectual property.
 2004 Microsoft Corporation. All rights reserved.
Microsoft and MSDN are either registered trademarks or trademarks of Microsoft
Corporation in the United States and/or other countries.
The names of actual companies and products mentioned herein may be the trademarks
of their respective owners
ii
Table of Contents
Introduction ..................................................................................................... 1
Audience ........................................................................................................ 1
Overview: Database Performance and Scalability ............................................ 1
SQL Server 2000 (64-bit) ................................................................................. 2
Requirements ................................................................................................. 2
SQL Server 2000 (64-bit) Components .............................................................. 3
Advantages of the 64-bit Architecture ................................................................ 3
Comparing SQL Server 2000 (32-bit) with AWE and 64-bit .............................. 4
AWE: An Overview .......................................................................................... 4
Limitations of AWE .......................................................................................... 5
Other Differences in SQL Server 2000 (64-bit)................................................. 6
Considerations for Choosing SQL Server 2000 (64-bit) .................................... 7
Relational Database Performance Factors ........................................................... 8
Analysis Services Considerations ....................................................................... 9
Server Consolidation Considerations ................................................................ 10
Alternatives to 64-bit Architecture ................................................................... 10
Limitations of SQL Server 2000 (64-bit) ........................................................... 11
SQL Server 2000 (64-bit) Deployment Considerations ................................... 11
Integration ................................................................................................... 11
Migration ..................................................................................................... 12
Compatibility Issues ...................................................................................... 12
Summary ........................................................................................................ 13
Appendix A: Case Studies ............................................................................... 14
Information Resources, Inc. (IRI) .................................................................... 14
JetBlue Airways............................................................................................. 15
Liberty Medical ............................................................................................. 16
123MultiMedia .............................................................................................. 16
Appendix B: Sources for Additional Information ............................................ 17
iii
Introduction
Microsoft SQL Server 2000 Enterprise Edition (64-bit) offers dramatic improvements
in memory availability and parallel processing performance compared with SQL Server
software running in a 32-bit environment. This paper describes the capabilities of the
64-bit solution, highlights differences from the 32-bit environment, and discusses some
of the applications and usage scenarios that can benefit from running on a SQL Server
platform optimized for a 64-bit environment. The paper is intended to help the reader
identify potential applications for Microsoft SQL Server 2000 (64-bit) and set
appropriate expectations for deployment and performance.
Audience
This paper is intended for a technical audience of IT professionals, database
administrators and system architects interested in the performance and scalability
offered by Microsoft SQL Server 2000 Enterprise Edition (64-bit). This document
assumes that you have an understanding of databases in general and Microsoft SQL
Server 2000 in particular.
Overview: Database Performance and
Scalability
To make timely and informed business decisions in dynamic and competitive
environments, organizations must store and analyze massive amounts of business data.
Always a critical part of the IT infrastructure, databases are at the heart of a number of
converging trends in IT:

Applications and data are growing in complexity and size. Applications running on
32-bit platforms may be reaching the limits of the platform, specifically regarding
the number of processors and addressable memory.

High-end DBMS capabilities have become a business necessity as organizations
gather and analyze data from numerous databases, and serve that data to growing
numbers of business users.

Organizations are consolidating servers to simplify critical data center operations.
Consolidation can reduce management complexity and cost while reducing physical
space requirements in the data center.
In response to these trends, Microsoft has developed a 64-bit version of its powerful
SQL Server 2000 database, optimized for the 64-bit Intel Itanium 2 processor.
1
By leveraging the tremendous scalability and memory addressability of the 64-bit
architecture, SQL Server 2000 (64-bit) can host increasingly large and complex
database and analysis applications, and support server consolidation on large-scale SMP
systems with many processors. Applications can benefit from massive in-memory
caching of data as well as larger data structures for procedure cache, sort space, lock
memory and connection memory.
By eliminating platform and processing bottlenecks, the 64-bit platform offers a new
level of scalability for business applications at an affordable cost.
SQL Server 2000 (64-bit)
SQL Server 2000 (64-bit) is optimized to run on servers using Intel Itanium 2
processors and Microsoft Windows Server 2003, offering exceptional performance and
scalability. SQL Server 2000 (64-bit) is based on the successful 32-bit version of SQL
Server 2000, providing an easy migration path for existing applications and capitalizing
in existing tools and expertise.
The primary differences between the 64-bit and 32-bit versions of SQL Server 2000 are
derived from the benefits of the underlying 64-bit architecture. These include:

Larger direct-addressable memory space; SQL Server 2000 (64-bit) is not bound by
the memory limits of 32-bit systems, so more memory is available for performing
complex queries or supporting essential database operations.

Enhanced parallelism, providing better linear scalability and support for up to 64
processors.

Improved BUS architecture, accelerating performance by moving more data
between cache and processors.
By take advantage of these architectural advantages, SQL Server 2000 (64-bit) can
handle large and complex query workloads, consolidate many database applications,
and otherwise scale to meet the increasing processing and performance demands of
today's IT environment.
Requirements
SQL Server 2000 (64-bit) is currently supported on IA64 servers from a number of
hardware vendors including HP, Unisys, IBM, Dell and NEC, in 4-way to 64-way
configurations.
SQL Server 2000 (64-bit) does not have a separate hardware compatibility list (HCL).
Use hardware that is otherwise certified for use with the Microsoft Windows Server
2003 64-bit operating system and that meets the following minimum requirements:
2
Hardware
Minimum requirements
Computer
Intel Itanium 2 processors with 64-bit
CPU
Memory (RAM)
Enterprise Edition: 1 GB
Additional memory may be required,
depending on configuration and operating
system requirements.
Hard disk space
SQL Server database components: 190 to
320 MB
Analysis Services: 230 MB
Books Online only: 40 MB
Actual requirements will vary based on
your system configuration and the
applications and features you choose to
install
Pointing device
Microsoft Mouse or compatible
CD-ROM drive
Required
Table 1
Hardware Requirements
SQL Server 2000 (64-bit) requires a 64-bit version of the Windows Server 2003
operating system.
SQL Server 2000 (64-bit) Components
The components of SQL Server 2000 Enterprise Edition (64-bit) include:

64-bit database server

64-bit server agent

64-bit analysis server (OLAP and data mining)
These 64-bit components are code-compatible with the 32-bit version of SQL Server
2000, making it easy to integrate a 64-bit server with other SQL Server 2000 database
servers.
Advantages of the 64-bit Architecture
The enhanced scalability and performance of SQL Server 2000 (64-bit) is made possible
by a number of architectural features of the Itanium 64 bit architecture. The key
architectural benefits are discussed briefly as follows.
Memory addressability
32-bit systems can generally address only a 4G address space. (Exceptions
available with Address Windowing Extensions, or AWE, on 32-bit platforms are
described in a following section.) Windows Server 2003 running on the Intel Itanium
64-bit architecture supports up to 1,024 Terabytes of physical memory and 512
Gigabytes of addressable memory.
3
Enhanced parallel processing support
The Intel Itanium chips include a number of features that enhance parallel
processing performance. The Itanium 2 features a wider system bus, more registers
and Explicitly Parallel Instruction Computing (EPIC) technology, which enables a
processor to execute multiple (up to 6) instructions simultaneously.
Larger numbers of processors
Improvements in parallel processing enable the 64-bit architecture to support larger
numbers of processors (up to 64). With a larger number of processors, SQL Server
can support more processes, applications, and users in a single system.
Server platforms offering more than 32 CPUs are available exclusively on 64-bit
architecture. The highest TPC-C benchmark figures for SQL Server have been
achieved on 64-bit systems leveraging both large amounts of memory and the
superior scaling of 64-bit processors in a 64-bit architecture.
Enhanced bus architecture
The bus architecture on current 64-bit chipsets is faster and wider than earlier
generations. More data is passed to the cache and processor; this is somewhat
analogous to the improvement broadband connections offer over dial-up
connections.
For a more detailed discussion of the Itanium architecture, see
http://www.intel.com/ebusiness/pdf/prod/itanium/wp022404.pdf.
Comparing SQL Server 2000 (32-bit) with
AWE and 64-bit
Microsoft SQL Server 2000 Enterprise Edition (32-bit) uses the Microsoft Windows 2000
Address Windowing Extensions (AWE) API to support very large amounts of physical
memory. For some applications, using AWE may be a viable alternative to upgrading to
the 64-bit platform.
AWE: An Overview
Standard 32-bit systems can map at most 4 GB of memory, limiting the addressable
memory space for Windows 2000 systems to 4GB. With 2GB reserved for the operating
system, only 2GB of memory remains for the application (in this case, SQL Server
2000). You can increase this amount to 3 GB by setting a 3GB switch in a Windows
boot.ini file.
AWE is a set of memory management extensions to the Microsoft Win32 API that
allows applications to address memory beyond the 4GB limitation. Using AWE,
applications can acquire physical memory as nonpaged memory, and then dynamically
map views of the nonpaged memory to the 32-bit address space. AWE enables
memory-intensive applications, such as large database systems, to address large
amounts of information. More information on AWE can be found on the MSDN page on
the Microsoft Web site.
4
Using the AWE extension enables a SQL Server Enterprise Edition instance to address
significantly more memory than standard implementations:

Up to 32 GB of physical memory on Windows Server 2003, Enterprise Edition using
AWE

Up to 64 GB of memory using Windows Server 2003, Datacenter Edition using AWE
Although using AWE imposes some overhead and adds initialization time, it remains an
important strategy for many memory-intensive database applications.
Limitations of AWE
Using SQL Server 2000 (32-bit) with AWE has some limitations. The additional memory
addressability is available only to the relational database engine, not to other engines
such as Analysis Services. The benefits are limited to those operations that can directly
access database pages stored in the expanded buffer cache — operations such as
building indexes on large tables, or simple queries from cache. AWE does not enhance
other memory-intensive operations using the stored procedure cache or log cache.
Although its benefits are significant, the potential performance enhancements from
AWE do not apply to the following operations or components:

Analysis Services

Procedure Cache for compiled plans

Cursors

ODBC parameter caching

Sort area

Index creation, including full-text indexing

Hash memory

Per-connection memory

Lock memory
In contrast, SQL Server 2000 (64-bit) makes extended memory available to all
database processes and operations. Using this 64-bit version on Itanium 2 hardware, a
SQL Server instance can address up to 512 GB, the current maximum memory
supported by Windows Server 2003. (There is a theoretical addressable limit of 18
Exabytes.) This memory is available to all components of SQL Server, and to all
operations within the database engine.
As a result, SQL Server 2000 (64-bit) enhances performance of a wide range of
memory-intensive database applications.
5
Other Differences in SQL Server 2000
(64-bit)
Although memory management is the most significant difference between the 64-bit
and 32-bit versions of SQL Server 2000, there are other differences that you should
consider when choosing which architecture to deploy.
SMP processor support
Previously, with the 32-bit version of SQL Server, symmetric multiprocessing (SMP)
support was limited to 32 processors. With SQL Server 2000 (64-bit) Enterprise
Edition this limit has been raised to 64 processors with Windows Server 2003
Datacenter edition.
Availability
High availability is critical for many high-end applications. SQL Server 2000 (64-bit)
on Windows Server 2003 supports an 8-node failover cluster. This is an increase
from the 4-node cluster supported by Windows 2000 Datacenter Server
Installation enhancements
The 64-bit version of SQL Server is installed using the Windows Installer Service,
enabling the "Add or Remove Programs" option in the Control Panel. The setup
process displays a tree of features to be installed, which can be deselected as
needed.
Meta data repository
The 64-bit version of Analysis Services uses SQL Server instead of Jet (.MDB) for its
meta data repository. The repository databases are created within SQL Server when
Analysis Services is installed.
Replication
The Replication features of SQL Server 2000 (64-bit) are nearly identical to the 32bit version, with the following features being supported:

Snapshot Replication

Transactional Replication

Merge Replication

Immediately updating subscribers

Queued updating subscribers
However, there are a few special cases:

As the Microsoft Jet engine is not supported, Microsoft Jet push subscriptions for
merge replication are not supported.

Unless the subscriber provides a 64-bit ODBC or OLE DB driver, transactional or
snapshot push subscriptions for ODBC or OLE DB subscribers are not supported.

Because of the unavailability of 64-bit Data Transformation Services (DTS),
transformable push subscriptions are not supported.
In addition, the 64-bit versions of Windows Server 2003, Enterprise Edition and
Windows Server 2003, Datacenter Edition do not include certain features that are
included in the 32-bit versions of those operating systems.
6
These features are not included because of underlying differences between the 32-bit
and 64-bit architectures or because the features are not appropriate in the
environments where the 64-bit versions of Windows Server 2003, Enterprise Edition
and Windows Server 2003, Datacenter Edition are deployed.
For a complete list of differences, see "Differences Between 64-bit and 32-bit Releases
(64-bit)"1 in SQL Server 2000 (64-bit) Books Online and "Features unavailable on 64-bit
versions of the Windows Server 2003 family"2.
Considerations for Choosing SQL Server 2000
(64-bit)
Although it offers significant scalability and performance for many applications, not
every application will benefit from the 64-bit version of SQL server. This section is
designed to help you determine if and when it is appropriate to either use existing SQL
Server instances or develop new applications using the 64-bit architecture.
The improved memory and parallel processing capabilities of SQL Server 2000 (64bit)
are compelling in a number of different usage scenarios, including:

Improving performance for memory-constrained relational applications.

Creating or accelerating large OLAP systems with rapid response time requirements.

Consolidating multiple Windows-based databases and applications to fewer, larger
systems. By hosting multiple databases on a single 64-bit system, you simplify
management, improve storage utilization, and generally improve operational
efficiency.

"Scaling up" current applications experiencing significant growth; migrating existing
database servers that are meeting platform limitations doesn't affect the other tiers
of multitiered applications.

Replacing UNIX systems/applications. The 64-bit platform offers a powerful
alternative to UNIX systems for high-end database servers.
The following sections list some of the factors you should consider when evaluating
specific applications for the 64-bit platform.
1
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sql64/in_introduction64_7xo2.asp
2
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/windowsserver2003/prod
docs/entserver/unsupported64BitFeatures.asp
7
Relational Database Performance Factors
Memory-intensive SQL Server relational workloads are good candidates for 64-bit SQL
Server. Many SQL Server resources are restricted to 3 GB limit using the 32-bit
environment, including

Sort space

Hash tables used in joins and aggregates

Index creation, including full-text indexing

Per-connection memory

Procedure cache for compiled plans
Systems starved of real memory will exhibit degraded performance because of waits for
resources and delays as the processors compile plans that have been evicted from
cache. They may also experience excess disk activity to write objects such as hash
tables that cannot fit into the available memory to disk.
For example, moving to SQL Server 2000 (64-bit) would immediately improve the
performance of applications experiencing the following memory-related performance
problems:

Recompilation of stored procedures because of eviction from memory. The 64-bit
environment provides a large plan cache for high volume transaction applications
with large numbers of stored procedures. This reduces the need to compile stored
procedures that have been evicted from memory, reducing CPU utilization and
reducing query latency.

Resource semaphore waits associated with queries waiting for memory grants.
Multiple queries utilizing large-scale hash joins — especially those executing against
a data warehouse and spanning large datasets — can be affected by resource
semaphore waits.
Other operations that can benefit from extended memory include:

Index creation, including Full Text indexing (restricted to 3GB workspace in 32-bit)

Complex queries that use sorting or large hash joins or hash aggregates. Memoryintensive hash joins are very efficient, but when memory is under pressure, they
may be removed from cache in favor of memory-conserving, but slower, alternative
query plans.

Large numbers of active stored procedures, where benefits can be achieved through
improved cache capacity. The 64-bit architecture can substantially reduce overall
CPU utilization and latency by eliminating the need to evict procedures from cache
and compile repeatedly.

Server side cursors, which can more readily be kept in memory.
Many I/O-intensive applications can potentially benefit by loading a bigger working
dataset into memory, which is possible in the 64-bit environment. Although applications
requiring more memory than the 64GB limit supported by AWE are rare, certain
applications or workloads can benefit from the speed of extracting the database pages
from extremely large cache memory instead of the disk subsystem.
8
Analysis Services Considerations
Analysis Services requires that all dimensions for all cubes are held in memory
simultaneously. Because Analysis Services is unable to take advantage of the memory
extensions of AWE, its memory is limited to 3 GB in a 32-bit environment, even if more
memory is actually available.
The additional memory available to 64-bit environments gives Analysis Services the
capability to support very large dimensions or numerous large dimensions. Consider the
64-bit environment if your OLAP application requires:

Very large dimensions; SQL Server 2000 (64-bit) has demonstrated support for
dimensions with more than 50 million members.

Large numbers of sizeable dimensions.

Large memory use of process buffers.

Very large cubes; significant performance benefits for very large cubes can be
achieved through the use of the file-system cache, reducing the need for physical
disk access for base cube or aggregate data during queries. This can benefit
Analysis Services deployments that have extensive fact partitions and large
numbers of aggregates, even if the dimensions themselves fit into the memory
limits of the 32-bit environment.

Fast cube processing requirements; memory availability reduces the need for
writing to temporary files on the disk subsystem.

Large numbers of concurrent users.
Before adopting a 64-bit environment for data analysis, you need to ensure that the
following components are available:

You will need 64-bit OLE DB providers for all data sources used to populate a
database in the 64-bit environment. SQL Server 2000 (64-bit) includes an OLE DB
provider for accessing SQL Server. If you are using other data sources from other
database vendors, you should verify the availability of a suitable OLE DB must be
verified. Alternatively, you can configure a 32-bit server, utilizing DTS, to pump
data from other OLE DB sources to the 64-bit SQL target.

Analysis Services User-defined functions (UDF) or other components written in
Microsoft Visual Basic 6 are not supported in the 64-bit environment. You need to
verify if these components exist and if necessary rewrite them using C++ and
compile them using the 64-bit SDK.
9
Server Consolidation Considerations
Large scale SMP server architectures based on the Itanium 2 chipset have more linear
scalability than 32-bit systems above 8-way and especially above 16-way
configurations. Server platforms offering more than 32 CPUs are available exclusively
on 64-bit architecture. The highest TPC-C benchmark figures for SQL Server have been
achieved on 64-bit systems leveraging both large amounts of memory and the superior
scaling of 64-bit processors in a 64-bit architecture.
The additional processor and memory headroom available within the 64-bit
environment enable significant scale-up and server consolidation opportunities. A large
number of consolidated databases can fit into a single SQL instance that has sufficient
memory to support the data structures (connections, locks, hash, and so on) needed for
multiple coexisting applications.
You should seriously consider SQL Server 2000 (64-bit) for CPU-intensive workloads for
which scalability needs can be addressed by adding additional processors. The 64-bit
version is particularly valuable for SQL Server instances using 16 or more processors.
Alternatives to 64-bit Architecture
Although a 64-bit system can offer significant performance increases, it is unrealistic to
assume that it will automatically double the performance of a 32-bit system. There may
in fact be situations in which upgrading to 64-bit will not offer the best performance
improvement for an application. For example,

It may be better to add more CPUs

It may be better to use faster CPUs
For many SQL Server workloads, the 2-3 GB of virtual address space available with a
32-bit platform is sufficient. If a workload performs well with 2-3GB of memory (or with
AWE) and does not require scaling up beyond 8 CPUs, the benefits of fast CPUs
available in 32-bit architecture may outweigh the advantages of moving to a 64-bit
platform.
Many operations within SQL Server can benefit more from the fast CPU speeds currently
available on the P4 Xeon architectures (which now have clock speeds exceeding 3 GHz),
than from the memory and scalability benefits of the 64-bit environment (currently
available at 1.5 GHz). Examples include single-threaded query response times on
systems that are not busy or aggregations, hash joins, string comparisons and other
common operations that have adequate memory on 32-bit systems and reside
comfortably on 4-way or 8-way servers. These applications may be better served by
using the fastest 32-bit chipsets. You should be aware of the CPU speed tradeoff in such
circumstances.
You should also consider the implications of using very large amounts of memory on the
64-bit platform. Very large memory could take a long time to shutdown because of a
system checkpoint with a lot of data to flush. As a result, you may choose to perform
system checkpoints at small intervals, perhaps one minute. This can be achieved
through the recovery interval server configuration option.
10
Limitations of SQL Server 2000 (64-bit)
When deciding on a 64-bit platform and SQL Server 2000 (64-bit), you should also
consider potential limitations of the platform. As of this writing (early 2004):

The 64-bit platform is still a relatively new architecture

SQL Server tools are unavailable on 64-bit, such as:

Enterprise Manager

Query Analyzer

SQL Profiler
Best practice is to run these from 32-bit SQL clients.

There is no support for the execution of Data Transformation Services (DTS)
packages
DTS packages can be saved on a 64-bit instance but not executed. Best practice is
that the 32-bit server hosting DTS should have a high speed connection (Gigabit
Ethernet) to the 64-bit server that is the source or target of the transformations in
the DTS packages, as well as other data sources.

There are no Microsoft-provided Oracle or DB2 drivers and third party database
vendor support is limited for drivers on 64-bit windows. This limits the capability to
define linked-server connections from 64-bit instances to non-Microsoft databases.

Microsoft Operations Manager (MOM) is not currently supported on the 64-bit
platform, and there is limited availability of third party systems management tools.
Best practice is to capture the performance counters and events generate by
Windows and 64-bit SQL Server over the network to a 32-bit instance and use the
tools that support such a configuration.

Device drivers for I/O, SANs and other components in your environment may not
yet be released for a 64-bit platform.

The .Net framework for 64-bit is not yet available.
SQL Server 2000 (64-bit) Deployment
Considerations
Because SQL Server 2000 64-bit shares the same code base and on-disk format file
structure as the 32-bit version, there are a vast number of similarities, which eases the
process of migration, and of integrating 32-bit and 64-bit architectures in the same
infrastructure.
Integration
An enterprise data center can consist of a mix of 32-bit and 64-bit systems and
applications. Organizations can continue to use and purchase 32-bit servers, and
connect to a 64-bit server database backend to gain 64-bit platform benefits, or have a
data farm with a mix of both. No client code changes are required to enable servicing
data requests from a 32-bit or 64-bit environment. Applications that access 32-bit can
connect to and access 64-bit without changing the application code, as T-SQL code for
both versions is fully compatible.
11
Migration
The migration of data from SQL Server 7.0 and SQL Server 2000 32-bit versions to SQL
Server 2000 64-bit is a straightforward task, as both share the same on-disk format
and data-types. The mechanisms available are detach/attach or backup/restore.

Detach/Attach
System provided stored procedures are available to detach (sp_detach_db) the
database from the 32-bit version, then attach (sp_attach_db) to the 64-bit instance.

Backup/Restore
The same process for a standard backup and restore can be used to migrate data to
the 64-bit platform, by simply restoring 32-bit backup files to the 64-bit platform.
It is also possible to migrate data back to the 32-bit version for SQL 2000 databases.
However, downgrading to SQL Server 7.0 from SQL Server 2000 (64-bit) is not
supported.
Extended Stored Procedures need to be recompiled. Extended stored procedures are
dynamic-link libraries (DLLs) that SQL Server can load and execute dynamically.
Extended stored procedures run directly in the address space of SQL Server and are
programmed using the SQL Server Open Data Services API
Compatibility Issues
SQL Server 2000 (64-bit) corresponds functionally to SQL Server 2000 (32-bit) SP3,
enabling easy integration in existing infrastructure while providing support for the
extended 64-bit hardware. The product offers complete compatibility with the SQL
Server 2000 (32-bit) database files and transaction logs.
Many of SQL Server's tools and client components are not yet available in a 64-bit
version as of this writing. These include:
DTS
Query Analyzer
Analysis Manager
SQL Profiler
Enterprise Manager
Until they are available for SQL Server 2000 (64bit), you must run these components
and perform many database management and administration tasks remotely using 32bit clients or servers.
There are a number of enhancements and component changes with the 64-bit versions
of SQL Server and Windows Server 2003. Components such as Microsoft Data Access
Components (MDAC), Distributed Transaction Coordinator (DTC) and Microsoft
Management Console (MMC) that used to be part of SQL Server setup are now installed
as core components as part of the Windows Server 2003 setup, allowing SQL Server
2000 (64-bit) to take advantage of these operating system resources.
12
Summary
SQL Server 2000 (64-bit) addresses the need to provide a highly scalable database
platform for memory intensive, performance-critical applications. The 64-bit version
provides massively scalable performance for large, complex queries through:

Large memory addressing

Nearly unlimited virtual memory

Support for up to 64 processors in SMP systems

Enhanced parallelism
While many SQL Server workloads perform well in the 32-bit environment, the
additional memory and processors available to the 64-bit environment are valuable in a
number of situations, including:

Scale-up scenarios requiring 16-way or larger SMP servers

Workloads with large-scale sorting, hash joins, and query memory, such as complex
relational data warehouse queries

Analysis Services applications with very large dimensions or large volumes of data
that can take advantage of filesystem cache

Other applications that may be memory-constrained in the 32-bit environment
SQL Server 2000 (64-bit) is optimized for the Intel Itanium 2 processor, and takes
advantage of advanced memory addressing capabilities for essential resources such as
buffer pools, caches, and sort heaps, reducing the need to perform multiple I/O
operations to bring data in and out of memory from disk. This greater processing
capacity without the penalties of I/O latency provides a mechanism to achieve new
levels of application scalability.
SQL Server 2000 (64-bit) achieves these gains in performance and scalability while
maintaining integration with existing products and applications and offering a simple
migration path. Organizations can use 32-bit application servers connecting to 64-bit
database servers, phasing in the 64-bit technology as required. SQL Server 2000 (64bit) can integrate easily into a database server cluster with other 32-bit databases.
SQL Server 2000 (64-bit) is able to directly address the maximum memory supported
by Microsoft Windows Server 2003 (currently 512 GB). Using Itanium 2 servers with
large amounts of memory, SQL Server 2000 (64-bit) is able to load and process
multigigabyte databases in only a fraction of the time required in a 32-bit environment.
13
Appendix A: Case Studies
This section summarizes four recent case studies using SQL Server 2000 (64-bit). You
can find other case studies online at
http://www.microsoft.com/sql/64bit/productinfo/casestudies.asp.
Information Resources, Inc. (IRI)
Information Resources, Inc. (IRI) provides market research to the consumer packaged
goods and healthcare industries. IRI wanted to provide customers with better query
performance for its online analytical processing (OLAP) service. The company also
wanted to reduce costs and improve scalability and stability. IRI is upgrading from a
32-bit Microsoft SQL Server 2000 Analysis Services environment to a 64-bit
environment.
IRI is using SQL Server 2000 Enterprise Edition (64-bit) and the 64-bit version of
Microsoft Windows Server 2003, Enterprise Edition, to improve the scalability,
performance, and stability of its online analytical processing (OLAP) service.
A single four-processor 64-bit server running SQL Server 2000 Analysis Services
delivers four times the capacity of a two-processor 32-bit server in terms of concurrent
users, and 10 times the capacity in terms of the number of customer databases that
can be supported on one server. This enables IRI to eliminate unnecessary layers in its
environment, which reduces complexity and lowers infrastructure and administrative
costs. IRI's customers also benefit from a vast improvement in query speeds.
Benefits

Far faster query times

Ten times as many customer databases per server

Four times as many concurrent users per server

Stability issues eliminated

Reduced administrative effort

Better price-performance
According to the CIO of IRI, Marshall Gibbs:
"The 64-bit SQL Server environment eliminates many of the technical limitations
that have kept us from rolling out Analysis Services on a larger scale. We're now
in a position to eliminate a large degree of complexity, which will lead to greater
benefits for our customers."
Improved end-user query performance was a primary goal for IRI. The following table
shows that for IRI's processing, query performance in the 64-bit environment is roughly
3 to 5 times faster than in the 32-bit environment when data is retrieved from the
storage area network (SAN), and roughly 60 to 360 times faster when cached in RAM.
One reason for such large performance gains is the increased amount of RAM that is
supported in the 64-bit environment. Also, IRI's 64-bit SQL Server Analysis Services
solution uses a multidimensional OLAP (MOLAP) design instead of the ROLAP
architecture used in IRI's 32-bit environment — a change that would not have been
feasible without the scalability and performance improvements provided by the 64-bit
versions of Windows Server 2003 and SQL Server.
14
Query
Average
Query Speed
(seconds)
32-bit
Average
Query Speed
(seconds)
64-bit
10 concurrent users, cached (large query)
59
<1
10 concurrent users, noncached (large query)
111
34
50 concurrent users, cached (large query)
358
<1
50 concurrent users, noncached (large query)
405
60
Table 2
IRI — Differences in query times for 32-bit and 64-bit environments.
To simplify its infrastructure and administrative workload, IRI needs to support more
customer databases and more simultaneous users on each server. The 64-bit
environment delivers large improvements in both those areas. In the 32-bit
environment, the 3-GB RAM maximum limited the capacity of each server to an average
of 50 client databases, forcing system administrators to continually rebalance the
distribution of databases across the tier of six servers. In the 64-bit environment, the
single four-processor server can handle more than 500 databases while leaving
adequate memory for processing user queries. The following table outlines the
differences between the 32-bit and 64-bit environments.
Benchmark
32-bit
64-bit
Number of databases per server
50
500
Number of concurrent users per server
50
200
Table 3
IRI — Databases and concurrent users for 32-bit and 64-bit
JetBlue Airways
JetBlue Airways is scaling its database systems to accommodate the company's rapid
business growth by using the 64-bit versions of Microsoft Windows Server 2003 and
SQL Server 2000 (64-bit).
The company has migrated its frequent flyer application from two 32-bit servers to a
single 64-bit server — a two-day effort that has eliminated performance problems and
ensures the processing headroom required to accommodate a growth rate of 3,000 new
frequent flyer members per day.
Now that the company has validated the scalability and price-performance benefits
provided by the 64-bit Windows platform, JetBlue will use it to host several enterprise
applications, including a comprehensive data warehouse/OLAP solution and the
company's mission-critical reservation system. Jeff Cohen, CIO for JetBlue,
commented:
"The 64-bit Windows Server 2003 and SQL Server environment makes Microsoft
a true enterprise-class contender in the database arena. The platform enables us
to run mission-critical applications with the confidence that we'll get the
scalability and uptime that we need. The majority of our databases will be
moved to the 64-bit environment."
15
Benefits include:

Superior scalability, which provides new business options

Better price-performance

Reduced infrastructure complexity

Lower administrative costs

Takes advantage of existing tools and skill sets

Mission-critical reliability
Liberty Medical
Liberty Medical Supply provides diabetes and respiratory supplies and medications to
500,000 U.S. Medicare recipients. The company needed to prepare its database
environment for continued rapid growth.
Liberty Medical Supply is deploying the 64-bit versions of Microsoft Windows Server
2003 Datacenter Edition and SQL Server 2000 on an Itanium 2–based 64-bit server.
The 64-bit system has delivered a substantial performance gains (159 percent
improvement over a similarly configured 32-bit server) — more than enough processing
power to support increased sales growth and new business initiatives for the next
several years. By scaling up to SQL Server 2000 (64-bit) running on the new 64-bit
version of Windows, Liberty Medical Supply will realize superior price-performance and
the benefits of server consolidation: decreased administrative workload, increased
reliability, and better performance for end-user applications
Liberty Medical will achieve the following benefits:

Room for business growth

Fewer servers to manage

Superior price-performance

High reliability

Improved reporting speed
The Senior Vice President and CIO of Liberty Medical has cited the primary benefit of
moving to the 64-bit environment as enabling the organization to be
"in a much stronger position to meet the company's growth needs. And should
we require additional processing power in the future, we can immediately meet
this need by simply plugging in more processors and memory to our existing
servers, which requires far less effort than configuring and deploying additional
servers."
123MultiMedia
123Multimedia has been creating and distributing content for premium services such as
chat, telephone services and ring tones since 1987. Its services are delivered through a
variety of channels. In such a high-tech industry, innovation and speed to market are
crucial.
The company's 32-bit platform meets its current needs, but it needs the scalability and
performance enhancements of 64-bit computing to cope with future demands.
123Multimedia is testing Microsoft Windows Server 2003 Enterprise Edition running
Microsoft SQL Server 2000 (64- bit) on an HP Integrity rx5670.
16
The benefits include:

Handling five times more traffic than the 32-bit platform

Lower costs through application consolidation and reduced training needs

Solid product roadmap secures investment for the future

Richer information on service performance
Appendix B: Sources for Additional
Information
There are many additional sources of information about SQL Server 2000 (64-bit), as
well as the Itanium 2 platform and Windows Server 2003.

SQL Server Web site: http://www.microsoft.com/sql

SQL Server 64-bit Web site: http://www.microsoft.com/sql/64bit. This site includes
additional information on:

Product Features and Usage

Licensing

System Requirements

Customer Case Studies

Technical Resources (includes link to Books Online)

Partner Software Offerings

SQL Server 2000 (64-bit) Technical Resources:
http://www.microsoft.com/sql/64bit/techinfo/default.asp. This page includes a link
to Books Online, as well as a paper titled "SQL Server 2000 (64-bit) Analysis
Services: Why Migrate, and What to Expect"

SQL Server Developer Center: http://msdn.microsoft.com/sqlserver

SQL Server Magazine: http://www.sqlmag.com

Newsgroups:

news://news.microsoft.com

microsoft.public.sqlserver.programming

microsoft.public.sqlserver.datawarehouse

Microsoft Official Curriculum courses on SQL Server. For current course information,
see http://www.microsoft.com/trainingandservices.

Hardware-specific sites:


http://www.intel.com/ebusiness/pdf/prod/itanium/wp022404.pdf

http://h71028.www7.hp.com/enterprise/cache/8179-0-0-0-121.aspx

http://www.hp.com/products1/servers/integrity/index.html
Windows Server 2003 (64-bit) Web site:
http://www.microsoft.com/windowsserver2003/64bit/default.mspx
17