Kibana에서 파이썬 데이터를 활용한 항공편 예약 데이터 시각화

본 블로그 포스트에서는 Kibana와 파이썬을 함께 사용하여 항공편 예약 데이터를 시각화하는 방법을 알아보겠습니다.

1. Kibana 소개

Kibana는 Elastic Stack의 일부인 데이터 시각화 도구입니다. 이 도구를 사용하면 로그 데이터, 시계열 데이터 등 다양한 데이터를 시각적으로 분석할 수 있습니다.

2. 데이터 수집 및 준비

시각화할 항공편 예약 데이터를 수집하고 파이썬으로 처리해야 합니다. 예를 들어, 웹 스크래핑을 통해 항공사 웹사이트에서 예약 데이터를 수집하거나, 데이터베이스에서 데이터를 추출할 수 있습니다. 이후, 파이썬을 사용하여 데이터를 가공하고 필요한 형식으로 변환합니다.

import pandas as pd

# 예약 데이터를 CSV 파일로 저장한 경우
data = pd.read_csv('reservations.csv')

3. Elasticsearch에 데이터 적재

데이터를 Elasticsearch에 적재해야 합니다. Elasticsearch는 Kibana와 연동하여 데이터를 시각화할 수 있도록 도와줍니다. 파이썬에서 Elasticsearch에 데이터를 적재하는 방법은 여러 가지가 있지만, Elasticsearch Python 클라이언트를 사용하는 것이 가장 일반적입니다.

from elasticsearch import Elasticsearch

# Elasticsearch 호스트 설정
es = Elasticsearch(['localhost'])

# 데이터 적재
for index, row in data.iterrows():
    es.index(index='reservations', doc_type='reservation', body=row)

4. Kibana에서 시각화 구성

Kibana에 접속하여 항공편 예약 데이터를 시각화하는 대시보드를 구성합니다. Kibana는 다양한 시각화 도구를 제공하며, 사용자가 원하는 형태로 데이터를 시각화할 수 있습니다.

예를 들어, 파이썬 데이터로부터 항공편 예약 데이터의 시간대별 예약 수를 시각화하는 차트를 생성하는 방법은 다음과 같습니다:

  1. Kibana 대시보드를 생성하고, “예약 수 대비 시간대”와 같은 제목을 지정합니다.
  2. 데이터 시각화 차트 설정을 위해 “새로운 시각화” 버튼을 클릭합니다.
  3. 데이터 소스로 Elasticsearch를 선택하고, “필터”를 사용하여 예약 데이터만 선택합니다.
  4. X축에는 예약 시간을, Y축에는 예약 수를 설정합니다.
  5. 차트 타입으로 막대 그래프나 선 그래프를 선택하고, 필요에 따라 스타일을 변경합니다.

5. 결과

Kibana를 통해 구성한 대시보드에서 항공편 예약 데이터를 시각화할 수 있습니다. 예약 수 대비 시간대 차트를 통해 예약이 가장 많이 이루어진 시간대를 확인할 수 있으며, 다른 필터링 옵션을 사용하여 예약 데이터를 계속해서 분석할 수도 있습니다.

#데이터시각화 #파이썬 #Kibana