인프런 커뮤니티 질문&답변

elin님의 프로필 이미지
elin

작성한 질문수

Airflow 마스터 클래스

아래 프로젝트가 가르쳐주신 내용으로 가능한 수준인지 문의드립니다.

작성

·

106

0

현재 커리큘럼을 모두 수강 후에 아래 실습이 가능한지 여쭤봅니다!

(파이썬으로 단순 분석 및 크롤링은 가능하다는 전제하에 airflow 배치 및 기타 기술적인 요소에 대해 궁금합니다.)

 

1~2주에 한번 배치 작업

Task 1 유튜브 A 채널의 영상 자막 + 댓글 크롤링

Task 2 크롤링 된 컨텐츠 별 자막 내용에 기반하여 ChatGPT를 활용한 영상 내용 요약 -> 블로그 포스팅

Task 3 컨텐츠별 자막 텍스트 분석으로 컨텐츠별 조회수, 댓글 수 , 긍부정 비율 대시보드 시각화

 

파이썬으로 크롤링 코드 및 텍스트분석이 가능하다는 전제하에,

위 TASK들을 AIRFLOW를 사용해 자동화하는 프로젝트를 현재 영상에서 알려주시는 지식으로 구현가능한지궁금합니다!

아직 끝까지 수강 전이라 질문의 내용이 부족할 수 있지만, 블로그포스팅 자동화, 대시보드 시각화 내용이 있는 듯 해서 여쭤봅니다!

그리고 현재 커리큘럼에는 Api로 데이터 받아오는 실습만 있는데, 크롤링으로 데이터를 가져오게되면 달라지는 부분이 많을지도 궁금합니다.

답변 3

0

elin님의 프로필 이미지
elin
질문자

넵 답변감사합니다.

 

공공 데이터 API실습처럼 제가 크롤링하여 데이터를 전처리 후 csv로 저장 > postgresSQL DB에 테이블 형태로 저장 > Rshiny로 유튜브 컨텐츠 별 조회수, 댓글 수 시각화

 

이 과정은 가르쳐 주신 실습에서 데이터만 변형하면 될까요? 이 과정에서 실습 강의에서 알려주시는 내용 외에 제가 추가로 고려해야하는 부분이 있을까요?

0

김현진님의 프로필 이미지
김현진
지식공유자

안녕하세요 elin 님!

Airflow로 어떤 task가 가능한지를 보려면 그 task가 파이썬으로 처리 가능한지만 보면 됩니다. 주로 데이터 엔지니어 업무에 필요한 것들은 hook으로 이미 제공되고 있지만 hook으로 제공하지 않더라도 파이썬으로 처리만 가능하면 얼마든지 오퍼레이터나 훅을 직접 만들면 됩니다.

 

우선 하나씩 생각해보면 ..

Task1: 저는 유투브 자막 크롤링을 해본적은 없지만 찾아보니 관련한 파이썬 라이브러리가 있긴 한것 같네요. 그럼 충분히 가능할 것으로 보입니다.

Task2: chatgpt API 이용하는 것도 충분히 가능합니다. 그런데 블로그 포스팅은 어떤 블로그냐에 따라 편하게 API를 이용해서 처리할 수도 있고 아니면 selenium 같은 라이브러리를 써서 좀 어렵게 포스팅이 가능할 것 같습니다. 제가 실습 마지막 부분에서 넣은 강의가 티스토리에 포스팅하는 거였는데, 지금은 티스토리 API 기능이 종료된것 같아요. 그러면 selenium 라이브러리로 좀 어렵게(?) 포스팅해야하지 않을까 싶어요.

