본문 바로가기
728x90

전체 글336

첫 번째 이직, 그리고 데이터 엔지니어 2021년 1월1일 부터 시작된 내 첫 직장 생활이 2023년 5월4일 부로 끝을 맺었다. 약 2년 4개월간의 여정 속에는 3개의 프로젝트가 함께 했었는데, 데이터업계의 컨설턴트로써 cloud migration, DA, 품질 및 솔루션 운영과 같은 업무를 진행했었다. 이전의 si성격의 회사와는 다르게 현재는 데이터엔지니어 직무를 수행하는 회사에 합격을 한 상태고, 내일이 첫 출근이다. 기존에는 너 무슨 일 해? 라고 물어보면, "데이터 엔지니어야" 라고 답하지 못하고 "음.. 데이터 엔지니어도하고 아키텍트도하고 전반적으로 데이터업계 컨설팅..?" 과 같이 두루뭉실하게 대답했었다. 이제는 원하던(경험하고싶었던) 데이터엔지니어로써 업무를 수행할 수 있게 됐으니 자신있게 말할 수 있을 것 같다. 나는 경력직으.. 2023. 5. 7.
[AWS] Boto3 사용하기 1. S3 다루기 1. 사전 준비 Client low-level 인터페이스 service description에 의해 만들어짐 botocore 수준의 client를 공개(botocore는 AWS CLI와 boto3의 기초가 되는 라이브러리) AWS API와 1:1 매핑됨 메소드가 스네이크 케이스로 정의되어 있음 Resource high-level, 객체지향적 인터페이스 resource description에 의해 만들어짐 식별자(identifier)와 속성(attribute)을 사용 자원에 대한 조작 위주 2. 버킷 생성 import logging import boto3 from botocore.exceptions import ClientError class AWSBoto3(): def __init__(self): sel.. 2023. 4. 12.
[Data] 로그(Log) 데이터의 개념과 활용, 사례 및 수집 알아보기 이번 포스트에는 log데이터에 대해 전반적으로 알아보고 어떻게 수집되고 활용되는지 기업의 사례를 들어가며 정리해보겠습니다. 1. 로그 데이터(log data)란? IT인프라에서 발생하는 모든 상황의 데이터(서비스나 시스템 가동 시 발생되는 이벤트의 기록) 소프트웨어 및 하드웨어,인프라의 상태를 파악하는 시각적 정보의 역할 최근 사용자의 사용성 및 행동 패턴을 확인하거나 유저 클러스터링, 모델링 등 다양한 목적으로 사용되는 행동 기반 데이터 사용자의 행동 패턴을 분석하는데 근간이 되는 데이터의 역할 대체로 시간(TimeStamp)와 함께 출력 되기 때문에 시계열 데이터 개념에 포함되는 개념 2. 로그의 형태 정해진 규칙에 의거하여 Key-Value, JSON 형태로 표현 Key 순서에 맞게 Value 값으.. 2023. 4. 6.
[Data] 데이터의 종류, 서비스 데이터와 행동 데이터(로그성 데이터) 기업에서 다루는 데이터는 크게 2가지로 나뉩니다. 하나는 서비스 데이터고 다른 하나는 사용자 행동 데이터, 즉 로그성 데이터로 볼 수 있습니다. 이번 포스트에는 각각 다른 성격의 데이터에 대해 정리하겠습니다. 1. 서비스 데이터 회원가입, 결제, 제출 등 서비스 운영을 위해서 반드시 필요한 데이터 트랜잭션 데이터라고도 불리우는 데이터 무결성이 필요한 비즈니스 데이터(주로 트랜잭션을 보장하는 RDB에 저장) 2. 행동 데이터 사용자들의 행동 패턴을 확인하기 위해서 별도로 저장하는 데이터 웹 로그 데이터, 앱 로그 데이터, 이벤트 데이터, 사용자 로그 데이터 데이터 규모(사이즈)가 큼 데이터 신뢰도가 서비스 데이터보다 낮음 누락,중복 집계 될 가능성이 있음 웹사이트 페이지뷰, 스크롤, 클릭 등 페이지뷰: 어.. 2023. 4. 5.
[Airflow] Amazon linux2에 docker-compose로 airflow 설치하기 AWS EC2에서 Amazon linux2 OS로 서버가 실행되고 있는 상황에서 부터 시작하겠습니다. 1. docker 설치 $ sudo yum update -y $ sudo yum install docker -y docker 시작 $ sudo systemctl start docker $ sudo service docker start 2. docker-compose 설치 및 권한 부여 1) docker-compose 설치 $ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 2) docker-co.. 2023. 3. 22.
[Data Engineering] CCA Spark and Hadoop Developer Exam(CCA175) 정보와 준비 자료 1. 시험 소개 1) 자격증 분류 cloudera 주관 CDH(Cloudera Distribution Including Apache Hadoop) , HDP(Hortonworks Data Platform) 자격증 중, CCA(Cloudera Certified Association)에 해당하는 자격증 2) 자격증 소개 Apache Spark와 Cloudera Enterprise tool을 이용한 데이터 수집, 가공 ,처리를 다루는 자격증 문항 수 Cloudera Enterprise cluster에서 수행하는 8 ~ 12개의 수행능력 기반의(hands-on) 과제 시간 제한 120분 합격 점수 70% 이상 문제의 언어형식 영어 시험 비용 US$295 Spark 코딩 시 사용 가능 프로그래밍 언어 (결과만 중.. 2023. 3. 7.
[IT용어] 개발방법론, 애자일(Agile), 스크럼(Scrum), 스프린트(Sprint) 정리 1. 애자일(Agile) 애자일은 고객 만족과 빠른 반복을 우선으로 하는 소프트웨어 개발 방법론입니다. 애자일 방식은 변화하는 요구사항과 피드백에 대한 적응을 강조하며, 작동하는 소프트웨어를 자주 제공하는 것에 중점을 둡니다. 애자일은 팀 구성원 간의 협력과 개방적인 의사소통을 강조하며, 실험과 빠른 반복에 대한 의지도 강조합니다. 2. 스크럼 스크럼은 자기 조직화와 "스프린트"라고 불리는 반복적인 개발 주기를 강조하는 애자일 방법론의 구체적인 구현 방법입니다. 애자일의 핵심 원칙인 지속적 개선에 중점을 두기 때문에 스크럼과 애자일이 동일하게 여겨지는 경우가 많습니다. 그러나 스크럼은 작업 수행을 위한 프레임워크이며, 애자일은 철학입니다. 스크럼에서 팀은 작동하는 제품 증분을 제공하기 위해 짧고 집중적인.. 2023. 2. 24.
[AWS] s3 vs s3a vs s3n 차이 정리 s3 vs s3a vs s3n s3 s3a s3n 공통점 ○ 하둡의 저장소가 hdfs가 아닌, AWS s3일 때 클라이언트를 제공하는 파일시스템 종류(s3에 읽기,쓰기를 가능하게 해주는 어댑터) ○ AWS s3에 저장하게 해주는 하둡의 각각 다른 파일시스템 URI s3:// s3a:// s3n:// 파일 크기 제한 5GB보다 클 수 있지만 다른 S3 도구와 상호 운용할 수 없음 큰 파일(5GB 제한 없음), 고성능 작업 등을 지원 가능 단일 파일 크기에 대한 5GB 제한있음 특징 ○ S3가 지원하는 하둡 호환 블록 기반 파일 시스템 ○ 파일이 포함된 기존 버킷을 사용하거나 다른 파일을 동일한 버킷에 쓰지 않아야 함 ○ HDFS에 있는 것처럼 블록으로 저장 ○ 파일 시스템 전용 버킷이 필요 ○ 읽기 성능은.. 2023. 2. 23.
[Java] Compile과 Decompile (feat. .JAR, .WAR, .class, .java) + JAD 이번 포스트에는 Java 언어의 특징인 Compile과 그의 반댓말인 Decompile, 그리고 관련된 파일형식 및 도구에 대해 정리해보겠습니다. 1. Compile이란? 1) 정의 사람이 이해하는 언어를 컴퓨터가 이해할 수 있는 언어로 바꾸어 주는 과정 컴퓨터는 0과 1로만 모든 명령을 이해하고 실행하기 때문에, 인간의 언어를 기계가 알아 들을 수 있게 바꿔주는 작업이 필요함. Compiler(compile + link) compile: 원시코드에서 목적코드(목적파일)로 바꾸어 주는 것 link : 목적 파일을 실행 파일로 바꾸는 것 원시코드: 인간이 알아볼 수 있는, 우리가 작성한 코드(.java) 목적코드: 컴퓨터가 이해할 수 있도록 번역한 코드(기계어)(.class) 2) compile을 과정이 .. 2023. 2. 17.
728x90