

Repgen
Demo Available for download...
The Repgen application generates the scripts required
to setup, remove and monitor an Oracle database Advanced Replication
installation. The implementation of primary key, replication triggers
and multiple conflict resolution methods is included. As with the Installgen
program, an external module allows site-specific customization of each
generated file. These features and benefits are explained on this page.

Fast
and Efficient Programming - Repgen generates all of the scripts required
for implementing an Advanced Replication configuration within a few
seconds. Every script is instantly generated from algorithms written
in the Perl programming language every time the Generate button is pressed
in the application. It will generally take hours or sometimes even several
days to write these scripts manually, but Repgen does the job within
a few seconds. It is far more efficient to make a change within the
graphical interface, and then regenerate the scripts than it is to manually
update the scripts. Repgen can type much faster than you can!
No
syntax errors - As long as the table and site-specific information is
correctly entered into the graphical interface, Repgen will always generate
syntactically correct code containing no typo errors. This means that
you can eliminate virtually all your SQL and PL/SQL debugging time and
concentrate on the overall design of the replication setup. Repgen even
helps you test your Oracle servers for proper configuration prior to
setting up replication. This way you don't get part of the way through
an installation without having met the Oracle recommended prerequisites.
Implement
Oracle Best Practices - You do not have to sacrifice quality in order
to achieve a quick implementation schedule. If you were writing these
scripts manually, you would probably not include many of the features
which are automatically included by Repgen. In fact extra care has been
taken to include all of Oracle´s best practices into each script
because the philosophy is to write the scripts once, but write them
with the highest possible quality. This
means adding 3 conflict resolution
methods instead of the Oracle recommended 2 methods for each table.
This means that extra scripts are generated to add
primary keys, conflict resolution
columns and triggers
to each table. You might not need to use every one of these scripts
for every implementation, but they are created for you at essentially
no extra cost every time Repgen runs. This also means creating a separate
documentation file which clearly
describes exactly how all of the master
sites are configured along with complete setup instructions
for using the generated scripts. If you were writing these scripts manually,
you might not be permitted to spend the time to write documentation
which is this extensive. This means adding descriptive usage
instructions and comments throughout every SQL output file which
is created by Repgen.
Iterative
Process - If you were writing these scripts manually, you would probably
want to write them once and then not change them because the amount
of time required. Because Repgen makes the process so efficient, you
can quickly re-create updated scripts based upon schema changes and
updated business requirements. The File
Version field permits multiple numbered versions of script files
to be created and saved for future use. The ideal development method
is to implement a fully functional replication environment during the
development process while the schema and database programming is taking
place. There are many differences involved with using a replicated versus
a non-replicated environment which can cause problems during a production
implementation. These differences and the potential problems they cause
can be be discovered and resolved earlier in the testing phase before
the system goes into production. Repgen produces setup
and removal scripts to
allow for the quick setup and removal of multiple versions of a site´s
replication setup.
Save
Your Configuration - Repgen is the only tool available today permits
you to create and save your replication configuration information. If
you were going to set up a replicated environment of 80 tables for example,
it would take 1 to 2 hours to enter the configuration information into
Repgen. Then Repgen would generate all of the required scripts within
a few seconds. You can save this configuration information into a file
so that you can reload the information and update it at a later time.
Accumulated
Knowledge - You don´t have to be the world´s greatest expert
on Advanced Replication in order to implement and maintain a high quality
and reliable replication configuration. Repgen incorporates the accumulated
knowledge from Oracle´s instructor led training courses, tips,
troubleshooting
and setup recommendations from Oracle Worldwide Support, and the experience
of DBAs who have spent years configuring and maintaining replicated
Oracle databases. It is recommended that you should attend Oracle´s
Distributed Database and Advanced Replication instructor led courses
prior to attempting a production installation. The information presented
in these courses and within the Oracle HTML documentation provides important
information on the theory of operation and recommended best practices.
You will have a much better understanding of the implications involved
with entering information into each field within Repgen after attending
these courses. However the scripts generated by Repgen will help you
obtain a better understanding of the setup process and the required
implementation steps even before you attend the classes.
Faster
Than Replication Manager - Repgen does not need to connect to a database
in order to generate its scripts, therefore it can be much faster than
Replication Manager. Each folder tab pops into view instantly, even
on slower computers. Scripts can be generated on your laptop even if
you aren't connected to the database server. Executing the scripts generated
by Repgen is also much faster than pointing and clicking your way through
the Replication Manager interface to set up a typical replication environment.
For example it would take approximately 8 hours of pointing and clicking
your way through the Replication Manager interface to setup replication
for approximately 80 tables within 10 replication groups. This was the
time required adding each group, adding each table, and adding a minimum
of 2 conflict resolution methods for each table. It would take approximately
3 days to write scripts manually to perform these same tasks (not counting
debugging time to resolve typo errors). It takes between 1 - 2 hours
to enter the initial configuration into Repgen for these same 80 tables.
It will take Repgen a few seconds to generate the output files. Then
you can save your configuration so that you never have to reenter it
again. Future incremental updates are as simple as reloading the previously
saved configuration file, changing the information, then pressing the
Generate button to regenerate the scripts. The updated configuration
information can be saved to file with a slightly different name in order
to maintain historical documentation. Once the scripts have been generated
it will take roughly 20 - 30 minutes to run these scripts on the database
servers, with most of this time required for the task of generating
replication support for the tables. This part of the task takes a significant
amount of time even on an 8 CPU Sun E10,000 with 12G of RAM!
Note: This example does not consider the amount of time required
to export/import data from the master def to the rest of the master
sites. This example just represents the amount of time required to create
and run the replication setup scripts/commands.
DBA
Can Review/Modify Generated Scripts - Unlike some DBA tools which transparently
send commands directly to the database, Repgen permits the DBA to review
and manually update every script prior to executing it on the database
server. Additionally, Repgen permits the DBA to change the way scripts
are generated through adding Perl subroutines to an external module
file.
Simple
Graphical Interface - Working with an Oracle database is difficult
enough without also requiring you to navigate a complex graphical interface.
Repgen contains 3 simple folder tabs of information for you to enter.
Online help is also available in order to provide descriptions of the
information required for each field, troubleshooting tips and techniques
and complete How To instructions.
Multiple
Platforms Supported - The Repgen graphical interface runs on multiple
platforms, even on platforms like Apple´s Mac OS X. You can work
away from the database server or run Repgen on the database server itself
(Solaris 8 is also fully supported). The generated scripts can be created
on any computer, analyzed or even modified manually by the DBA and sent
via your favorite network connection to the database servers.
Written
In Perl - Perl is a fast, efficient and very easy to learn programming
language which is very well suited to the task of processing the large
amounts of text required of a program generator application. The Repgen
graphical interface contains a block of approximately 3000 lines of
Perl code which is written to the output directory and then executed
in order to generate the output files. Customers who license Repgen
Enterprise Edition also receive this Perl source code which they may
use to customize the generation of output files. Subroutines may be
copied from the main source file into the external repgen_custom.pm
file and then customized. Customization of Repgen done in this manner
will not be overwritten the next time Repgen is run and will be preserved
the next time the Repgen application is updated. It is recommended that
Perl 5.6.1 should be installed
on the computer running Repgen, though older versions of Perl may work
as well too. There are no additional external Perl modules required
in order for Repgen to operate correctly.
Perl
Source Code Provided [Repgen Enterprise Edition feature]- In order to
facilitate customer modification of the file generation process, the
Perl source code which generates the output files is provided to all
licensed customers. After Repgen creates the output files, it leaves
the Perl source file and Perl module files within the output directory.
These versions of the files should not be modified because they will
be overwritten the next time Repgen generates files. Customized versions
of the Perl subroutines should be implemented within the repgen_custom.pm
file, which should then be copied to the directory containing the Repgen
application. The next time Repgen generates files, it will copy the
version of the repgen_custom.pm file from Repgen´s application
directory to the output directory, where it will be executed along with
the main repgen.pl Perl program. The customization process is documented
more fully within the Support section of the web site.
Well
Documented Perl Source Code [Repgen Enterprise Edition feature]- Approximately
22% of the lines of Repgen Perl source code consist of comments. These
comments provide overall revision history information and feature implementation
notes (including notes about database version specific bug fixes and
workarounds). These comments are designed to allow any customer to review
the implementation process for correctness and the addition of site-specific
enhancements.
Well
Documented Process - The scripts created by Repgen provide a well
documented and standardized process for the implementation of a Multi-Master
replicated database implementation. Corporate IT departments may choose
to standardize their replication implementations on the scripts and
processes implemented by Repgen. A corporate-wide standardized approach
toward replication makes it easier for all of the DBAs at an organization
to manage and setup and maintain replicated databases. Without a standardized
process, the setup and maintenance of replicated database servers becomes
a unique specialty skill learned by a select few DBAs. Database server
availability can be impacted if very few DBAs can maintain the servers.
Use
Repgen To Document Existing Configurations - Repgen can be used
to produce documentation files for existing replicated servers. This
documentation can be written in a few seconds by Repgen during the script
generation process and the configuration information saved for future
use. The ability to produce high quality documentation on demand can
be vital to passing an IT audit by a potential investor or new business
partner.
Setup
and Remove Replication
Anytime - Repgen creates replication setup
and removal scripts during
the script generation process. The removal scripts can be especially
helpful if major schema changes are required by developers. The replication
configuration can be removed,
schema changes made, tables added, then a new set of setup scripts can
be generated by Repgen accounting for the schema differences. Use of
the actual scripts does not require a high bandwidth network connection
to the server as would be required with a completely graphical process.
Easy
Repgen Installation and Licensing - There are no license keys or dongles
required in order to install the licensed version of Repgen. .com Solutions
Inc. trusts its customers to abide by the License Agreement and Copyright
laws when using this application. This licensing method builds customer
loyalty and greatly reduces the amount of time which is nonproductively
spent by customers and software developers who manage and implement
a license key system. This time can be much more productively spent
by .com Solutions Inc. to implement new features requested by its customers.
Repgen is licensed on a per-user basis. Repgen Standard Edition is licensed
for usage by 1 user, on a single system at a single site, Repgen Enterprise
Edition provides a 10 user, single site, single platform license. Installing
Repgen is as simple as decompressing the downloaded file and moving
the Repgen executable wherever you want to install it. There are no
DLLs or registry entries, no fancy installer application and no restart
of your computer required. On UNIX systems, just make the uncompressed
application executable then execute "xhost + localhost" to
allow X Windows to display the application window.


