전체 글

네, 저 밑바닥에서 왔습니다
Amazon Redshift 웨어하우스를 대상으로 구성 저번 포스팅들을 통해 원하는 소스 시스템에서 데이터를 추출했는데 이제 Redshift 데이터 웨어하우스에 데이터를 로드하여 데이터 수집을 완료할 차례이다! => 로드 방법은 데이터 추출 산출물이 어떤 모습인지에 따라 다름 데이터 웨어하우스로 Amazon Redshift를 사용하는 경우 데이터를 추출한 후 로드하기 위해 S3와 통합하는 것은 매우 간단한다 우선 S3에서 읽기와 관련된 권한을 Redshift 클러스터에 직접 할당할 IAM 역할을 생성해야 하는데 IAM의 탐색 메뉴에서 역할을 선택하고 [역할 만들기]를 클릭한 후 선택할 AWS 서비스 목록에서 Redshift를 찾아 선택하고 [사용 사례 선택] 에서 'Redshift - Customizab..
MongoDB에서 데이터 추출 이번 예제에서는 집합(collection)에서 MongoDB 문서(document)의 하위 집합을 추출하는 방법을 다루고 있습니다! => 이 예제에서 MongoDB 집합에서 문서는 웹 서버와 같은 일부 시스템에서 기록된 이벤트를 나타냄 (env) pip install pymongo => MongoDB 데이터베이스에 연결하려면 먼저 PyMongo 라이브러리를 설치해야 한다 그 후 MongoDB의 Atlas에서 무료 MongoDB 클러스터를 생성하고, 데이터베이스를 생성한다! (env) pip install dnspython => MongoDB Atlas에서 호스팅하는 클러스터에 연결할 때 pymongo를 사용하려면 dnspython이라는 파이썬 라이브러리를 하나 더 설치해야 ..
이번 포스팅과 다음 포스팅을 통해 공통 시스템에서부터 또는 공통 시스템으로데이터를 내보내고 수집하기 위한 코드 예제를 이용해 공부를 해보겠슴다..!파이썬 환경 설정 앞으로 나올 모든 코드 예제는 파이썬과 SQL로 작성되며 오늘날 데이터 엔지니어링 분야에서 흔히 사용되는 오픈 소스 프레임워크를 사용한다 이번 실습에 사용된 라이브러리를 설치하기 전에 설치할 가상 환경을 만드는 것이 좋다 => 다양한 프로젝트 및 애플리케이션의 파이썬 라이브러리를 관리하는데 유용한 virtualenv 도구를 사용 (이를 통해 파이썬 라이브러리를 전역이 아닌 프로젝트에 맞는 범위 내에서 설치할 수 있음) $ python -m venv env 를 통해 env라는 가상 환경을 생성하고 window의 경우(제가 window 환경에서 ..
·IT 행사
오늘은 한국 IT 서비스 학회에서 개최한 2024 통합춘계학술대회에 참관하였습니다!   일 시 : 2024년 5월 30일(목) 09:00 ~ 18:00장 소 : 한국과학기술회관 국제회의장주 제 : 인공지능(AI) 경제 시대, IT 서비스 분야의 전략적 기회와 도전과제    도착하자마자 안내 책자와 함께 명찰을 주셨는데 명찰을 가진 사람은 무료로 음료수를 제공해주셨다!! Track 별로 강연 내용이 다르고 해당 Track도 시간대별로 Section이 나눠져있어서 원하는걸 골라서 들으면 됨! Track E의 강연을 들었는데 내용이 너무 많아서😭 제일 흥미로웠던 주제 2가지를 간단하게 키워드 위주로 정리해보았다  1. 공공행정 업무 분야 - 프롬프트 엔지니어링 메뉴얼 연구배경 및 목적 2022년 11월, C..
국민대학교에서 "오라클로 배우는 데이터베이스 개론과 실습(2판)" 을 이용한신인수 교수님의 강의 교안을 이용하여 수업 내용을 정리하였습니다 1. 트랜잭션 트랜잭션의 개념 트랜잭션(transaction) => DBMS에서 데이터를 다루는 논리적인 작업의 단위 데이터베이스에서 트랜잭션을 정의하는 이유로는 1. DBMS에서 장애가 일어날 때 데이터를 복구하는 작업의 단위가 됨 2. DBMS에서 여러 작업이 동시에 같은 데이터를 다룰 때 작업을 서로 분리하는 단위가 됨 트랜잭션은 전체가 수행되거나 또는 전혀 수행되지 않아야 함(all or nothing) 예를 들어 살펴보면 은행 업무를 보는데 A계좌 (박지성)에서 B 계좌(김연아)로 10000원을 이체할 경우   이런식으로 트랜잭션이 수행되는데 트랜잭션의 종료..
국민대학교에서 "오라클로 배우는 데이터베이스 개론과 실습(2판)" 을 이용한신인수 교수님의 강의 교안을 이용하여 수업 내용을 정리하였습니다    1. 이상현상(anomaly) 1.1 이상현상의 개념  이상현상(Anomaly)이란  잘못 설계된 테이블로 인해 삽입, 삭제, 수정 같은 데이터 조작 시 데이터 일관성이 깨지는 현상! => 불일치(inconsistency : 일관성 없음) 문제 발생 이상현상에는   삭제이상(deletion anomly)투플 삭제 시 같이 저장된 다른 정보까지 연쇄적으로 삭제되는 현상(연쇄삭제 문제 발생) 삽입이상(insrtion anomly)투플 삽입 시 특정 속성에 해당하는 값이 없어 NULL 값을 입력해야 하는 현상(NULL 값 문제 발생)  수정이상(update anoml..
파이프라인은 각자 다른 목표와 제약 조건을 갖게 되는데 예를 들어 데이터의 실시간 처리여부, 매일 데이터가 업데이트될 수 있는지, 분석된 데이터를 최종적으로 어떻게 사용할지 등이다 이번에는 데이터 파이프라인의 다양한 사용 사례로 확장 가능한 성공적인 몇 가지 공통 패턴을 공부해보겠다!  ETL과 ELT  ETL과 ELT 모두 데이터 웨어하우징 및 비즈니스 인텔리전스에서 널리 사용되는 패턴이다 (둘다 데이터 웨어하우징에 뿌리를 두고 있음) 두 패턴 모두 데이터 웨어하우스에 데이터를 공급하고 분석가나 보고 도구가 이를 유용하게 쓸 수 있게 하는 데이터 처리에 대한 접근 방식이다!이 둘의 차이점은 마지막 두 단계(변환 및 로드)의 순서임  추출(extract) 단계는 로드 및 변환을 준비하기 위해 다양한 소스..
국민대학교에서 "오라클로 배우는 데이터베이스 개론과 실습(2판)" 을 이용한신인수 교수님의 강의 교안을 이용하여 수업 내용을 정리하였습니다    1. 데이터 모델링의 개념 1.1 데이터 모델링의 중요성  1.2 데이터베이스 생명주기 데이터베이스 생명주기 (database life cycle)은 데이터베이스의 생성과 운영에 관련된 특징으로   1. 요구사항 수집 및 분석 : 사용자들의 요구사항을 듣고 분석하여 데이터베이스 구축의 범위를 정하는 단계 2. 설계 : 분석된 요구사항을 기초로 주요 개념과 업무 프로세스 등을 식별하고 (개념적 설계)              사용하는 DBMS의 종류에 맞게 변환(논리적 설계)한 후, 데이터베이스 스키마를 도출(물리적 설계)함 3. 구현 : 설계 단계에서 생성한 스키..
파이프라인을 구축하기 위한 제품과 설계를 결정하기 전에 최신 데이터 스택을 구성하는 요소를 이해할 필요가 있다! 선택 방법은 다양하지만 업계 표준이 되어 파이프라인 구현에 있어모범 사례의 발판을 마련한 핵심 요구 사항과 개념은 있다! ⬇️⬇️⬇️⬇️⬇️ 1. 데이터 소스의 다양성 2. 클라우드 데이터 웨어하우스와 데이터 레이크 3. 데이터 수집 도구 4. 모델링 도구 및 프레임워크 5. 워크플로 오케스트레이션 플랫폼   데이터 소스의 다양성 대부분 조직에는 수백 개는 아니더라도 수십 개의 데이터 소스가 있으며, 이를 통해 분석 작업을 수행할 수 있다 소스 시스템 소유권 분석 팀은 조직이 구축하고 소유한 소스 시스템과 타사 도구 및 공급업체에서 데이터를 수집 하는 것이 일반적이다 ex. 전자상거래 회사는 ..
·IT 행사
국민대학교 이민석 교수님의 산업체 특강 수업에서 초청하신 박조은 (오늘코드) 멘토님의 특강 내용입니다  오늘코드 박조은 멘토님 소개 ● 오늘코드 유튜브 채널 운영 ● 커널 360 디렉터 ● 서울대 평생교육원 데이터 분석 실전 과정 강의 ● 네이버 커넥트 재단 데이터 사이언스 부스트코스 강의 ● 인프런 데이터 사이언스 강의 ● 현대자동차, SKTelecom, 한국능률협회 등 다수의 기업강의 ● 모두의 한국어 텍스트 분석 with 파이썬 저자  시작에 앞서...개발 커뮤니티등을 하면 현업 개발자와 가까이에서 교류할 수 있기 때문에 추천함! 첫 회사에 입사해서 커리어를 시작하기까지 멘토님은 학부 시절 대부분의 시간을 방황하며 보냈었음 => 정보통신 전공 : 인터넷이 보편화되기전 PC통신을 많이 했는데 학교 바..
·IT 행사
2024년 5월 1일(수) ~ 3일(금), 3일간 서울 COEX 3층 Hall D에서 진행하는AI EXPO KOREA 2024 국제인공지능대전에 참석했습니다!!  입장할 때 이렇게 이름표를 나눠주시고 부스에 입장하면 바코드를 찍어주십니다!!  이렇게 다양한 기술들을 선보이는 부스가 있었고 시간 관계상 전부 참석해 보지는 못했습니다.. 부스가 너무 많아서 인상 깊게 관람했던 부스들을 위주로 소개 드리겠습니다  Healthcare API - 주식회사 리모  입장하자마자 런닝머신이 보이길래 가장 먼저 체험한 Healthcare API 부스입니다! 체험을 진행하기전에 간단한 설명을 들었는데 말 그대로 헬스케어, 스포츠 비즈니스를 위한 API로  여러 종류의 API가 있었습니다. 1. 체형 분석 API  저희 몸..
·Backend/Node
이번 프로젝트에서 회원가입시에 사용자에게 이메일 인증을 받기 위해 찾아보던중 Nodemailer라는 라이브러리를 발견해서 사용해보겠습니다! (Nodemailer는 node.js에서 email을 쉽게 보낼 수 있는 기능들을 제공해줌)  Nodemailer를 사용할 때 이메일을 보낼 gmail 계정과 해당 gmail의 앱 비밀번호가 필요하다!   Google 계정 => 보안 => 2단계 인증을 활성화한 후 검색창에 앱 비밀번호를 검색해서 생성할 수 있다    이렇게 gmail 계정과 앱 비밀번호는 .env파일에 저장해주었습니다. 터미널에 npm i nodemailer를 이용하여 라이브러리를 설치해주고 const nodemailer = requiere("nodemailer")를 이용해서 모듈을 import하면..
JJunGyo
개발 바닥