Upload
databaseguys
View
1.157
Download
2
Tags:
Embed Size (px)
Citation preview
IT Track 7
Tom DavidsonTom DavidsonProgram ManagerProgram ManagerSQL Server DevelopmentSQL Server DevelopmentMicrosoft CorporationMicrosoft Corporation
SQL Server “Yukon” - DBA
SQL Server “Yukon”..NET FrameworkNET Framework
Common Language Runtime IntegrationCommon Language Runtime IntegrationUser-defined AggregatesUser-defined AggregatesUser-defined Data TypesUser-defined Data TypesUser-defined FunctionsUser-defined FunctionsSQL Server .NET Data ProviderSQL Server .NET Data ProviderExtended TriggersExtended Triggers
Data TypesData TypesManaged SQL TypesManaged SQL TypesNew XML DatatypeNew XML Datatype
SQL Server EngineSQL Server EngineNew Message Service BrokerNew Message Service BrokerHTTP Support (Native HTTP)HTTP Support (Native HTTP)Database Tuning Advisor Database Tuning Advisor Enhanced Read ahead & scanEnhanced Read ahead & scanExtended IndexesExtended IndexesMultiple Active Result Sets Multiple Active Result Sets Persisted Computed ColumnsPersisted Computed ColumnsQueuing SupportQueuing SupportSnapshot Isolation Level Snapshot Isolation Level Scale Up PartitioningScale Up PartitioningVIA support VIA support NUMA supportNUMA support
Database Failure and RedundancyDatabase Failure and RedundancyFail-over Clustering (up to 8 node)Fail-over Clustering (up to 8 node)Enhanced Multi-instance SupportEnhanced Multi-instance SupportDatabase MirroringDatabase MirroringDatabase ViewsDatabase Views
XMLXMLXQUERY Support (Server & Mid Tier)XQUERY Support (Server & Mid Tier)XML Data Manipulation Language XML Data Manipulation Language FOR XML EnhancementsFOR XML EnhancementsXML Schema (XSD) Support XML Schema (XSD) Support MSXML 6.0 (Native)MSXML 6.0 (Native).Net XML Framework.Net XML Framework
Database MaintenanceDatabase MaintenanceBackup and Restore EnhancementsBackup and Restore EnhancementsChecksum Integrity ChecksChecksum Integrity ChecksDedicated Administrator ConnectionDedicated Administrator ConnectionDynamic AWEDynamic AWEFast RecoveryFast RecoveryHighly-available UpgradeHighly-available UpgradeOnline Index OperationsOnline Index OperationsOnline RestoreOnline RestoreParallel DBCCParallel DBCCParallel Index OperationsParallel Index Operations
Management ToolsManagement ToolsMDX Query EditorMDX Query EditorMDX IntellisenseMDX IntellisenseT-SQL IntellisenseT-SQL IntellisenseVersion Control SupportVersion Control SupportXML/AXML/ASQLCMD Command Line ToolSQLCMD Command Line Tool
Performance TuningPerformance Tuning Profiler EnhancementsProfiler EnhancementsProfiling Analysis ServicesProfiling Analysis ServicesExportable Showplan Exportable Showplan Exportable Deadlock TracesExportable Deadlock Traces
Full-text SearchFull-text SearchIndexing of XML DatatypeIndexing of XML Datatype
MDAC MDAC Side by Side installationSide by Side installationMicrosoft Installer based setupMicrosoft Installer based setupSupport for Active Directory DeploymentSupport for Active Directory Deployment
SQL Client .NET Data ProviderSQL Client .NET Data ProviderServer Cursor SupportServer Cursor SupportAsynchAsynch
SecuritySecurityAll Permissions GrantableAll Permissions GrantableFine Grain Administration RightsFine Grain Administration RightsSeparation of Users and SchemaSeparation of Users and Schema
ReplicationReplicationAuto-tuning Replication AgentsAuto-tuning Replication AgentsOracle PublicationOracle PublicationImproved Blob Change TrackingImproved Blob Change Tracking
OLAP and Data MiningOLAP and Data MiningAnalysis Management Objects Analysis Management Objects Windows Integrated Backup and RestoreWindows Integrated Backup and RestoreWeb Service/XML for AnalysisWeb Service/XML for AnalysisDTS and DM IntegrationDTS and DM IntegrationEight new DM algorithmsEight new DM algorithmsAuto Packaging and DeploymentAuto Packaging and Deployment
Data Transformation ServicesData Transformation ServicesNew Architecture (DTR + DTP)New Architecture (DTR + DTP)Complex Control FlowsComplex Control FlowsControl Flow DebuggingControl Flow DebuggingFor Each EnumerationsFor Each EnumerationsProperty MappingsProperty MappingsFull Data Flow DesignerFull Data Flow DesignerFull DTS Control Flow DesignerFull DTS Control Flow DesignerGraphical Presentation of Pkg ExecutionGraphical Presentation of Pkg ExecutionImmediate Mode and Project ModeImmediate Mode and Project ModePackage (Advanced) Deployment ToolsPackage (Advanced) Deployment ToolsCustom Tasks and TransformationsCustom Tasks and Transformations
Reporting ServicesReporting ServicesMultiple Output Formats Multiple Output Formats Parameters (Static, Dynamic, Parameters (Static, Dynamic,
Hierarchical)Hierarchical)Bulk Delivery of Personalized ContentBulk Delivery of Personalized ContentSupport Multiple Data Sources Support Multiple Data Sources STS (Web Parts, Doc Libraries)STS (Web Parts, Doc Libraries)Visual Design ToolVisual Design ToolCharting, Sorting, Filtering, Drill-ThroughCharting, Sorting, Filtering, Drill-ThroughScheduling, CachingScheduling, CachingComplete Scripting EngineComplete Scripting EngineScale Out architectureScale Out architectureOpen XML Report DefinitionOpen XML Report Definition
Notification ServicesNotification Services
New for the DBAAgenda
Major SQL Server SubsystemsMajor SQL Server Subsystems MonitoringMonitoring SecuritySecurity DevelopmentDevelopment AvailabilityAvailability
Data Access ConcurrencyData Access Concurrency Database Server Failure or DisasterDatabase Server Failure or Disaster Database Maintenance and OperationsDatabase Maintenance and Operations
ManageabilityManageability
Major Subsystems
Storage EngineStorage Engine Analysis ServicesAnalysis Services
Cluster aware, multiple instancesCluster aware, multiple instances Notification ServicesNotification Services Reporting ServicesReporting Services SQL Server AgentSQL Server Agent Fulltext SearchFulltext Search Service BrokerService Broker
All have 32-bit and 64-bit versionsAll have 32-bit and 64-bit versions
Storage - Partitioning
Large tables and indexes can be more Large tables and indexes can be more easily maintained (data scale-up)easily maintained (data scale-up) Example: Sales data separated by Example: Sales data separated by
Quarter – you can back up each quarter Quarter – you can back up each quarter individually (when each partition is in its individually (when each partition is in its own Filegroup)own Filegroup)
Take advantage of large machines Take advantage of large machines (16-64 CPUs) (machine scale-up)(16-64 CPUs) (machine scale-up) Each CPU can work on its own partition Each CPU can work on its own partition
independently independently Improved concurrencyImproved concurrency
Lock escalation to partitionLock escalation to partition
SWITCHing Partition In Idea
Q1Q1 Q2Q2 Q3Q3 Q4 = Q4 = EmptyEmpty
Table1
New Q4New Q4
Table2
ALTER TABLE Table2 SWITCH PARTITION TO ALTER TABLE Table2 SWITCH PARTITION TO Table1 PARTITION 4Table1 PARTITION 4
SWITCH PartitionIdea
Exchange data between tables by Exchange data between tables by SWITCHing the pointers to physical data SWITCHing the pointers to physical data locationslocations
Designed to bring a partition of new data in Designed to bring a partition of new data in or take partition of old data out of a or take partition of old data out of a partitioned tablepartitioned table
Partitions can be created or dropped with Partitions can be created or dropped with virtually no loss of availability to the tablevirtually no loss of availability to the table Table fully available while loading, indexing a Table fully available while loading, indexing a
new partitionnew partition Create new and drop old partition quicklyCreate new and drop old partition quickly Fastest possible load rates Fastest possible load rates
SQL Server Service Broker Guaranteed, asynchronous message queuingGuaranteed, asynchronous message queuing
Sent or Received by internal or external processesSent or Received by internal or external processes Fully transactionalFully transactional
Queuing uses internal transactionsQueuing uses internal transactions
0
10
20
30
40
50
60
70
80
90
100
Shipping
Order
Shipping as trigger during OrderShipping as trigger during OrderShipping as trigger during OrderShipping as trigger during Order
0
10
20
30
40
50
60
70
80
90
100
Shipping
Order
Shipping queued by trigger during OrderShipping queued by trigger during OrderShipping queued by trigger during OrderShipping queued by trigger during Order
}}}} AdditionalAdditionalcapacitycapacity
AdditionalAdditionalcapacitycapacity
New for the DBAAgenda
Major SubsystemsMajor Subsystems MonitoringMonitoring
Virtual TablesVirtual Tables Server EventsServer Events TraceTrace Management ToolsManagement Tools
SecuritySecurity DevelopmentDevelopment AvailabilityAvailability
Data Access ConcurrencyData Access Concurrency Database Server Failure or DisasterDatabase Server Failure or Disaster Database Maintenance and OperationsDatabase Maintenance and Operations
ManageabilityManageability Scalability and ReportingScalability and Reporting
Virtual Tables
System catalog has changedSystem catalog has changed ‘‘Tables’ that reflect the internal stateTables’ that reflect the internal state At least 25 new Virtual Tables to help DBAsAt least 25 new Virtual Tables to help DBAs
Monitor the serverMonitor the server Diagnose problemsDiagnose problems
Sys.waitsSys.waits is probably the best example is probably the best example Check first when server is making slow progressCheck first when server is making slow progress syswaits columnssyswaits columns
waitingTaskwaitingTask spidspid waitTimewaitTime waitTypewaitType resourceresource blockingTaskblockingTask
Sys.request_statsSys.request_stats
Server Events
Events fire on DML, DDLEvents fire on DML, DDL User can register to be notified when User can register to be notified when
certain event occurscertain event occurs User can register through WMI to be User can register through WMI to be
notified of certain DDL, DML, or trace notified of certain DDL, DML, or trace eventsevents
SQL Server Trace
Significantly fasterSignificantly faster More practical to run traces regularlyMore practical to run traces regularly More intuitive interfaceMore intuitive interface
New Trace eventsNew Trace events Refined security filtering of text by Refined security filtering of text by
Trace to better show more statements, Trace to better show more statements, etc.etc. Example: Doesn’t omit everything with Example: Doesn’t omit everything with
‘password’ in the text‘password’ in the text
New Tools
New integrated tools suiteNew integrated tools suite Support for all SQL Server productsSupport for all SQL Server products
Including Analysis Services, SQLCEIncluding Analysis Services, SQLCE SQL Workbench has intellisense, tipsSQL Workbench has intellisense, tips
Support for SQL Server 7.0, 2000, and Support for SQL Server 7.0, 2000, and YukonYukon
New operations capabilitiesNew operations capabilities SQL Server AgentSQL Server Agent
Core performance and scalability Core performance and scalability enhancementsenhancements
Performance Tools
ProfilerProfiler Profiling of Analysis ServerProfiling of Analysis Server Showplan EventsShowplan Events Deadlock Events (graphical)Deadlock Events (graphical)
ReplayReplay Improved multi-process replayImproved multi-process replay
Security
User / Schema separationUser / Schema separation Granular Permission controlGranular Permission control
Can grant role-type permissionsCan grant role-type permissions Example: Profiler access to non-SAExample: Profiler access to non-SA
Fixed roles are still availableFixed roles are still available
Password Policy enforcementPassword Policy enforcement Strong Passwords, expirationStrong Passwords, expiration
Programmability
CLR (Common Language Runtime) AssembliesCLR (Common Language Runtime) Assemblies Can write Stored Procedures, Functions, Triggers, Data Can write Stored Procedures, Functions, Triggers, Data
Types, Aggregates in any CLR programming languageTypes, Aggregates in any CLR programming language Security Levels provide containmentSecurity Levels provide containment
Safe, ExternalAccess, UnSafeSafe, ExternalAccess, UnSafe Great replacement for XPsGreat replacement for XPs
Synonym – Alternative name for an objectSynonym – Alternative name for an object Can change name or location (schema, database, or server) Can change name or location (schema, database, or server)
of base objectof base object Can use a simple 1-part synonym name in place of the Can use a simple 1-part synonym name in place of the
more complex 2-, 3-, or 4-part name of the base objectmore complex 2-, 3-, or 4-part name of the base object User Defined Aggregate FunctionsUser Defined Aggregate Functions Multiple Active Results SetsMultiple Active Results Sets
Multiple results sets on a single connectionMultiple results sets on a single connection Don’t need to use cursors to do this anymoreDon’t need to use cursors to do this anymore
New for the DBAAgenda
Major SubsystemsMajor Subsystems ConfigurationConfiguration MonitoringMonitoring SecuritySecurity DevelopmentDevelopment AvailabilityAvailability
Data Access ConcurrencyData Access Concurrency Database Server Failure or DisasterDatabase Server Failure or Disaster Database Maintenance and OperationsDatabase Maintenance and Operations
ManageabilityManageability Scalability and ReportingScalability and Reporting
Fast RecoveryRestart or Restore
SQL Server 2000SQL Server 2000 Database is available after Undo Database is available after Undo completescompletes
YukonYukon Database is available when Undo Database is available when Undo beginsbegins
UndoUndoRedoRedo
AvailableAvailable
UndoUndoRedoRedo
AvailableAvailable
TimeTime
Database View Read-only, consistent copy of a databaseRead-only, consistent copy of a database
Good for reportingGood for reporting Can rollback the actual database to Database ViewCan rollback the actual database to Database View
To correct user application error (or DBA error)To correct user application error (or DBA error)
Unchanging as database is modified Unchanging as database is modified InexpensiveInexpensive
Very fast to createVery fast to create Cheap in terms of spaceCheap in terms of space
““Copy-on-Write” technologyCopy-on-Write” technology
Can be created for any databaseCan be created for any database Production databases Production databases Instant standby databases with Database MirroringInstant standby databases with Database Mirroring
Snapshot Isolation
New transaction isolation levelNew transaction isolation level Increased Data Availability for read Increased Data Availability for read
applicationsapplications Allows Non-Blocking consistent reads in an Allows Non-Blocking consistent reads in an
OLTP environmentOLTP environment Writers don’t block readersWriters don’t block readers Readers don’t block writersReaders don’t block writers
Permits writes, which can cause conflictsPermits writes, which can cause conflicts BUT… includes mandatory conflict detectionBUT… includes mandatory conflict detection
Online Index Operations Online index operations now allow concurrent Online index operations now allow concurrent
modification of the underlying table or indexmodification of the underlying table or index Updates, Inserts, DeletesUpdates, Inserts, Deletes
Online index maintenanceOnline index maintenance Create, Rebuild, Drop, DisablingCreate, Rebuild, Drop, Disabling Reorganize (including BLOBs)Reorganize (including BLOBs) Index-based constraints (PK, Unique)Index-based constraints (PK, Unique)
DDL is simple; both Online / Offline supported DDL is simple; both Online / Offline supported Updates incur some additional cost during an Updates incur some additional cost during an
online index operationonline index operation Maintains old and new indexesMaintains old and new indexes
Index Enhancements Rebuild of a Clustered Index no longer causes Rebuild of a Clustered Index no longer causes
related Nonclustered Indexes to be rebuiltrelated Nonclustered Indexes to be rebuilt Index with Included ColumnsIndex with Included Columns
Allows non-key columns to be included in the leaf Allows non-key columns to be included in the leaf level of an indexlevel of an index Non-key columns aren’t included in key size limitNon-key columns aren’t included in key size limit
More queries can be ‘covered’ by the indexMore queries can be ‘covered’ by the index
Disabled IndexesDisabled Indexes Stops index from being used and maintainedStops index from being used and maintained
Deallocates the storage space, but retains metadata Deallocates the storage space, but retains metadata Index needs to be rebuilt before it can be usedIndex needs to be rebuilt before it can be used
Easily rebuilt / reactivated with retained metadataEasily rebuilt / reactivated with retained metadata ALTER INDEX … REBUILDALTER INDEX … REBUILD
Database Mirroring Database Failover – an Instant StandbyDatabase Failover – an Instant Standby
Very Fast … less than 3 secondsVery Fast … less than 3 seconds Automatic or manual failoverAutomatic or manual failover Zero data lossZero data loss Automatic re-sync after failoverAutomatic re-sync after failover
HardwareHardware Works with standard computers and storageWorks with standard computers and storage No shared storage componentsNo shared storage components
Impact to transaction throughputImpact to transaction throughput Zero to minimalZero to minimal
Automatic, transparent client redirect !!!Automatic, transparent client redirect !!! Use Database View to make mirror database a Use Database View to make mirror database a
readable reporting databasereadable reporting database
Database Mirroring How it works
Transaction shippingTransaction shipping
MirrorMirrorPrincipalPrincipal
WitnessWitness
Log
Application
SQL Server SQL Server
2
2
4
51
Data DataLog
33-6 3-6
Dedicated Administration Connection
Provides DBA access to server Provides DBA access to server regardless of loadregardless of load
No server restart to kill runaway No server restart to kill runaway sessionsession
Fine-Grained Online Repairs
Online RestoreOnline Restore Database remains onlineDatabase remains online
Only data being restored is offlineOnly data being restored is offline Unit of availability is now the filegroupUnit of availability is now the filegroup
Piecemeal RestorePiecemeal Restore Online restore of filegroups by priorityOnline restore of filegroups by priority
Media Reliability Features Enhanced VerificationEnhanced Verification
RESTORE VERIFYONLY now checks everything it RESTORE VERIFYONLY now checks everything it can short of writing the datacan short of writing the data
Backup Media MirroringBackup Media Mirroring Redundant backup media helps guarantee Redundant backup media helps guarantee
successful restoresuccessful restore Extra copies for archival or disaster recovery Extra copies for archival or disaster recovery
Database Page ChecksumsDatabase Page Checksums Detect disk I/O errors not reported by the hardware Detect disk I/O errors not reported by the hardware
or operating systemor operating system Backup ChecksumsBackup Checksums
Detect errors introduced by backup hardware but Detect errors introduced by backup hardware but not reported by hardware or operating systemnot reported by hardware or operating system
Can continue past errors – repair laterCan continue past errors – repair later
Backup and Restore
Data backups don’t block log backupsData backups don’t block log backups Backup the database and the log Backup the database and the log
concurrentlyconcurrently Backup files / filegroups and the log Backup files / filegroups and the log
concurrentlyconcurrently Only one data backup at a time per Only one data backup at a time per
databasedatabase
Backup / Restore includes FullText dataBackup / Restore includes FullText data
New for the DBA
Questions ?Questions ?
© 2003 Microsoft Corporation. All rights reserved.© 2003 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.