Mobile Agent based Communication Platform for Heterogeneous Distributed Database

advertisement
International Journal of Application or Innovation in Engineering & Management (IJAIEM)
Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com
Volume 2, Issue 9, September 2013
ISSN 2319 - 4847
Mobile Agent based Communication Platform
for Heterogeneous Distributed Database
Nikhil Gajjam1, Dr. Mrs. S. S. Apte2
Walchand Institute of Technology, Solapur
Abstract
With tremendous growth of data in database, distributed database is the current requirement with additional feature of
heterogeneity. Today’s database is not stored on single site, rather they are stored on multiple sites with extra features like
transparency, performance. Such databases are termed as distributed database. Heterogeneous Distributed Database is
combination of fragments of database with different schema belonging to different vendor technology namely Oracle. MySQL
and MSSQL stored on different sites.
Aim of this work is to build a platform which enables a user to communicate with all the databases with a single query. We use a
mobile agent which acts as a communicating agent between all the databases.
Horizontal and vertical fragmentations are the two techniques for partitioning the tables of the database. In our work we mainly
focus on horizontal fragmentation method.
Keywords: Heterogeneous Distributed Database, Mobile Agent, Aglet.
1. INTRODUCTION
Database is collection of data in specified format. There are 2 types of database on the basis of schema.
a. Homogeneous Database-When database consisting of single schema then it is homogeneous.
b. Heterogeneous Database-When database is of multiple schemas then it is heterogeneous.
The three important components of a Heterogeneous Database System as pointed out in are autonomy, heterogeneity and
distribution.
There are 2 types of database on the basis of locality.
Centralized Database
When database is stored at single site/single machine then it is centralized.
Distributed Database
A distributed database is a set of fragments distributed over a set of computers. A distributed database management
system (distributed DBMS handles data distribution and provides feature of transparency.
Use of horizontal and vertical partitioning makes database distributed. Horizontal partitioning divides the table row wise
and vertical partitioning divides table column wise. We use union operation for merging the result in horizontal
partitioning and join operation in vertical partitioning.
Distributed Database is again divided into Homogeneous Distributed Database and Heterogeneous Distributed Database.
Homogeneous Distributed Database
All sites consisting of same database management system software.
Heterogeneous Distributed Database
Fragments of table is stored on multiple sites in different schemas is termed as heterogeneous Distributed Database.
Fig 1: Heterogeneous Distributed Database
Mobile Agent
Mobile agent is nothing but the object whose position is not fixed. It is free to travel among the hosts in the network,
Created in one execution environment, it can transport its state and code with it to another execution environment in the
network, where it resumes execution [11].
Volume 2, Issue 9, September 2013
Page 203
International Journal of Application or Innovation in Engineering & Management (IJAIEM)
Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com
Volume 2, Issue 9, September 2013
ISSN 2319 - 4847
Fig 2: Mobile Agent
Mobile agent is entity that has an ability to migrate from one machine to another machine in a network and resume from
that site. They can:
 reduce network traffic
 overcome network latency
 make better use of resources
 adapt dynamically
 be robust and fault tolerant
Aglet as a Mobile Agent
It is Java-based autonomous software agent.
Aglet is a Java based mobile agent platform and library for building mobile agents based applications. An has an ability
to move autonomously and spontaneously from one host to another carrying some data with it. It can be programmed to
execute at a remote host and show dissimilar behaviors at dissimilar hosts [3].
2. RELATED WORK
S. Papastavrou, G. Samaras, and E. Pitoura [12] worked on Mobile Agents for WWW Distributed Database Access. They
concentrated on the platform of Distributed Database but not on Heterogeneous Distributed Databse.
Danny B. Lange and Mitsuru Oshima [3] presented Mobile Agents with Java: The Aglet API and gives brief introduction
regarding mobile agents. They also gave Aglets' event-based programming model with functionality aglet listeners.
JOHN MILES SMITH, PHILIP A. BERNSTEIN, UMESHWAR DAYAL, NATHAN GOODMAN, TERRY LANDERS,
KEN W. T. LIN, and EUGENE WONG [4] proposed a multibase system for integrating heterogeneous distributed
database. They also proposed architecture for integrating database consisting of mapping language, query graph
decomposition.
M. TAMER OZSU and PATRICK VALDURIEZ [5] worked on Distributed and Parallel Database Systems. They gives
challenges in implementation of distributed databases like Query Processing and Optimization, Concurrency control,
Reliability Protocols, Replication Protocols.
YIN-FU HUANG AND JYH-HER CHEN [6] worked on the concept of Fragment Allocation in Distributed Database
Design. They addresses on issues on allocation of fragments like
(1) How a global relation should be fragmented,
(2) How many copies of a fragment should be replicated
(3) How fragments should be allocated to the sites of the communication network
(4) What the necessary information for fragmentation and allocation is.
Y. Wang [13] proposed a system for dispatching multiple mobile agents in parallel for visiting E-shops. He gives idea
regarding parallel execution of the mobile agents.
3. PROPOSED WORK
We concentrated on 3 sites (site1, site2, site3) for storing 3 different databases. We can use horizontal partitioning
technique for making database distributed and use different databases like MySQL, MSSQL and ORACLE for making
database heterogeneous. These 3 databases are stored at 3 different sites.
Volume 2, Issue 9, September 2013
Page 204
International Journal of Application or Innovation in Engineering & Management (IJAIEM)
Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com
Volume 2, Issue 9, September 2013
ISSN 2319 - 4847
Fig 3: Overall System
Components
1: Client
User enters the single query irrespective of the number of databases. All the databases, query processors are transparent to
the server.
2: Server
Server takes the query as input, initialize aglets. Server sends this query & aglet to the server side aglet host present at 3
different sites.
3: Aglet host
Aglet host from both the sides does all the operations on the aglet like receive aglet, transfer aglet and handling other
functions.
4: Query builder
Query builder tokenize the input query and forms new standard query.
Fig 4:Query Builder
M ETHODOLOGY
1) PHASE I
When client enters any query to the server, that query may contain table from any database. Server receives that query
and tokenize. Query Builder residing at server side will form new standard queries. Aglet Host at server side will take
queries from query builder. Aglet Host forms 3 new aglets and stores respective query in that aglet and transfers that aglet
to all respective sites.
Fig 5: Phase I
2) PHASE II
Aglet Host present at 3 sites will receives the aglet and retrieves query from that aglet. The query will be executed on
respective databases and result is stored in aglet. Aglet host then send that aglet again to the server.
Now server will retrieve data from all the aglets. It will merge the result and output is given back to the client.
Volume 2, Issue 9, September 2013
Page 205
International Journal of Application or Innovation in Engineering & Management (IJAIEM)
Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com
Volume 2, Issue 9, September 2013
ISSN 2319 - 4847
Fig 6: Phase II
Advantages
1) Irrespective of which table is stored on which database, client can execute the query.
2) Client doesn’t need to know about syntax of all the databases. Using only one query language he can execute query of
any of 3 databases.
EXPECTED RESULTS
Following results will be expected for 4 standard queries.
SELECT
Select query should gives result including join if it contains more than one table and should work normally if it contains
only one table.
E.g.: select roll FROM student
It should retrieve column from table student which may stored on any database at any site.
Select college_name from staff, student
It should retrieve column from table staff and student which may stored on any database at any site and perform the join
at server.
INSERT
Insert query should insert multiple records in the table. It should also insert multiple records in single table from single
query.
E.g.: insert into student values (10,’abc’, 55.55)
It should insert record in the table student which may store on any database at any site.
Insert into student values (10,’abc’, 55.55), (20,’pqr’, 70.70)
It should insert 2 records in table student
DELETE
Delete query should delete records from the table according to the condition specified in the query irrespective of table
present at any site in any database.
E.g.: delete from student where roll=5
It should delete the record of roll number=5.
UPDATE
Update query should modify records in the table on the basis of condition specified in the table irrespective of table
present at any site in any database.
E.g.: Update student set name=’xyz’ where roll=5
It should modify record in the table student where roll number is 5.
4. Conclusion and Future Work
Goal of our proposed work is “single query from a client can retrieve joined data from the table on the local database and
the table on the remote database with different databases”.
This work will be helpful in areas where companies with different databases decide to merge. It is not feasible for
companies to transfer data of one database into another database. Our proposed work will provide uniform schema for
them.
We also conclude that heterogeneity which is obstacle on modern database can be removed by concept of aglet and
mapping of query.
Still the research is going on in this area with some issues like query optimization, security, concurrency control etc.
Volume 2, Issue 9, September 2013
Page 206
International Journal of Application or Innovation in Engineering & Management (IJAIEM)
Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com
Volume 2, Issue 9, September 2013
ISSN 2319 - 4847
REFERENCES
[1] Baumann J, Hohl F, Rothermel K, Straßer M. Mole—Concepts of a mobile agent system. World Wide Web 1998;
1(3):123–137. .
[2] Ozsu and Valduriez 1991a: M. T. Ozsu and P. Valduriez, Principles of Distributed Database Systems, PrenticeHall,Englewood Cliffs, NJ, 1991
[3] D. B. Lange and M. Oshima, “Mobile agents with Java: The Aglet API,” World Wide Web Journal,1998
[4] John Miles Smith, Philip A. Bernstein, Umeshwar Dayal, Nathan Goodman, TerryLanders, Ken W.T. Lin, and
Eugene Wong. MULTIBASE { integrating heterogeneous distributed database systems. In Proceedings of 1981
National Computer Conference, 1981
[5] T. Özsu, P. Valduriez. Distributed and Parallel Database Systems - Technology and current state-of-the-art. ACM
Computing Surveys, 28(1), 1996
[6] Yin-Fu Huang, Jyh-Her Chen, Fragment Allocation in Distributed Database Design. Journal of Information Science
and Engineering. 2001, 17 P. 491-506
[7] Hababeh, I., Bowring, N., Ramachandran, M.: A method for fragment allocation design in the distributed database
systems. In: The Sixth Annual UAE University Research Conference (2005)
[8] M. Madhavaram, D. L. Ali, and Ming Zhou. Integrating heterogeneous distributed database systems. Computers &
Industrial Engineering, 31(1– 2):315–318, October 1996
[9] D. B. Lange, Mobile Objects and mobile agents: The future of distributed computing? In Proceedings of The
European Conference on Object-Oriented Programming, 1998
[10] Aridor, Y. and M. Oshima, “Infrastructure for Mobile Agents: Requirements and Design”, in Lecture Notes in
Computer Science (1477), Springer, 38-49, 1998
[11] Danny B. Lange and Mitsuru Oshima. Seven good reasons for mobile agents.Communications of the ACM,
42(3):88{89, March 1999
[12] S. Papastavrou, G. Samaras, and E. Pitoura. Mobile Agents for WWW Distributed Database Access. In Proceedings
of the Fifteenth International Conference on Data Engineering, pages 228{237. IEEE, March 1999
[13] Y. Wang, Dispatching multiple mobile agents in parallel for visiting E-shops, in: Proceedings of the Third
International Conference on Mobile Data Management (MDM’02), 2002, pp. 61–68
Volume 2, Issue 9, September 2013
Page 207
Download