본문 바로가기
Project

[프로젝트] 뉴진스 트윗 클러스터링 #1 개요

by nothing-error 2023. 1. 25.

프로젝트 시작 동기

 

- 원래 음악 취향은 김광석을 비롯 90년대~ 00년대 발라드인데 최근 뉴진스라는 그룹명이 계속 보였다. 우연히 노래를 들어보니 왜 인기가 많은지 이해되면서 뉴진스의 노래를 계속 듣게되었고, 이제는 팬이다. 마침 Streaming 관련 프로젝트를 한 번 경험해보려고 트위터 api 를 살펴보고 있었는데 BTS 에 대한 건 많이들 해서 뉴진스로 방향 살짝 틀어서 시작했다.

 

프로젝트 소개

- 트위터API 를 통해서 실시간(streaming) 트윗을 카프카로 저장 및 처리하여 Spark streaming을 통해서 카프카에 있는 스트리밍 데이터를 읽고 정제한 다음 DW에 저장. DW에 있는 테이블을 읽어 SparkML로 트윗 메시지의 내용을 각나라 언어별로 군집화.

시작 전 준비사항 

- 카프카 클러스터 구성

- 2022.12.29 - [data processing/spark] - Zeppelin 환경구성

- 2022.12.29 - [data processing/spark] - Zeppelin(spark) 인터프리터 설정

- 2022.12.28 - [data processing/hadoop] - Hadoop 클러스터 환경 구성

- 2022.12.28 - [data processing/spark] - SPARK 서버 환경 구성

 

SPARK 서버 환경 구성

계정관련 설정 1. user 계정 생성 $sudo useradd dahy -m -s /bin/bash 2. 계정 암호 설정 $sudo passwd dahy 3. 계정 삭제(option) $sudo userdel -r dahy 4. sudo 권한 설정 $sudo visudo dahy ALL =(ALL) NOPASSWD:ALL 5. 계정 전환 $sudo su

nothing-error.pysyntax.com

프로젝트 환경 

GCP 4개의 인스턴스를 생성하여  Hadoop 클러스터 구축 후 진행함(master 1대, worker 3대)

운영체제 : ubuntu 20.04

ram : 8g

storage : 50g

 

 

프로젝트 과정

1. 트윗 데이터 수집

2. 트윗데이터 정제

3. 트윗 데이터 DW 에 적재

4. 테이블에 있는 데이터 정제

5. 모델링

6. 군집화 확인

 

필요 스택

- Spark, Hadoop, Kafka

 

 

2023.01.25 - [Project] - [프로젝트] 뉴진스 트윗 클러스터링 #2 프로그래밍

댓글