handson
-
[Hands-on] AWS Lake Formation으로 손쉽게 데이터 환경을 구축하기Cloud 2021. 7. 5. 23:49
레이크 포메이션(Lake Formation)은 'fully managed service'로 데이터 레이크의 구축, 보안 설정, 관리를 손쉽게 만들어 주는 서비스입니다. 레이크 포메이션은 데이터 레이크 구축 시 복잡하고 손이 많이 가는 단계들을 단순화하고 자동화합니다. 이러한 단계들에는 데이터를 수집, 정제, 이동, 카탈로깅하고 분석과 머신러닝을 위해 데이터를 안전하게 접근 가능하도록 하는 부분들이 포함됩니다. 사용자가 데이터 소스를 설정하기만 하면, 레이크 포메이션은 소스를 크롤링하여 데이터를 S3 데이터 레이크로 이동시켜 주게 됩니다. 레이크 포메이션은 AWS Identity and Access Management (IAM)에 기반한 자체 권한 관리 모델을 제공합니다. 이러한 중앙 관리형 권한 관리 모..
-
[Hands On] 아파치 에어플로우 도커환경에서 핸즈온 - #1 기초 (Apache Airflow)Data 2021. 3. 1. 21:22
아파치 에어플로우는 '작업흐름'을 코드를 통해 작성하고, 스케쥴하고, 모니터링하기 위한 데이터 워크플로우 매니지먼트 도구입니다. 여기서 작업흐름은 하나이 쉘 스크립트를 실행하는 것, 웹사이트에 접근에 특정 수행을 통해 데이터를 다운 받고 다운이 받아졌다면 파싱하여 슬랙 알림을 보내는 것 등 다양한 의존적인 작업들의 흐름이 포함됩니다. 이 글에서는 도커 환경에서 아파치 에어플로우 클러스터를 빠르게 올려서 아래와 같은 사항들을 중점으로 설명드리도록 하겠습니다: 준비사항 주요개념 간단한 작업 수행 시 일어나는 일들 아파치 에어플로우 클러스터 아키텍쳐 준비사항 및 클러스터 띄우기 아래 도커 환경에서 아파치 에어플로우를 실행하기 위해서는 아래와 같은 것들이 필요합니다: Git Docker 및 Docker Comp..
-
[Hands On] 도커 기반 하둡 살펴보기 (HDFS, YARN, MapReduce, Hive)Data 2021. 1. 27. 21:58
처음 하둡을 공부하려고 했을 때, 하둡이 무엇이고 정확히는 무엇인지 실체를 알기 어려웠습니다. 더욱 어려웠던 부분은, 책과 이론적인 내용들은 많은 자료가 있었으나 직접 튜토리얼을 진행하고자 하면 HDFS, YARN, MapReduce, Hive 등 다양한 서비스를 설치하고 설정을 연동해야한다는 부분이었습니다. 시간이 지나 되돌아보니, 간단한 docker-compose up을 통해 하둡 환경이 로컬에 실행되고 HDFS 네임노드 및 데이터노드의 Web UI를 통해 직접 글로 봤던 사항을 확인해보고 Hive 쿼리를 바로 로컬에서 실행해볼 수 있었으면 더 빨리 배울 수 있었을 것 같다는 생각을 많이 했었습니다. 이 글에서는 Big Data Europe에서 제공한 docker-hadoop [1]을 바탕으로 바로 ..
-
하둡이란? (Apache Hadoop)Data 2021. 1. 15. 08:25
빅데이터와 관련해 자주 언급되는 것이 바로 하둡(Hadoop)입니다. 정확히는 아파치 하둡 프로젝트인 이 '하둡'은 '하둡 환경'을 중심으로 많은 프로젝트가 진행되면서 구분이 모호해지는 경우가 많은 듯 합니다. 이번 글에서는 아파치 하둡이 무엇이고, 구성하는 모듈은 어떤 것이 있으며 어떤 특성을 지니는지 알아보겠습니다. 관련글: HDFS란? (하둡분산파일시스템) YARN이란? (하둡분산자원관리) 맵리듀스란? (하둡분산처리엔진) 하둡과 하둡이 탄생한 배경 아파치 하둡은 오픈소스이며, 안정적이고 확장성있는 분산 컴퓨팅을 위한 프로젝트로 여러 소프트웨어 묶음을 말합니다. 프로젝트의 목적이 단순한 모델을 통해 수많은 컴퓨터로 이루어진 클러스터 환경에서 대량의 데이터를 처리할 수 있도록 하는 데에 있습니다 [1]..
-
[Hands On] 아파치 레인저(Apache Ranger) 도커(Docker) 환경에서 하둡(Hadoop) 서비스(HDFS, Hive, Presto) 연동 테스트하기Data 2020. 12. 18. 22:47
| 이 글은 제가 작성한 원본(영어) 에 좀 더 현실적인 컨텍스트를 더해 작성하였습니다. 데이터 플랫폼이 클라우드 환경이라면 제공되는 기본적인 서비스와 추가할 서비스의 연동은 어느 정도 보장 되고, 아직 규모가 많이 크지 않은 환경에서는 그런 부분이 큰 우선순위로 여겨지지 않기 때문에 비교적 데이터 플랫폼 운영자 입장에서 크게 신경을 쓰는 부분이 아닌 듯 합니다. 그러나, 어느 정도 규모가 있는 온프레미스 데이터 플랫폼을 운영하다보면, 데이터 사용자가 필요한 서비스나 도구를 추가할 때에 자주 '권한관리' 부분이 병목이 됩니다. 기존 운영하던 Apache Sentry와 인하우스의 조합으로는 Presto, Spark 등 끊임없이 개선되고 추가되는 다양한 데이터 시스템을 빠르게 연동하고 데이터 플랫폼에 안정적..
-
[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)나..