231
8
장
뉴욕 택시 운행 데이터로 위치 및 시간 데이터 분석하기
러리가 필요하다.
안타깝지만, 우리의 바람에 정확히 들어맞는 오픈 소스 라이브러리는 없다.
GeoJSON
레코드
들을 자바 객체들로 변환하는
GeoJSON
파서 라이브러리가 있으나, 결과로 생성된 객체의 공
간 관계를 분석해줄 관련 지리 라이브러리가 없다.
GeoTools
프로젝트라는 것도 있지만 다
른 컴포넌트에 대한 의존성이 크다. 따라서 스파크 셸에서 사용할 라이브러리를 고른다면 피해
야 할 대상에 해당된다. 마지막으로 자바용
Esri
Geometry
API
가 있는데, 의존성이 거의 없
고 공간 관계도 분석할 수 있다. 하지만
GeoJSON
표준 중 일부 형태만 파싱할 수 있기 때문
에 몇 가지 데이터 전처리 없이는 우리가 내려받은
GeoJSON
데이터를 파싱할 수 없다.
적합한 분석 도구가 없다는 것은 데이터 분석가에게는 큰 난관이다. 그러나 우리는 데이터 과
학자다. 만약 도구의 한계로 문제를 해결하지 못한다면 새로운 도구를 만들면 된다. 이번 장
에서는
JSON
파싱을 지원하는 수많은 스칼라 프로젝트 중 하나를 이용하여,
Esri
Geometry
API
에서 처리할 수 없는 사례까지 포함한 모든
GeoJSON
데이터를 파싱할 수 있도록 스칼라
기능을 추가할 것이다. 이어지는 절들에서 다룰 코드는 이 책의 깃허브 저장소는 물론, 독립 라
이브러리로 형태로도 깃허브 (
https
://
github
.
com
/
jwills
/
geojson
)에 따로 공개해뒀으니, 다른
스칼라 지리 ...