hdfsCluster 테이블 함수
지정된 클러스터의 여러 노드에서 HDFS 파일을 병렬로 처리할 수 있습니다. 이니시에이터에서는 클러스터의 모든 노드에 대한 연결을 생성하고, HDFS 파일 경로의 와일드카드(*)를 확장한 뒤 각 파일을 동적으로 분배합니다. 워커 노드에서는 처리할 다음 작업에 대해 이니시에이터에 질의하고 해당 작업을 처리합니다. 이 과정은 모든 작업이 완료될 때까지 반복됩니다.
구문
인자
| Argument | Description |
|---|---|
cluster_name | 원격 및 로컬 서버에 대한 주소와 연결 매개변수 집합을 구성하는 데 사용되는 클러스터 이름입니다. |
URI | 하나의 파일 또는 여러 개의 파일에 대한 URI입니다. 읽기 전용 모드에서 다음 와일드카드를 지원합니다: *, **, ?, {'abc','def'} 및 {N..M} (여기서 N, M은 숫자이고, abc, def는 문자열입니다). 자세한 내용은 경로에서 와일드카드 사용을 참고하십시오. |
format | 파일의 format입니다. |
structure | 테이블의 구조입니다. 형식은 'column1_name column1_type, column2_name column2_type, ...'입니다. |
반환 값
지정한 파일에서 데이터를 읽기 위한 지정된 구조의 테이블입니다.
예제
cluster_simple이라는 이름의 ClickHouse 클러스터가 있고, HDFS에 다음 URI를 갖는 여러 파일이 있다고 가정합니다:
- 'hdfs://hdfs1:9000/some_dir/some_file_1'
- 'hdfs://hdfs1:9000/some_dir/some_file_2'
- 'hdfs://hdfs1:9000/some_dir/some_file_3'
- 'hdfs://hdfs1:9000/another_dir/some_file_1'
- 'hdfs://hdfs1:9000/another_dir/some_file_2'
- 'hdfs://hdfs1:9000/another_dir/some_file_3'
- 이 파일들에 있는 행 수를 조회합니다:
- 이 두 디렉터리의 모든 파일에 있는 행의 개수를 조회합니다.
참고
파일 목록에 앞자리에 0이 포함된 숫자 범위가 있는 경우, 각 자릿수마다 중괄호를 따로 사용하는 방식으로 지정하거나 ?를 사용하십시오.