2017-11-20 32 views
0

안녕하세요. 다음 카산드라 cqlsh 문제가 있습니다.카산드라 COPY 명령을로드하는 동안 멈추지 않습니다 .csv 파일

COPY 명령을 사용하여 내 테이블에 .csv를로드하면 명령 프롬프트가 실행을 완료하지 않고 Ctrl + C로 중지하면 테이블에 아무것도로드되지 않습니다 .

여기에서 .csv의 파일을 사용하는 사용자 : 구체적으로는 ukTrafficAADF.csv의 https://www.kaggle.com/daveianhickey/2000-16-traffic-flow-england-scotland-wales 입니다.

나는 아래의 코드를 넣어 :

COPY first_query (AADFYear, RoadCategory, LightGoodsVehicles) FROM '..\ukTrafficAADF.csv' WITH DELIMITER=',' AND HEADER=TRUE; 

이 반복적으로 아래 나에게 오류를 제공합니다 :

Failed to import 5000 rows: ParseError - Invalid row length 29 should be 3, given up without retries 

을 그리고 완료되지 않을

CREATE TABLE first_query (AADFYear int, RoadCategory text, 
LightGoodsVehicles text, PRIMARY KEY(AADFYear, RoadCategory); 

임은 그것을 시도. .CSV 파일에 필요한 열이 더 있어야하며 사용되지 않는 열을 포함하여 SKIPCOLS 예약어로 이전 COPY 명령을 시도하면 동일하게 적용됩니다.

미리 감사드립니다.

답변

1

cqlsh COPY 명령에서 csv의 모든 열이 테이블 스키마에 있어야합니다. 당신의 CSV ukTrafficAADF 귀하의 경우에는

29 열을 가지고 있지만 표에 first_query는 구문 분석 오류를 던지고 그 이유는 단 3 열이 있습니다.

그래서 당신은 CSV에서 모든 사용되지 않는 열을 제거해야 할 어떤 방법으로 당신은

+0

네 말이 맞아, 내가 원하는 일을 할 수있는 방법이 없습니다 cqlsh 복사 명령으로 카산드라 테이블에로드 할 수 있습니다. 나는 두 파일을 사용하여 내 문제를 해결하기 위해 자바 프로그램을했다. 고맙습니다. – Javierdds