SQL Server Yukon SQL Server Yukon James Hamilton James Hamilton General Manager & Security Architect General Manager & Security Architect Microsoft SQL Server Business Unit Microsoft SQL Server Business Unit [email protected][email protected]| | http://research.microsoft.com/~jamesrh http://research.microsoft.com/~jamesrh
22
Embed
SQL Server Yukon James Hamilton General Manager & Security Architect Microsoft SQL Server Business Unit [email protected]@microsoft.com | jamesrh.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Microsoft SQL Server Business UnitMicrosoft SQL Server Business [email protected]@microsoft.com | http://research.microsoft.com/~jamesrh | http://research.microsoft.com/~jamesrh
SQL Server YukonSQL Server YukonThe scalable, secure, enterprise-class data management platformThe scalable, secure, enterprise-class data management platform
Enterprise Data Enterprise Data ManagementManagement
ProgrammabilityProgrammability
Business Business IntelligenceIntelligence
AGENDAAGENDA
Enterprise Data ManagementEnterprise Data Management Scalability, Performance, & 64 bitScalability, Performance, & 64 bit Online operations & enhanced Online operations & enhanced
availabilityavailability
ProgrammabilityProgrammability Industry leading server-side Industry leading server-side
programming modelprogramming model Native XML datatype supportNative XML datatype support Web servicesWeb services Service BrokerService Broker
Business IntelligenceBusiness Intelligence OLAP ServerOLAP Server Data miningData mining Reporting ServerReporting Server Data Transformation ServicesData Transformation Services
33
Cost Savings
Scalability
The highly scalable database platform for memory intensive, performance-critical business applications
Optimized for Windows Server 2003 & 64 bit H/WOptimized for Windows Server 2003 & 64 bit H/W
Great performanceGreat performance Large memory addressability (up to 32 TB) Large memory addressability (up to 32 TB) Nearly unlimited virtual memory (up to 8 TB)Nearly unlimited virtual memory (up to 8 TB) I/O savings due to larger memory buffer poolsI/O savings due to larger memory buffer pools
T-SQL code-compatibility with SQL Server 2000T-SQL code-compatibility with SQL Server 2000
8 node clustering support8 node clustering support
Same on-disk format as 32-bit for easy migrationSame on-disk format as 32-bit for easy migration One setup for database & OLAP based on Windows One setup for database & OLAP based on Windows
Installer technologyInstaller technology Compelling alternative to expensive Unix solutionsCompelling alternative to expensive Unix solutions
Most DB configuration is DynamicMost DB configuration is Dynamic No longer requires a server restartNo longer requires a server restart Only I/O Affinity remains staticOnly I/O Affinity remains static
Memory added W/O restart or rebootMemory added W/O restart or reboot Eliminates one cause of planned failoverEliminates one cause of planned failover Requires: Appropriate H/W & Windows Server Requires: Appropriate H/W & Windows Server
Increased Data Availability for read Increased Data Availability for read dominated applicationsdominated applications Non-Blocking consistent reads in OLTP Non-Blocking consistent reads in OLTP
Allows writes, which can cause conflictsAllows writes, which can cause conflicts Includes mandatory conflict detectionIncludes mandatory conflict detection
66
Online Index OperationsOnline 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, DropCreate, Rebuild, Drop Reorganize (including BLOBs)Reorganize (including BLOBs) Index-based constraints (PK, Unique)Index-based constraints (PK, Unique)
Simple DDL for both Online/Offline operationsSimple DDL for both Online/Offline operations Updates incur some additional cost during an Updates incur some additional cost during an
online index operationonline index operation Maintains old & new indexes during maintenanceMaintains old & new indexes during maintenance
77
Fast RecoveryFast RecoveryRestart or RestoreRestart 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
UndoRedo
Available
UndoRedo
Available
Time
88
Database ViewDatabase View
Read-only, consistent copy of a databaseRead-only, consistent copy of a database Good for reporting state of DB at single point Good for reporting state of DB at single point
in timein time Supports fast primary DB rollback to viewSupports fast primary DB rollback to view
Correction of DBA or user/programmer Correction of DBA or user/programmer errorerror
Unchanging as database is modified Unchanging as database is modified Fast & efficientFast & efficient Copy-on-WriteCopy-on-Write Storage only required for DB changesStorage only required for DB changes
Can be created for any databaseCan be created for any database
99
Database MirroringDatabase Mirroring Database Failover – an Instant StandbyDatabase Failover – an Instant Standby
Very Fast … expect well under 8 secondsVery Fast … expect well under 8 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 redirectAutomatic, transparent client redirect Use ViewPoint to make mirror database a readable Use ViewPoint to make mirror database a readable
reporting databasereporting database
1111
SQL Server YukonSQL Server YukonThe scalable, secure, enterprise-class data management platformThe scalable, secure, enterprise-class data management platform
Enterprise Data Enterprise Data ManagementManagement
ProgrammabilityProgrammability
Business Business IntelligenceIntelligence
• Server-side programming model
• Multiple languages: T-SQL, VB.NET, C#…
• Existing tools/processes
• Leverage existing development skills
• T-SQL enhancements
• Full text search
• Relational-to-XML mapping
• XML native datatype
• SQL Web Services
• SQL Service Broker
1212
..NET Framework IntegrationNET Framework IntegrationKey FeaturesKey Features Server side programming:Server side programming:
Three 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 Studio Authoring, debugging, deployment, profilingAuthoring, debugging, deployment, profiling Tool support includes T-SQLTool support includes T-SQL
1313
VS .NET VS .NET ProjectProject
Assembly: “TaxLib.dll”
VB,C#,C++VB,C#,C++ BuildBuild
SQL ServerSQL Server
SQL Data Definition:SQL Data Definition: create assembly … create function … create procedure … create trigger … create type …SQL Queries: SQL Queries:
select sum(tax(sal,state)tax(sal,state))from Emp where county = ‘King’
Runtime hosted by SQL
(in-proc)
The Developer ExperienceThe Developer Experience
1414
.NET Integration.NET IntegrationKey Theme: Choice & ControlKey Theme: Choice & Control Choice of where to run logicChoice of where to run logic
Database, 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
Leverage skills mid-tier & serverLeverage skills mid-tier & server
Choice of programming language Choice of programming language C#, VB.NET, & Managed C++, for a safe, modern C#, VB.NET, & Managed C++, for a safe, modern
execution environmentexecution environment TSQL continues to be supported & enhancedTSQL continues to be supported & enhanced
Good choice for data-intensive proceduresGood choice for data-intensive procedures
Alternative to Text, ImageAlternative to Text, Image Uniform Programming modelUniform Programming model
T-SQL Exception HandlingT-SQL Exception Handling Recursive QueriesRecursive Queries Multiple Active Result SetsMultiple Active Result Sets Statement-level recompileStatement-level recompile
Fewer recompiles & less costly Fewer recompiles & less costly OtherOther
Pivot, UnPivot, Top (expression)Pivot, UnPivot, Top (expression) DDL triggersDDL triggers Queuing primitivesQueuing primitives
CONTAINS((col1,col2), ‘Yukon’)CONTAINS((col1,col2), ‘Yukon’) Support for XML data typeSupport for XML data type
1717
XML ScenariosXML Scenarios1) Data Exchange…1) Data Exchange…
XML dataXML data
ManufacturerManufacturer
SupplierSupplier Platform independent transport formatPlatform independent transport format
Loosely-coupled systemsLoosely-coupled systemsB2B, B2C, work flow, …B2B, B2C, work flow, …
SolutionSolution::For XML: Return SQL Query results as XMLFor XML: Return SQL Query results as XMLAnnotated views: Define XML view over relational dataAnnotated views: Define XML view over relational data
1818
XML ScenariosXML Scenarios2) Semi-structured storage…2) Semi-structured storage…
XML DatatypeXML Datatype Loosely structured data or dynamic schemaLoosely structured data or dynamic schema
Solution:Solution: Native XML datatypeNative XML datatype
Column, variable, or paramater with optional schema (XSD)Column, variable, or paramater with optional schema (XSD) Query(): Include xquery over XML as part of SQL StatementsQuery(): Include xquery over XML as part of SQL Statements
Fully integrated supporting correlations etc.Fully integrated supporting correlations etc. OpenXML: XML content available via rowsetOpenXML: XML content available via rowset
First First NameName
Last Last NameName
AddressAddress PhonePhone XML data XML data typetype
1919
SQL Web Services SQL Web Services
HTTP.SYSHTTP.SYSHTTP.SYSHTTP.SYS Native SOAP accessNative SOAP access Standards based access to SQL Standards based access to SQL
ServerServer SOAP 1.1 and 1.2, WSDL 1.1, SOAP 1.1 and 1.2, WSDL 1.1,
Framework for building Reliable, Framework for building Reliable, asynchronous, distributed applications asynchronous, distributed applications
Communication infrastructureCommunication infrastructure Two-way “Dialogs”Two-way “Dialogs” Reliable delivery to local, remote queuesReliable delivery to local, remote queues Exactly-once, In-order semanticsExactly-once, In-order semantics Large Message FragmentationLarge Message Fragmentation
APP 1APP 1
SQL EngineSQL Engine SQL EngineSQL Engine
APP 2APP 2
2121
SQL Server YukonSQL Server YukonThe scalable, secure, enterprise-class data management platformThe scalable, secure, enterprise-class data management platform
Enterprise Data Enterprise Data ManagementManagement
ProgrammabilityProgrammability
Business Business IntelligenceIntelligence
Online Analytical Processing ServerUDM integrating relational & MD MOLAP & ROLAP with caching MOLAP OLE/DB for OLAP & XML/A APIs
Data Mining Support Integrated into OLAP server Algorithms supported: Association rules, time series, regression trees, sequence clustering, neural nets, Naïve Bayes
Data Transformation Services Enterprise ETL on commodity hardware
2222
SummarySummary Substantial release with 3 major themes:Substantial release with 3 major themes:
Enterprise data managementEnterprise data management ProgrammabilityProgrammability Business intelligenceBusiness intelligence
Continue trademark focus on administrative Continue trademark focus on administrative ease of useease of use This focus has been picked up across industryThis focus has been picked up across industry
Yukon begins the next DB industry waveYukon begins the next DB industry wave Ease of database development with great toolsEase of database development with great tools More datatypes under managementMore datatypes under management More value from data under managementMore value from data under management