API 데이터 매핑
MapForce를 이용한 웹 서비스 데이터 통합은 분석이나 사용자 친화적인 보고서 생성을 위해 필요한 정보를 효율적으로 수집하는 효과적인 방법으로 널리 사용됩니다. 이전 게시물에서는 API 데이터를 활용하여 항만 지역의 5일간의 날씨 예보를 제공하는 방법을 보여드렸습니다 웹 서비스 데이터를 JSON 형식으로 제공하고, 이를 풍부한 서식의 엑셀 파일로 변환합니다 스프레드시트. 저희가 사용한 날씨 관련 API는 다음 회사에서 제공합니다 OpenWeather, 과거, 현재, 그리고 기상 예보 데이터를 제공하는 업체.
하지만 어떤 API에서든 데이터를 통합하는 것은 일회성 작업이 아닙니다. 외부 데이터를 기반으로 솔루션을 구축할 때는 데이터 구조가 변경될 때마다 신속하게 대응해야 합니다. 저희가 처음으로 통합했던 프로젝트인 OpenWeather에서 API를 통해 제공되는 데이터 형식이 변경되었습니다. 이제 API는 풍속과 별도로 JSON 속성 내에 순간 풍속 예측 정보를 포함하고 있습니다. 최근 수에즈 운하 폐쇄의 원인으로 추정되는 순간 풍속 정보는 저희 애플리케이션에 매우 중요한 데이터입니다! 다행히도, MapForce의 데이터 매핑과 엑셀 스프레드시트 모두 새로운 데이터를 추가하기 위해 쉽게 수정할 수 있습니다.

API 데이터 매핑을 수정하기 전에, 새로운 엑셀 출력 형식의 변경 사항을 먼저 이해해야 합니다. 5일 예측의 새로운 주요 테이블 섹션은 다음과 같습니다

스프레드시트 작성자는 각 예보에 대한 예상되는 돌풍 속도를 보여주기 위해 "풍속"과 "풍향" 사이에 새로운 열을 추가했습니다.
스프레드시트의 머리말 부분에도 몇 가지 변경 사항이 있습니다. 풍속 차트에 순간 풍속을 나타내는 항목이 추가되었고, 항구의 지리적 좌표 정보가 추가되었으며, 5일 예보 기간 동안의 최대 순간 풍속이 보고됩니다.

워크시트에 "현재 항구 활동 보기"라는 이름의 새로운 클릭 가능한 버튼이 추가되었으며, 이 버튼을 클릭하면 웹 페이지가 열립니다. 모든 상업용 선박에는 해당 정보를 전송하는 장치가 장착되어 있습니다 자동 식별 시스템 (AIS)는 선박의 위치 정보를 지속적으로 방송하여 충돌 방지 및 항해 도표 작성에 활용됩니다. MyShipTracking.com은 많은 웹사이트 및 기업 중 하나로, AIS 기술을 활용하여 실시간 AIS 데이터를 제공하고, 전 세계 선박의 운항 상황을 보다 정확하게 파악할 수 있도록 돕습니다.
스프레드시트에서 버튼을 클릭하면 myshiptracking.com 웹사이트의 페이지가 열리며, 해당 위치 정보 주변의 활동 내역을 확인할 수 있습니다

이러한 기능 개선을 지원하기 위해 데이터 매핑에서 몇 가지 수정만 필요합니다. 테이블 내 올바른 위치에 순간 풍속 데이터를 삽입하고, 지리 좌표를 매핑해야 합니다.
먼저, 웹 브라우저 창에서 날씨 API를 수동으로 실행하여 풍속 데이터가 포함된 새로운 응답 예시를 얻었습니다. 그런 다음, XMLSpy에서 API 결과에 대한 새로운 JSON 스키마를 생성했습니다. 새로운 JSON 스키마를 원래 파일 이름으로 저장하면, API 데이터 매핑 과정에서 자동으로 "Gust(돌풍)" 항목이 응답에 추가됩니다.

원래 지도 데이터 좌표에 부착된 라벨을 통해 엑셀 스프레드시트에 새로운 "Gust" 열을 삽입할 정확한 위치를 쉽게 찾을 수 있습니다

컨텍스트 메뉴에서 "셀 앞 추가"를 선택하면, 세부 정보를 추가할 수 있는 대화 상자가 열립니다

MapForce는 K열과 L열에 대한 매핑 연결을 편리하게 관리해주기 때문에, 우리는 J열에 대해서만 연결을 설정하면 됩니다.
스프레드시트에서 위도와 경도에 해당하는 새로운 지리 좌표는 G5 셀과 I5 셀에 있습니다. 각 항구의 좌표는 이미 항구 목록의 원본 데이터에 포함되어 있으며, 이는 API를 통해 날씨 예보 데이터를 요청하는 데 사용됩니다. 해당 셀 주소를 대상 목록의 하단에 추가했습니다.
다음은 MapForce 매핑 창에서 수정된 매핑 내용을 보여주는 이미지이며, 여기서 풍속 예측을 위한 새로운 연결 부분이 강조 표시되어 있습니다

마지막으로, 요청 목록에 수에즈 운하와 유럽의 주요 항구들을 추가했습니다. XMLSpy에서 원래 JSON 파일을 수정하여 새로운 항구들을 추가했습니다. 아래는 API 데이터 매핑에 입력할 수 있도록 수정된 JSON 파일이며, XMLSpy의 그리드 보기에서 확인할 수 있습니다

매핑 창 하단에 있는 "출력" 버튼을 클릭하면 매핑 작업이 실행되고, 첫 번째 출력 파일이 표시되는 "출력" 뷰가 열립니다. 시스템에 Excel 2007 이상 버전이 설치되어 있는 경우, MapForce는 결과를 보여주기 위해 Excel을 자동으로 실행합니다

소스 목록에 있는 각 포트에 대한 결과가 생성되었습니다. 미리 보기를 위해 원하는 Excel 파일을 선택할 수 있습니다

"현재 포트 활동 보기" 버튼을 미리보기 창에서 클릭하면, 엑셀에서 파일을 직접 열 때와 동일하게 작동합니다

이 결과는 항구의 위도와 경도를 기준으로 산출되었습니다

지도상의 각 점은 실시간으로 AIS(선박 자동 식별 장치) 정보를 전송하는 선박을 나타냅니다. 저희의 결과를 더욱 정확하게 확인하기 위해, 다른 출력 파일을 미리 보고 다른 항구에 대한 정보도 확인할 수 있습니다. 여기 독일 함부르크의 지도를 보여드립니다

빨간 점은 유조선을, 초록색 점은 화물선을 나타냅니다. 어떤 점을 클릭하든 해당 선박에 대한 자세한 정보를 확인할 수 있습니다

최신 정보를 확인하세요 웹 서비스 통합에 대한 원래 게시글, 짧은 영상을 보세요 영상 시연 MapForce 또는 무료 체험판을 다운로드하세요 API 데이터 매핑 또는 기타 데이터 통합, 변환 및 처리 작업을 시작하는 데 필요한 튜토리얼, 도움말, 그리고 다양한 예제들을 제공합니다. 이를 통해 여러분의 프로젝트를 시작하는 데 도움이 될 것입니다.