Download 3-Tier Client/Server

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Remote Desktop Services wikipedia , lookup

Lag wikipedia , lookup

Transcript
2-Tier,3-Tier
datawarehouse
Submitted by Manisha Dubey &
Akanksha Agrawal
2 tier Architecture
 A two tier architecture is simply based on
client-server architecture.
 A 2-tier architecture is one which has a
client tier, and a database tier.
– The database tier manages the database
– The client tier is the interface between the user
and the system
2 tier Architecture
The Client Tier
 The first tier(Client tier)is the front-end clie
nt layer.
 This layer holds the following tools
 query tools
 reporting tools
 analysis tools
 data mining tools
The Database Server Tier
 The second tier(Database server) is the b
ottom tier of the architecture datawareho
use database server
 It is the relational database system
 We use the back end tools and utilities to
feed data into the bottom tier
 These backend tools and utilities perform
the extract, clean, load, and refresh
functions
Benefits and Limitation of 2-Tier
Architecture
 Benefits
– great for creating applications quickly using
visual builder tools thanks to its simplicity
– appropriate to departmental applications
• e.g.) decision support, small-scale groupware,
simple web-based applications
 Limitations
– not mission-critical, not scalable
Tier 2
Tier 1
SQL, File Server, HTTP protocol
GUI
A 2-Tier Client-Server Application Architecture
Tier 1
Tier 2
Database(or
Other Resource
Managers)
Tier 3
GUI
Application
RPCs, Conversations, Queues,
Publish-and-Subscribe,
Broadcasts, Object invocations
A 3-Tier Client-Server Application Architecture
Database(or
Other Resource
Managers)
Why 3-Tier Architecture ?
 Needs of new world’s applications
– Business will increasingly compete be being
the first to market with new electronic goods
and services
– Companies will create virtual corporations
through alliances with a shifting set of partners
– Roles and relationships btw. enterprises will
shift frequently as industries realign
Why 3-Tier Architecture ?
 Reasons
– Meets the requirements of large-scale internet
and intranet client/server applications
– Is easier to manage and deploy on the network
• most of code runs on the servers, especially with
zero-footprint technologies like Java applets
– Minimizes network interchanges by creating
abstract levels of service
– Provides better security
• by not exposing the database schema to the client
• by enabling more fine-grained authorization on the
server
System administration
Security
Encapsulation of data
Performance
Scale
Application reuse
Ease of development
Table 1-2 2-Tier vs. 3-Tier Client/Server
2-Tier
3-Tier
Complex
Less Complex
(more logic on the client to (the application can be centrally
manage)
managed on the server –
application programs are made
visible to standard system
management tools)
Low
High
(data-level security)
(fine-tuned at the service or
method level)
Low
High
(data tables are exposed)
(the client invokes services or
methods)
Poor
Good
(many SQL statements are sent (only service requests and
over the network; selected data responses are sent between client
must be downloaded for analysis and server)
on the client)
Poor
Excellent
(limited management of client (concentrates incoming sessions;
communications links)
can distribute loads across
multiple servers)
Poor
Excellent
(monolithic application on client) (can reuse services and objects)
High
Getting Better
(standard tools can be used to
create the clients and tools are
emerging that you can use to
develop both the client and
server sides of the application)
Table 1-2 2-Tier vs. 3-Tier Client/Server
2-Tier
3-Tier
Server-to-server infrastructure
No
Yes
(via server-side middleware)
Internet support
Poor
Excellent
(Internet bandwidth limitations (thin clients are easier to
make it harder to download fat download as applets or beans;
clients and exacerbate the already remote
service
invocations
noted limitations)
distribute the application load to
the server)
Legacy application integration
No
Yes
(via gateways encapsulated by
services or objects)
Heterogeneous database support
No
Yes
(3-tier applications can use
multiple databases within the
same business transaction)
Rich communication choices
No
Yes
(only synchronous, connection- (supports RPC-like calls, but can
oriented RPC-like calls)
also
support
connectionless
messaging, queued delivery,
publish-and-subscribe,
and
broadcast)
Hardware architecture flexibility Limited
Excellent
(you have a client and a server)
(all three tiers may reside on
different computers, or the
second and third tiers may both
reside on the same computer;
with
component-based
environments, you can distribute
the second tier across multiple
servers as well)
Availability
Poor
Excellent
(can’t fail over to a backup (can restart the middle tier
server)
components on other servers)
3-Tier Architecture
It was developed by John J.
Donovan in Open Environment
Corporation (OEC),
a tools company he founded in
Cambridge, Massachusetts
A three tier architecture typically
consist of –
Presentation tier
Domain logic tier
Data storage tier
Presentation
tier
Logic tier
Get sales
total
Total sales
Get list of all sales
made last year
Add all sales
togeather
Query
Data tier
Sales 1
…
storage
database
3-Tier Architecture
Three-tier architecture is a client–server
architecture in which the user
interface(presentation), functional
process logic ("business rules"), computer
data storage and data
access are developed and maintained as
independent modules, most often on
separate platforms.
This is the topmost level of the application.
The presentation tier displays information
related to such services as browsing
merchandise, purchasing and shopping cart
contents.
It communicates with other tiers by which it
puts out the results to the browser/client tier
and all other tiers in the network. (In simple
terms it is a layer which users can access
directly such as a web page, or an operating
systems GUI)
The logical tier is pulled out from the
presentation tier and, as its own layer, it
controls an application’s functionality by
performing detailed processing.
The data tier includes the data persistence
mechanisms (database servers, file shares,
etc.)
The data access layer that encapsulates the
persistence mechanisms and exposes the data.
 The data access layer should provide an
Application Programming Interface (API) to the
application tier that exposes methods of
managing the stored data without exposing or
creating dependencies on the data storage
mechanisms.