sql >> Database teknologi >  >> RDS >> Database

Brug af Easysoft ODBC-drivere med Informatica PowerCenter

Informatica kan bruge både indbyggede drivere og tredjepartsdrivere til at kommunikere med databaser. Native drivere leveres af databaseleverandøren, for eksempel Oracles OCI-biblioteker eller Microsofts SQL Server Native Client. Indbyggede drivere er Informaticas anbefalede dataadgangsmetode, når de er tilgængelige for din Informatica-platform.

Informatica-distributionen inkluderer tredjepartsdrivere til en række databaser. Disse tredjepartsdrivere bruger ODBC til at kommunikere med databaser. ODBC er en databaseneutral grænseflade, der gør det muligt for ODBC-kompatible applikationer såsom Informatica at arbejde med enhver database, som en ODBC-driver er tilgængelig for. ODBC oversætter Informaticas dataforespørgsler til noget måldatabasen forstår.

ODBC har to komponenter:ODBC-driveren og ODBC Driver Manager. ODBC-driveren er databasespecifik, dvs. en Microsoft Access ODBC-driver vil kun tale med en Microsoft Access-database. ODBC Driver Manager er grænsefladen mellem Informatica og ODBC driveren. Driver Manager er ansvarlig for at indlæse ODBC-driveren, der isolerer Informatica fra den komponent, der interagerer med databasen. Denne arkitektur gør det muligt for Informatica at oprette forbindelse til forskellige databaser uden at der foretages ændringer i applikationen.

På Windows leverer Microsoft en ODBC Driver Manager med operativsystemet, og det er denne, som Informatica bruger på denne platform.

På UNIX og Linux inkluderer Informatica-distributionen en ODBC Driver Manager.

Så vi ved, at ODBC-arkitekturen tillader en applikation at understøtte flere database-backends ved at tilslutte forskellige databasespecifikke ODBC-drivere. Hvordan fungerer det i praksis med Informatica? Hvad skal du gøre for at gøre det muligt for Informatica at bruge ODBC-drivere, der ikke er bundtet med applikationen.

På Windows er dette ligetil. Du installerer driveren under Microsoft ODBC Driver Manager og konfigurerer en ODBC datakilde i ODBC Data Source Administrator applet, som er placeret i Windows Kontrolpanel. ODBC-datakilden er så tilgængelig til brug i Informatica; ingen yderligere konfiguration er påkrævet. En almindelig kilde til forvirring på 64-bit Windows-maskiner er fejlen "Architecture Mismatch", som du får, hvis du forsøger at bruge en 64-bit ODBC-driver med et 32-bit program eller omvendt. Hvis dit Informatica-klientprogram er 64-bit, skal du bruge det med en 64-bit ODBC-driver og konfigurere en datakilde i 64-bit-versionen af ​​ODBC Data Source Administrator. 64-bit ODBC-datakildeadministratoren vil enten være den eneste ODBC-applet i kontrolpanelet, eller hvis der er to ODBC-applets, vil den tydeligt blive markeret som værende 64-bit. For at køre 32-bit ODBC Data Source Administrator, som er den, der skal bruges, hvis din Informatica-klient er 32-bit, skal du bruge denne kommando:

%windir%\syswow64\odbcad32.exe

På UNIX og Linux gælder det samme problem:applikationens arkitektur skal være den samme som ODBC-driverens. Du skal derfor tjekke om din Informatica-klient er 32-bit eller 64-bit og derefter bruge en ODBC-driver, hvis arkitektur er den samme. (Bemærk, at det ikke er tilstrækkeligt at vide, hvilken arkitektur dit operativsystem er; du kan køre en 32-bit applikation på et 64-bit operativsystem, og det er derfor Informaticas arkitektur, du har brug for.)

Et andet problem for dem, der søger at bruge en tredjeparts ODBC-driver med Informatica, er, hvordan man indstiller miljøet og redigerer de relevante ODBC-konfigurationsfiler, således at Informatica kan bruge driveren. Som nævnt omfatter Informatica-distributionen både en ODBC Driver Manager og et udvalg af ODBC-drivere til forskellige databaser. Informatica forventer derfor at:

  • Indlæs ODBC-drivere fra en placering under Informatica-biblioteksstrukturen.
  • Find ODBC-datakilder under Driver Manager, der er bundtet i dens distribution.

