Frext: a replicator for Firebird databases
Frext is a tool to provide replication
between two or more databases. Frext stands for Firebird
Replication Extension. It
copies
data from one database to another without requiring physical contact
between the databases. Databases are in sync and stay in sync. Frext
can be used for mobile solutions, providing by-directional or two way
replication
to and from a large number of remote databases or in
the
server space, replicating data from server to server on a one-to-one
basis.
Frext is built upon Firebird,
a very powerful but yet easy to manage Open Source database, the
finished product will further enhance capabilities of Firebird. Java is
used for
client programming to achieve operating system independence.
Mission
The ultimate goal of Frext is building the best-of-breed
replication
tool for Firebird databases, providing all the good from existing
products while
closing
down any imperfection.
Frext will be Open Source under the GPL
license and cross-platform,
fully transparent, versatile and yet easy to install, configure and
maintain.
Key facts
- Transaction based.
Replication
is initiated by database transactions, not by table
comparison
- Message based.
Communication
between different databases is done by messages, so that each database
doesn't have be in direct physical contact with each other
- Message transport by file.
Plain & simple. Other transport channels like mail are easily
added through native scripting
on the OS level
- Transparent. Each step
in the
replication process is traceable; even the messages themselves are
human readable
- Robust. Each replication
action is executed in the order in which they are produced on the
sender
database; there's a missing-message-mechanism; guarantied delivery
which means
that each replicated transaction will get to the endpoint; transaction
grouping: operations within one transaction on the producer is
re-executed on the receiver with the same transaction
- Versatile. Frext can be
used
for server-to-server or server-to-laptop replication; Frext can also be
used solely as a front end (for producing messages) or just as
back end (just for receiving messages) in a multi-application
environment; data transformation can be
done, e.g. through the use of a
intermediate database; Frext can be used solely as a transaction
log viewer
- Cross-platform.
To make sure
Frext is a full cross-platform tool, it is written in Java; because of
the thin client concept (most of the logic is within the database
itself, i.e. procedures,
triggers, etc.), cross-platform execution is a natural thing for Frext
- Open
Source.
Frext will developed under the GPL License providing an Open Source
tool on top of an Open Source database, Firebird
- Ease of installation.
System
objects (tables, procedures, etc.) of Frext can be installed with
one action; data extracts can be done automatically; no need
to
change the structure of production tables
- Versatility of configuration.
Many configuration methods: by XML-file, by SQL-statements, etc.;
very easy to implement partitioning, this is done fully automatic;
very easy to implement replication of a limited set of fields
- Manageable from a central point.
All log data is written back (through replication of course) to the
producer; this database serves as a central point of controlling and
handling all underlying databases
Project status
Pre-alpha.
Project is started, code is being prepared to
be released.
Requirements
- System
- Firebird 1.5 or higher
- Java JRE 1.4 or higher
- Jaybird 2.01
or higher
- Database structure
- Homogeneous
table structures
- No more than five key fields per table
See: Requirements
News
- 2008-08-04 Start of the Frext project
Documentation
Reference
External links
|