Spark로 TLC Taxi Record 데이터 분석하기

bradley·2022년 9월 16일
1

Spark

목록 보기
7/7
post-thumbnail

데이터셋 소개


TLC(The New York City Taxi and Limousine Commission)는 New York City's medallion (Yellow) Taxis, Street hail livery (Green) Taxis, FHVs(For-Hire Vehicles, 임대차량), Commuter Vans, Paratransit Vehicles의 면허와 규제를 담당하는 기관이다. 쉽게 말해 뉴욕의 택시와 모빌리티를 관리하는 기관이다.
TLC는 2009년부터 뉴욕의 Trip Record 데이터를 취합했다. 이 데이터는 매년 수십 GB에 달하는 방대한 데이터이며, 무료로 제공한다.
포함된 정보는 승하차 시간/위치, 소요시간, 승객 수, 요금 등의 정보이다.

데이터셋은 아래 사이트에서 찾아볼 수 있다.

TLC Trip Record Data
https://www1.nyc.gov/site/tlc/about/tlc-trip-record-data.page

제공되는 데이터셋 Format은 Parquet이다.
이 중 2022년 1월 High Volume For-Hire Vehicle Trip Records 데이터에 대해서 PySpark를 이용해 간단히 분석해보도록 한다.

High Volume For-Hire Vehicle Trip Records 데이터셋은 우버(Uber), 리프트(Lyft) 같은 대형 공유 및 임대차량의 운행 기록 정보를 담고 있다.

필드에 대한 정보는 다음과 같다.

취지 및 목적
몇 개년도의 방대한 TLC Taxi Record 데이터를 수집해서 빅데이터를 다뤄볼 수 있지만, Spark API를 사용하는 법에 대해 목적을 두기 때문에 수집 프로세스 등에 대해서 다루지 않는다.

Spark Cluster Resource
Spark Standalone Cluster Manager를 활용하며, 2개의 Worker를 구성하였다.
각 Node는 2 Cores, 4GB Memory 사양으로 진행하였다.


데이터 다운로드


High Volume For-Hire Vehicle Trip Records

2022년 1월 [High Volume For-Hire Vehicle Trip Records] 우클릭 - [링크 복사]

wget 명령어로 데이터를 다운받는다.

wget https://d37ci6vzurychx.cloudfront.net/trip-data/fhvhv_tripdata_2022-01.parquet


Taxi Zone Lookup Table

사이트 아래쪽으로 스크롤을 내리면 Taxi에 승/하차하는 Zone에 대한 정보를 담은 데이터셋을 발견할 수 있다.
Master라고도 하고, Dimension이라고도 하는 데이터셋이다.

뉴욕시 중 어떤 지역에 수요가 많은지 등을 분석할 때 필요한 정보이다.
이 데이터셋도 내려받는다.

wget https://d37ci6vzurychx.cloudfront.net/misc/taxi+_zone_lookup.csv

.zpln 다운로드


아래 캡처는 Zeppelin과 PySpark를 이용하여 분석한 Notebook이다.

Notebook은 아래 링크에서 다운받을 수 있다.
https://github.com/jeongseok912/data-engineering

Zeppelin에서 [Import note]를 클릭하여.zpln 파일을 Import하면 된다.


전체 내용


profile
데이터 엔지니어링에 관심이 많은 홀로 삽질하는 느림보

0개의 댓글