Diploma Thesis Santiago Gómez Sáez - IAAS
Diploma Thesis Santiago Gómez Sáez - IAAS
Diploma Thesis Santiago Gómez Sáez - IAAS
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