(I resten af ​​denne artikel vil vi bruge Easysoft ODBC-drivere som vores eksempel på tredjeparts ODBC-drivere.) Selvom de typisk bruges med unixODBC Driver Manager, er Easysoft ODBC-drivere kompatible med Informaticas ODBC Driver Manager.

Når du forsøger at oprette forbindelse til en ODBC-datakilde i Informatica, sender applikationen datakildenavnet til ODBC Driver Manager. ODBC Driver Manager forsøger at indlæse ODBC-driveren, som datakilden refererer til, og sender datakildenavnet til driveren i en forbindelsesstreng. Forudsat at der ikke sendes andre indstillinger i forbindelsesstrengen, søger ODBC-driveren alle andre forbindelsesdetaljer, den har brug for, i datakilden.

For at komme i gang vil vi installere Easysofts Salesforce ODBC-driver på vores Informatica-testmaskine. Vi accepterer standardvalgene under installationen, og derfor er ODBC-driveren installeret i /usr/local/easysoft og en eksempeldatakilde er installeret i /etc/odbc.ini :

$ cd /tmp
$ cd odbc-salesforce-1.0.36-linux-x86-64-ul64
$ su
# ./install

Efter at have redigeret eksempeldatakilden, så den specificerede Salesforce-brugernavnet, adgangskoden og sikkerhedstokenet, bruger vi isql for at teste forbindelsen til datakilden.

# vi /etc/odbc.ini
[SF_SAMPLE]
Description=Easysoft ODBC-SalesForce Driver
Driver=Easysoft ODBC-SalesForce
uri=https://login.salesforce.com/services/Soap/u/27
[email protected]
password=my_salesforce_password
token=1234567ABCDEFGHIJK
$ /usr/local/easysoft/unixODBC/bin/isql.sh SF_SAMPLE
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>

Vi har nu en installeret, licenseret og fungerende ODBC-driver, men den er endnu ikke tilgængelig til brug i Informatica.

For at gøre det muligt for Informatica at finde datakilden og indlæse driveren, skal vi:

  • Kopiér datakilden fra /etc/odbc.ini til $ODBCHOME/odbc.ini fil i Informatica-distributionen.
  • Kopiér følgende afsnit fra /etc/odbcinst.ini til $ODBCHOME/odbcinst.ini fil i Informatica-distributionen:
    [Easysoft ODBC-SalesForce]
    Description=Easysoft ODBC-SalesForce Driver
    Driver=/usr/local/easysoft/sf/lib/libessf.so
    Setup=/usr/local/easysoft/sf/lib/libessfS.so
    Threading=0
    FileUsage=1
    DontDLClose=1
    UsageCount=1
    

Du skal også konfigurere Informatica-miljøet, så C runtime-biblioteket er i stand til at indlæse ODBC-driverbibliotekerne. Rediger den relevante miljøvariabel for din platform og dynamiske linker (LD_LIBRARY_PATH , LIBPATH ) og så videre). Vores Informatica-platform er Linux, og derfor har vi tilføjet følgende Salesforce ODBC-drivermapper til LD_LIBRARY_PATH i profilfilen for Informatica PowerCenter-brugeren:

/usr/local/easysoft/sf
/usr/local/easysoft/lib

Vi genstartede derefter PowerCenter-domænet, så Informatica opfangede ændringerne.

Salesforce-forbindelsen var derefter tilgængelig som et relationelt mål eller kilde (ved at bruge Salesforce-datakilden i en relationel forbindelse, hvis type var indstillet til ODBC) i vores Informatica-arbejdsgange.


  1. Hvordan skal jeg tackle --secure-file-priv i MySQL?

  2. Sådan installeres Oracle Database på Windows

  3. Sammenkæd og grupper flere rækker i Oracle

  4. ORA-01111 i MRP i fysisk standby-database