TPlite is Back! - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

TPlite is Back!

Description:

Fat. Thin. Fat. Thin. Database. App Objects. workflows. Presentation. 5 ... Language guys are 'embracing' DB. Class is a web service: Generate WSDL. VERY simple ... – PowerPoint PPT presentation

Number of Views:15
Avg rating:3.0/5.0
Slides: 23
Provided by: jimg178
Category:

less

Transcript and Presenter's Notes

Title: TPlite is Back!


1
TPlite is Back!
  • Jim Gray
  • Microsoft Research
  • http//research.microsoft.com/gray/talks/
  • High Performance Transaction Processing Workshop,
  • Asilomar, CA., 27 September 2005,

2
Summary Statement
  • Database systems have changed
  • Is a web service (listens to port 80, does
    wsdlsoap,)
  • Hosts a programming environment(J2EE VM or .NET
    CLR or )
  • So, Client-Server (a.k.a. tplite)
  • is possible
  • Has always been easier than 3-tier.

3
Outline
  • History Everyone Went to 3-tier (and why)
  • New news (DB Languages WS-)
  • Extensible DBs have arrived.
  • Full blown programming environment inside
  • Fewer technologies
  • DB integrated with language.
  • Web service integrated with class/method.
  • Fears
  • DMZ and attack surface.

4
Work Distribution Spectrum
  • Presentation and plug-ins
  • Workflow manages session invokes objects
  • Application Objects
  • Database

Presentation
workflows
App Objects
Database
5
Transaction Processing Evolution to 3 Tier
  • Mainframe Batch processing (centralized)
  • Dumb terminals Remote Job Entry
  • Intelligent terminals database backends
  • Workflow SystemsObject Request
    BrokersApplication Generators

Mainframe
cards
TP Monitor
ORB
6
PC Evolution to Three Tier
  • Stand-alone PC (centralized)
  • PC File print server message per I/O
  • PC Database server message per SQL statement
  • PC App server message per transaction
  • ActiveX Client, ORB ActiveX server, Xscript

IO request reply
disk I/O
SQL Statement
Transaction
7
Web Evolution to Three Tier
Web Server
WAIS
  • Character-mode clients, smart servers
  • GUI Browsers - Web file servers
  • GUI Plugins - Web dispatchers - CGI
  • Smart clients - Web dispatcher (ORB)pools of app
    servers (ISAPI, Viper)workflow scripts at client
    server

archie ghopher green screen
8
The Pattern Three Tier Computing
  • Clients do presentation, gather input
  • Clients do some workflow (Xscript)
  • Clients send high-level requests to ORB
  • ORB dispatches workflows
  • Server-side workflow scripts orchestrate
    distributed App objects
  • State stored in DB

Presentation
workflow
App Objects
Database
9
Why Did Everyone Go To Three-Tier?
  • Manageability
  • App rules must be with data
  • Middleware operations tools
  • Performance (scalability)
  • Server resources are precious
  • ORB dispatches requests to server pools
  • DBMS was DREADFUL at connections
  • Connection pools
  • Technology Physics
  • Put UI processing near user
  • Put shared data processing near shared data

Presentation
workflow
App Objects
Database
10
Multiplexing
ORB
DB
  • DB client connection
  • Mega-instruction set up
  • Mega-byte state
  • TP mon or Web Server or ORB
  • Lightweight connection setup
  • Multiplex many clients to few DB connections
    (connection pool)
  • Act as ORB (manage dispatch server pools).
  • Act as object container.

11
Complexity Dark Side of 3-Tier
  • 3 programming environments
  • Lots of configuration choices
  • Lots of interface problems
  • SQL, PL/SQL, T-SQL, in DB
  • It isnt simple!!

12
Outline
  • History Everyone Went to 3-tier (and why)
  • New news (DB Languages WS-)
  • Extensible DBs have arrived.
  • Full blown programming environment inside
  • Fewer technologies
  • DB integrated with language.
  • Web service integrated with class/method.
  • Fears
  • DMZ and attack surface.

13
DB Systems Get VMs
  • DB has language VM execution environment
  • Language guys are embracing DB
  • Class is a web serviceGenerate WSDL
  • VERY simple
  • programming
  • debugging
  • Fewer languages Tools to learn
  • See SQLJ or LINQ or EJB

A Server
Network
Receiver
Queue
Management
Connections
Context
Security
Configuration
Thread Pool
Service logic
Shared Data
14
The New World Programs Data
  • It finally happened
  • Languages have sets (lists, dictionaries, )
  • Table inherits from iEnumerable
  • List ltemployeegt E new Employee()
  • for each e in E
  • Rows are objects
  • Query answers are collections
  • Supports transactions
  • Push a button and you have a web service.

15
Old Data Access in APIs
SqlConnection c new SqlConnection()
c.Open() SqlCommand cmd new SqlCommand(
_at_SELECT c.Name, c.Phone FROM Customers
c WHERE c.City _at_p0 )
cmd.Parameters_at_po London DataReader
dr c.Execute(cmd) while (dr.Read())
string name r.GetString(0) string phone
r.GetString(1) DateTime date
r.GetDateTime(2) r.Close()
Queries in quotes
Arguments loosely bound
Results loosely typed
Compiler cannot help catch mistakes
16
Integrated Data Access
Classes describe data
public class Customer public int Id
public string Name public string Phone
TableltCustomergt customers
foreach(c in customers.Where(City London))
Console.WriteLine(Name 0 Phone 1,
c.Name, c.Phone)
Tables are real objects
Query is natural part of the language
Results are strongly typed
17
Web Services
  • Now trivial to publish your data.
  • Just say Make this method a web service.
  • Everything else is automatic
  • Performance is easy to understand
  • Simplest configuration
  • Simplest management
  • Minimal data movement
  • Fewest round trips.

18
DBs are FederatingSo Now Do Connection Management
  • DB needs to
  • talk to peers scaleout
  • Talk to foreigners data integration
  • So, it is a client for multiplexing
    connection pooling
  • So, now they get it, (they finally had to write
    an app) and they are doing it.
  • So, DB now does multiplexing

19
Outline
  • History Everyone Went to 3-tier (and why)
  • New news (DB Languages WS-)
  • Extensible DBs have arrived.
  • Full blown programming environment inside
  • Fewer technologies
  • DB integrated with language.
  • Web service integrated with class/method.
  • Fears
  • DMZ and attack surface.

20
Fears
  • DB has large attack surface
  • Web servers act as DMZ to Internet.
  • Premise
  • We can lock-down the DBMS interfaces
  • Only show public web services to outside.

21
Summary Statement
  • Database systems have changed
  • Is a web service (listens to port 80, does
    wsdlsoap,)
  • Hosts a programming environment(J2EE VM or .NET
    CLR or )
  • So, Client-Server (a.k.a. TPlite)
  • is possible
  • Has always been easier than 3-tier.
  • Integration of DB and Language makes it VERY
    natural

22
Distributed ExecutionThreads and Messages
  • Thread is Execution unit(software analog of
    cpumemory)
  • Threads execute at a node
  • Threads communicate via
  • Shared memory (local)
  • Messages (local and remote)

messages
Write a Comment
User Comments (0)
About PowerShow.com