SlideShare a Scribd company logo
High Availability
Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale
Availability Barriers Database Server Failure or Disaster Failover Clustering Database Mirroring Transparent Client Redirect User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale
Failover Clustering Hot Standby – Automatic failover Built on Microsoft Cluster Services (MSCS) Multiple nodes provide availability, transparent to client Automatic detection and failover Requires certified hardware Supports many scenarios: Active/Active, N+1, N+I Zero work loss, zero impact on throughput Instance Failover – entire instance works as a unit Single copy of instance databases  Available since SQL Server 7.0 Standby is not available for reporting, queries, etc.
Failover Clustering Further refined in SQL Server 2005 More nodes Match operating system limits Unattended setup Support for mounted volumes (Mount Points) All SQL Server services participate Database Engine, SQL Server Agent,  Analysis Services, Full-Text Search, etc.
Database Mirroring Instant  Standby Conceptually a fault-tolerant server  Building block for complex topologies Database Failover Very Fast … in seconds Zero data loss Automatic or manual failover Automatic re-sync after failover Automatic, transparent client redirect
Database Mirroring Hardware Works with standard computers, storage, and networks No shared storage components, virtually no distance limitations Impact to transaction throughput Zero to minimal, depending on environment / workload
Database Mirroring Principal Clients Witness Mirror
Database Mirroring Initiating a Mirroring Session On the principal server, back up the database   BACKUP DATABASE … On the future mirror server, restore the database   RESTORE DATABASE … On the mirror, set the principal server as a failover partner   ALTER DATABASE …  SET PARTNER … On the principal server set the mirror server as the second failover partner   ALTER DATABASE …  SET PARTNER … To fail over: On the principal   ALTER DATABASE …  SET PARTNER FAILOVER
Database Mirroring Witness and Quorum Witness provides  automatic  failover Prevents “split brain” Does a lost connection mean the partner is down or is the network down? To become the Principal, a server must talk to at least one other server
Database Mirroring Witness and Quorum Witness is an instance of  SQL Server 2005 Single witness for multiple sessions Consumes very little resources Not a single point of failure Partners can form quorum on their own
Database Mirroring How it works Mirror Principal Witness Log Data Data Log Mirror is always redoing – it remains current Application SQL   Server SQL Server 2 2 4 5 1 3 >2 >3 Commit
Database Mirroring Safety vs. Performance There is a trade-off between performance and safety Database Mirroring has two safety levels FULL – commit when logged on Mirror Allows automatic failover No data loss OFF – commit when logged on Principal System does its best to keep up Prevents failover; to make mirror available Must ‘force’ service Or terminate Database Mirroring session
Database Mirroring Transparent Client  Redirect No changes to application code Client automatically redirected if session is dropped Client library is aware of Principal and Mirror servers Upon initial connect to Principal, library caches Mirror name When client attempts to reconnect If Principal is available, connects If not, client library automatically redirects connection to Mirror
FailOver Recap Both Provide Automatic detection and failover Manual failover Transparent client connect Zero work loss Database Views mitigate DBA or application error Database Mirroring Database scope Standard servers Fastest failover Duplicate copy of database Failover Clustering System scope Certified hardware Fast failover Single copy of database
Warm Standby Solutions Replication and Log Shipping Both Provide Multiple copies and Manual failover Replication – since SQL Server 6.0 Primarily used where availability is required in conjunction with scale out of read activity Failover possible; a custom solution Not limited to entire database; Can define subset of source database or tables Copy of database is continuously accessible for read activity Latency between source and copy can be as low as seconds
Warm Standby Solutions Replication and Log Shipping Log Shipping Basic idea: Backup, Copy, Restore Log will be supported But no more investment in the scripts Database scope Database accessible but read-only Users must exit for next log to be applied
Availability Barriers Database Server Failure or Disaster User or Application Error Database Snapshots Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale
Database Snapshots Overview Snapshot of an entire database at a point in time Created instantly Read only Base database continues to change Database Snapshot does not restrict the base database Multiple Snapshots are allowed Database Snapshots can exist forever Constrained by resources
Database Snapshots Uses Recover from User, Application, or DBA error Revert database to previously created Database Snapshot Takes the database back in time Very fast, no restoring of backups required Static, time-consistent copy for reports With Database Mirroring enables reporting on the standby No increase in failover time
Database Snapshots How They Work Extremely space efficient Does  not  require a complete copy of the data Shares unchanged pages of the database Requires extra storage only for  changed pages Uses a “copy-on-write” mechanism Database Snapshot may affect performance on the base database
Database Snapshots Snapshot   On a Mirror Mirror Principal Reporting Clients Database Mirroring Snapshot1 at 1PM Witness Snapshot2 at 2PM
Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Snapshot Isolation Online Index Operations Database Maintenance and Operations Upgrades Availability at Scale
New Isolation Levels Isolation Levels Isolation levels control interaction of many users working simultaneously with transactional data Trade-off between concurrency and correctness SQL-92 specifies four isolation levels Serializable Least concurrency, most restrictive, always ‘correct’ Repeatable Read Read Committed Read Uncommitted Most concurrency, least restrictive, more anomalies are possible SQL Server has implemented these all along Uses ‘pessimistic locking’, locking the row, page, or table assuming another user will try to access it
New Isolation Levels  Overview Two new ‘snapshot isolation’ levels Increased data availability for read applications Allows non-blocking consistent reads in an online transaction processing (OLTP) environment Writers do not block readers; readers do not block writers Consistency of aggregates without using higher isolation levels AVG, COUNT, SUM, etc.
New Isolation Levels  Overview Increases concurrency and data availability while reducing deadlocks Non-blocking consistent reporting and ad-hoc queries Uses row-level versions on update and delete to keep copies of the versions of the row other users might want to see Doesn’t lock the row Permits writes, which can cause conflicts BUT…includes mandatory conflict detection
New Isolation Levels  Snapshot Isolation ‘Snapshot Isolation’ – Transaction-level   SET TRANSACTION ISOLATION LEVEL   SNAPSHOT Uses row-level versioning Read operations do not acquire locks When referencing a row modified by another transaction will retrieve the committed version of the row that existed when the snapshot  transaction  started
New Isolation Levels  Read Committed Snapshot Read Committed Snapshot – Statement-level   SET TRANSACTION ISOLATION LEVEL  READ COMMITTED While  READ_COMMITED_SNAPSHOT  database option is set to ON, automatically get non-locking READ COMMITTED Can greatly reduce locking / deadlocking without changing applications Override with  READCOMMITTEDLOCK  hint  The query scan will run under the original flavor of locking-based read committed isolation When referencing a row modified by another transaction will retrieve the committed version of the row that existed when the statement started Writers  DO  block writers
New Isolation Levels  Database Settings Snapshot Isolation must be enabled at the database level  ALTER DATABASE mydatabase   SET ALLOW_SNAPSHOT_ISOLATION ON To default all Read Committed operations to use Read Committed Snapshot  ALTER DATABASE mydatabase   SET READ_COMMITTED_SNAPSHOT ON All row versions are stored in  tempdb
Isolation Level  Comparison Possible Anomalies Detected and rolled back No “Lost Update”! No Yes  No No No No Update Conflict Optimistic No No No Snapshot Pessimistic No No No Serializable Pessimistic Yes No No Repeatable  Read Pessimistic Optimistic Yes Yes Yes Yes No No Read   Committed 1  Locking 2   Snapshot   Yes Yes Yes Read   Uncommitted Concurrency Control Phantoms Non-Repeatable Read Dirty Read Isolation Levels
On-line Index Operations  Overview Online Index Operations allow concurrent modification of the underlying table or index Updates, Inserts, Deletes Online Index Maintenance Create, Rebuild, Drop Index-based constraints (PrimaryKey, Unique) Data definition language (DDL) is simple Online/Offline are both supported  Updates incur some additional cost during an online index operation Maintains old and new indexes
Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Many Changes Upgrades Availability at Scale
Fast Recovery  Restart or Restore SQL Server 2000 Database is available after Undo  completes SQL Server 2005 Database is available when Undo  begins Undo Redo Available Time Undo Redo Available
Database Maintenance and Operations   Partial Availability Database is available if primary filegroup is available Online Restore Restore while database remains available Works with all recovery models Backup and Restore Data backups don’t block log backups Full-Text Catalog is backed up and restored as part of the database
Database Maintenance and Operations Backup Media Mirroring Can write backups to 4 destinations Enhanced Verification of Backups RESTORE VERIFYONLY now checks everything it can, short of writing the data Database Page Checksums and Backup Checksums Detects disk I/O errors not reported by the hardware or operating system Continue Past Errors Encountered by Restore Allows the restore sequence to continue as far as possible… … then repair the database
Database Maintenance and Operations Dedicated Administration Connection Provides DBA access to server regardless of load No server restart to kill a runaway session More configuration is dynamic No server restart for CPU affinity, AWE Address Windowing Extensions (AWE) Changes to physical size don’t require downtime Dynamically configurable (Min / Max) Dynamically adjusts to “hot-add” memory Requires Windows Server 2003 Instant file initialization With appropriate security, can bypass zeroing For create database, add file, file grow, restore
Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Software and Hardware Availability at Scale
Upgrade Enhancements Software Upgrade Re-architected – greatly reduces down time Resource database pre-built  Phased Engine and Databases (< 3 minutes) Other components complete upgrade online after databases are available (Replication, Workbench, etc.) Database Mirroring allows “rolling upgrade” Reduces downtime to seconds for service packs Minimizes downtime for version upgrade Hardware Upgrade Hot-add memory supported without server restart Database Mirroring minimizes downtimes for other hardware upgrades, excluding disk
Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale Data Partitioning
Data Partitioning Partitioning breaks a single object into multiple manageable pieces Transparent to the application Allows easy management of very large tables  and indexes The row is the unit of partitioning All partitions run on a single SQL Server database Partitions can be created or dropped with virtually no loss of availability to the table Table fully available while loading, indexing a new partition Create new and drop old partition quickly Fastest possible load rates  If all indexes are “aligned”, moving partitions in or out of a table is possible “ Sliding window” scenarios

