220528 데이터 파이프라인 구축 오프라인 수업 수강 전 준비

준비


좀 더 많은 것을 얻어가기 위해서

앞선 블로그 포스팅에서 이미 언급했듯이, 내일 드디어 데이터 파이프라인 구축과 관련된 오프라인 수업을 들으러 간다.
여지까지 인터넷으로도 그렇고 수업을 들으면서 느낀거지만, 같은 시간, 같은 수업을 통해서 더 많은 것을 얻어가기 위해서는 사전에 이 수업을 통해서 무엇을 얻고자 하는지, 전체적인 수업 커리큘럼에 대한 이해가 필요하다. 아직 구체적인 수업내용에 대해서는 전달받지 못했지만, 그래도 표면적으로라도 어떤 것들을 배울 것인지에 대해 대략적인 정리를 하고 수업에 임한다면 좀 더 많은 것을 얻을 수 있을 것이라고 생각한다.

수업 사전 준비사항

수업전에 ssh 접속을 위한 터미널 프로그램을 설치해오라는 사전공지가 올라왔다.
나는 기존에 그냥 Mac에서 기본으로 제공해주는 터미널을 통해 ssh 접속을 했었는데, 이번기회에 iTerm2를 사용해보려고 한다.

Read More

220528 데이터 파이프라인 구축 관련 학습의 앞으로의 계획

파이프라인 구축


새로운 수업 그리고 앞으로의 계획

내일 드디어 한 달전에 등록한 데이터 파이프라인 구축 관련 수업을 들으러 간다. 이번 수업이 기대가 되는 이유는 실제 실무에서 데이터 엔지니어로 근무를 하시는 실무자 분께서 해주시는 수업이라 너무 기대가 된다.

여지까지 인터넷 강의를 통해서 AWS를 활용한 데이터 파이프라인을 구축에 대해서 학습을 했었다. 그리고 이전에 가지고 있었던 데이터 엔지니어의 업무 중 하나인 데이터 파이프라인 구축에 대해 가지고 있던 궁금증이 많이 해소가 되었다.
지금도 그 때 인터넷 강의로 공부하면서 남겼던 블로그 글들을 다시 보고 직접 실습을 하면서 내가 놓친 부분이 없지는 않은지, 다시 확인하고 기억이 안나면 다시 강의를 보고 다시 정리하고 하는 과정을 반복하고 있다.

사실 처음 듣고 정리를 해두면, 어느 정도 이해했다 싶다가도 시간이 흐르고 다시 내용을 되새겨보면 약간 흐릿하게 기억 속에 남아있는 경우가 많다. 이 시점에 다시 복습을 해주면, 정말 이전보다는 좀 더 오래 기억에 남고, 이전에는 간과했던 세부적인 내용들까지 눈에 들어와서 더욱 학습이 잘 되는 것 같다.

Read More

220528 SQLD 시험후기

새로 개통한 신림선 지하철


SQLD 자격시험 후기

오늘 SQLD 자격시험을 보고 왔다.
마침 고사장이 서울 지방 병무청 근처 성남고등학교였는데, 오늘이 신림선 경전철 노선이 운행을 하게 되는 첫 날이라 보라매역에서 신림선 경전철을 타고 시험을 보고 왔다.
운행 첫 날인데 이용하는 사람들이 생각보다 많았던 것 같다.

자, 이제 시험 이야기로 돌아와서 시험은 객관식 40문제에 주관식 10문제로, 주관식은 평이하게 나왔고, 객관식에서 헷갈리는 문제가 꽤나 많았지만, 전반적으로 풀만한 문제들이 많았다.
이번 시험을 준비하면서 앞으로 SQL 공부를 어떻게 더 해나갈지 방향을 잡는데 도움이 되었던 것 같다. 사실 이번 SQLD 자격시험을 준비하게 된 계기가 기존에 너무 기본적인 SQL지식만 알고 있어서, 나중에 데이터 가공할때 SQL 쿼리문을 많이 사용할텐데 어떻게 하면 앞으로 좀 더 깊이있게 공부 할 수 있을까? 라는 고민에서 시작하게 되었다.

Read More

22040523 SQL NL Join / Sort Merge Join / Hash Join에 대한 이해

SQL JOIN


이번 포스팅에서는 이번에 SQLD 자격증 시험 준비를 하면서 새롭게 알게 된 NL Join, Sort Merge Join, Hash Join에 대한 내용을 간략하게 정리하려고 한다.
이번 SQLD 자격증 시험은 단순 자격증 취득 목적이 아닌, 내가 SQL에 대해 이론적으로나 실제 SQL 쿼리의 사용에 대한 이해가 어느정도 되는지 확인하고, 부족한 부분을 확인하고, 부족한 부분은 개인적인 공부를 통해 채워나가기 위해서 준비하게 되었다.

