프로젝트 회고록

프로젝트 회고록/[최종프로젝트]서울시 혼잡도 데이터를 활용한 안전·문화생활 통합 웹사이트

서울시 혼잡도 데이터를 활용한 안전·문화생활 통합 웹사이트

플레이데이터 최종프로젝트를 마치고 나서 쓰는 회고록입니다. 역할 별로 글을 다 쓰면 너무 길어질 것 같아서, 제 파트 위주로 게시합니다! 더 궁금하신 사항이 있으시다면, 맨 하단에 git 주소를 참고해주세요! 1. 프로젝트 소개 서울시 발생 사고로 인한 혼잡도에 대한 관심 급증으로 인해서, 안전성과 여가·문화 생활을 결합한 종합 정보 제공 웹 서비스를 제공하고 싶었습니다. 따라서 저희 팀은 다양한 소스에서 온 데이터를 통합하고, 분석하고, 예측하는 일련의 과정을 웹서비스에 전부 담았습니다. (1) 팀원별 역할 우상욱(팀장) : 데이터엔지니어링 (1) 데이터베이스 설계 및 구축 (2) 맛집, 명소 데이터 크롤링 (3) Airflow 활용 운영 데이터 파이프라인 설계 및 구축 (4) Aws Lambda 활용..

프로젝트 회고록/음악 평론 웹 제작 프로젝트

4. 참조 무결성 제약 조건으로 인한 DAG 수정

안녕하세요. 오늘은 이번에 TEST DB에서 저희가 개발해놓은 운영 DB로 옮기는 과정에서 생긴 오류에 대해서 포스팅하겠습니다! 일단 간단히 말씀드리면, TEST DB에서 테이블 간의 관계를 생각하지 않고, DAG를 짰고 그 과정에서 SPOTIFY API의 특성을 생각하지 못했던 점이였습니다 ㅜㅜ. SPOTIFY API 글로벌TOP50 트랙(매일 업데이트)을 뽑고, 그 트랙 속에서 아티스트를 추출하고나서, 아티스트의 HOT TRACK 10곡을 뽑아서, 트랙 세부 정보와 트랙 오디오 세부 정보를 뽑는 DAG였습니다. 그런데 아티스트의 HOT TRACK 10곡을 뽑는 API에서, 조회한 ARTIST의 HOT TRACK에는 아티스트가 피처링으로 참여한 곡도 포함되어있었습니다. 그러다보니, 곡의 세부 정보를 봅..

프로젝트 회고록/음악 평론 웹 제작 프로젝트

3. S3 데이터 가공해서 MYSQL로 적재하기

이번 포스팅에서는 S3에 있는 데이터를 가공해서, MYSQL로 적재하는 TRANSFORM, LOAD 과정을 작성하겠습니다. 아무래도, 각각 데이터 특성이 다르다보니까, ETL 과정에서도 조금 다른 방식의 가공과 적재 방법을 사용했습니다. 일단 학습에 목적을 두기도 했지만, 실무에서 어떤 방식으로 응용될지도 조금 고민해볼 수 있었던 것 같습니다. 데이터 파이프라인 일단 이번 DAG의 파이프라인은 이렇습니다. 사실 지금은 태스크 별로, S3 데이터를 읽는게 아니라, 전역변수로 S3에서 읽고 있는데, 만약에 EC2 환경에서 메모리나 이런 부분들이 부족하다면, 태스크별로 S3에서 데이터를 읽고와서, TASK를 마무리하면 그 때 해당 변수를 제거하는 식으로 메모리를 컨트롤할 수 있을 것 같습니다. 지금은 매일 업..

프로젝트 회고록/음악 평론 웹 제작 프로젝트

2. SPOTIFY 데이터 AIRFLOW로 S3에 업로드하기

안녕하세요. 이번에는 저번 포스팅에 이어서, SPOTIFY API를 활용해서, AIRFLOW로 S3에 업로드하는 과정을 자동화한 것에 대해서 작성하겠습니다. 확실히 S3에 업로드 하는 과정에서 조금 고민거리들이 많았는데, 일단은 진행하면서 배우는 중입니다. 그럼 이 과정들을 소개해보도록 하겠습니다. 데이터 파이프라인 설계 일단 AIRFLOW로 S3에 업로드하는 것은, EXTRACT 과정으로 삼았습니다. 원본 데이터를 JSON에 그대로 저장하고 S3에 업로드해서 AIRFLOW 스케줄러에 문제가 생겼을 때도, 어느 정도 복구할 수 있도록 S3를 거쳐가도록 파이프라인을 설계했습니다. 일단은 Spotify_Extract_toS3의 DAG의 파이프라인입니다. 일단 순서는 다음과 같습니다. globaltop50 데..

