/
ignite.ad
39 lines (27 loc) · 2.03 KB
/
ignite.ad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
=== Apache Ignite
Use `symadmin module install ignite` to install driver files, or copy your own files into the `lib` sub-directory.
Since SymmetricDS is trigger based and there are not triggers in Apache Ignite, data can only be loaded to an Apache Ignite instance. The runtime SymmetricDS tables will also need to be installed in a full relational database to support integration with Apache Ignite.
TIP: See <<Load Only Node>> for more details on the general concepts of a load only node.
The following steps explain how to configure a SymmetricDS instance using Apache Ignite as a destination node:
* Configure and start an Apache Ignite cluster.
* Copy the Apache Ignite JDBC driver (ignite-core-VERSION.jar) to the "lib" directory of the SymmetricDS installation.
* Start SymmetricDS and configure a master node with the desired source database.
* Configure the desired node groups, group links, and routers.
* Create a target node and database that will contain the SymmetricDS runtime tables for the Apache Ignite instance.
TIP: The simplest solution to support Ignite is to add a new node (see <<Add Node>>) that is connected to an H2 database to store all the SYM_* runtime tables.
* Stop your SymmetricDS instance and edit the .properties file for the target node in the engines directory of the SymmetricDS installation.
* Set the following properties in the engine file:
[source,properties]
----
load.only=true
target.db.url=jdbc:ignite:thin://localhost
target.db.driver=org.apache.ignite.IgniteJdbcThinDriver
target.db.user=
target.db.password=
target.create.table.not.null.columns.supported=false
----
* Update the jdbc url, username, and password to the desired Apache Ignite instance.
* Restart SymmetricDS.
* Create Table Triggers and Table Routers for the desired source tables to sync.
TIP: Keep in mind that SymmetricDS currently only supports syncing to the "PUBLIC" schema of an Apache Ignite instance.
* (Optional) Perform an initial load from the source to the target node and/or send the table definitions to the Apache Ignite instance.