16.01.2014 Views

Diploma Thesis Santiago Gómez Sáez - IAAS

Diploma Thesis Santiago Gómez Sáez - IAAS

Diploma Thesis Santiago Gómez Sáez - IAAS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

6. Implementation<br />

In this chapter we describe the challenges and problems during the implementation phase<br />

to fulfill the requirements specified in Chapter 4 and the design presented in Chapter 5 of<br />

the system. Furthermore, we discuss the incompatibilities found with components we must<br />

extend. We divide, as in the previous chapters, the implementation phase into the SQL<br />

and NoSQL databases support, and provide a separate section for the extensions made to<br />

JBIMulti2 and the Cache.<br />

6.1. SQL Support Implementation<br />

The implementation of the different components described in the SQL architecture approaches<br />

in Chapter 5 are explained in this section. We describe the implementation of the three main<br />

components which provide support for MySQL incoming requests, and a multi-database<br />

protocol for outgoing requests. NMF routing in ServiceMix-mt is supported by the NMR and<br />

a set of endpoints which are deployed on the ServiceMix-camel, and ServiceMix-camel-mt.<br />

6.1.1. CDASMix MySQL Proxy<br />

The CDASMix MySQL Proxy provides support for MySQL connections. It implements the<br />

functionalities of a MySQL proxy and the needed routing operations and transformation<br />

to integrate it in ServiceMix-mt. As discussed in Chapter 3, the original MySQL proxy<br />

is implemented in the C programming language. Therefore, we cannot integrate it with<br />

ServiceMix-mt, as this runs on a Java platform. The Myosotis Tungsten Connector is part of a<br />

data replication engine developed by Continuent, Inc [Con]. One of the components which<br />

build the application is a MySQL proxy written in the Java programming language. This<br />

component suites the proxying requirements in this diploma thesis, and it runs on the Java<br />

platform. However, it is not OSGi compliant, it is not integrated with the JBI environment,<br />

and the backend databases’ meta-data must be explicitly defined in its configuration file.<br />

Furthermore, it provides a direct connection from the component to the database. We utilize<br />

it as a base for implementing the CDASMix MySQL Proxy, and aggregate the required functionalities<br />

of this diploma thesis. We present the class diagram of the component in Section<br />

A.1, but omit the attributes and operations listings due to the high amount of operations, and<br />

attributes we manage in the component.<br />

ServiceMix-mt is built as an OSGi container with JBI integration functionalities. Furthermore,<br />

ServiceMix 4.x and later version consider the JBI framework deprecated in their systems.<br />

Therefore, we build the CDASMix MySQL Proxy component as an OSGi bundle. During<br />

63

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!