ArcGIS Data Interoperability 익스텐션

Data Interoperability 란?

ArcGIS Data Interoperability 익스텐션은 사용자가 여러 소스와 형식의 데이터를 쉽게 읽고, 조작하고, 병합할 수 있는 다용도 솔루션입니다. Data Interoperability 익스텐션은 Safe Software의 FME Workbench를 사용하며 ArcGIS를 통해 활용합니다.

Data Interoperability는 여러 소스(아래 그림에서 소스 A과 B로 표시됨)의 데이터를 읽고, Transformer(변환모듈)를 사용하여 요구 사항에 맞게 데이터를 변경하거나 재구성한 후 출력 위치(C)에 기록함으로써 데이터 변환 및 통합을 수행합니다:

왜 Data Interoperability를 사용하나요?

  • Data Interoperability는 Oracle Database, JSON 파일 또는 API과 CAD와 같은 다양한 데이터 형식을 활용
  • 아래 사진과 같은 그래픽 모델을 쉽게 읽을 수 있음
  • 유지관리에 용이
  • 자체 문서화
  • 데이터 변환 및 통합의 효율성
  • 활발한 사용자 커뮤니티 그룹

Data Interoperability는 어떻게 사용하나요?

Data Interoperability는 다양한 방법으로 사용될 수 있으며 특히 공간 정보 작업을 편리하게 수행할 수 있습니다. 이 익스텐션을 활용할 수 있는 방법의 예시는 다음과 같습니다:

  • 데이터 변환 및 프로세스 자동화
  • ETL(Extraction, Transformation, Loading) 프로세스
  • 관리자 혹은 사용자에게 알림 메일 송부
  • 데이터 분석 및 분류

프로세스의 예시

1. 3D 빌딩 생성 프로세스

아래의 예시는 시각화를 위해 2D 건물 외곽선을 3D로 변환하는 프로세스입니다. 입력하는 소스는 ① 건물 ID, 높이 등 기본정보를 포함하는 CAD/DWG 파일, ②건물 ID와 건물 높이를 포함하는 CSV 파일을 활용합니다. 이 프로세스를 요약하면 데이터를 읽고 건물 ID를 키 값으로 하여 ①과 ②를 병합한 후, 데이터를 3D로 변환하고 ESRI의 ArcGIS Pro 소프트웨어에서 표출할 수 있도록 출력합니다.

3D 빌딩 생성 프로세스 예시

소스 데이터는 속성 테이블, 그래픽 및 개별 피쳐 정보를 시각화할 수 있는 Reader Transformers를 사용하여 읽습니다.

① 소스 데이터를 읽고 병합합니다.
데이터 값과 지오메트리는 Data Interoperability  익스텐션에서 시각화할 수 있습니다
Extruder Transformer를 사용하여 데이터를 3D로 변환합니다
ArcGIS Pro를 사용하여 원하는 형식으로 출력합니다

2. 날씨와 대기질 이메일 알람 설정

Data Interoperability 익스텐션은 API 데이터를 빠르고 효율적으로 읽고 다양한 방법으로 출력할 수 있습니다. 다른 데이터 변환 예시는 JSON API에서 날씨 및 대기질 데이터를 읽고 활용하는 것입니다. 오픈소스로 제공되는 JSON 데이터를 표 형식으로 전환하여 일기예보 및 대기질과 일치하는 온라인 이미지와 결합한 후 HTML로 변환합니다. 그리고 사용자에게 매일 아침 해당 정보를 이메일로 보내도록 자동화할 수 있습니다. 이는 관리자에게 시스템 오류를 전달하는 방법으로 응용되거나 집중호우 알림 같은 재난 알림 등에도 활용될 수 있습니다.  

날씨와 대기질 이메일 알람 프로세스 예시
해당 프로세스의 이메일 알람 결과 예시

3. 추가활용예시

  • 포인트, 선 및 폴리곤 생성:
    • Data Interoperability는 VertexCreator Transformer를 사용하여 Lat/Lon 또는 X/Y 값으로부터 포인트 데이터를 구축할 수 있습니다 (측정 지점, POI등).
    • 보유하고 있는 데이터가 시작 및 끝 노드인 경우, LineBuilder Transformer를 사용하여 선으로 변환할 수 있습니다 (경로 생성, 도로 등).
    • 모양을 구성하는 선이 있는 경우, AreaBuilder Transformer를 사용하여 폴리곤으로 변환하여 활용할 수 있습니다.
  • SQL:
    • 프로세스 시작 전에 WHERE 절을 사용하여 분석에 필요한 데이터만을 필터링하여 최적화 할 수 있습니다.
    • 프로세스가 끝나고 데이터를 출력하기 전이나 후에 쿼리를 실행합니다.
    • 프로세스 중에 SQL 쿼리를 실행하여 여러 테이블을 조인하거나 일부 공간 쿼리를 실행하거나 신규 테이블을 생성합니다.
  • 스크립팅(Scripting) 기능:
    • SQL 활용과 함께 Data Interoperability는 워크벤치 내에서 python과 R이 모두 실행 가능합니다.
    • 이는 사용자가 보간법 등의 통계 분석을 실행할 수 있음을 의미합니다.
  • 데이터 마이그레이션(Data Migration):
    • Data Migration에 매우 유용하게 사용됩니다. 여러 데이터 소스 형식에서 읽거나 하나의 형식으로 읽어서 엔터프라이즈 데이터베이스나 클라우드로 옮길 수 있습니다.
  • HTTP 호출 또는 XML 파싱(Parsing)
  • JSON 파싱(Parsing): 익스텐션의 JSONFeature Reader를 사용하면 JSON을 ArcGIS에서 활용할 수 있는 피처테이블(Feature table)형태로 변환할 수 있습니다. 중복된 목록이 있을 경우 ListExploder Transformer를 사용하여 필드를 정리할 수 있습니다.

강력한 ArcGIS Data Interoperability 익스텐션을 활용하여 다양한 종류의 데이터를 공간 정보 위에 나타내고, 시각화 된 데이터를 분석과 의사결정에 활용해보세요.