WFS 지리공간 데이터 수집
WFS 커넥터는 Web Feature Service 버전 1.1.0 서버에서 지리공간 feature 데이터를 읽어 Foundry 데이터셋에 저장합니다. 서버가 다른 버전을 제공하거나 1.1.0 규격을 따르지 않는 경우에는 동일한 동작을 기대할 수 없습니다.
소스 생성
- Data Connection의 +New Source에서 Protocol sources 아래 WFS를 선택합니다.
- 인터넷 직접 연결 또는 중간 에이전트를 통한 연결 경로를 구성합니다.
- Connection details의 WFS Source Config에 Upstream host URL을 입력합니다. 소스 하나는 WFS 서버 하나에 연결합니다.
- 해당 서버의 443 포트에 대한 외부 통신 정책을 추가합니다.
인증과 인증서
인증 구성은 No Auth와 GEOAxIS를 지원합니다. GEOAxIS를 선택하면 연결에 필요한 비인간 주체(NPE) 인증서와 private key를 업로드해야 합니다. More Options에서 인증서는 Configure server certificates, private key는 Configure client certificates로 추가합니다.
요청 형식
More options에서는 다음 설정을 사용할 수 있습니다.
| 항목 | 동작 |
|---|---|
| Use lower-case WFS requests | 기본 요청의 질의 매개변수 이름은 대문자입니다. 서버가 대소문자를 구분하면 소문자로 보내도록 전환할 수 있습니다. |
| Header overrides | 모든 WFS 요청에 추가할 헤더를 지정합니다. |
구성 후 오른쪽의 Preview sources를 선택하면 서버에서 사용할 수 있는 feature layer 이름을 확인합니다.
동기화와 출력 스키마
소스를 만든 뒤 동기화를 추가하고 WFS feature import config에 가져올 feature 이름을 지정합니다.
기본 JSON 모드에서는 feature ID와 속성의 JSON 문자열을 담은 두 열을 생성합니다. 속성마다 자료형이 있는 열을 만들려면 Feature import mode를 Schematized로 바꿉니다. 이 모드는 서버의 스키마 정의를 해석해 열을 구성합니다.
속성이 많은 feature type은 Schematized 모드에서 빌드가 오래 걸릴 수 있습니다. 서버의 스키마 정의가 비표준이면 빌드 실패 가능성도 높아집니다.
배치 크기와 요청 속도
| 항목 | 기본값 | 조정 기준 |
|---|---|---|
| Maximum batch size for imports | feature 1,000개 | 복잡한 도형은 작은 배치, 점처럼 단순한 도형은 큰 배치가 적합한 경우가 많습니다. 작은 지역의 feature가 한 배치 한도를 초과해 실패하면 배치 크기를 늘려 한 요청에서 더 많이 가져올 수 있습니다. |
| Maximum requests to send to upstream per second | 초당 10회 | 짧은 시간에 많은 요청을 보내면 원천 서버가 제한할 수 있으므로 서버의 허용량에 맞춥니다. |
서버 규격과 공간 분할의 제약
커넥터는 GetFeature 응답의 가져온 feature 수를 사용합니다. 일부 비표준 서버가 항상 0을 반환하면 가져올 데이터 양을 결정할 수 없어 종료합니다.
WFS 1.1.0에는 feature 데이터를 일반적인 페이지로 순회하는 기능이 없어 커넥터가 지역을 나누어 배치로 읽습니다. 하나의 작은 지역에 한 배치보다 많은 feature가 있으면 그 데이터를 수집할 수 없어 동기화가 실패합니다.
기본 최소 지역은 10km × 10km이며 변경할 수 없습니다. 동기화의 배치 크기는 변경할 수 있으므로 밀집 지역 때문에 실패할 때에는 도형 복잡도와 서버 부담을 함께 고려해 조정합니다.