Software Engineering
-
데이터 엔지니어 공부를 위한 5권의 책Data 2020. 12. 19. 18:16
| Check English Version Here 3년 전, 식품연구원에서 직무전환하여 데이터 엔지니어로 시작해 온라인 강의, 책, 유투브, 블로그 등을 뒤져가며(?) 하루하루 업무를 진행하고 고민해 왔던 것 같습니다. 데이터와 관련해 (특히 온프레미스 환경에서) 업무를 진행하면서, 대학교 수업 전공에서 배우는 것과 같이 좀 더 잘 정리된 이론적인 체계가 있으면 좋겠다는 생각을 많이 했는데요. 이 글에서는 지난 시간 동안 데이터 엔지니어링과 관련한 사항들을 공부하며 데이터 업무를 진행할 때에 관점의 토대가 될 정도로 많이 참고할 수 있었던 책 5권을 추천해보려고 합니다. 먼저 보시는 분들이 자신의 상황에 맞게 어떤 책이 도움이 될지 고르실 수 있도록, 5권의 책 중에 선택할 때 사용할 관점(Level ..
-
(FASTCAMPUS) 패스트캠퍼스 온라인 'THE RED: 데이터사이언티스트 하용호' 후기 - 강의내용요약 #1Data 2020. 12. 19. 16:30
이번 글에서는 패스트캠퍼스의 온라인 강의 'THE RED: 데이터사이언티스트 하용호'의 강의내용을 요약한 것과 개인적인 후기를 전달 드리려고 합니다. 위 강의는 Tmax, KT, SKT에서 데이터 관련 직무로 일하시고 데이터 관련 회사 창업 후 Kakao에 성공적으로 매각하신 하용호 님이 데이터사이언티스트라는 부분에 중점적으로 진행하신 강의입니다. 총 강의시간이 6시간이 조금 넘는데 20만원 가까이 되는 가격에 고민이 있으신 분이 있을 것 같아서, 제 주관을 더하여 강의내용을 상세히 요약하고 제 경험을 더해 후기를 작성하겠습니다. 결론적으로 말씀드리면, 짧은 강의시간이 오히려 컴팩트 해서 좋았으며, 데이터사이언티스트 뿐만 아니라 저와 같이 데이터 엔지니어로 일하는 분들을 포함한 데이터 관련 직종에 일하는..
-
빅데이터 거버넌스(Data Governance)의 정의 및 목적, 그리고 고려사항(및 도구)들Data 2020. 12. 19. 15:31
데이터 팀에서 데이터를 다루다보면, 데이터와 관련된 다양한 이해관계자들(데이터 분석가, 데이터 사이언티스트, 기획자, BI 개발자 등) 사이에서 기술적인 것 외에도 '데이터 접근 관리', '개인정보 데이터 관리', '데이터 품질' 등의 경영이나 문과적(?)인 사항들이 자주 이슈화되는 부분을 경험할 수 있습니다. 이러한 부분이 잘 관리되지 않았을 때, 많은 비용으로 발생하고 업무 시에 많은 시간을 탕진하게 하기도 합니다. 저 개인적으로도 데이터플랫폼팀의 '데이터 거버넌스 파트'의 일원으로 '데이터 분석팀', '추천팀', 'BI팀', 'DB개발팀'의 팀 단위의 이해관계자들 사이에서 (기존 데이터 이해관계자가 대부분 한 팀에 뭉쳐있던 구조와 달라) 팀 단위의 커뮤니케이션으로 인해 잦은 병목이 발생하는 상황을 ..
-
[Hands On] 아파치 레인저(Apache Ranger) 도커(Docker) 환경에서 하둡(Hadoop) 서비스(HDFS, Hive, Presto) 연동 테스트하기Data 2020. 12. 18. 22:47
| 이 글은 제가 작성한 원본(영어) 에 좀 더 현실적인 컨텍스트를 더해 작성하였습니다. 데이터 플랫폼이 클라우드 환경이라면 제공되는 기본적인 서비스와 추가할 서비스의 연동은 어느 정도 보장 되고, 아직 규모가 많이 크지 않은 환경에서는 그런 부분이 큰 우선순위로 여겨지지 않기 때문에 비교적 데이터 플랫폼 운영자 입장에서 크게 신경을 쓰는 부분이 아닌 듯 합니다. 그러나, 어느 정도 규모가 있는 온프레미스 데이터 플랫폼을 운영하다보면, 데이터 사용자가 필요한 서비스나 도구를 추가할 때에 자주 '권한관리' 부분이 병목이 됩니다. 기존 운영하던 Apache Sentry와 인하우스의 조합으로는 Presto, Spark 등 끊임없이 개선되고 추가되는 다양한 데이터 시스템을 빠르게 연동하고 데이터 플랫폼에 안정적..
-
주요 IT 기업의 모던 데이터 시스템Data 2020. 12. 12. 11:29
이번 글에서는 주요 IT기업의 데이터 시스템을 중점으로 데이터 엔지니어링이 무엇인지 알아보려고 합니다. 이 글은 한글로 된 데이터 엔지니어링 관련 자료가 많이 없는 것으로 보여 이해를 돕기 위해 고려사이버대학 소프트웨어공학과 졸업 논문으로 쓰여진 원문(영어)을 바탕으로 작성하였습니다. 초록 최근 IT 기업에서 발생하는 다양한 요구사항을 충족시키기 위해서 많은 데이터 도구들이 개발되어 왔습니다. 각 도구들의 탄생 배경은 다양하고 달라보이나 추상화와 구조화를 통해 다양한 도구들을 일관된 프레임으로 비교하고 분석할 수 있습니다. 아래에서는 기존에 데이터 파이프라인[3]에 자주 사용되던 개념인 ETL을 확장하여 6가지 단계(Collect, Move, Store, Process, Use, Orchestrate)로..
-
[Hands-On] 도커 환경의 Airflow(에어플로우) 스케쥴러 고가용성(High Availability) 알아보기Data 2020. 12. 3. 23:44
| 이 글은 제가 작성한 원문(영어)을 번역한 글입니다. 오늘은 데이터 엔지니어링에서 Workflow Management 툴로 사용되는 에어플로우(Apache Airflow)에 대해 전달 드리려고 합니다. 에어플로우는 Apache Nifi, Streamsets 등과 비슷한 기능을 가지며, 데이터 엔지니어링에서 의존성을 가지는 다양한 작업의 실행을 DAG이라는 개념으로 묶어 관리의 관리를 도와주는 기능합니다. Streamsets은 프로덕션 레벨을 위해서는 비용을 지불하여야하고, Apache Nifi는 GUI로 관리가 가능한 반면 코드 제어하는 부분에 어려움이 있기 때문에, Python 기반의 Airflow는 데이터 파이프라인에서 작업 관리를 위해 많이 사용되곤 합니다. 작업을 실행하는 워커(Worker)나..
-
식품연구원에서 개발자로 전직(직무전환)한 이야기 (feat. 8개월)Career 2020. 11. 25. 17:46
17년 7월, 저는 식품연구원으로 재직하던 회사를 그만두고 18년 3월 비전공자 개발자(데이터 엔지니어 신입)로 취업에 성공하였습니다. 직무전환에 대한 글은 많지만 식품연구원에서 개발자로의 전직에 관한 글은 드물고, 직무전환을 진행하는 내내 세세한 심리에 관해 적은 글은 없는 것 같아서 이번 글에서는 그러한 부분을 적어보려고 합니다. 또, 추가적으로 각 기간마다 어떤 준비를 했는지도 전달드려보겠습니다. 식품연구원이었던 때 당시 저는 경희대학교 조리서비스경영학과와 식품생명공학을 복수전공하고 쟈뎅이라는 조그마한(?) 식품 회사에서 커피연구원으로 일하고 있었습니다. 회사 일을 하는데에 있어서 초년이었기에 매우 열정적으로 일하고(주관적인 판단입니다...) 주말에는 커피와 관련한 영문 논문도 찾아보고 읽으며 여러..
-
코딩초보 파이썬(Python) 공부법, 공부자료 (파이썬입문, 파이썬강좌)Python 2020. 11. 23. 23:34
안녕하세요. 이번 글에서는 파이썬을 첫 언어로 코딩에 입문하고자 하시는 분들을 대상으로 지난 3년간 파이썬을 공부하며 느낀 공부법과 엄선한 공부자료를 공유하려고 합니다. 공부법 먼저 공부법과 관련해서는 파이썬 한 가지를 가지고 해당 언어를 기반해서 프로그래밍 전반의 다양한 분야를 공부하시길 권장드립니다. 파이썬은 운영체제(OS), 데이터베이스, 웹, 데이터분석 등 다양한 분야에 접근할 수 있는 다양한 오픈소스와 자료들이 존재합니다. 그러한 점에서 위에서 말씀드린 공부법을 수행하기에 매우 좋은 언어인데요. 저 역시도 동일한 전략을 가지고 비전공자로 직무전환을 준비하면서 파이썬에 기반해 컴퓨터공학과 프로그래밍의 다양한 부분들을 공부하기 시작했었습니다. 파이썬을 통해서 기본적인 문법을 익히셨다면, 평소에 관심..