Client
Vertica 6.1:vsql 因結果集大而崩潰
我正在編寫一個腳本來從我們的 Vertica 集群中導出數據。我正在使用的命令是:
vsql MY_DB_NAME -At -F$'\t' -o /data/vertica_archive/MY_DATA_2015_07_01.tsv -c "select * from DATA_TABLE where ts_date ='2015-07-01';"
偶爾會導致:
server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. connection to server was lost
我們所有的查詢都是簡單的“select * from TABLE where ts_date=DATE”,但是一些查詢結果集會生成一個 10GB 的文件。
範例行數:
MY_DB=> select count(*) from DATA_TABLE where ts_date ='2015-07-01'; count ---------- 18213295 (1 row)
是否有任何退出程式碼文件,或者任何人都可以建議如何調試?
在不了解您的環境的情況下,您可以嘗試幾件事。第一個是添加額外的過濾器以使輸出文件更小。另一種是使用管道查看器來監控進度。
如果您使用的是企業版,則應將問題報告給支持人員。
查看用於此查詢的資源池的 RUNTIMECAP 或 QUEUETIMEOUT。我確實希望您在伺服器上本地執行此操作,然後將它們從您的伺服器中複製出來。在移動它之前嘗試拉上拉鍊。 參見範例:
vsql -U dbadmin -w dbadmin -F $'|' -At -c "SELECT * FROM table" | gzip -c > '/vertica/backup_table_one.gz'
您還將節省頻寬和時間。