일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- docker
- 스파크
- kafka rest api
- 델타레이크
- Zookeeper
- spark
- 데이터 엔지니어링
- 카프카 구축
- spark streaming
- Data Warehouse
- kafka
- 컬럼 기반
- delta lake
- 데이터 웨어하우스
- Redshift
- MySQL
- Schema Registry
- 데이터
- AWS
- 에어플로우
- s3
- airflow
- 카프카
- 레드시프트
- Data engineering
- 대용량 처리
- 데이터 엔지니어
- 스파크 스트리밍
- Parquet
- Data Engineer
- Today
- Total
목록분류 전체보기 (62)
데이터 엔지니어 기술 블로그
글을 쓸 때는 피라미드 구조로 작성해야 한다. 피라미드 구조는 단순한 논리구조 규칙을 가지고 있다. 그 규칙을 따라 만들어진 글은 독자가 질의응답을 통해 필요한 정보만 정확히 제공받을 수 있다. 1. 피라미드 개념 1.1 규칙 어떤 계층에 있는 메세지든 하위 계층의 메시지를 요약해야 한다. 그룹 내의 메시지는 항상 동일한 종류여야 한다. 그룹 내의 메시지는 항상 논리적 순서로 배열되어야 한다. 1.2 상세 규칙 하위 계층을 약 4-5개 이하의 그룹으로 묶고 순서를 논리적으로 배열한다. 그룹으로 묶을 때는 귀납법 또는 연역법 중 하나를 사용한다. 독자가 필요한 정보만 정확히 제공받을 수 있도록 상위 계층에서의 질문에 하위 계층이 답해주어야 한다. 독자가 길을 잃지 않도록 질문이 생기기 전에 미리 답변하지 ..
OKR 소개 OKR(Objectives and Key Results)은 ”목표와 핵심 결과“를 의미하는 관리 기법이다. OKR의 시초인 MBO(Management by Objectives) 시스템은 두가지 기본 원칙을 바탕으로 한다. 일을 최고로 잘하도록 동기부여: “사람들에게 어떻게 할지를 알려주지 마라. 그들이 완수해야 하는 것을 알려주고 그들이 결과를 내게 해서 당신을 놀라게 만들어라” 성과를 의미 있게 측정 하기: ”당신이 원하는 모든 제품을 출시할 수 있지만 결과적으로 중요한 사업 문제를 해결하지 못한다면 실제로는 아무것도 해결하지 못한 것이다.“ 위의 기본 원칙들을 기반으로 발전한 OKR은 세 부분으로 이루어져있다. 영감을 주고 측정 가능한 목표를 세워라. 바라는 최종 상태를 향해 언제나 당신..
운영 시스템은 트랜잭션을 신속히 처리하는데 최적화되어있습니다. 데이터 웨어하우스는 신규 고객을 집계하고 월별 GMV를 비교하는 등의 요구사항을 처리할 수 있어야 합니다. 그러기 위해서는 운영 시스템과는 다른 구조가 필요하며 이를 다차원 모델링으로 해결합니다. 데이터 웨어하우스를 활용하는 사람들은 현업에 있는 다양한 직업을 가진 사람들입니다. 그래서 구축을 할 때는 기술보다 비즈니스 이슈를 중심으로 생각해야 합니다. 데이터 웨어하우스 구축을 위한 요구사항은 다음과 같습니다. 정보에 쉽게 접근 가능하도록 만들어야 한다. 의사결정을 위해 신뢰할 수 있는 토대가 되어야 하며 일관된 정보를 제공해야 한다. (데이터 신뢰성) 시스템 변화에 유연해야 한다. 정보를 적시에 제공해야 한다. (데이터 최신성) 현업에서 사..
Intro 1 Page Proposal은 8가지 구성요소로 기획서를 단순하고 명확하게 작성하는 방법입니다. 1 Page Proposal 이란? 기획서는 보통 수십 페이지 분량으로 두껍고 화려하게 작성되는 경우가 많습니다. 그러나 사람들은 결정을 내려야 하는 상황에는 쉬운 결정 먼저 내린다고 합니다. 기획서를 보는 결정권자는 화려하고 두꺼운 기획서를 검토하며 핵심 내용을 추출할 시간이 없습니다. 1 Page Proposal의 핵심 특징 투명함: 나쁜 아이디어를 좋아 보이게 하지 않는다. 완벽함: 많은 리서치와 완벽한 논리로 완벽할 때까지 작성한다. 거부하기 어려운 제안을 만든다. 간결함: 읽는 데 걸리는 시간은 4분이며 400단어 내외로 이루어져 있으며 읽기 쉽게 작성된다. 1 Page Proposal의 ..
(Data lakehouse in action의 1, 2장을 요약한 글입니다.) Data Lakehouse in Action - 저자 Pradeep Menon 출판 Packt Publishing 출판일 2022.03.17 1. 데이터 분석 패턴의 진화 엔터프라이즈 데이터 웨어하우스(EDW) 시대 EDW 시대가 시작된 배경은 다음과 같았습니다. 분석은 리포팅과 같은 말이었습니다. 데이터베이스 구조를 리포팅하는데 최적화하는 것이 최우선 목표였습니다. Ralph Kimball, Bill Inmon에 의해 1990, 2000년대에 활성화되었습니다. EDW의 패턴은 다음과 같았습니다. Flat Files, Databases -> ETL -> EDW -> Data Marts -> BI EDW는 오랜 시간동안 자리를..
Source https://www.youtube.com/watch?v=outcGtbnMuQ GPT-4 Developer Livestream To the GPT-4 developer demo livestream. GPT-4 개발자 데모 라이브스트림에 오신 것을 환영합니다. Honestly, it's kind of hard for me to believe that this day is here. 솔직히 오늘이 왔다는 사실이 믿기지 않습니다. OpenAI has been building this technology really since we started the company, but for the past two years, we've been really focused on delivering GPT-4..
Source https://www.youtube.com/watch?v=5N242XcKAsM Kerberos Authentication Explained | A deep dive So you want to connect to an application over an insecure network, but you're a wee bit paranoid. 안전하지 않은 네트워크를 통해 애플리케이션에 연결하고 싶지만 편집증에 시달리고 있습니다. Someone may be listening in. 누군가 엿듣고 있을지도 모르기 때문입니다. How do you solve this problem? One possible solution is a protocol designed to provide secure auth..
1. 개요 1.1 Delta의 트랜잭션 구현 방법 다중 버전 동시성 제어(MVCC) 테이블이 변경될 경우 즉시 교체하지 않고 데이터의 여러 복사본을 유지한다. Reader는 트랜잭션 로그를 사용하여 처리할 데이터의 파일을 선택적으로 가져온다. Writer는 새 데이터 파일이나 기존 파일의 업데이트된 복사본을 작성한다. 그 후 커밋하고 로그에 새 항목을 추가하여 테이블의 새로운 버전을 생성한다. 이 로그에는 테이블에 대한 메타데이터 변경 사항과 함께 논리적으로 추가 및 제거할 데이터 파일이 기록된다. vacuum 명령을 사용하여 추후에 지연 삭제할 수 있다. 2. Delta Table Specification 2.1 테이블 스냅샷 테이블에는 연속적으로 증가하는 정수를 사용한 로그가 있다. 특정 버전에서 테..
1. 테이블 읽기 및 쓰기 1.1 테이블 생성하는 방법 spark.sql CREATE TABLE delta.`s3://bucket_name/foo/bar/table_name` ( id INT, firstName STRING, middleName STRING, lastName STRING, ) USING DELTA write df.write.format("delta").mode("overwrite").save("s3://bucket_name/foo/bar/table_name") 1.2 시간 여행 델타레이크에서는 timestamp와 version으로 시간 여행을 할 수 있다. 사용자의 실수로 테이블의 어떤 데이터를 삭제하나 업데이트 한 경우 시간 여행으로 과거의 테이블로 돌아가 다시 쓸 수 있다. df1 =..
Delta Lake는 데이터 레이크 위에 Lakehouse 아키텍처를 구축할 수 있는 오픈소스 프로젝트이다. 데이터 레이크의 문제점과 데이터 웨어하우스의 문제점을 보완해줄 수 있다. 데이터 레이크는 아주 큰 데이터를 저장할 수 있지만 체계가 정확하게 잡히지 않으면 데이터 늪이 되기가 쉽다. S3와 같은 클라우드 스토리지는 가장 비용 효율적인 스토리지 시스템이다. 그러나 key-value로 구현이 되어있어서 ACID 트랜잭션과 같은 고성능을 구현하기는 어렵다. listing object와 같은 메타데이터 동작은 비싸며 일관성 보장은 제한적이다. 델타레이크는 이런 문제점을 보완할 수 있다. ACID 성질을 가질 수 있게 하여 트랜잭션을 구현하며, 테이블에서의 시간 여행을 가능하게 한다. upsert를 구현할..