프로젝트 회고록/음악 평론 웹 제작 프로젝트

1. SPOTIFY API로 데이터 추출하기

안녕하세요! 저번에는 음악 평론 웹 제작 프로젝트를 미니 프로젝트로 진행하면서, 웹의 뼈대 정도는 만들어둔 상황입니다. 아직 프론트도 제대로 구현되지 않았고, 백 쪽도 확실하게 되진 않았습니다!! 전부 완성이 되면 기능 소개글도 한번 올려보겠습니다. 그런데 뒤에 데이터 파이프라인을 만들기가, 영 쉽지 않습니다.... 특히 SPOTIFY API 에서 주는 데이터들이 그렇게 친절하지 않아서..? 직접 오류를 제어하면서 뽑는 코드를 만들려니 고생 꽤나 했는데, 재밌습니다..하하; 그래서 SPOTIPY라는 누군가 만들어둔 라이브러리를 발견하고 쓰려고 했는데, 이건 오류제어를 하면서, 계속해서 API 호출을 할 수 없었습니다. 그래서 대표적인 에러를 제어하는 방식으로, 모듈을 조금 만들어봤습니다. 일단은 데이터엔..

프로젝트 회고록/사용자 대화 기반 감성 분석 및 노래 추천 프로젝트

사용자 대화 기반 감성 분석 및 노래 추천 프로젝트 회고

세번째 미니프로젝트를 마치고 나서 쓰는 회고록입니다. 1. 프로젝트 소개 챗봇을 통해 AI와 공감 형태의 대화를 진행하고, 그 속에서 추출된 감성분석을 통해 감성과 유사한/감성과 반대의 음악을 추천해주는 웹사이트를 제작하였습니다. 기획 의도 : 기존 음악어플의 플레이리스트/순위 및 장르 추천에서 벗어나 사용자의 개인 감정에 기반한 새로운 음악 추천 모델 구현 데이터셋 챗봇 웰니스 대화 스크립트 : https://aihub.or.kr/aihubdata/data/view.do?currMenu=120&topMenu=100&aihubDataSe=extrldata&dataSetSn=267 감성분석 감성말뭉치 : https://aihub.or.kr/aihubdata/data/view.do?currMenu=115&t..

프로젝트 회고록/심장질환 AI 예측 머신러닝 프로젝트

심장질환 AI 예측 머신러닝 프로젝트 회고

두번째 미니 프로젝트를 마치고 나서 쓰는 회고록입니다. 3일 정도의 시간동안 무사히 기획한 방향대로 진행하고, 프로젝트 평가 1위를 할 수 있게 해준 병창님, 경목님 모두 고생하셨습니다! 1. 프로젝트 소개 심장질환 AI 예측 대중이 쉽게 접근 가능한 심장질환 판별 및 발생 확률 제공 웹사이트를 제작하겠다는 목적으로 프로젝트를 진행했습니다. 데이터셋은 캐글의 Personal Key Indicators of Heart Disease 데이터를 활용해서, 다양한 머신러닝을 경험해보면서 웹사이트에 모델을 적용하는 방식으로 적용했습니다. https://www.kaggle.com/datasets/kamilpytlak/personal-key-indicators-of-heart-disease 진행기간 2023년 2월 ..

프로젝트 회고록/NIA(한국정보화 진흥원) 주관 위기대응 프로젝트

NIA(한국정보화 진흥원) 주관 위기대응 프로젝트

프로젝트 개요 프로젝트에 참여 하게된 계기 NIA에서 프로젝트 모집 공고를 확인했었다. 당시에 꽤나 급하게 개발자를 구하고 있었고 오픈 API를 이용해서 받은 데이터를 띄우는 방식의 웹을 만들면 되는 프로젝트였다. 오픈 API는 많이 써봐서 자신 있었고, 데이터는 당근 자신 있었고, 웹이 자신이 없었다. 그래도 한번 해보자는 마음으로 하게 됐는데, 이 프로젝트의 취지는 이렇다. API 중개서버를 활용해서 국가 위기 상황 발생 시 단 시간 내에 웹 개발 위기 상황 시, 국민에게 위기 대응 상황판 제공 중개 API를 사용하는 이유는, 위기 상황 발생시 API키 인증 및 발급 절차를 최소화하고자 이렇게 진행한다고 했다. 이 구성도에서, 개발자는 중개 API서버에서 다양한 데이터를 활용해 국민에게 정보를 제공하..

우상욱
'프로젝트 회고록' 카테고리의 글 목록