.NET Database Programmability and Extensibility in Microsoft SQL Server José A. Blakeley, Mat Henaire, Christian Kleinerman, Isaac Kunen, Adam Prout, Vineet.

Slides:



Advertisements
Similar presentations
.NET Technology. Introduction Overview of.NET What.NET means for Developers, Users and Businesses Two.NET Research Projects:.NET Generics AsmL.
Advertisements

CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Technical Architectures
Microsoft.Net Technology Sachin Shetty Vimal Amin Thomas Mullasaril Vinutna Pulavarti Software Engineering CS616 Instructor:Dr.Tappert.
ISYS 512 Business Application Design and Development with.Net David Chao.
Kashif Jalal CA-240 (072) Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 2 of…
ISYS 512 Business Application Design and Development with.Net David Chao.
J2EE vs..NET Nigam Patel. Topics Background –Web Services, J2EE and.NET Similarities Differences Conclusion –Pros and Con (J2EE and.NET)
ISYS 512 Business Application Design and Development with.Net David Chao.
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
Intro to C# Language Richard Della Tezra IS 373. What Is C#? C# is type-safe object-oriented language Enables developers to build a variety of secure.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Design & Development Tools: Visual Studio 2005 SQL Server 2005 Biztalk Server 2006 David Gristwood, Mike Taulty Developer & Platform Group Microsoft Ltd.
Distributed Systems: Client/Server Computing
Presented by Sujit Tilak. Evolution of Client/Server Architecture Clients & Server on different computer systems Local Area Network for Server and Client.
SQL Server ® 2008 ® Native Client. Agenda  Introduction to SQL Server Native Client  Building High-Performance Data Access Solutions  Going Beyond.
Discover, Master, InfluenceSlide 1 SQL Server Compact Edition and the Entity Framework Rob Sanders Readify.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
SEMESTER 1, 2013/2014 DB2 APPLICATION DEVELOPMENT OVERVIEW.
Database Management System Lecture 2 Introduction to Database management.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
Computer science Languages, etc.. Overview For web-applications (HTML, JS) – Designing languages (HMTL, CSS) – Server Languages (PHP, ASP) – Extensions.
A Free sample background from © 2001 By Default!Slide 1.NET Overview BY: Pinkesh Desai.
Overview of Microsoft.Net and Vb.Net ITSE 2349 Spring 2002 Material from Microsoft.Net an Overview for ACC faculty by Stuart Laughton and Introduction.
Atlanta Mercury Users Group How to Performance Test.NET and.NET Web Services February 18, 2003 Caleb Billingsley Orasi Software.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to .Net Framework
ISYS 512 Business Application Design and Development with.Net David Chao.
VS.NET Syllabus By Peter Huang.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
1 8/29/05CS360 Windows Programming Professor Shereen Khoja.
© 2008 Dr. Paul Walcott – The University of the West Indies: Cave Hill CampusDr. Paul Walcott COMP6325 Advanced Web Technologies Dr. Paul Walcott The University.
Architecture of.NET Framework .NET Framework ٭ Microsoft.NET (pronounced “dot net”) is a software component that runs on the Windows operating.
PROGRAMMING IN VISUAL BASIC.NET INTRODUCTION TO VISUAL BASIC.NET Bilal Munir Mughal 1 Chapter-1.
Session 1 - Introduction and Data Access Layer
Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.
C# A 1 CSC 298 Introduction to C#. C# A 2 What to expect in this class  Background: knowledge of an object oriented language of the C++, Java, … family.
Native Support for Web Services  Native Web services access  Enables cross platform interoperability  Reduces middle-tier dependency (no IIS)  Simplifies.
Introduction to Microsoft.Net Session 01 Mata kuliah: M0874 – Programming II Tahun: 2010.
Introduction to .NET Rui Ye.
ASP.NET  ASP.NET is a web development platform, which provides a programming model, a comprehensive software infrastructure and various services required.
I Copyright © 2004, Oracle. All rights reserved. Introduction.
Component-Based Software Engineering Introduction to.NET Paul Krause.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
1 Hammad Khan. COURSE CONTENTS.NET Framework And C# SQL Server 2008 ADO.NET LINQ ASP.NET Dynamics Data ASP.NET MVC framework 2 Advance C# Concepts Windows.
Database Architectures Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where.
ISYS 350 Business Application Development David Chao.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
1 TOPIC 6 DATABASE 6.1 Introduction to Database 6.2 Basic Concept of Database 6.3 Database Object DATABASE.
Getting Started with.NET Getting Started with.NET/Lesson 1/Slide 1 of 31 Objectives In this lesson, you will learn to: *Identify the components of the.NET.
IT System Administration Lesson 3 Dr Jeffrey A Robinson.
Common Language Runtime Introduction  The common language runtime is one of the most essential component of the.Net Framework.  It acts.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
ISYS 512 Business Application Design and Development with.Net David Chao.
Endpoints Lesson 17. Skills Matrix Endpoints Endpoints provide a reliable, securable, scalable messaging system that enables SQL Server to communicate.
Text TCS INTERNAL Oracle PL/SQL – Introduction. TCS INTERNAL PL SQL Introduction PLSQL means Procedural Language extension of SQL. PLSQL is a database.
M ICROSOFT.NET Kyle Adamski 10/15/2012. Road Map What is.NET? Common Language Runtime (CLR) Language Integrate Queries (LINQ).NET Pros.NET Cons Sources.
Microsoft Visual Basic 2015 CHAPTER ONE Introduction to Visual Basic 2015 Programming.
In this session, you will learn to: Understand managed code Create managed database objects Define the Hypertext Transfer Protocol endpoints Implement.
SQL Server 2005:.NET Framework Programming in the Database Tim Sneath Architectural Engineer, Microsoft
1 Section 1 - Introduction to SQL u SQL is an abbreviation for Structured Query Language. u It is generally pronounced “Sequel” u SQL is a unified language.
Introduction ITEC 420.
Part 1: Overview of LINQ Intro to LINQ Presenter: PhuongNQK.
Introduction to Visual Basic 2008 Programming
Web Development Using ASP .NET
CIS16 Application Development – Programming with Visual Basic
Lecture 1: Multi-tier Architecture Overview
Module 10: Implementing Managed Code in the Database
Presentation transcript:

