...
Scroll ignore | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
About Collectors
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
...
Pre-requisites
Collector Server Minimum Requirements
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Informatica Requirements
Informatica 9.1+ with repository hosted in Oracle.Python 3.6 - 3.10
Access to K landing directory Access to Informatica Repository (see section below)
Establish Informatica Repository Access
Create an Oracle user with read access to all tables in the Informatica repository database.
Establish Informatica Server Access
Create a user that has read access to the Informatica Server.
...
Step 1: Create the Source in K
...
The collector requires a set of parameters to connect to and extract metadata from Informatica
FIELD | FIELD TYPE | DESCRIPTION | EXAMPLE |
---|---|---|---|
username | string | Username to log into Oracle | “myuser” |
password | string | Password to log into Oracle | |
dsn | string | Datasource Name for Oracle, this can be one of the following forms <tnsname> | “preprod” |
repo_owner | string | This is the owner of all the tables required by the extractor | “inf” |
oracle_client_path | string | Full path to the location of the Oracle Client libraries | “/tmp/drivers/lib/oracleinstantclient_11_9” |
cached | boolean | If set to true if will prevent re-extracting data | false |
input_path | string | Absolute path to the input location where | “/tmp/input” |
output_path | string | Absolute path to the output location where files are to be written | “/tmp/output” |
mask | boolean | To enable masking or not | true |
compress | boolean | To gzip the output or not | true |
KADA provides an out of the box script that reads a configuration JSON file and runs the extractor. Below is the configuration file.
...
Code Block | ||
---|---|---|
| ||
import os import argparse from kada_collectors.extractors.utils import load_config, get_hwm, publish_hwm, get_generic_logger from kada_collectors.extractors.informatica import Extractor get_generic_logger('root') # Set to use the root logger, you can change the context accordingly or define your own logger _type = 'informatica' dirname = os.path.dirname(__file__) filename = os.path.join(dirname, 'kada_{}_extractor_config.json'.format(_type)) parser = argparse.ArgumentParser(description='KADA Informatica Extractor.') parser.add_argument('--config', '-c', dest='config', default=filename, help='Location of the configuration json, default is the config json in the same directory as the script.') parser.add_argument('--name', '-n', dest='name', default=_type, help='Name of the collector instance.') args = parser.parse_args() start_hwm, end_hwm = get_hwm(_typeargs.name) ext = Extractor(**load_config(args.config)) ext.test_connection() ext.run(**{"start_hwm": start_hwm, "end_hwm": end_hwm}) publish_hwm(_type, end_hwm) |
...
If you are handling external arguments of the runner yourself, you’ll need to consider the following for the run method https://kadaai.atlassian.net/wiki/spaces/KSL/pages/1902411777/Additional+Notes#Extractor-run-method
Code Block | ||
---|---|---|
| ||
from kada_collectors.extractors.snowflake import Extractor kwargs = {my args} # However you choose to construct your args hwm_kwrgs = {"start_hwm": "end_hwm": } # The hwm values ext = Extractor(**kwargs) ext.run(**hwm_kwrgs) |
...
To edit the internal SQL being run refer to https://kadaai.atlassian.net/wiki/spaces/KSL/pages/1902411777/Additional+Notes#Adding-Custom-SQL
...
Step 7: Check the Collector Outputs
...
If you want prefer file managed hwm, you can edit the location of the hwn by following these instructions Additional Notes
...
Step 8: Push the Extracts to K
...