Download System Architecture

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

Database wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Tandem Computers wikipedia , lookup

Database model wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

Clusterpoint wikipedia , lookup

Functional Database Model wikipedia , lookup

Transcript
System Architecture
System Architecture is a term denoting the arrangement of computer
hardware and software which comprises the system which performs the
desired business function.
System architectures are typically designed to accommodate usage in
situations ranging from single users to large office, multi-user, multi-site
situations.
Single-User Versions - Many users are only familiar with single user
software running on a single computer sitting in front of them. This could
be described using the following diagram.
Multi-User, Small Office Versions - Software whose data is designed to
be able to be accessed simultaneously by multiple users, must employ a
more complex system architecture. In these systems, the data typically
resides upon one computer called a server and is accessed by users from
other computers running software called client software. This arrangement
can be depicted as follows for a typical small-office setup:
In this example, the Database and Server-side applications are shown as
residing on the Server computer. The Database actually consists of the
files which contain the actual data, and the software that processes the
SQL commands operate on that data, including fetching and updating
data. The server-side software consists of a number of programs which
request data from the database software and pass that data on to the client
computer, or which perform computations on the data to either generate
output such as reports, or which gather data from external sources such as
custodian data files or web downloads to populate the database.
Typically a Desktop software provides an end user with a view into their
data and gives them an opportunity to edit data with an editing friendly
interface. However, it performs very little in the way of computations or
other functions. These are performed on the server computer. This means
that most important software updates can be confined to the server
computer, thereby simplifying I.T. department's and the user lives in a large
organization with many users.
Many of the important data-handling and computational tasks are triggered
on an automatic basis, (e.g. data downloads, scheduled valuations, etc.) or
are left to be managed by a dedicated data administrator. Many of these
tasks can be administered remotely through browser-based interfaces, as
can the reporting process.
Multi-User, Medium-Large Office Versions - One of the most important
aspects of the multi-user systems is the ability for the system to scale to
handle more users and more data, typical of a large office situation. This
can be accomplished using multiple CPU's. The simplest such multi-CPU
configuration would be to place the database on one computer and then
place the applications on a second computer:
Additional System Scaling - More complex schemes can be established
to use additional server-side CPU's, to accomplish additional scaling. One
of these is depicted as follows:
This scheme uses a load balancer to field the data requests from the client
computers and feed them to the appropriate server CPU. The application
server applications and the SQL database may or may not reside on the
same server CPU, depending upon configuration.