3 Integrating with IBM Global Name Recognition
You can configure EDQ to connect to IBM GNR to facilitate linguistic analysis of names, and linguistically sensitive name searching.
This chapter includes the following sections:
3.1 System Requirements
To enable EDQ connectivity with IBM GNR, you must have the following:
-
EDQ 12c (12.2.1.1.0) installed on 64-bit AIX operating system or Linux operating system running 64-bit Java.
-
IBM GNR 4.2.1 (4.2 + 4.2.1 fixpack) or later, including the hotfix based on GNR 4.2.2 (4.2 +4.2.2 fixpack). For more information, see the IBM website at
http://www.ibm.com.EDQ does not make use of any of the web services provided by GNR, so you do not need to configure these during GNR installation.
Note:
GNR can only be installed on an EDQ instance if you have the required license agreements with both Oracle and IBM.
3.2 Configuring the EDQ Server
The LD_LIBRARY_PATH must be set as required for the installation environment.
The EDQ GNR analytic processors use a shared library (.so) in the lib64 directory of the GNR installation. This directory must be specified in an environment variable passed to the EDQ server.
In a Linux 64-bit environment, the environment variable is LD_LIBRARY_PATH; for example:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:gnr-installation-dir/lib64
gnr-installation-dir is the GNR installation path; for example, /opt/GNR/GNM.
In an AIX environment, the environment variable name is LIBPATH instead of LD_LIBRARY_PATH.
Note:
The environment variable must be available to the application server process.
3.3 Building the Search Library
The GNR Search Processor uses a native library that must be linked with the GNR libraries.
Oracle supplies these files to create the library:
-
Two
Makefiletemplates, one for each platform, that script the building of the search library -
The
namehunter.oobject module file
When building the library on an AIX system, IBM C++ must be available. When building the library on Linux systems, the GCC C++ compiler must be available and it must be of the same version used to create the GNR libraries, as specified in the IBM GNR documentation.
The Makefile template for a 64-bit AIX operating system is as follows:
# Build library from object file
# ------------------------------
GNR=/opt/GNR/GNM
CFLAGS=-qmkshrobj
LIBS=-lNameHunter -lNameTransliterator -lsicui18n -lsicuuc -lsicudata
SDK=aix61_64-xlc9-release
LIBDIRS=-L$(GNR)/sdk/$(SDK)/lib -L$(GNR)/sdk/icu4c/$(SDK)/lib
all: libnimrod.so
libnimrod.so: namehunter.o
xlc++_r -q64 $(CFLAGS) -o $@ $? $(LIBDIRS) -lNameHunter -lNameTransliterator
-lsicui18n -lsicuuc -lsicudata
The Makefile template for 64-bit Linux operating system is as follows:
# Build 64-bit library from object file
# --------------------------------------
GNR=/opt/GNR/GNM
CFLAGS=-shared -fPIC
all: libnimrod.so
libnimrod.so: namehunter.o
g++ -m64 $(CFLAGS) -o $@ $? -L$(GNR)/sdk/rhel4_64-gcc34-release/lib
-L$(GNR)/sdk/icu4c/rhel4_64-gcc34-release/lib -lNameHunter -lNameTransliterator
-lsicui18n -lsicuuc -lsicudata
Before running the Makefile script for your platform, ensure that the value of GNR in the Makefile template is set correctly, according to the GNR installation directory location. On the AIX operating system, also ensure that the value of SDK is set correctly, according to the system architecture.
After running the edited Makefile, the newly created libnimrod.so shared library file can be installed anywhere and can be copied to other systems with GNR installs.
3.4 Configuring the GNR Connector
The EDQ GNR connector requires three types of configuration files to integrate it with GNR:
-
The
gnr.propertiesproperties file in the EDQ installation -
The
nameworks.configconfiguration file in the GNR installation -
Search configuration files in the EDQ installation
3.4.1 Creating the EDQ GNR Properties File
The gnr.properties file and the gnr subdirectory that contains it must be manually created and placed in the gnr subdirectory of the EDQ configuration directory. It must contain the following properties:
-
gnr.install -
The GNR installation path. This is the path to the directory containing the following GNR subdirectories:
-
bin -
bin64 -
data(which contains the GNR data files) -
lib -
lib64
-
-
analytics.config -
The absolute location of the
nameworks.configconfiguration file in the GNR installation. -
search.jnilib -
The absolute location of the
libnimrod.soshared library, which was built using theMakefiletemplate.
nameworks.config
During GNR installation, a nameworks.config file is created and stored in the GNR data directory.
The critical part of the nameworks.config file is the reference files section:
[Reference Files] NameSifter=/opt/GNR/GNM/data/SifterRules.ibm
The NameSifter value must refer to the SifterRules.ibm file in the GNR installation.
3.5 Creating the Search Configuration Files
Search configuration files are located in the gnr/search subdirectory of the EDQ configuration directory. They are read by the connector and used to set parameters for the Search function.
A sample search configuration file named search.config is available in the support/data/search subdirectory of the EDQ installation. To create a search configuration file, copy this sample file to the gnr/search subdirectory of the EDQ configuration directory and edit the copy to suit your needs.
3.5.1 Support for GNR 3.2 and GNR 4.2 in Search Configuration Files
The search configuration format changed slightly from GNR 3.2 to GNR 4.2, and the EDQ GNR connector supports both versions as far as possible. It also processes data for Organization searches.
The basic differences between the search configuration files in GNR 3.2 and GNR 4.2 are:
-
GNR 4.2 specifies the parameter files (for example, tags and variants) in the
[hunter]section. GNR 3.2 uses the[search]section. The EDQ GNR connector looks in the[hunter]section first then the[search]section. -
The tag and variant files in GNR 4.2 are specified by keys such as
ibmTaqFileandcustTaqFile. In GNR 3.2, justtaqFileis used. The EDQEDQ GNR connector looks fortaqFile,ibmTaqFileandcustTaqFileand loads each if found. The same rules are used for variant and terms files. -
The generic reg file is set by a specific
genericRegFilesetting; in GNR 3.2 this always defaults to theangloreg file. -
Some settings have been added to the
[parms]sections, and others have been removed.