2015-02-17 26 views
5

sto ottenendo:Netezza “[08S01] collegamento di comunicazione fallimento” caricamento di dati esterni

ERRORE [HY008] Operazione annullata ERRORE [08S01] collegamento di comunicazione fallimento

Quando si cerca di caricare file txt esterno per Netezza Banca dati. L'ho fatto in passato (solo la scorsa settimana), ma oggi ho ricevuto questo errore. Sono in grado di connettermi al DB, eseguire troncare e creare istruzioni di tabella per il caricamento di questi dati, selezionare, ecc ... Ma ancora nessuna fortuna di caricamento. E 'intorno a 200K record e qui è il mio codice:

INSERT INTO PTG_ITO_ETL.FINANCE_TY15_RT_TPG 
SELECT * FROM EXTERNAL 'C:\\Users\\Documents\\Data Sources\\Finance_FY15_RT\\SBTPG\\TPG_INTUIT_RT_PRODIV_20150214.TXT' 
USING 
(
    MAXERRORS 1 
    DATESTYLE 'MDY' 
    DATEDELIM '/' 
    BOOLSTYLE 'Y_N' 
    Y2BASE 2000 
    ENCODING 'internal' 
    SKIPROWS 1 
    REMOTESOURCE 'ODBC' 
    ESCAPECHAR '\' 
) 

hanno cercato la soluzione da solo altro post che ho trovato su questo argomento:

ERROR [08S01] Communication link failure while inserting data in to external table in netezza

"Ho trovato in Windows 7 e Windows Server 2008 R2 Impostazioni TCP Chimney erano il colpevole.

http://blogs.dirteam.com/blogs/sanderberkouwer/archive/2008/05/15/backward-compatible-networking-with-server-core.aspx

I comandi follwing Fix per me questo problema:

netsh interface tcp set global rss=disabled 
netsh interface tcp set global chimney=disabled 
netsh interface tcp set global autotuning=disabled" 

Ma, inutilmente. Non sai che cosa sta causando questo problema? Sono su Windows 7 usando Aginity, Netezza versione 7.0.4 Grazie!

Grazie, Craig

+0

Quanto tempo ci vuole prima di ottenere tale errore? Inoltre, quale versione specifica del driver ODBC stai usando? Senza sapere cosa sta succedendo nella traccia ODBC, è difficile dirlo. Tuttavia, un bug con sintomi simili a quelli segnalati è stato risolto nel pacchetto client 7.0.4.7. – ScottMcG

+0

Se si aggiunge 'LogDir 'C: \\ Users \\ Documents \\ DataSources \\ Finance_FY15_RT \\ SBTPG \\'' si ottiene un file .nzlog/.nzbad. Se vai su 'maxerrors' a 100 ottieni quei file? se sì, qual è il messaggio di errore? – Niederee

+0

@ScottMcG, Ovunque da 15 s (il più veloce che ho visto) a 86 s (il più lungo è occupato). Driver specifico è la versione 7.01.00.36189. Forse cercherò di aggiornarne uno da IBM, ti farà sapere come va. Grazie! – thagraybush

risposta

1

apprezzato l'aiuto da @ScottMcG, dopo aver scaricato il driver più recente Netezza (7.0.4.7) sono stato in grado di completare questo lavoro. Ancora errato (con lo stesso errore) un paio di volte ma ha funzionato anche molti con test approfonditi.

Ho letto un altro post simile e questo errore sembra comune più grandi sono i record. Ne ho letto uno in cui la persona utilizzava un tavolo esterno con un milione di record e si eccitava ogni volta. Se necessario, io (voi) potrebbe essere necessario dividere i dati in tabelle esterne più piccole per il caricamento su una tabella/DB. Sembra iniziare ad avere problemi intorno a 200k +.

Questo è anche dal mio portatile, quindi forse molto più alto se si trovasse su una scatola all'interno del Data Center. Suggerirei l'aggiornamento del driver e poi la suddivisione in file più piccoli, se necessario.

Grazie a tutti!

+0

Come ultima idea da lungo tempo, è possibile provare a passare Aginity al provider OLE-DB al momento della connessione. È pacchettizzato nello stesso pacchetto client Windows del driver ODBC. – ScottMcG

2

prova a seguire e vedere se gli errori

SELECT * FROM EXTERNAL 'C:\\Users\\Documents\\Data Sources\\Finance_FY15_RT\\SBTPG\\TPG_INTUIT_RT_PRODIV_20150214.TXT' 
(field1 varchar(20000)) 
    USING 
    (
     MAXERRORS 1 
     Delim 199 
     DATESTYLE 'MDY' 
     DATEDELIM '/' 
     BOOLSTYLE 'Y_N' 
     Y2BASE 2000 
     ENCODING 'internal' 
     SKIPROWS 1 
     REMOTESOURCE 'ODBC' 
     ESCAPECHAR '\' 
    )