NORMA eResearch @NCI Library

Efficiently migrating Java / JEE prototype application to Google App Engine PaaS Cloud

Prabhakaran, Prasanth (2014) Efficiently migrating Java / JEE prototype application to Google App Engine PaaS Cloud. Masters thesis, Dublin, National College of Ireland.

[thumbnail of Master of Science]
PDF (Master of Science)
Download (1MB) | Preview


The thesis proposes a software methodology that helps to efficiently migrate Java/JEE applications from traditional IT Infrastructure to Google App Engine(GAE). The main aim of our software methodology is to promote greater utilization of GAE PaaS Cloud by enabling an easier and smoother migration of existing Java/JEE web applications to the GAE PaaS Cloud.

GAE is a Platform as a Service (PaaS) Cloud that allows building and deploying scalable web applications written in various programming languages such as Java, Python, PHP and Google's proprietary languguage Go. The software methodology is applicable for migrating Java/JEE based web applications that use a Relational Database Management System(RDBMS) from the traditional corporate IT networks to GAE. We consider Java/JEE application that uses an RDBMS for migration is because Java/JEE has been one of the most popular programming technology and RDBMS has been the most widely used technology for storing the application data. We consider GAE Cloud because it is one of the most mature PaaS Cloud Platform and provides standard features such as scalability, reliability, performance, security and transactional datastore to the applications deployed on GAE infrastructure.

Currently there exists a large number of Java/JEE enterprise applications using RDBM-Ses that run on the traditional IT infrastructures. Migrating these applications to GAE can reap the benefits of GAE platform. However migrating an application can be a challenging task as it requires the migration of the application data from the RDBMS to GAE Datastore, modification of the application code to remove the GAE unsupported JRE classes and replacement of the SQL queries in data access layer with Datastore APIs. The software methodology proposes that an application can be efficiently migrated to GAE using a Java Source Code Analyzer Tool and an automated Database Migration Tool. The Java Source Code Analyzer Tool helps to identify the usage of both GAE unsupported JRE classes in the application's Java source files and SQL queries in the Data Access Layer of the application. The automated Database Migration Tool can migrate data from the RDBMS to the GAE local Datastore in the development machine for testing purpose or to the remote Datastore on the GAE Cloud. Before migrating the application the GAE unsupported JRE classes should be removed from the application's source files, the SQL queries should be replaced with Datastore API's and the applications's data should be migrated to GAE Datastore.

We applied the software methodology to migrate our sample set of Java/JEE applications to the Google App Engine. The results were successful as the Java Source Code Analyzer Tool helped significantly to reduce the re-engineering efforts that were essential to modify the applications befored deploying to GAE Platform. The automated Database Migration Tool was able to migrate the data successfully. To conclude, we can apply the software methodology to any Java/JEE application to efficiently migrate to GAE and hence promote a better utilization of GAE PaaS Cloud.

Item Type: Thesis (Masters)
Subjects: Q Science > QA Mathematics > Electronic computers. Computer science
T Technology > T Technology (General) > Information Technology > Electronic computers. Computer science
Divisions: School of Computing > Master of Science in Cloud Computing
Depositing User: Caoimhe Ní Mhaicín
Date Deposited: 12 Dec 2014 11:28
Last Modified: 12 Dec 2014 11:39

Actions (login required)

View Item View Item