More Related Content

PPTX
Database Mirror for the exceptional DBA – David Izahk
PPTX
Design Considerations For Storing With Windows Azure
PPSX
Sql Server 2008 Enhancements
PDF
Geek Sync | Field Medic’s Guide to Database Mirroring
PDF
SQL Server High Availability Solutions (Pros & Cons)
PPTX
Sql 2012 always on
PPT
High availability of azure applications(paas)
DOCX
Mirroring in SQL Server 2012 R2
Database Mirror for the exceptional DBA – David Izahk
Design Considerations For Storing With Windows Azure
Sql Server 2008 Enhancements
Geek Sync | Field Medic’s Guide to Database Mirroring
SQL Server High Availability Solutions (Pros & Cons)
Sql 2012 always on
High availability of azure applications(paas)
Mirroring in SQL Server 2012 R2

What's hot (17)

PDF
Websphere doctor - your guide to diagnose issues
PPTX
AlwaysON Basics
PPTX
Powering the Cloud with Oracle WebLogic
PDF
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
PDF
Pre and post tips to installing sql server correctly
PPT
Oracle WebLogic Server Basic Concepts
PPT
Database mirroring setup
PPTX
SQL Server 2016 AlwaysOn Availability Groups New Features
PDF
Microsoft SQL Server Query Tuning
PDF
KoprowskiT_it_camp2013 - 2amADisasterJustBegan
PPTX
Alwayson AG enhancements
PPT
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
PPTX
SharePoint Disaster Recovery with SQL AlwaysOn
PDF
Weblogic security
PDF
Learn Oracle WebLogic Server 12c Administration
PDF
Oracle Weblogic Server 11g: System Administration I
PDF
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12c
Websphere doctor - your guide to diagnose issues
AlwaysON Basics
Powering the Cloud with Oracle WebLogic
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
Pre and post tips to installing sql server correctly
Oracle WebLogic Server Basic Concepts
Database mirroring setup
SQL Server 2016 AlwaysOn Availability Groups New Features
Microsoft SQL Server Query Tuning
KoprowskiT_it_camp2013 - 2amADisasterJustBegan
Alwayson AG enhancements
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
SharePoint Disaster Recovery with SQL AlwaysOn
Weblogic security
Learn Oracle WebLogic Server 12c Administration
Oracle Weblogic Server 11g: System Administration I
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12c
Ad