Task3: 이것도 충분히 가능하긴한데, Airflow Task 처리보다는 엔지니어링 측면에서 아키텍처를 좀 고민하셔야 할겁니다. Airflow Task에서 텍스트 분석을 하고 텍스트 분석 결과를 어딘가 저장하셔야 해요. (RDB 테이블 또는 S3 등등) 그리고 대시보드는 해당 저장소를 바라보고 웹에 뿌려주도록 구성하셔야 할 것 같습니다. 그러면 웹 서버는 Airflow와는 별도의 서버를 구성하시는게 좋고, Airflow --> 저장소 --> 대시보드 이런식으로 파이프라인을 그려야할텐데, 어떻게 그리는게 좋을지는 좀 고민해보셔야 할듯해요. 대용량 데이터의 빠른 응답이 필요하다면 저장소로 Redis 같은 저장소롤 고려해봐야 할 수도 있구요.

 

아무튼 만들다보 어렵지만 재밌는 프로젝트가 될 것 같네요 ^^

궁금하신건 언제든 물어보시고 화이팅입니다!

 

0

안녕하세요, 인프런 AI 인턴입니다.

elin님의 질문에 대한 정보 분석 결과, 직접적으로 코스 내용과 동일한 프로젝트 사례나 실습 가이드를 찾지 못했습니다. 그러나 제공된 정보 내에 유사한 주제나 방법론에 관한 데이터는 존재하여, 이를 기반으로 프로젝트의 가능성을 판단해 드리겠습니다.

  • 데이터 엔지니어 업무 초보자가 궁금한 점 질문드립니다.
    이 링크에서는 Airflow 및 Google Cloud를 이용한 데이터 엔지니어링 프로젝트에 대한 조언이 있어, 작업 자동화 및 배치 작업 설정에 도움이 될 수 있습니다. 대시보드 시각화와 관련하여 빅쿼리와 데이터 처리, 그리고 이를 Airflow로 어떻게 관리할 수 있는지에 대한 토론이 있었습니다.

  • 외부 파이썬 함수 수행하기 관련 질문 드립니다.
    Airflow에서 외부 코드를 호출하는 방법에 대한 내용과 한계, 해결방안에 관련된 Q&A입니다. 이는 크롤링이나 분석 코드를 Airflow의 task로 관리하는 데 유용한 정보를 제공합니다.

  • 1년에 한 번 돌리는 스케줄도 에어플로우로 관리하면 좋을까요?
    Airflow 스케줄링에 관한 이 질문은, 1~2주에 한 번 실행되는 배치 작업을 Airflow로 관리하는데 대한 실질적인 조언을 포함하고 있습니다.

  • dag 스케줄링 관련
    Airflow에서 스케줄링 설정과 관련된 대응하는 정보를 담고 있습니다. 데이터 수집 및 처리가 시간에 의존할 때, 이와 관련된 정보가 유용할 것입니다.

  • 시각화 관련 질문
    이 글에서는 Airflow와 별도로 데이터 시각화 도구(여기서는 RShiny, 하지만 별도로 Python 기반 도구인 Dash나 Plotly도 언급)를 사용하는 방법에 대해 논의하고 있습니다. 이는 Task 3에 해당하는 대시보드 시각화를 구축하는 데 참고할 만한 내용입니다.

elin님의 프로젝트는 Airflow를 사용하여 크롤링 데이터를 처리하고, ChatGPT와의 연동, 데이터 시각화까지 포함하는 복잡하고 다양한 기술 스택을 요구합니다. 제공된 링크들은 파이썬 기반의 크롤링 코드 및 API 사용, 배치 작업, 데이터 시각화에 Airflow를 사용하는 방식에 대한 통찰을 제공합니다. 그러나 직접적으로 제안된 프로젝트 사례가 수록되어 있지 않음을 유념하시기 바랍니다.

API로 데이터를 가져오는 방법 외에 크롤링으로 데이터를 가져오는 경우에는 주로 크롤링 로직에 대한 코드 수정이 필요할 것입니다. Airflow 자체는 데이터를 어떻게 취득하는지에 개입하지 않고, 작업(flow)을 스케줄하고 관리하는 데 초점을 맞춥니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

elin님의 프로필 이미지
elin

작성한 질문수

질문하기