SQLD 시험 공부는 2022/05/09에 시작했으니, 오늘부로 14일(2주)째인데, 데이터 모델링의 이해부터 SQL 활용부분까지 전체적으로 이론공부도 했고, 직접 부분 실습도 해보았다.
공부를 하면서 실제로 내가 잘 알지 못하는 부분에 대한 내용도 알게 되었고, 문제풀이를 통해서 내가 알고 있다고 착각하고 있는 부분에 대해서 다시 복습할 수 있는 좋은 계기가 되었다.
그리고 이전에 SQL 성능 향상을 위한 튜닝에 대한 내용에 대해서 얼핏 들어보았었는데, 시험에서 SQL 최적화 기본 원리에 대한 내용을 통해서 SQL 튜닝이 뭔지, 내가 작성한 SQL 쿼리의 실행계획을 어떻게 확인하고 분석하는지에 대해서 아직 기본적인 내용만 알고 있지만, 대략적으로 어떤 내용인지 알게 되었고, 나중에 직접 SQL 쿼리를 작성하면서 실행계획 부분도 한 번 꼼꼼하게 확인해봐야겠다고 느꼈다.
자 그럼 이번 포스팅에서는 NL Join, Sort Merge Join 그리고 Hash Join에 대해서 한 번 정리해보도록 하겠다.

Read More

220513 AWS Certified Solutions Architect Associate Certificates (SAA-C02)

AWS Architect Certification Training


이번 포스팅에서는 EC2 인스턴스의 활용에 대해서 실습한 내용에 대해서 정리해보려고 한다. 이번 포스팅까지만 기본적인 부분을 실습하고, 이제 다음 포스팅부터 본격적으로 AWS SAA(Solutions Architect Associate) level에 맞는 파트에 대해서 학습을 시작할 것이다.

AWS 예산 설정

예산 초과시에 경고를 받을 수 있도록 설정을 하는 것이 좋다. My Billing Dashboard에서 좌측의 메뉴에서 Cost Management - Budgets 메뉴를 통해서 설정한 예산에서 특정 임계값을 넘었을때 이메일이나 SNS메시지로 알람이 올 수 있도록 할 수 있다.

Read More

220512 데이터 엔지니어가 되기 위한 준비와 노력

Data Engineer

이번 포스팅에서는 인터넷에서 우연히 보게 된 현업 데이터 엔지니어의 “데이터 엔지니어가 되기 위한 준비”에 대한 영상을 보고 난 후의 후기에 대해서 작성해보려고 한다.
결과적으로는 너무 많은 도움이 되었다. 아직은 많이 부족하지만, 개인적으로 데이터 파이프라인 구축이나 Hadoop, Spark, AWS 등 데이터 엔지니어가 되기 위해 필요한 기술 스택에 대해서 공부를 해왔기 때문에 이번 영상이 나에게 많은 도움이 되었던 것 같다.

가장 많은 도움이 되었던 부분은 데이터 엔지니어라는 직무적 측면에서 지원하고자 하는 기업을 볼때 어떻게 봐야하는가였다.

데이터 엔지니어 직무로서 바라 본 기업의 업무 프로세스

이 부분은 내가 기업에 지원할때 실제 그 기업에서 어떤 데이터가 발생하는지, 그리고 그 데이터를 수집하고 관리하며, 최종적으로 데이터가 어떤식으로 활용이 되는지에 대한 이해는 필수인 것 같다는 생각을 하였다.

예를들어, A라는 기업에서 아래의 업무 프로세스를 가지고 있다고 가정하자.

[업무 프로세스]
연구 및 개발 -> 제조 -> 배송 -> 온/오프라인 판매

위의 전체 업무 프로세스를 통해 여러 데이터들이 발생할 것이다. 최종 판매 단계에서는 매일 다양한 경로로 판매가 이루어지고 있다는 것을 분석할 수도 있을 것이고, TB규모이상의 데이터가 처리될 것이다.
(위의 각 업무 프로세스상에서 발생하는 데이터들을 추출하기 위해서는 데이터 엔지니어의 필수역량인 데이터 파이프라인 구축을 해야한다.)

기업마다 업무상에서 추출 및 분석하는 데이터는 다르며, 게임회사의 경우에는 게임 플레이할 때 발생하는 로그 데이터나 게임 아이템 마켓에서 구매내역과 관련된 데이터도 있다.

이처럼 데이터를 수집(추출)하고 가공하고, 적재하는 일련의 과정을 통틀어서 ETL(Extract/Transform/Load)라고 한다. 기업은 매일 생산해내는 여러 데이터를 수집하고 관리하며 데이터가 필요한 곳에 전달해서 의사결정에 활용한다.

Read More

220509 AWS Certified Solutions Architect Associate Certificates (SAA-C02) (작성중...)

AWS Architect Certification Training


