260 likes | 368 Views
Agenda. Data and System Trends Challenges Observations Conclusion. 1983 CD ROMs. 2000’s Terabytes. 1990’s Gigabytes. 1982 3 ½ Floppy Disk. 1973 Winchester Drive. 1986 50 Megabytes . 1967 First Floppy Disk. 1972 5 ¼ Floppy. 1984 10 MB HD. The Big Trends. Storage. 2005.
E N D
Agenda • Data and System Trends • Challenges • Observations • Conclusion
1983CD ROMs 2000’sTerabytes 1990’sGigabytes 19823 ½ Floppy Disk 1973Winchester Drive 198650 Megabytes 1967First Floppy Disk 19725 ¼ Floppy 198410 MB HD The Big Trends Storage 2005
The Big Trends Digitally Born Data 2005
1960’s 1970’s 1980’s 1990’s 2000’s Increased Data Under Management Conversations Product Design Data IWFiles Pictures Locations ElectronicTrades MasterFiles Music SalesData GIS MasterTapes
1960’s 1970’s 1980’s 1990’s 2000’s Reengineering IT: EfficiencyWhere have the gains come from? Knowledge Retentionand Retrieval Internet Reporting B2B Services Reduce LatencyIn Human Processes Communications TransactionProcessing XML OLTP DataProcessing
Post Transactional Pre-Transactional Transactional Summary After the fact Record of fact Enables Analytics Record of fact and intent Enables deeper insight Data Moving Upstream
Previous 30 years trended towards data consolidation SOA, connected systems, common schema, pulling data apart Data Distribution Data Convergence The Data Monolith Data Processing OLTP EA Internet B2B Services Devices SOA
Trends Recap… • Huge Gains in PSI • Processing • Storage • I/O • Exponential Improvement in all of the above • Data now online and available with schema • Need to derive value from it • Human costs now dominate solutions! • The data monolith is getting broken apart
Challenges • Data Challenges: • Programming • Distributing • Getting Value • Relating and Organizing • Sharing
Challenge: Programming Data • Different Environments • Data query environment distinct from rest of program • No Intellisense, late bound, verbose… • T-SQL versus .NET Languages • “Impedance Mismatch” between code and database Programming World Database World Transactions Nulls - 3-value logic Normalized Data Declarative Queries Transparency Exception Handling “Different” nulls Objects Imperative operations Encapsulation
<book> <title/> <author/> <year/> <price/> </book> SQL WinFS Objects XML TLN306 – Wed, 1:45PM DAT323 – Thu, 2:15PM DAT324 – Fri, 10:30AM The LINQ Project C# VB Others… .NET Language Integrated Query StandardQueryOperators DLinq(ADO.NET) XLinq (System.Xml)
Data Access in APIs Today Queries in quotes SqlConnection c = new SqlConnection(…); c.Open(); SqlCommand cmd = new SqlCommand( @"SELECT c.Name, c.Phone FROM Customers c WHERE c.City = @p0" ); cmd.Parameters.AddWithValue("@po", "London"); DataReader dr = c.Execute(cmd); while (dr.Read()) { string name = dr.GetString(0); string phone = dr.GetString(1); DateTime date = dr.GetDateTime(2); } dr.Close(); Arguments loosely bound Results loosely typed Compiler cannot help catch mistakes
Data Access in DLinq public class Customer { public int Id; public string Name; public string Phone; … } Table<Customer> customers = db.Customers; var contacts = from c in customers where c.City == "London" select new { c.Name, c.Phone }; Classes describe data Tables are collections Query is natural part of the language The compiler helps you out
Services:- Change tracking- Concurrency control- Object identity SQL or Stored Procs Rows SQLServer Application DLinq(ADO.NET) Architecture from c in db.Customerswhere c.City == "London"select new { c.Name, c.Phone } Objects LINQ Query SubmitChanges() SQL Query select Name, Phonefrom customerswhere city = 'London'
Hello World “DLinq” Style Dinesh Kulkarni Program Manager C#
ADO.NET vNext Pablo Castro Program Manager Dataworks
Challenge: Distributing Data • Need data everywhere • PDA → Desktop → App Server → Enterprise • Need synchronization/replication • Need reliable messaging between stores • Need reference data everywhere • Contacts • Catalogs • Price lists
Challenge: Value From Data • Search versus Query • Information from existing data • Analytics • Reporting • Managing the data lifecycle
Show pictures of people who attended Eric’s 2004 Birthday Party Eric and Birthday Query Search Search Versus Query
Office SQL Business Scorecarding(BSM) AnalyticApplications Portal(Office Server) End-userTools End-user Analysis(Excel + Excel Server) Integrate(SSIS) Analyze(SSAS) Report(SSRS) BIPlatform Data Warehouse(SQL RDBMS) DAT315 – Thu, 10:00AM OFF 323 – Fri, 10:30AM Integrated Offering
Challenge: Exploiting Rich Data • How to get more value from rich data • As • Office documents content more accessible • New XML formats for Office “12” • More intrinsic metadata becomes available • We enable data sharing
Challenges: Exploiting Rich Data • Unify • It’s not just about files • Organize • It’s not just about folders (or tables) • Explore • It’s not just about search • Innovate • It’s about a platform
What is WinFS? DAT 209 – Wed, 1:45PM DAT 209 – Thu, 5:15PM DAT 310 – Wed, 3:15PM DAT 312 – Wed, 5:00PM ADO.NET Unified API ADO.NET support – query, update, app logic, language integrated query, … It’s Still a File System FS Semantics, Security, Manageability, Backwards Compatible with Win32 Operations Backup/Restore, AV, … Sync Multi-master Sync New Windows Types “Everyday info” schemas + ISV extensions Structured “Item” Store Files & Folders Items & Associations Integrated storage components Leverage investments in DB technologies, CLR, NTFS support Query Logic Update “DLinq” WinFS Services Schemas SyncAdapters, … SyncAdapters, … SyncAdapters, … People Mail OperationsBackup, AV,… OperationsBackup, AV,… OperationsBackup, AV,… Tasks Media File Services Metadata Handlers,… File Services Metadata Handlers,… File Services Metadata Handlers,… Docs … Item Data Model Item Association Extension Database Engine NTFS CLR
WinFS Shishir Mehrotra Lead Program Manager WinFS
Conclusion • Data Management value moving - • From: base services – store, query, retain • To: semantic services – mine, analyze, repurpose • We can make it much easier to program against data • We will make it much easier for you to: • Interact with data • Program against data • Derive value from data
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.