0% found this document useful (0 votes)
19 views

Optimizing and Enhancing Performance of MVC Architecture Based On Data Clustering Technique

The frequent use of web based application plays a vital role in our everyday life. MVC (Model View Controller) architecture is used as programmed architectural pattern in order to implement user interfaces. Application software developers utilize MVC (Model View Controller) Architecture for developing web based application. The sizes of databases are increasing day by day in relation with time. Therefore, if we take into account the concept of huge centralized database systems, it has become one

Uploaded by

MdHafizurRahman
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Optimizing and Enhancing Performance of MVC Architecture Based On Data Clustering Technique

The frequent use of web based application plays a vital role in our everyday life. MVC (Model View Controller) architecture is used as programmed architectural pattern in order to implement user interfaces. Application software developers utilize MVC (Model View Controller) Architecture for developing web based application. The sizes of databases are increasing day by day in relation with time. Therefore, if we take into account the concept of huge centralized database systems, it has become one

Uploaded by

MdHafizurRahman
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

International Journal of Computer Applications (0975 – 8887)

Volume 134 – No.12, January 2016

Optimizing and Enhancing Performance of MVC


Architecture based on Data Clustering Technique
Md. Hafizur Rahman Faisal Bin Al Abid M. Naderuzzaman
The People`s University of International Islamic University Dhaka University of Engineering &
Bangladesh Chittagong Technology

Md. Arifur Rahman Md. Masud Reza


The People`s University of Bangladesh The People`s University of Bangladesh

ABSTRACT logic, user interface and control logic. The MVC pattern is
The frequent use of web based application plays a vital role in more flexible, scalable and improves maintainability and
our everyday life. MVC (Model View Controller) architecture reusability of the application
is used as programmed architectural pattern in order to Smalltalk programming language is implemented for MVC
implement user interfaces. Application software developers (Model View Controller) architecture. The system is
utilize MVC (Model View Controller) Architecture for separated by three components: Model expressing domain
developing web based application. The sizes of databases are knowledge, view representing user interface, control that is
increasing day by day in relation with time. Therefore, if we used to manage the updates to views. MVC has already
take into account the concept of huge centralized database shown its advantages for interactive applications. It allows
systems, it has become one of the most challenging criterions multiple representation of the same information, encouraging
for accessing data in acceptable time. Basically, in centralized code utilization, and helping developers to pay attention on a
databases, the records can be classified into two categories specific application feature [2].
considering the access frequency of data. Those records that
are being accessed frequently are known as Level 1 data, on MVC has demonstrated its benefits for interactive
the contrary, those accessed in lesser frequency is considered applications allowing multiple representations of the same
as Level 2 Data. In this paper, we will try to enhance and information, promoting the code reutilization, and helping
optimize the performance of MVC architecture based on two developers to concentrate on a single application aspect [7].
parameters namely response time and throughput. The The layers of MVC architecture has been planned to develop
response time and throughput is improved based on the web applications specifically throughput and response time.
proposed database search algorithm using B+ tree. If the All of these prototypes have different benefits. In this paper,
database search engine is idle, the database search engine will the focus will be shifted to improve the accuracy of
look forward to discover whether the intended data is in level throughput and response time.
1, otherwise it will search for level 2 data. The level 2 data
will be included as level 1 data inside the database or vice
versa, for insertion and update operation. However, whether
the data is level 1 or level 2 data will be depended upon user
choice. Thus, the overall response time as well as throughput
will be optimally increased.

Keywords
MVC, Large Database, Database Engine, Access Frequency,
Level 1 Data, Level 2 Data.

1. INTRODUCTION
It has been a pretty long time since Relational Database
management System (RDBMS) is serving as huge data
storage [1]. Each and every year, our newest technology has
been improving the collection, storage, and transfer of data at
a very low cost.
Figure 1: Existing MVC architecture
The model view controller (MVC) is a three different tier
architecture design pattern for the dissociation Data Access

42
International Journal of Computer Applications (0975 – 8887)
Volume 134 – No.12, January 2016

Table 1: Data access frequency on Level 1 & Level 2 data based on application area.

Level One Data (%) Level Two Data (%)

Frame
(Days)
Time
Application Fields
INSERT UPDATE QUERY INSERT UPDATE QUERY

Education 1450 100 95 90 0 5 10


Sales 180 100 90 85 0 10 15
Finance 360 100 90 80 0 10 20
HR 360 100 90 85 0 10 15
E-Commerce 180 100 85 80 0 15 20

Digital Library & Digital Publishing 720 100 80 65 0 20 35

Banking 360 100 85 70 0 15 30

Credit card Transaction 180 100 90 90 0 10 10

Telecommunication 180 100 85 80 0 15 20


Airlines reservation 180 100 90 90 0 10 10

In Percent 100% 88% 81.50% 0% 12% 18.50%

The percentage of total access on Level 1 data can be Adeyinka A. at. al. [4] developed a program incorporates an
calculated by the following formula: interactive map which responds to origin and destination
selection, by analyzing the relative positions of both locations
N
OL1DT  1 / N  ( IOi  UOi  QOi ) / 3
and creating real-time routes on the road network to display to
the user the required path from the origin to the destination
i 1 and the approximate distance/time required. System design is
based on the ModelView-Controller (MVC) design pattern,
Where OL1DT is total operation on Level 1 data, and IO, and the application has been developed using Adobe Flash
UO and QO is the insert, update and query operation on Level CS3 (with ActionScript).
1 data respectively. And N is the number of applications area.
Iqbal H. et. al. [5] designed and implemented a Java MVC
Similarly total operation on Level 2 data can be calculated by framework for developing desktop based application which
the following formula: can separate the data, view and control of the software. This
application however overcomes the drawbacks of the current
N
OL2 DT  1 / N  ( IOi  UOi  QOi ) / 3
application which is existing Java organizes without a
structure, which mixes the code of data access, the processing
i 1 of business logic and graphical user interface (GUI) layer
together. As a result the current application creates many
OL2DT is total operation on Level 2 data. problems for software developers, meanwhile; it could not
meet the rapid development of application software any more.
2. RELATED WORK The new application can help in developing programs.
M. U. Khan at. al. [1] has investigated the design patterns that
Patrick L. at. al. [6] presents a combination of the Model-
can improve performance of web applications. They have
View-Controller pattern with the Evolutionary Acquisition
proposed a new architectural pattern comprising design
Interdisciplinary Research Project Management for web
patters called XWADF for highly scalable and interactive web
services development. The intention is to promote an increase
application development. The design explores possibilities to
in productivity and to facilitate interdisciplinary web services
leverage the performance of web applications through the
evolution. This consists of an independent database for users’
appropriate use of various design patterns within confines of
feedback that together with technological opportunities and
Model View Controller (MVC).
evolving threats considerations may start a new release of the
D. M. Selfa at. al. [2] have introduced different phases of system allowing a dynamic evolution through acquiring new
analysis, design and implementation of a database and web features or correcting errors, but the new release decision is
application using UML , with the purpose of illustrating a not automatic.
successful application built under MVC. It has a database
made up by fifteen relations and a user interface supported by 3. PROPOSED FRAMEWORK
seventeen web pages as central component of the application. 3.1 Basic Idea of Proposed Method
P. Gupta et. al. [3] presented in their paper a web application In this paper we are proposing one of the methods of
framework based on MVC in J2EE platform, and extends it proposed database clustering technique for improving
with XML so that the framework is more flexible, expansible response time and throughput based on MVC pattern. We
and easy to maintain. It was a multi tier system including identified the need for a simple solution for model layer
presentation layer, business layer, data persistence layer and which can reduce the database access time, query cost and
database layer. These separate codes, and improve improve throughput and response time.
maintainability and reusability of the application.

43
International Journal of Computer Applications (0975 – 8887)
Volume 134 – No.12, January 2016

a) Database Server Name or IP Address


b) Database Platform: MS SQL SERVER, MySQL,
ORACLE, Others
c) Primary & Secondary Database Name
d) Database User
e) Database Password
f) Database Port (Optional)
g) Application Deployment Date & Time
h) Time Frame in Day
i) Clustering Mechanism Configuration, etc.

3.2.5. Database Manager


Database manager will keep records of existed data on the
database files. Any data exceeds the time frame given in the
global configuration will be shifted from one database file to
another (i.e. Primary DB to Secondary DB or vice versa). Any
Figure 2: Propose MVC Architecture data or record which was access from the Secondary will be
converted as Level 1 data, because according to our
3.2 Framework Description classification mechanism any data is accessed recently will be
treated as Level 1 Data.
Algorithm:
DataManager(DES: Database Engine Status, DSPDB: Data Set
of Primary DB, DSSDB: Data Set of Secondary DB, TP: Time
Period)
IF DES is idle THEN
BEGIN
TL1D← Get Level 1 Data from DSSDB according
to age of data & data access frequency
TL2D← Get Level 2 Data from DSPDB according
to age of data & data access frequency
Move TL1D to DSPDB
Move TL2D to DSSDB
END
ELSE
Wait until TP;
3.2.6. Primary DB Interface Layer & Secondary
DB Interface Layer
Figure 3: Proposed framework with all its components This layer communicates between database and proposed
system.
3.2.1 SQL Command Scanner
As described above the job of SQL scanner is to identify the 4. A FRAMEWORK
type of SQL command it is (insert, update, delete or read
operation). For insert it will directly hit on Primary DB and
IMPLEMENTATION
for other operations it will hit to Secondary DB. Our proposed model has been implemented in programming
language by using PHP because increase execution time and
3.2.2 Insert Operation: reduce system resource & server side open source scripting
Insert Operation directly access Primary Database. language. KDE Advanced Text Editor (Kate) has been used to
write the source code of the persistence layer. Kate has been
3.2.3. Update, Delete, read Operation: chosen because of its comfortable Integrated Development
Update, Delete or Read Operation, it will search Primary DB Environments. Kate is developed by C++ Programming
first and if it is not found there, it will certainly be in Language. Kate has its own file format to maintain the source
Secondary DB. code. Oracle, MySQL and SQL Server was used as the
database. The tools used for our purpose are shown in table 2.
3.2.4. Configuration:
Configuration will have interface with application layer, Table 2: System & Application Software used for
where the application developer/user will have options to developing the framework.
configure how database file will be cluster, the age
classification of data etc. This system configuration will also System Development Specification
be used for Database connectivity, clustering, data Software
synchronization with others. The configuration includes:
Operating System (Linux
Fedora 17
Based)

44
International Journal of Computer Applications (0975 – 8887)
Volume 134 – No.12, January 2016

KDE Advanced Text


2.X
Editor(Kate)

Database: MySQL 5.X

Local Web Server Apache 2.XX

Programming Language: PHP 5.X

MVC Architecture: Codeigniter 3.X

Our proposed model requires and certain minimum hardware.


Though we have used much higher configured computers for
our purpose. Hardware used for our experiments are shown in
table 3.
Table 3: Minimum Hardware used for implementing the
framework. 6. CONCLUSION AND FUTURE WORK
Idea of splitting an entire database is a novel idea. Append
Hardware operation is much more common than query operation where
Specification
components as update operation happens almost on the odd occasion. In
cases where data are stored and after certain time those data
Intel Dual Core 2.XX GHz (32 are rarely or not accessed at all for long time, our frame will
Processor
bit) definitely reduce overhead on database engine by reducing
volume of data in the primary database. Hence, it will
Cache 2048 MB increase overall response time and throughput of the database.
The above experimental results show a certain improvement
Primary
2048 MB in performance of our system. In future, we will try to embed
Memory(RAM)
such an algorithm that will be feasible for process industry
where data change happens very frequently.
Secondary
80 GB
Memory(HDD)
7. REFERENCES
Chip Set Intel Chip Set [1] M. U. Khan , Dr. T. V. Rao, ―XWADF: Architectural
Pattern for Improving Performance of Web
Applications‖, IJCSI International Journal of Computer
5. EXPERIMENTAL EVALUATION Science Issues, Vol. 11, Issue 2, No 2, March 2014 ISSN
AND PERFORMANCE ANALYSIS (Print): 1694-0814 | ISSN (Online): 1694-0784
The functionality offered by our proposed model was for
[2] Diana M. Selfa, Maya Carrillo, Ma. del Rocío Boone, ―A
Microsoft’s windows operating system. It is observed for the
Database and Web Application Based on MVC
applications mentioned above from the first figure that
Architecture‖, Proceedings of the 16th IEEE
amount of data is increased for Level 2 data where as the
International Conference on Electronics,
amount of data is pretty much stable for level 1 data in
Communications and Computers (CONIELECOMP
relation with time of application in years. It is clearly seen
2006) 0-7695-2505-9/06 $20.00 © 2006
from the second figure that our proposed method consumes
the least cost measured by query time compared with the [3] Praveen Gupta, Prof. M.C. Govil , ―MVC Design Pattern
existing database. To recapitulate, it is absolutely clear that for the multi framework distributed applications using
our proposed algorithm outperforms the existing database for XML, spring and struts framework ―. (IJCSE)
the frequently used applications. International Journal on Computer Science and
Engineering Vol. 02, No. 04, 2010, 1047-1051
[4] Adeyinka A., Adewaleand Jeremiah, O. Onaolapo,
―Development of Web-based Interactive Map Using
Object-Oriented Programming Concept‖. EIE’s 2nd Intl’
Conf.Comp., Energy, Net., Robotics and Telecom.
eieCon2012
[5] Iqbal H. Sarker and K. Apu, ―MVC Architecture Driven
Design and Implementation of Java Framework for
Developing Desktop Application‖. International Journal
of Hybrid Information Technology Vol.7, No.5(2014),
pp.317-322. http://dx.doi.org/10.14257/ijhit.2014.7.5.29
[6] Patrick L., Mariwaldo G. Caetano, João Y. Ishihara,
David Prata, and George Brito, ―Applying MVC to
Evolutionary Acquisition IRPM‖. 2012 International
Conference on Information and Knowledge Management
(ICIKM 2012) IPCSIT vol.45 (2012) © (2012) IACSIT
Press, Singapore

45
International Journal of Computer Applications (0975 – 8887)
Volume 134 – No.12, January 2016

[7] Liu Yong-Jun1, Li Ke-Xi, ―Design and Implementation Mining and Data Fusion, Beijing ,China, 2005, vol.
of the New Web Application Framework—JEMSF‖, XXXVI-2/W25.
IEEE, 2010, pp 190-193.
[11] P. V. Bommel and Th.P. van der Weide, ―Towards
[8] Md. Umar Khan, T.V. Rao, ―Web Application Database Optimization by Evolution‖, In Proceedings of
Performance Improvement using new architectural the International Conference on Information Systems and
patterns‖, Proceedings of SARC-ITR International Management of Data, Bangalore, India, July 1992, pp
Conference, 2014, Chennai, India 273 – 287.
[9] S Rahman, A. M. Ahsan Feroz, Md. Kamruzzaman and [12] Rahman, M.H.; Akter, M.N.; Ahmad, R.B.; Nader-uz-
M. N. Faruque, ―Analyze Database Optimization zaman, M.; Rahman, M., "Development of a framework
Techniques‖, IJCSNS International Journal of Computer to reduce overhead on database engine through data
Science and Network Security, August 2010, vol. 10, distribution," in Electronic Design (ICED), 2014 2nd
No.8 International Conference on , vol., no., pp.69-72, 19-21
Aug. 2014
[10] Bin Li, Jiping Liu, Yi Zhu and Lihong Shi,
―Optimization Of Database Capability In The E- [13] Rahman, M.H; Abid, F.B.A; Zaman, M.N.; Aketer, M.N,
Governmental Spatial Aided Decision-Making System‖, ―Optimizing and Enhancing Performance of Database
Proceedings of International Symposium on Spatio- Engine using Data Clustering Technique,‖ Proceedings
temporal Modeling, Spatial Reasoning, Analysis, Data of the 3rd International Conference on Advances in
Electrical Engineering, pp.222-225, 17-19 Dec. 2015

IJCATM : www.ijcaonline.org 46

You might also like