Viewers also liked (8)

PDF
DWD Online Application Workshop
PDF
MapReduce: Optimizations, Limitations, and Open Issues
PPTX
Employee Management System
PPT
Employee Management System By AZ DATAMALL
DOCX
Employee management system1
PPTX
Online job portal
PPTX
Employee Management System
PDF
Employee Management System UML Diagrams Use Case Diagram, Activity Diagram, S...
DWD Online Application Workshop
MapReduce: Optimizations, Limitations, and Open Issues
Employee Management System
Employee Management System By AZ DATAMALL
Employee management system1
Online job portal
Employee Management System
Employee Management System UML Diagrams Use Case Diagram, Activity Diagram, S...
Ad

Similar to High Availbilty In Sql Server (20)

PPT
Sql 2005 high availability
PPTX
SQL Server High Availability and Disaster Recovery
PDF
SQL Server Clustering and High Availability
DOC
Sql server-dba
PDF
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (Chicago Suburb...
PDF
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (SQL Saturday M...
PPTX
Microsoft sql server architecture
PDF
Concurrency in SQL Server (SQL Night #24)
PDF
Fundamentals of SQL Server 2012 Availability groups
PPTX
Introduction to High Availability with SQL Server
PDF
SQLDay2013_Denny Cherry - SQLServer2012inaHighlyAvailableWorld
PPTX
Db spof(mssql, my sql)
PDF
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASS DBA Virtu...
PPT
Effective Usage of SQL Server 2005 Database Mirroring
PPTX
Why to upgrade to SQLServer 2012?
PDF
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (New England SQ...
PDF
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASSDC User Gr...
PPTX
SQL Server - High availability
PDF
Dr and ha solutions with sql server azure
PPTX
Sql server 2012 ha and dr sql saturday tampa
Sql 2005 high availability
SQL Server High Availability and Disaster Recovery
SQL Server Clustering and High Availability
Sql server-dba
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (Chicago Suburb...
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (SQL Saturday M...
Microsoft sql server architecture
Concurrency in SQL Server (SQL Night #24)
Fundamentals of SQL Server 2012 Availability groups
Introduction to High Availability with SQL Server
SQLDay2013_Denny Cherry - SQLServer2012inaHighlyAvailableWorld
Db spof(mssql, my sql)
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASS DBA Virtu...
Effective Usage of SQL Server 2005 Database Mirroring
Why to upgrade to SQLServer 2012?
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (New England SQ...
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASSDC User Gr...
SQL Server - High availability
Dr and ha solutions with sql server azure
Sql server 2012 ha and dr sql saturday tampa

High Availbilty In Sql Server

  • 2. Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale
  • 3. Availability Barriers Database Server Failure or Disaster Failover Clustering Database Mirroring Transparent Client Redirect User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale
  • 4. Failover Clustering Hot Standby – Automatic failover Built on Microsoft Cluster Services (MSCS) Multiple nodes provide availability, transparent to client Automatic detection and failover Requires certified hardware Supports many scenarios: Active/Active, N+1, N+I Zero work loss, zero impact on throughput Instance Failover – entire instance works as a unit Single copy of instance databases Available since SQL Server 7.0 Standby is not available for reporting, queries, etc.
  • 5. Failover Clustering Further refined in SQL Server 2005 More nodes Match operating system limits Unattended setup Support for mounted volumes (Mount Points) All SQL Server services participate Database Engine, SQL Server Agent, Analysis Services, Full-Text Search, etc.
  • 6. Database Mirroring Instant Standby Conceptually a fault-tolerant server Building block for complex topologies Database Failover Very Fast … in seconds Zero data loss Automatic or manual failover Automatic re-sync after failover Automatic, transparent client redirect
  • 7. Database Mirroring Hardware Works with standard computers, storage, and networks No shared storage components, virtually no distance limitations Impact to transaction throughput Zero to minimal, depending on environment / workload
  • 8. Database Mirroring Principal Clients Witness Mirror
  • 9. Database Mirroring Initiating a Mirroring Session On the principal server, back up the database BACKUP DATABASE … On the future mirror server, restore the database RESTORE DATABASE … On the mirror, set the principal server as a failover partner ALTER DATABASE … SET PARTNER … On the principal server set the mirror server as the second failover partner ALTER DATABASE … SET PARTNER … To fail over: On the principal ALTER DATABASE … SET PARTNER FAILOVER
  • 10. Database Mirroring Witness and Quorum Witness provides automatic failover Prevents “split brain” Does a lost connection mean the partner is down or is the network down? To become the Principal, a server must talk to at least one other server
  • 11. Database Mirroring Witness and Quorum Witness is an instance of SQL Server 2005 Single witness for multiple sessions Consumes very little resources Not a single point of failure Partners can form quorum on their own
  • 12. Database Mirroring How it works Mirror Principal Witness Log Data Data Log Mirror is always redoing – it remains current Application SQL Server SQL Server 2 2 4 5 1 3 >2 >3 Commit
  • 13. Database Mirroring Safety vs. Performance There is a trade-off between performance and safety Database Mirroring has two safety levels FULL – commit when logged on Mirror Allows automatic failover No data loss OFF – commit when logged on Principal System does its best to keep up Prevents failover; to make mirror available Must ‘force’ service Or terminate Database Mirroring session
  • 14. Database Mirroring Transparent Client Redirect No changes to application code Client automatically redirected if session is dropped Client library is aware of Principal and Mirror servers Upon initial connect to Principal, library caches Mirror name When client attempts to reconnect If Principal is available, connects If not, client library automatically redirects connection to Mirror
  • 15. FailOver Recap Both Provide Automatic detection and failover Manual failover Transparent client connect Zero work loss Database Views mitigate DBA or application error Database Mirroring Database scope Standard servers Fastest failover Duplicate copy of database Failover Clustering System scope Certified hardware Fast failover Single copy of database
  • 16. Warm Standby Solutions Replication and Log Shipping Both Provide Multiple copies and Manual failover Replication – since SQL Server 6.0 Primarily used where availability is required in conjunction with scale out of read activity Failover possible; a custom solution Not limited to entire database; Can define subset of source database or tables Copy of database is continuously accessible for read activity Latency between source and copy can be as low as seconds
  • 17. Warm Standby Solutions Replication and Log Shipping Log Shipping Basic idea: Backup, Copy, Restore Log will be supported But no more investment in the scripts Database scope Database accessible but read-only Users must exit for next log to be applied
  • 18. Availability Barriers Database Server Failure or Disaster User or Application Error Database Snapshots Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale
  • 19. Database Snapshots Overview Snapshot of an entire database at a point in time Created instantly Read only Base database continues to change Database Snapshot does not restrict the base database Multiple Snapshots are allowed Database Snapshots can exist forever Constrained by resources
  • 20. Database Snapshots Uses Recover from User, Application, or DBA error Revert database to previously created Database Snapshot Takes the database back in time Very fast, no restoring of backups required Static, time-consistent copy for reports With Database Mirroring enables reporting on the standby No increase in failover time
  • 21. Database Snapshots How They Work Extremely space efficient Does not require a complete copy of the data Shares unchanged pages of the database Requires extra storage only for changed pages Uses a “copy-on-write” mechanism Database Snapshot may affect performance on the base database
  • 22. Database Snapshots Snapshot On a Mirror Mirror Principal Reporting Clients Database Mirroring Snapshot1 at 1PM Witness Snapshot2 at 2PM
  • 23. Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Snapshot Isolation Online Index Operations Database Maintenance and Operations Upgrades Availability at Scale
  • 24. New Isolation Levels Isolation Levels Isolation levels control interaction of many users working simultaneously with transactional data Trade-off between concurrency and correctness SQL-92 specifies four isolation levels Serializable Least concurrency, most restrictive, always ‘correct’ Repeatable Read Read Committed Read Uncommitted Most concurrency, least restrictive, more anomalies are possible SQL Server has implemented these all along Uses ‘pessimistic locking’, locking the row, page, or table assuming another user will try to access it
  • 25. New Isolation Levels Overview Two new ‘snapshot isolation’ levels Increased data availability for read applications Allows non-blocking consistent reads in an online transaction processing (OLTP) environment Writers do not block readers; readers do not block writers Consistency of aggregates without using higher isolation levels AVG, COUNT, SUM, etc.
  • 26. New Isolation Levels Overview Increases concurrency and data availability while reducing deadlocks Non-blocking consistent reporting and ad-hoc queries Uses row-level versions on update and delete to keep copies of the versions of the row other users might want to see Doesn’t lock the row Permits writes, which can cause conflicts BUT…includes mandatory conflict detection
  • 27. New Isolation Levels Snapshot Isolation ‘Snapshot Isolation’ – Transaction-level SET TRANSACTION ISOLATION LEVEL SNAPSHOT Uses row-level versioning Read operations do not acquire locks When referencing a row modified by another transaction will retrieve the committed version of the row that existed when the snapshot transaction started
  • 28. New Isolation Levels Read Committed Snapshot Read Committed Snapshot – Statement-level SET TRANSACTION ISOLATION LEVEL READ COMMITTED While READ_COMMITED_SNAPSHOT database option is set to ON, automatically get non-locking READ COMMITTED Can greatly reduce locking / deadlocking without changing applications Override with READCOMMITTEDLOCK hint The query scan will run under the original flavor of locking-based read committed isolation When referencing a row modified by another transaction will retrieve the committed version of the row that existed when the statement started Writers DO block writers
  • 29. New Isolation Levels Database Settings Snapshot Isolation must be enabled at the database level ALTER DATABASE mydatabase SET ALLOW_SNAPSHOT_ISOLATION ON To default all Read Committed operations to use Read Committed Snapshot ALTER DATABASE mydatabase SET READ_COMMITTED_SNAPSHOT ON All row versions are stored in tempdb
  • 30. Isolation Level Comparison Possible Anomalies Detected and rolled back No “Lost Update”! No Yes No No No No Update Conflict Optimistic No No No Snapshot Pessimistic No No No Serializable Pessimistic Yes No No Repeatable Read Pessimistic Optimistic Yes Yes Yes Yes No No Read Committed 1 Locking 2 Snapshot Yes Yes Yes Read Uncommitted Concurrency Control Phantoms Non-Repeatable Read Dirty Read Isolation Levels
  • 31. On-line Index Operations Overview Online Index Operations allow concurrent modification of the underlying table or index Updates, Inserts, Deletes Online Index Maintenance Create, Rebuild, Drop Index-based constraints (PrimaryKey, Unique) Data definition language (DDL) is simple Online/Offline are both supported Updates incur some additional cost during an online index operation Maintains old and new indexes
  • 32. Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Many Changes Upgrades Availability at Scale
  • 33. Fast Recovery Restart or Restore SQL Server 2000 Database is available after Undo completes SQL Server 2005 Database is available when Undo begins Undo Redo Available Time Undo Redo Available
  • 34. Database Maintenance and Operations Partial Availability Database is available if primary filegroup is available Online Restore Restore while database remains available Works with all recovery models Backup and Restore Data backups don’t block log backups Full-Text Catalog is backed up and restored as part of the database
  • 35. Database Maintenance and Operations Backup Media Mirroring Can write backups to 4 destinations Enhanced Verification of Backups RESTORE VERIFYONLY now checks everything it can, short of writing the data Database Page Checksums and Backup Checksums Detects disk I/O errors not reported by the hardware or operating system Continue Past Errors Encountered by Restore Allows the restore sequence to continue as far as possible… … then repair the database
  • 36. Database Maintenance and Operations Dedicated Administration Connection Provides DBA access to server regardless of load No server restart to kill a runaway session More configuration is dynamic No server restart for CPU affinity, AWE Address Windowing Extensions (AWE) Changes to physical size don’t require downtime Dynamically configurable (Min / Max) Dynamically adjusts to “hot-add” memory Requires Windows Server 2003 Instant file initialization With appropriate security, can bypass zeroing For create database, add file, file grow, restore
  • 37. Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Software and Hardware Availability at Scale
  • 38. Upgrade Enhancements Software Upgrade Re-architected – greatly reduces down time Resource database pre-built Phased Engine and Databases (< 3 minutes) Other components complete upgrade online after databases are available (Replication, Workbench, etc.) Database Mirroring allows “rolling upgrade” Reduces downtime to seconds for service packs Minimizes downtime for version upgrade Hardware Upgrade Hot-add memory supported without server restart Database Mirroring minimizes downtimes for other hardware upgrades, excluding disk
  • 39. Availability Barriers Database Server Failure or Disaster User or Application Error Data Access Concurrency Limitations Database Maintenance and Operations Upgrades Availability at Scale Data Partitioning
  • 40. Data Partitioning Partitioning breaks a single object into multiple manageable pieces Transparent to the application Allows easy management of very large tables and indexes The row is the unit of partitioning All partitions run on a single SQL Server database Partitions can be created or dropped with virtually no loss of availability to the table Table fully available while loading, indexing a new partition Create new and drop old partition quickly Fastest possible load rates If all indexes are “aligned”, moving partitions in or out of a table is possible “ Sliding window” scenarios