.NET Database Programmability and Extensibility in Microsoft SQL Server José A. Blakeley, Mat Henaire, Christian Kleinerman, Isaac Kunen, Adam Prout, Vineet Rao

Introduction Authors are all Microsoft employees This paper is part 2 of a series of papers o 1st paper described the architecture and design principles of the integration of the CLR in SQL Server o This paper is going to present newer aspects using SQL Server 2008 Topics o User-defined Types/Functions o CLR integration with SQL Server 2008 o LINQ with.NET o Performance results

.NET & SQL Server The Microsoft.NET Framework is a software technology that is available with several Microsoft Windows operating systems Microsoft SQL Server is a relational database management system (RDBMS) produced by Microsoft. Its primary query languages are MS-SQL and T-SQL. Common Language Runtime = Java Virtual Machine

...from terabytes to petabytes and exabytes Data volumes are: o EXPLODING o HEAVY Why move something heavy?

Basic Concepts The ability to run application code inside the database in a reliable, secure, scalable, and efficient manner adds significant flexibility to the design of applications SQL Server acts as the operating system for the CLR when it is hosted inside the SQL Server process

User-Defined Functions (UDFs) CLR user-defined functions (UDFs) provide a mechanism for extending SQL Server with new scalar and table-valued routines written in.NET languages T-SQL UDFs vs. CLR UDFs: 1.T-SQL is more constraining 2.T-SQL interperated vs. CLR compiled 3.T-SQL prevents multi-threading

Tabled-Value Functions (TVFs) CLR TVFs provide a mechanism forconverting raw data (e.g., in a text/binary file or on the network) into a relation.

User-Defined Types (UDTs) SQL Server 2005 introduced user-defined types (UDTs) as a mechanism to extend the scalar type system of SQL UDTs allow users to define a type using the.NET framework, and to deploy and use these types within the database Since CLR UDTs are simply CLR classes with some additional restrictions, they can be instantiated on a managed client as well as in the server See Example 4.9

User-Defined Aggregates (UDAs) CLR user-defined aggregates (UDAs) give users the ability to write their own aggregates to suite their own specific needs. An example aggregate for calculating population covariance (a measure of how two sets of data vary together) is shown to highlight the different parts of the UDA contract The contract consists of four methods: Init(), Accumulate(), Merge() Terminate()

Data Access In Routines Microsoft has recently introduced new Language Integrated Query (LINQ) technologies that extend.NET languages natively with query expressions to further reduce, and for some scenarios completely eliminate, the impedance mismatch for applications.

An Example

Questions?