파일에서 수십억 개의 레코드를 읽는 응용 프로그램을 작성한 다음 IMPALA ODBC를 통해 Impala 테이블에 레코드를 씁니다. 이미 매개 변수odbc impala 불량 쓰기 성능
INSERT INTO table VALUES (?,?,.....,?)
과 단일 문을 사용하거나 여러 삽입하여 삽입 쿼리를 실행하려고했다 :
INSERT INTO table VALUES (?,?,.....,?),(?,?,.....,?),...,(?,?,.....,?)
을하지만 전나무는 매우 느립니다 각 레코드에 대한 HDFS에 하나 개의 파일을 생성; 두 번째는 더 빠른하지만 쿼리는 매우 길고 억의 기록을 위해 나는 다음과 같은 오류가 나타납니다
[Cloudera][SQLEngine] (31580) The length of the statement exceeds the maximum: 16384.
누군가가 내 응용 프로그램에 대한 언어로 C#을 사용해야합니다 점을 감안 내 문제에 대한 몇 가지 솔루션을 제공합니다.
감사합니다.
당신이 레코드를 읽고있는 파일의 종류는 무엇입니까? –
Csv 또는 텍스트 파일입니다. – marley1990