요구 사항
ArcGIS Enterprise 배포가 있는 경우 서버 측 비동기 일괄 지오코딩 패턴을 활용하면 로케이터 서비스에서 최적의 성능을 얻을 수 있습니다. 이 방법은 포털에서 발행한 로케이터에서 작동합니다. 로케이터를 생성하는 방법과 포털에 공유하는 방법에 대한 자세한 내용은 로케이터 생성과 로케이터 공유를 참고하세요.
장점
ArcGIS Enterprise 기능을 사용하여 발행된 로케이터를 최대한 활용할 수 있습니다. 로케이터가 포털에 공유되고 나면 로케이터를 사용하여 일괄 지오코딩을 수행할 수 있습니다. 포털을 사용하여 일괄 지오코딩을 수행하면 다음과 같은 몇 가지 장점이 있습니다.
- 일괄 지오코딩 작업을 최대한 빨리 완료하도록 서버 리소스를 최대화합니다.
- ArcGIS 관리자가 백엔드 리소스를 관리하여 서비스가 오버로드되지 않도록 합니다.
- 내 데이터와 발행된 위치 로케이터를 사용하여 기관의 방화벽으로 보호되는 대규모 일괄 지오코딩을 수행할 수 있습니다.
- 대규모 일괄 지오코딩 작업이 실패하지 않도록 청크 및 재시도 로직이 빌트인되어 있습니다.
아키텍처
발행된 로케이터 서비스를 최대한 활용하려면 지오코드 서버의 인스턴스 수를 늘리면 됩니다. ArcGIS Server Manager에서 다음 작업을 수행할 수 있습니다.
위의 다이어그램에서 관리자는 로케이터 서비스를 4개의 인스턴스로 확장했습니다. 관리자는 로케이터에 대한 일괄 지오코딩 스레드 수를 4로 설정하여 일괄 지오코딩 성능을 4배로 향상시킬 수 있습니다. 관리자는 포털 홈페이지에서 기관 탭으로 이동하여 설정 > 유틸리티 서비스를 클릭한 다음 아래의 지오코딩으로 스크롤하여 일괄 지오코딩 스레드 수 등록정보를 설정할 수 있습니다. 사용 가능한 지오코딩 인스턴스가 4개일 때 2명의 사용자가 동시에 일괄 지오코딩을 수행하려는 경우 관리자는 일괄 지오코딩 스레드 수 등록정보를 2로 설정할 수 있으며, 다른 작업이 완료될 때까지 기다리는 동안 작업이 대기 목록에 추가되고 시간이 초과될 수 있습니다. 그러면 각각의 일괄 지오코딩 작업이 사용 가능한 로케이터 인스턴스 중 2개에 대해 실행되고 백엔드 위치 로케이터 서비스는 여러 작업을 동시에 제출하는 작업을 처리할 수 있습니다.
하드웨어 권장 사항
최상의 지오코드 서비스 성능을 얻기 위해서는 지오코드 서비스를 호스팅할 서버 머신에 대해 다음 사항이 권장됩니다.
- 가상 머신이 아닌 실제 머신이어야 합니다.
- Wi-Fi가 아닌 이더넷을 통해 네트워크에 연결된 머신이어야 합니다.
- SSD 드라이브에 ArcGIS Server가 설치되어 있는 머신이어야 합니다.
- 다중 머신 사이트의 경우 네트워크 공유를 사용하는 대신 로케이터를 각 머신에 발행해야 합니다.
구성
로케이터를 기관에 공유한 경우 이러한 단계를 완료하여 관리자가 위에 설명된 비동기 일괄 지오코딩 패턴을 사용하도록 포털을 구성할 수 있습니다.
일괄 지오코딩 시간 제한 늘리기
기본 설정에 따라 GeocodingTools 지오프로세싱 서비스는 200분 넘게 걸리는 작업에 대해 시간 초과됩니다. 일괄 지오코딩 작업을 완료하는 데 걸리는 시간이 3시간 20분을 초과하는 것으로 예상될 경우 클라이언트가 서비스를 사용할 수 있는 최대 시간을 늘려야 합니다.
- 호스팅 서버의 ArcGIS Server Manager로 이동합니다.
- ArcGIS Server Manager 디렉터리의 유틸리티 폴더를 클릭합니다.
- 지오코딩 도구 지오프로세싱 서비스를 클릭합니다.
- 풀링 배너를 클릭한 다음 클라이언트가 서비스를 사용할 수 있는 최대 시간을 변경합니다. 대규모 일괄 지오코딩 작업이 시간 초과되지 않도록 해당 값을 매우 큰 수로 늘립니다.
- 저장 후 다시 시작 버튼을 클릭합니다.
지오코드 서비스 확장
ArcGIS Server 머신의 코어 수에 따라 지오코드 서비스 배포를 확장할 수 있습니다. 실제 코어가 8개인 ArcGIS Server 머신을 일괄 지오코딩에만 사용하려는 경우 머신당 최소 인스턴스 수와 머신당 최대 인스턴스 수 매개변수를 8로 설정하여 일괄 지오코딩의 속도를 8배 높일 수 있습니다. 하지만 지오코드 서비스를 호스팅하는 ArcGIS Server 머신이 가상 머신(VM)인 경우에는 머신에 있는 가상 코어 수의 절반으로 확장하는 것을 권장합니다. 따라서 VM에 8개의 가상 코어가 있는 경우 지오코드 서비스를 4개의 인스턴스로 확장하는 것을 권장합니다.
- 호스팅 서버의 ArcGIS Server Manager로 이동합니다.
- ArcGIS Server Manager 디렉터리의 폴더에 지오코드 서비스를 발행한 경우 해당 폴더 이름을 클릭합니다. 기본 발행 폴더는 Site 폴더(루트)입니다.
- 확장하려는 지오코드 서비스를 클릭합니다.
- 풀링 배너를 클릭하고 머신당 최소 인스턴스 수와 머신당 최대 인스턴스 수 매개변수를 원하는 인스턴스 수로 동일하게 변경합니다. 지오코드 서비스의 경우 항상 정확한 수의 인스턴스가 지오코딩에 사용되도록 하려면 두 매개 변수의 값이 항상 동일해야 합니다.
- 저장 후 다시 시작 버튼을 클릭합니다.
로케이터에 제안된 일괄 지오코딩 스레드 수 구성
포털에 발행된 로케이터는 페더레이션된 GIS Server 사이트에서 실행되는 GeocodingTools 지오프로세싱 서비스에서도 사용됩니다. 지오프로세싱 서비스는 지오코딩 유틸리티 서비스로 동시 요청을 여러 개 전송하여 일괄처리 지오코딩의 전체 실행 속도를 높일 수 있습니다. 지오프로세싱 서비스가 수행할 수 있는 동시 요청 수(일괄 지오코딩 스레드 수)는 포털 관리자가 구성할 수 있습니다. 일괄 지오코딩 스레드 수를 올바른 값으로 설정하는 것이 중요합니다. 잘못 설정할 경우 일괄 지오코딩 오류가 늘어납니다.
일괄 지오코딩 스레드 수를 지오코드 서비스에 사용할 수 있는 인스턴스 수에 비례하여 설정하는 것이 가장 좋습니다. 예를 들어, 지오코드 서비스에 사용할 수 있는 인스턴스가 8개 있고 ArcGIS Server 머신이 일괄 지오코딩에만 사용되는 경우 일괄 지오코딩 스레드 수를 8로 설정합니다. 지오프로세싱 서비스가 실행되면 8개의 동시 일괄 지오코딩 요청이 로케이터 서비스에 전송됩니다. 로케이터 서비스에 더 많은 인스턴스를 사용할 수 있는 경우에는 일괄 지오코딩 스레드 수를 적절히 조정하여 로케이터 서비스의 인스턴스를 최대한 활용합니다. 하지만 두 명의 사용자가 동시에 동일한 서비스에 대해 일괄 지오코딩하려는 경우 관리자가 일괄 지오코딩 스레드 수를 4로 설정해야 합니다. 그러면 각 사용자가 사용 가능한 지오코드 서비스 인스턴스의 절반을 사용하며 백엔드 지오코드 서비스가 요청을 처리할 수 있습니다.
ArcGIS World Geocoding Service의 경우에는 일괄 지오코딩 스레드 수를 구성할 수 없습니다. 다음 구성은 유틸리티 서비스로 구성되어 발행된 다른 모든 로케이터에 적용됩니다.
로케이터에 제안된 일괄 지오코딩 스레드 수를 설정하려면 다음 단계를 따르세요.
- ArcGIS Pro를 사용하여 원하는 로케이터를 포털에 발행합니다.
- 관리자로 포털에 로그인합니다.
- 콘텐츠를 클릭하고 로케이터가 기관과 공유되었는지 확인합니다.
- 기관을 클릭한 다음 설정에서 유틸리티 서비스로 이동합니다.
- 아래의 지오코딩 섹션으로 스크롤하여 로케이터 추가를 클릭합니다. 일괄 지오코딩을 위해 구성할 로케이터를 선택하고 일괄 지오코딩 스레드 수 값을 조정합니다.
- 확인을 클릭하고 저장을 클릭합니다.
- 호스팅 서버의 ArcGIS Server Manager로 이동합니다.
- ArcGIS Server Manager 디렉터리의 유틸리티 폴더를 클릭합니다.
- 지오코딩 도구 지오프로세싱 서비스를 클릭합니다.
- 저장 후 다시 시작 버튼을 클릭합니다.
비고:
일괄 지오코딩 스레드 수는 로케이터에 사용 가능한 인스턴스 수보다 작거나 동일해야 합니다. 더 큰 값을 선택하면 일괄 지오코딩 작업에 실패할 수 있습니다.
일괄 지오코딩이 활성화된 도구
관리자가 로케이터별로 일괄 지오코딩 스레드 수를 구성한 후에는 사용자가 일괄 지오코딩 작업에서 향상된 성능을 이용할 수 있습니다. 이러한 향상된 성능을 이용할 수 있는 도구에는 ArcGIS Pro의 지오코드 테이블, 테이블에서 위치 지오코딩, 지오코드 파일과 Map Viewer Classic의 테이블에서 위치 지오코딩이 있습니다.