Upload
elu
View
54
Download
0
Embed Size (px)
DESCRIPTION
SQL Server 2005 Overview. Lucas Wensing [email protected]. SQL Server Roadmap History of Innovation. 1 st Generation. 2 nd Generation. 3 rd Generation. SQL Server 6.0/6.5. SQL Server 7.0. SQL Server 2000. SQL Server 2005. Differentiation from Sybase SQL Server - PowerPoint PPT Presentation
Citation preview
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
SQL Server 2005 OverviewSQL Server 2005 Overview
Lucas Wensing Lucas Wensing [email protected]@microsoft.com
SQL Server RoadmapHistory of InnovationSQL Server RoadmapHistory of Innovation
SQL Server 7.0
SQL Server 2005
SQL Server 2000
• Lowest TCOLowest TCO• Automatic TuningAutomatic Tuning
• Performance & ScalabilityPerformance & Scalability• Integrated Business IntelligenceIntegrated Business Intelligence
• Database Mirroring, & VLDB
• Multi-language Programmability & Extensibility
• Native XML support• First to integrate
Reporting, Enterprise ETL & Deep Data Mining
• Windows 2000 Availability
• First integrated XML• First integrated Data
Mining Engine• First integrated
Notification• Scalable Analysis• SQL Server 64-bit• SQL Server CE
• Re-architecture of relational server
• Extensive auto resource management
• First to integrate OLAP & ETL
• Deeper Windows integration
Cross-release Cross-release objectivesobjectives
SQL Server 6.0/6.5
• Differentiation from Sybase SQL Server
• Replication Re-architecture
• First to integrate Replication
• Windows integration
1st Generation 2nd Generation 3rd Generation
The SQL Server StackThe SQL Server Stack
Notification ServicesNotification ServicesNotifications & AlertsNotifications & Alerts
Data Transformation ServicesData Transformation ServicesETLETL
SQL Server EngineSQL Server EngineRelational Database EngineRelational Database Engine
Reporting ServicesReporting ServicesEnterprise ReportingEnterprise Reporting
Man
ag
emen
t To
ols
Man
ag
emen
t To
ols
Dev
elo
pm
ent
To
ols
Dev
elo
pm
ent
To
ols
Replication ServicesReplication ServicesData ReplicationData Replication
Analysis ServicesAnalysis ServicesOLAP & Data MiningOLAP & Data Mining
Scalability, availability, security advancements
• Database mirroring, online operations for increased availability• Scales as the business grows: partitioning, snapshots• Secure by default, by design, by deployment
Share data across any platform
• Native support for XML, Web Services• Interoperability with any platform, application• Industry standards: HTTP, SOAP, WSDL, XQuery, XSD
Focus on manageability
• Integrated management toolset for relational and OLAP• New management programming model• Expanded self tuning
Leverage existing development skills
• Use familiar tools/processes (VS, SourceSafe, etc)• Multiple languages: T-SQL, VB.NET, C#…• One development framework for relational, XML, OLAP
Provide end-to-end development tools
• Integrated tools: SQL Server “Studio”• Simplified and consistent source control environment• Integrated in-line debugging
Extensibility
• Native XML data type, user defined data types• Enhanced data access with ADO.NET v2• New distributed application framework: SQL Server Broker
Scalable, comprehensive solution
• Extensive data modeling capabilities • New data mining algorithms for advanced analytics• Integrated with Visual Studio for rapid BI development
Real-time decision making tools
• New extensible reporting platform• Scalable and reliable for 24*7 support• Integration with operational systems
Extend information to employees, partners
• Supports heterogeneous data sources• Enterprise-class ETL (DTS)• Native XML Web Services
.NET FrameworkCommon Language Runtime IntegrationUser-defined AggregatesUser-defined Data TypesUser-defined FunctionsSQL Server .NET Data ProviderExtended Triggers
Data TypesManaged SQL TypesNew XML DatatypeVarchar (MAX) Varbinary (MAX)
SQL Server EngineNew Message Service BrokerHTTP Support (Native HTTP)Database Tuning Advisor Multiple Active Result Sets Persisted Computed ColumnsSnapshot Isolation Level Scale Up PartitioningVIA support NUMA support
Database Failure and RedundancyFail-over Clustering (up to 8 node)Enhanced Multi-instance SupportDatabase MirroringDatabase Snapshots
XMLXQUERY Support XML Data Manipulation Language FOR XML EnhancementsXML Schema (XSD) Support MSXML 6.0 (Native).Net XML Framework
Full-text SearchIndexing of XML Datatype
Database MaintenanceBackup and Restore EnhancementsChecksum Integrity ChecksDedicated Administrator ConnectionDynamic AWEFast RecoveryHighly-available UpgradeOnline Index OperationsOnline RestoreParallel DBCCParallel Index Operations
Management ToolsNew Management StudioMDX Query EditorVersion Control SupportXML/ASQLCMD Command Line Tool
Performance Tuning Profiler EnhancementsProfiling Analysis ServicesExportable Showplan Exportable Deadlock Traces
MDAC SNACMicrosoft Installer base setupSupport for Active Directory Deployment
SQL Client .NET Data ProviderServer Cursor SupportAsynch
SecurityAll Permissions GrantableFine Grain Administration RightsSeparation of Users and SchemaData encryption primitives
ReplicationAuto-tuning Replication AgentsOracle PublicationImproved Blob Change Tracking Replication Monitor
OLAP and Data MiningAnalysis Management Objects Windows Integrated Backup and RestoreWeb Service/XML for AnalysisDTS and DM IntegrationNew Data Mining AlgorithmsAuto Packaging and Deployment
Data Transformation ServicesNew Architecture (DTR + DTP)Complex Control FlowsControl Flow DebuggingFor Each EnumerationsProperty MappingsFull Data Flow DesignerFull DTS Control Flow DesignerGraphical Presentation of Pkg ExecutionImmediate Mode and Project ModePackage (Advanced) Deployment ToolsCustom Tasks and Transformations
Reporting ServicesMultiple Output Formats Parameters (Static, Dynamic,
Hierarchical)Bulk Delivery of Personalized ContentSupport Multiple Data Sources STS (Web Parts, Doc Libraries)Visual Design ToolCharting, Sorting, Filtering, Drill-ThroughScheduling, CachingComplete Scripting EngineScale Out architectureOpen XML Report Definition
Notification Services & SQL Server CE
Big Bet Availability FeaturesBig Bet Availability Features
Huge number of new availability Huge number of new availability featuresfeatures
Database MirroringDatabase Mirroring
Database SnapshotsDatabase Snapshots
Online database restoreOnline database restoreFile & PageFile & Page
Dedicated Admin ConnectionDedicated Admin Connection
Online Index Build and ReorganizeOnline Index Build and Reorganize
Snapshot IsolationSnapshot Isolation
Data PartitioningData PartitioningPartitioning breaks a single object into multiple Partitioning breaks a single object into multiple manageable piecesmanageable pieces
Transparent to the applicationTransparent to the application
Allows easy management of very large tables Allows easy management of very large tables and indexesand indexes
The row is the unit of partitioningThe row is the unit of partitioning
All partitions run on a single SQL Server databaseAll partitions run on a single SQL Server database
Partitions can be created or dropped with virtually Partitions can be created or dropped with virtually no loss of availability to the tableno loss of availability to the table
Table fully available while loading, indexing a new partitionTable fully available while loading, indexing a new partition
Create new and drop old partition quicklyCreate new and drop old partition quickly
Fastest possible load rates Fastest possible load rates
If all indexes are “aligned”, moving partitions in or If all indexes are “aligned”, moving partitions in or out of a table is possibleout of a table is possible
““Sliding window” scenariosSliding window” scenarios
Native SQL typeNative SQL typeUse for column, variable or parameterUse for column, variable or parameter
Can representCan representXML 1.0 documentsXML 1.0 documentsXML 1.0 fragments (0 to n element nodes and text XML 1.0 fragments (0 to n element nodes and text nodes at top)nodes at top)Can be constrained by XML Schema collectionCan be constrained by XML Schema collection
Methods on XML data typeMethods on XML data typequery(), value(), exist(), modify(), nodes()query(), value(), exist(), modify(), nodes()
Storage of XML instancesStorage of XML instancesAs LOB (2 GB) in efficient binary representation As LOB (2 GB) in efficient binary representation XML encoding transformed to UTF-16XML encoding transformed to UTF-16
Well-formed and validation checksWell-formed and validation checks
XML DatatypeXML Datatype
XML Schema SupportXML Schema Support
XML Schema (World Wide Web Consortium XML Schema (World Wide Web Consortium [W3C] standard)[W3C] standard)
Rich mechanism for type definitions and validation Rich mechanism for type definitions and validation constraintsconstraints
Can be used to constrain XML documentsCan be used to constrain XML documents
Benefits of typed data Benefits of typed data Guarantees shape of dataGuarantees shape of data
Allows storage and query optimizationsAllows storage and query optimizations
XML type systemXML type systemStore XML schemas in system metadataStore XML schemas in system metadata
Does not preserve annotationsDoes not preserve annotations
XQuery: XQuery: qquery XML documents and datauery XML documents and dataStandards-based: W3C working draftStandards-based: W3C working draft
In document 123, return section heading of In document 123, return section heading of section 3 and latersection 3 and laterSELECT id, xDoc.query('SELECT id, xDoc.query('
for $s in for $s in
/doc[@id = 123]//sec[@num >= 3]/doc[@id = 123]//sec[@num >= 3]
return <topic>{data($s/heading)}</topic>return <topic>{data($s/heading)}</topic>
') ') FROM docsFROM docs
XML QueryXML Query
XML IndexXML Index
Create primary XML index on XML columnCreate primary XML index on XML columnCREATE PRIMARY XML INDEX idx_1 ON docs (xDoc)CREATE PRIMARY XML INDEX idx_1 ON docs (xDoc)
Creates secondary XML indexes on values Creates secondary XML indexes on values (VALUE), paths (PATH), properties (PROPERTY)(VALUE), paths (PATH), properties (PROPERTY)CREATE XML INDEX idx_1_Tag ON docs (xDoc) CREATE XML INDEX idx_1_Tag ON docs (xDoc) USING XML INDEX idx_1 FOR PATHUSING XML INDEX idx_1 FOR PATH
Speeds up queriesSpeeds up queriesResults can be served directly from indexResults can be served directly from index
Entire query is optimizedEntire query is optimizedSame award winning cost based optimizerSame award winning cost based optimizer
Indexes are used as availableIndexes are used as available
Insert, update, & delete XQuery Insert, update, & delete XQuery extensionsextensionsXML sub-tree modification:XML sub-tree modification:
Add or delete XML sub-treesAdd or delete XML sub-treesUpdate valuesUpdate values
Add a new section after section 1:Add a new section after section 1:UPDATE docs SET xDoc.modify('insertUPDATE docs SET xDoc.modify('insert<section num=''2''><section num=''2''>
<heading>Background</heading><heading>Background</heading> </section> </section>after (/doc/section[@num=1])[1]')after (/doc/section[@num=1])[1]')
XML Data ModificationXML Data Modification
Client XML Data AccessClient XML Data Access
Native AccessNative AccessSQLOLEDBSQLOLEDB
As DBTYPE_WSTRAs DBTYPE_WSTRLarge stringLarge string
As ISequentialStreamAs ISequentialStreamSAX or DOM can be built from server character streamSAX or DOM can be built from server character stream
Down Level, ADO and ODBC: large stringDown Level, ADO and ODBC: large stringManaged Access & CLR (XML datatype)Managed Access & CLR (XML datatype)
XML Type exposed as SqlXml XML Type exposed as SqlXml (System.Data.SqlTypes)(System.Data.SqlTypes)
XmlReader can be obtained using XmlReader can be obtained using sqlxml.CreateReader()sqlxml.CreateReader()
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
XML IntegrationXML Integration
CLR IntegrationCLR Integration
Hosting layer provides coordination of:Hosting layer provides coordination of:Assembly LoadingAssembly LoadingMemory managementMemory managementSecurity ModelSecurity ModelReliabilityReliabilityThreads & FibersThreads & FibersDeadlock detectionDeadlock detectionExecution contextExecution context
Allows System ExtensionAllows System ExtensionScalar FunctionsScalar FunctionsTable Value FunctionsTable Value FunctionsData TypesData TypesAggregatesAggregatesProceduresProcedures
Data AccessData Access
TriggersTriggers
SQL EngineSQL Engine
WindowsWindows
SQL OSSQL OS
CLRCLR
HostingHostingLayerLayer
.NET Integration.NET Integration
Choice of where to run logicChoice of where to run logicDatabase, for logic that runs close to dataDatabase, for logic that runs close to data
Mid-tier, for logic that scales outMid-tier, for logic that scales out
Symmetric programming modelSymmetric programming model
Choice of programming language Choice of programming language T-SQL, for data-intensive stored T-SQL, for data-intensive stored proceduresprocedures
CLR languages, for a safe, modern CLR languages, for a safe, modern execution environment and for extending execution environment and for extending the enginethe engine
.NET Integration.NET Integration
Provides a programming environment for developing:Provides a programming environment for developing:FunctionsFunctionsProceduresProceduresTriggersTriggersUser Defined TypesUser Defined TypesAggregatesAggregates
In-Process Data Access provider (ADO .NET v2)In-Process Data Access provider (ADO .NET v2)Symmetric data accessSymmetric data accessMid-tier/data tier deployment decisionMid-tier/data tier deployment decision
SecuritySecurityIntegration of SQL and CLR securityIntegration of SQL and CLR securityThree levels of code access securityThree levels of code access security
Safe, External-Access (verifiable), UnsafeSafe, External-Access (verifiable), Unsafe
Tight integration with Visual StudioTight integration with Visual StudioAuthoring, debugging, profilingAuthoring, debugging, profiling
Visual Studio IntegrationVisual Studio Integration
Visual Studio supports a new SQL Server Visual Studio supports a new SQL Server 2005 Project system 2005 Project system
Easy to develop, debug and deploy .NET code Easy to develop, debug and deploy .NET code for the database for the database
Integrated debugging experience across Integrated debugging experience across mid-tier and database tiermid-tier and database tier
Seamlessly step cross-language – TSQL Seamlessly step cross-language – TSQL and .NETand .NET
Set breakpoints anywhere, inspect anythingSet breakpoints anywhere, inspect anything
Customer benefit : Increased ProductivityCustomer benefit : Increased Productivity
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
.NET Integration.NET Integration
SOA FeaturesSOA Features
SQL Server 2005 implements Service SQL Server 2005 implements Service Oriented Architecture (SOA) and Scale Oriented Architecture (SOA) and Scale Out ServicesOut Services
Service Broker – Service Based, Service Broker – Service Based, decoupled, asynchronous, distributed decoupled, asynchronous, distributed environmentenvironment
Query Notifications – Develop responsive Query Notifications – Develop responsive multi-tier data backed cachesmulti-tier data backed caches
Web Services access to SQL Server Web Services access to SQL Server (HTTP)(HTTP)
Service BrokerService BrokerAsynchronous, Distributed, Decoupled Asynchronous, Distributed, Decoupled programming environmentprogramming environment
Fully integrated into the database engineFully integrated into the database engine
Programming Model - DDL and DMLProgramming Model - DDL and DML
Integrated Management and DeploymentIntegrated Management and Deployment
Dependent SQL Server 2005 features – Dependent SQL Server 2005 features – Events, Query NotificationsEvents, Query Notifications
Customer Usage, benefits: Enables new Customer Usage, benefits: Enables new scenarios - async SPs, Scalable scenarios - async SPs, Scalable distributed multi-db applicationsdistributed multi-db applications
Tran
saction
Tran
saction
TransactionTransaction
Synchronous & Asynchronous ProcessingSynchronous & Asynchronous Processing
ClientClientAppApp
LaunchedLaunchedStoredStoredProcProc
PersistedPersisted DialogDialog
Stored proc runs on:Stored proc runs on:- Different transactionDifferent transaction- Different threadDifferent thread- Different securityDifferent security- Different timeDifferent time
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Asynchronous ProgrammingAsynchronous Programming
Query NotificationsQuery Notifications
Ability to subscribe to Ability to subscribe to resultsresults of a SQL of a SQL queryquery
Integrated change detection notifies Integrated change detection notifies client as soon as results of query client as soon as results of query changedchanged
Effectively off-loading query workload Effectively off-loading query workload from the server to caching clientsfrom the server to caching clients
““Don’t call us – we call you!”Don’t call us – we call you!”
Service Broker
Business Scenario – Web CachingBusiness Scenario – Web Caching
Query Processor
Response
Response
Request
Request
Query/Subscription
Result
Notification
IIS / ASP.Net SQL Server 2005
Dispatcher
SQL Web Services SQL Web Services SQL Web Services SQL Web Services
Native SOAP accessNative SOAP accessStandards based access to SQL Standards based access to SQL ServerServer
No client dependencyNo client dependency
Improved InteroperabilityImproved Interoperability
New “HTTP ENDPOINT” objectNew “HTTP ENDPOINT” objectConfigure connection infoConfigure connection info
Configure authenticationConfigure authentication
Expose Functions & SPsExpose Functions & SPs
Expose TSQL BatchesExpose TSQL Batches
Leverages kernel-mode listenerLeverages kernel-mode listener
HTTP.SYSHTTP.SYSHTTP.SYSHTTP.SYS
http://myserver/sqlPort: 80Port: 80
Integrated AuthIntegrated AuthWebMethodWebMethod
= myDb.dbo.mySP= myDb.dbo.mySP
HTTP EndpointHTTP Endpoint
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
HTTP EndpointsHTTP EndpointsSQL Server ManagementSQL Server Management
SummarySQL Server 2005 an Integrated Data PlatformSQL Server 2005 an Integrated Data PlatformSummarySQL Server 2005 an Integrated Data PlatformSQL Server 2005 an Integrated Data Platform
Extensions & Semi-Structured DataExtensions & Semi-Structured DataCLR & XMLCLR & XML
Scale out servicesScale out servicesService Broker, Web Services, Query Service Broker, Web Services, Query NotificationsNotifications
End to end developmentEnd to end developmentTight integration with Visual Studio 2005Tight integration with Visual Studio 2005
and much more…and much more…
© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.