이번 포스팅에서는 이번에 취득한 AWS Practitioner 자격시험에 이어서 SAA-C02 시험에 대비하기 위해 Udemy에서 강의를 수강하면서 직접 AWS에서의 각종 서비스들을 실습해보면서 본격적으로 시험에 대비해보려고 한다.
이번 AWS Practitioner 시험과 AWS 클라우드 환경에서 데이터 파이프라인 구축해보는 실습을 통해서 일부 AWS 서비스들은 다뤄보았지만, 아직 기존에 다뤘던 서비스들도 그렇고, 다른 서비스들에 대해서도 잘 알지 못하는 부분이 많다.

그래서 이번 기회에 자격증 시험준비를 하면서 나중에 실무에서도 프로페셔널하게 직접 클라우드환경을 구축하고 사용할 수 있도록 이론과 실습을 많이 해보기로 결심했다.
아무래도 스스로 환경을 만들어서 익혀야되는 환경이다보니 자격증과 같은 동기부여 요소가 있어야 좀 더 신경써서 현재 내 지식 수준을 체크하면서 진행할 수 있는 것 같다. :)

오늘은 SAA-C02 시험 대비 겸 AWS 실습 첫 날로, 아래의 내용들에 대해서 개괄적으로 살펴보았다.

Read More

220507 학습 전반에 대한 회고 및 AWS Practitioner 자격증 취득후기

AWS Practitioner

이번 포스팅에서는 3월 중순부터 5월 초까지 한 학습 전반에 대한 회고 및 어제 응시한 AWS Practitioner 시험에 대해 간단하게 후기를 작성하려고 한다.

약 한달 반 동안의 학습 회고

이 한달 반이라는 시간동안 앞으로의 방향설정에 대해 많은 고민을 했었다. 그런데 너무 감사하게도 좋은 분들을 뵙게 되고, 직간접적으로 조언을 들으면서 앞으로 나아갈 방향에 대해서 방향설계를 할 수 있게 되었다. (나중에 이 분들은 따로 뵙고 감사인사를 드릴 것이다.)
너무 많은 일이 있었기 때문에 시간이 한 반년 흘러간 것 같은 느낌이었는데, 지난간 시간을 계산해보니, 대략 한달하고도 보름정도 지났다니 그래도 나름 알차게 시간을 보낸 것 같다.

이 한달 반동안에 있었던 일 중에 가장 큰 성과는 앞으로 나아갈 데이터 엔지니어라는 새로운 도메인을 정하게 된 것과 앞으로 어떤 것을 공부하면서 준비해야되는지, 그리고 기간을 어느정도 두고 준비할지에 대한 목표설정에 대한 부분이었다.

이제 목표로 설정한 부분과 이미 진행한 공부내용들을 기반으로 앞으로 남은 3개월의 기간동안 열심히 달려 볼 계획이다.

[앞으로 3개월동안 할 공부 리스트]

  • 블로그 관리 꾸준히 하기
  • 파이썬 / Scala 활용능력 키우기
  • 코딩테스트 준비(프로그래머스/백준 알고리즘 문제 풀면서 파이썬 활용능력을 키우면서 문제해결능력도 키우자)
  • 포트폴리오 준비 틈틈이하기 (대단한 프로젝트가 아니어도 괜찮다. 과정을 기술하고 그 일련의 과정에서 내가 어떤 것을 배웠고, 앞으로 어떤 방향으로 나아갈지에 대해 보여줄 수 있으면 된다.)
    • Kafka를 활용한 간단한 프로젝트 구성하기 (완료 - 차후에 살붙이기식으로 프로젝트에 내용추가해가면서 확장해갈 예정)
  • 데이터 파이프라인 학습 및 클라우드 환경에서의 응용 & 실습 (+AWS)
  • Hadoop Ecosystem 지식 및 관련기술(Spark, MapReduce)에 대한 활용능력 키우기
  • SQL로 데이터 분석 꾸준히 하기
  • Docker/Kubernetes 학습하기
  • AWS SAA-C02 자격증 시험 준비하기 (6월 말 예정)
  • AWS Practitioner 자격증 시험 준비하기 (취득 완료)

앞으로 할 공부 리스트를 작성해보니 많아보이지만, 각 항목들이 서로 연관되어있는 것들이 많아서 한 가지 항목을 하면서도 부수적으로 다른 항목들도 같이 공부되는 것들이 많다.
서로 시너지 효과를 내는 부분도 많이 있기도 하고, 나중에 데이터 엔지니어로서 지원을 했을 때 나를 좀 더 빛내줄 수 있는 항목들이기 때문에 제대로 준비해보도록 해야겠다.

Read More

220502 코딩 테스트 문제 리스트 Web crawling해보기

Web crawling

이번 포스팅에서는 코테준비를 하기 위해서 코테문제를 풀다가 집중도 안되고, 원래 체크리스트를 만들어 놓고 하나씩 지워나가면서 하면 뭔가 성취감도 느끼고 해서 프로그래머스의 연습문제 페이지에 있는 문제 리스트를 Selenium + BeautifulSoup + Pandas + Python의 조합으로 빠르게 크롤링을 해서 엑셀파일로 뽑아보았다.

Read More