-
Data Engineering [데이터 파이프라인 핵심 가이드] 1. 데이터 파이프라인 소개 본 포스팅은 위키북스 사의 "데이터 파이프라인 핵심 가이드"의 내용을 정리한 글입니다. 1. 데이터 파이프라인 소개 1 - 1. 데이터 파이프라인이란? 데이터 파이프라인은 다양한 소스에서 새로운 가치를 얻을 수 있는 대상으로 데이터를 옮기고 (load) 변환하는 (transform) 일련의 과정이다. 데이터 파이프라인은 Rest API와 같은 단일 소스에서 데이터를 추출하고 데이터 웨어하우스의 SQL 테이블과 같은 다른 대상으로 데이터를 로드하는 간단한 구조의 파이프라인부터 추출된 데이터에 대한 유효성 검사, 가공 과정, 머신러닝 모델 추론과 같은 과정들이 추가되는 복잡한 구조의 파이프라인까지 다양한 복잡성을 가진다. 실제로 필자가 수행했던 프로젝트에서도 클라이언트로부터 받은 사용자 데이터를 가공하여 A..
-
IBM C:LOUDERs 클라우드는 처음이라 (1) - 도커는 뭐고 쿠버네티스는 또 뭐야? IBM C:LOUDERs 활동을 하면서 '세상은 넓고 능력자들은 많구나'라는 생각을 정말 많이 한다ㅋㅋ IBM C:LOUDERs를 통해 클라우드 컴퓨팅을 처음 접하는 나로서는 따라가기가 벅찬 게 사실이다. 그러다가 문득 이런 생각을 했다. '이런 고민을 나만 할까?' 분명 클라우드 컴퓨팅을 처음 접하고 구글링의 세계를 허우적대는 나같은 사람이 있지 않을까?그래서 시작한다! 클라우드는 처음이라 시리즈! IBM Cloud Essentials 코스를 수강하면서 공부한 내용을 입문자의 시선에서 정리해보려고 한다. 오늘의 내용은 하이브리드 클라우드와 멀티 클라우드.. 일 뻔했으나 강의를 보다 보니 생소한 용어가 많았다. 강연자 분은 당연한 듯이 넘어갔지만ㅠㅠ 나는 뜻을 몰라 구글링 또 구글링 하며 4분짜리 영상을..
-
CS [python] time.sleep을 잘 써야하는 이유 오늘은 파이썬에서 많이 쓰는 time.sleep에 대해서 알아보려고 한다이유는.. 회사에서 내가 저걸 막 쓰다가 코드를 다시 짰기 때문에.. ㅎㅎ 우선구현 상황은 이랬다이렇게 deque 내에 데이터들이 담겨있고, 각 데이터에는 timestamp가 존재한다이 데이터들을 rabbitmq에 각 timestamp 간격에 맞춰서 쏴줘야 하는데, 이걸 구현하기 위해서 나는 데이터를 하나 쏜 후에 다음 데이터까지의 timestamp 간격만큼 time.sleep을 집어넣었다그런데 코드를 다 짜고 테스트를 해보니까 실제로 sleep한 시간이 timestamp 간의 간격보다길어서 데이터들 간의 싱크가 맞지 않는 것이 아닌가?회사에서 다루는 대부분의 데이터가 실시간 데이터였기에 데이터 싱크가 맞지 않는 문제는 허용할 수 있..
-
CS [Python OOP] Python에서의 객체(Object)와 타입 힌트 본 포스팅은 책 "Python 객체지향 프로그래밍 4판"의 내용을 정리한 글입니다 이번 포스팅에서는 Python에서의 객체와 타입 힌트에 대해서 알아보려고 한다. 우선 Python에서는 객체(Object)를 어떻게 정의하고 있을까? 한마디로 정의하자면, Python의 모든 것은 객체이다. str_variable_example = "hello world" print(type(str_variable_example)) # str값을 가진 변수를 선언하고 내장 함수인 type()을 이용하여 타입을 출력하는 간단한 코드이다. 첫번째 줄에서 "hello world"라는 문자열을 str_variable_example 변수로 선언하고 출력하면 다음과 같은 결과가 출력된다. 즉, str class의 인스턴스로서 "hel..
-
Data Engineering [Apache Spark] 로컬 환경에서 Apache Spark 설치하기 로컬 환경에서 단일 클러스터로 Apache Spark를 설치하기 위해서는 1. JDK 설치 2. Python 설치 3. Apache Spark 설치 4. Hadoop Winutil 설치 5. 시스템 환경변수 설정 이렇게 총 5단계를 거쳐야 한다. 1. JDK 설치 Apache Spark는 Scala로 구현되어 있고 JVM 위에서 동작하기 때문에 Java를 먼저 설치해주어야 한다. 본인의 경우, 원래 Java 17 환경이 세팅되어 있었는데 version 때문인지 Spark 실행이 되지 않아 11.0.18로 재설치 해주었다. Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support avai..