Below is an Excerpt from the conversation between me and my
friend Novo about system architecture. Novo works in power sector and he was
surprised about the IT industry and the volume of data flowing in the industry.
He invited me to have a discussion on the systems and its architecture with a
belief that I am master in it, but then truth. I only know. Any how I tried my
best to answer his queries.
Novo: Hi Macha!!
Me: fine da. How about you??
Novo: good da. For the past two days I am totally confused
about system architecture as I have to deal with a project which involves lot
of consumer data and applications that are used to view and analyse this data.
Help me in this regard.
Me: Novo, Today with the rapid developing facet of industry,
be it IT or non-IT data gathering, data collection and data analysis is
critical and important. As the data associated to an industry is huge and complex
there requires a methodology to handle data and the applications associated
with it effectively. Hence system architecture is a conceptual model which
requires our attention in that matter concerned and it is a model to organize
the data and applications effectively.
Novo: what we did in the past da, before this system
architecture was introduced as industries flourished in the erstwhile also?
Me: In the past, we had accounts book and bill books which
is used to store the transactions in an organization or in a department of the
organization. There were also many data books like employee salary book,
expenses book etc. Data was organized manually and the industry flourished
earlier using this concept. But then advancement of technology and rapid shift
in industrial and people patterns, it is very difficult to use the old methodologies.
Hence people used the advancement in computers and the advent of internet
helped them to organize their data in systems. This urge brought us the concept
of “System Architecture”.
Novo: Ok da, can you tell me how system architecture works
Me: Sure da, System has various levels/tier and I will talk
about the single tier architecture first.
Single-tier architecture is the notion of having the user interface of a
web application, the middle ware and the data access, all contained in a single
machine.
The application layer and the data layer are
present in the same machine and the user logs in to the system and analyses the
data he/she required. In a nutshell it’s like a box which has all the elements
in it like movies and the player with which you open the media file, all
resides in your local machine.
Novo: What if data is huge and interrelated and has to be
coordinated?
Me: Yes macha, hold on we are having two, three and multiple
tier architecture for this purpose and I will explain each one of you to my
best of knowledge.
Let me first explain you two -tier architecture.
The two-tier architecture is like client server application.
The direct communication takes place between client and server. There is no
intermediate between client and server.
Here the
communication is one to one. Let us see the concept of two tiers with real
time application. For example now we have a need to save the employee details
in database. The two tiers of two-tier architecture is
- Database
(Data tier)
- Client
Application (Client tier)
So, in client application the client writes the program for
saving the record in SQL Server and thereby saving the data in
the database.
Novo: What happens to the performance of the system if there
is more number of users?
Me: Yes da, performance will have its impact if the number
of users and this system is more convenient when the number of user accessing
them is minimal.
Because of this issue, we have three tires and multiple tier
architecture.
Three tier architecture having three layers. They
are
- Client layer
- Business layer
- Data layer
The data layer and client layer remains
the same as in two tier architecture, but we have an additional concept of
business layer here.
Business layer: It is the intermediate layer which has
the functions for client layer and it is used to make communication faster
between client and data layer. It provides the business processes logic and the
data access.
The advantages are
- Easy to modify without affecting other modules
- Fast communication
- Performance will be good in three tier architecture.
Let me also explain you about the multi tire architecture.
This is the most scalable application architecture (over
two-tier and three-tier). This architecture refers to 4-, 5-, or even
higher-tiered architectures. It is the most complex type of architecture,
splitting the application and database management tasks into many discrete
components. For example, take the three-tier architecture and change it so that
the application logic is separate from the database management system–this gets
you to four-tier architecture. With this structure you can more easily change
one of the tiers without compromising your entire application. To get to 5
tiers you could move some of the application logic to the client to optimize
performance.
For instance, you would only need a web browser like Google
Chrome or Mozilla Firefox to be installed in the client and all the required
information can be accessed from any part of the world. This consists of
essentially four layers - web based client, web server, business logic server
and the central data server. Through the web based client you can inquire about
the information required which gets relayed over to the web server via
the Internet (a form of WAN - Wide Area Network). The web
server converts the request to a language which the business application/
logic server can understand. Now data transaction takes place between the
business application server and the data storage server, required computations
are done and answers sent to the web server. The web server then relays this
data back to the web client through the WAN.
The advantage is improved efficiency in this system and the
major disadvantage is the complexity and high cost involved in building this
system.
Macha, I have done. Hope you have understood.
Novo: Yes da, I have understood. Thanks a lot for your help
and now I am confident in taking up the project in my office. It’s nice to know
all these as I was using all these applications without understanding the logic
behind it and now I could relate to the applications with the various levels of
architecture to understand them more easily.
Me: Cool, da. Don’t forget to treat me once your project is
completed. I am leaving now. If you require any clarifications give me a call
Novo: Sure da, Bye. I will catch u tomorrow.
Understandable and well posted...:)
ReplyDeleteclean ,neat and understandable post.....
ReplyDelete