Loxodrome Software.com (a.k.a.
LoxSoft.com) provides consulting and development services, as well as system
tools, to the insurance and financial services industries.
Among the many challenges
in supporting a large mission-critical database are the need to test new
software releases and analyze problems that may arise in the everyday
production setting. In addition to the production environment, the typical
system implementation also requires several other database environments,
including a development/test environment for work on new software releases,
as well as a model office database, which mirrors the production set-up.
Given the impracticality of maintaining multiple sets of a large
production-sized database, using a subset of the production data is often
the best solution for these additional environments. In addition, the
ability to quickly copy selected data from production to model office is
required to analyze and resolve problems.
While Oracle provides the
ability to easily export and import data from individual tables, copying
data for a single entity across many related tables within a complex Oracle
database can be a difficult task. The need to selectively extract data,
taking into account all applicable database relationships and constraints,
requires a more knowledgeable tool. LoxSoft.com’s NaviXÔ is such a tool, allowing you to manage the Oracle
data by setting up rules for exporting, importing and archiving selective
data based on the corresponding business requirements.
NaviX
is a set of tools, which allow you to navigate complex Oracle databases. The
utilities are rule-driven to work with any Oracle database. NaviX
constructs dynamic SQL statements to navigate through complex Oracle
relational databases. The results of the navigation are returned in XML .
This XML can be processed further using the Archive or
Copy tools described below.
Archive
— Data archiving on a table level is supported by Oracle. NaviX extends data archiving by supporting business level
archiving. For example, all orders prior to a selected date can be
archived. Any number of archive rules can be established to archive
any set of related data. Archived data is maintained in XML and can be
restored at a later time.
Copy— The
data copy tool consists of separate export and import
utilities which will allow you to copy data from one database to another
(or within the same database). Any number of NaviX copy rules can be set up to copy any related database
information. For example, a customer can be copied (with all supporting
data) from a production database to a test environment for debugging
purposes. The copy tool includes an internal key mapping function
allowing you to establish new sequence values for internal keys.
The main features of
NaviX
include:
the ability to copy
business objects between databases.
the ability to archive
business objects.
NaviX
provides an open XML data platform.
copied data can be
e-mailed to a remote site to be copied into a similar database.
FYI...
The application name "NaviX"
is short for "Navigation with XML".
NaviX
is coded as stored procedures to be platform independent; NaviX
can be used on any platform which supports the Oracle RDBMS. NaviX
3.5 requires Oracle 9i or later.
The NaviX
toolset provides several different utilities that allow you to manipulate
data in an Oracle database. These functions have proven to be critical
time-saving tools in the areas of problem-solving and application testing.
Some of the more common uses
of the NaviX toolset include:
Testing New Versions of
a Software Application—
For companies with large production databases, it is not always practical
to utilize a full copy of the production database for model office and
other testing purposes. Instead, it is more desirable to test with a
subset of the production data. NaviX will allow you to easily copy selective data (e.g.,
specific contracts, members, etc.) from the production environment to the
test environment.
In addition to setting up
new test environments, NaviX aids in the on-going testing process by allowing you to manipulate
the test data. For example, after you’ve set up your test environment and
processed numerous transactions in the testing cycle, you may want to
“flush out” these transactions and start over with the same “indicative”
data. You can set up a NaviX
rule that will delete all of the financial transaction data for the
specified case. You can then use the NaviX
“archive” function to purge this data from your test database and retest
the financial processing again.
Implementing New
Products
— When a new product is made available that will be administered within
your software system, the product will be initially set up in a test
environment before being implemented in the production database. There,
the data will go through rigorous testing before it is ready to be used in
production. In most situations, this new data will involve multiple
tables as well as selective entries within given tables. NaviX can provide the means to copy the required data from
the test database to production. This alleviates the need to re-key all
of the information into the production system, not only saving the time of
entering this data but also eliminating the possibility of errors in the
data entry process.
Resolving System
Problems
— In cases where a problem occurs in your production environment, it is
often difficult to “debug” this problem without reproducing the situation
in a test environment. However, since many (if not most) of these
problems are related to the specific data associated with the problem
entity, it is not always easy to set up the same data in the test
database. NaviX
allows you to copy the data related to your specific problem from the
production database to a test environment, where the problem can be easily
reproduced and (hopefully) resolved. Keep in mind that the test database
may be in your own environment or it may be at a vendor site. By
exporting the selected data into an XMLformatted file,
NaviX allows you
to send this data (e.g., via e-mail) to the software vendor who can then
import the same data (using NaviX)
into their test environment and debug the problem.
The primary functions of
the NaviX
utility are the ability to transfer (i.e., copy) data from one database to
another and to archive (i.e., delete) data from a database with the ability
to subsequently restore that data if necessary. Secondary capabilities
include updating existing data and documenting the database links associated
with any table within the Oracle database.
Processing data transfers
using NaviX
requires you to first export the data from the source database,
followed by an import into the destination database. The export can
consist of data from a single Oracle table or hundreds of tables linked
together based on pre-defined rules. The NaviX rules provide the basis for the retrieval of all data accessed from
the source database using this tool. This data is written to an XML
formatted file by NaviX,
which can then be copied to a disk, e-mailed to a support person or copied
internally to the required location, where it can then be used to import the
data into a different (i.e., target) database.
Archiving
data is basically the same as exporting, with the key difference being that
the archived data is actually deleted from the database. The
resulting XML file can then be stored in an appropriate directory and
accessed in the future if the archived data must be restored into the
database.
The upgrade
from version 3.0 to 3.5 of the
NaviX
tool set provides a number of enhancements to the application, offering
security and audit trails along with a new user interface. Some of the
changes include:
Security
— We have
added user and timestamp to every table to track who changes setup tables
and who makes requests. We have also added menu level security that can
restrict what is available on the menu for any given user. The structure
will also support securing rules and tables (available in the near
future). This will allow NaviX customers to implement
whatever level of security is needed based on their internal requirements.
Output to Excel
— You will
now be able to extract data into XML format (current), SQL*Loader format
(current) or Microsoft Excel comma-delimited format (new). You will be
able to identify English headers for your columns and translate codes into
text. This will provide more flexibility in the use of NaviX .
Input from Excel
— You will
also be able to upload comma-delimited files into your Oracle database.
Iconic Menus
— You will
definitely notice the difference when you move to NaviX 3.5! We have changed the
menu structure to use images instead of the previous linked text strings.
Note: NaviX
3.5 requires Oracle 9i or later.
Version 3.0 of NaviX
significantly improved
the ability to manipulate large blocks of data. The enhancements in
3.0 included:
Performance
Improvements
— NaviX 3.0 supports asynchronous processing.
This means that for high volume requests, you can submit the request then
move on to do other tasks without locking up your PC or the
NaviX
session. You can continue to monitor the progress of your request through
the
NaviX
request status screen. Any number of requests can be submitted for
processing, and multiple processors can be defined to support
multi-threading of requests. In addition, the use of SQL*Loader will
facilitate the manipulation of large blocks of data.
New User Interface
— The front-end of
NaviX
3.0 has been totally rewritten using Oracle PL/SQL and HTTP Server.
NaviX
screens can now be viewed using your Internet browser, no longer requiring
the use of Oracle Forms.
"Rules in Rules"
— The new
NaviX
rule setup allows you to define business objects and re-use the business
objects within other business objects. For example, you can create a rule
called “Client” with all of the client related tables, then reference the
client rule each time you have a link to client data.
Multiple Start Values
— This allows you to base your selection of data for a
NaviX rule on multiple variables when
extracting or archiving data. For example, you could select a date and a
product type against which to extract data.
Improved Default
Values
— If an incoming import file does not contain a not-null column and the
column is defined in NaviX with a default
value, NaviX will automatically add the
column with the associated default value during the import. If the column
is in the incoming import file, NaviX ignores
the default value.
Note: NaviX
3.0 requires Oracle 9i or later.
Version 2.6 of NaviX provided the following
enhancements:
Bulk Export/Import
— This new features allows you to select a NaviX
option (e.g., export/archive), select a NaviX
rule (from your defined rules), then type in a list of starting values to
execute the rule for. NaviX will
automatically generate requests for each of the starting values, as well
as a file which can be used to later generate corresponding Import
requests for each of the exports.
Batch/Auto Execute
—
This feature has been enhanced so that the "execute
now" option will display a list of the newly created requests, as well as
creating a file containing a list of the individual generated requests
(see Bulk Export/Import above).
Wildcard Data Map
— The
NaviX
data mapping function now allows you
to map a wildcard to new values.
Version 2.5 of NaviX provided the following
enhancements:
Auto
Execute
—
The new “auto execute”
feature can now be used to support automatic running of any
NaviX
rule, including those that require a starting input value. The “auto
execute” screen now has a query window where you can type in a query to
select start values to be processed. This provides tremendous flexibility
in determining the data to be accessed for a given rule.
Enhanced DB Update Feature
—
A DB Update button has
been added to the NaviX
Rules screen. This button will allow you to add/delete columns to all
applicable NaviX
rules, based on changes to the database structure, without requiring you
to individually access each rule or table. You can exclude certain rules
from the DB Update process, if necessary.
Multiple File
Directories
—
NaviX
now allows you to use separate file directories for the different
NaviX
functions. For example, you can archive data to a different directory from
the one used for exports.
Database Views
— NaviX
now supports the use
of database “views” in the
NaviX
rules.
Simplified
Setup—
The
NaviX
screens for the
initial “set up” and definition of applicable code values have been
redesigned to be simpler to use.
Version 2.4 of the LoxSoft NaviX Toolset provided the following enhanced capabilities:
A new “auto execute” feature allows you to
schedule a
NaviX
rule to be invoked automatically on a
periodic basis
NaviX
rules now have a new start value type of “NONE” which will cause
NaviX
to bypass the screen that prompts for starting value
The DB Update button on the
NaviX
Tables screen has been enhanced to provide a
summary screen which displays the tables and columns that have been
updated
A new Delete Table button has been
added, which will remove a table (and all of the corresponding columns and
access instructions) from a
NaviX
rule, without requiring you to separately delete the corresponding data
A new View Summary button has been
added to the Batch Results screen, which will allow you to view a summary
of the results of any
NaviX
request processed in batch
You
can now validate an import file (prior to running the actual import) to
check for the potential file errors. The entire import file is checked and
all issues are reported back to the user.
All referenced tables must be in database.
All referenced columns must be in
database.
All not-null columns in database (for
tables in file) must be defined in the file, or a default value must be
defined.
All map names referenced in the file must
be in the database.
Version 2.3
of the LoxSoft NaviX Toolset provided the following enhanced capabilities:
Performance enhancements - up to
4 times faster than version 2.2
Multi-threaded batch allowing for
simultaneous processing
Handling for unique constraint
violations (at a table level) during
the
import processing
Table-level commits with "Restart" capabilities for
imports