전체 글(183)
-
Spark Structured Streaming_1
공식 문서에 따르면 Spark Streaming은 더 이상 버전 업데이트가 되지 않는 구식(?)이 되어버려서, Spark Structured Streaming 툴을 사용해야 한다. 오늘은 Spark Structured Streaming에 대해 알아보기로 한다. *공식문서 : https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html Structured Streaming Programming Guide - Spark 3.5.0 Documentation Structured Streaming Programming Guide Overview Structured Streaming is a scalable and fault-tol..
2023.10.29 -
FastAPI
설치 FastAPI를 구동하기 위해선 다음과 같은 설치 과정이 필요하다, pip install fastapi pip install "uvicorn[standard]" fastapi는 fastAPI를 사용하기 위한 패키지, uvicorn은 구동 서버다. fastAPI 공식 문서에 나와있는 코드를 한번 보자. from typing import Union from fastapi import FastAPI app = FastAPI() @app.get("/") async def read_root(): return {"Hello": "World"} @app.get("/items/{item_id}") async def read_item(item_id: int, q: Union[str, None] = None): re..
2023.10.21 -
DataBase에 대해
Database 데이터베이스 관리 시스템(DBMS) 조회 쿼리 옵티마이저 확장과 분산 모델링 패턴 CRUD 일관성 관계형 vs 비관계형 관계형 가장 일반적인 애플리케이션 백엔드 중 하나 데이터는 관계 테이블에 저장되며, 각 관계에는 여러 필드(열)가 포함 테이블 내의 각 관계는 동일한 스키마(string, integer, float 등의 정적 유형이 할당된 일련의 열)를 가진다 행은 일반적으로 연속된 바이트 시퀀스로 디스크로 저장 테이블은 일반적으로 테이블의 각 행에 대한 고유 필드인 기본 키에 의해 인덱싱 다른 테이블의 기본 키 값과 연결된 값이 있는 필드인 다양한 외래 키를 가질 수도 있다. 일반적으로 ACID 준수 정규화된 스키마, ACID 컴플라이언스 및 높은 트랜잭션 비율 지원을 결합한 관계형 ..
2023.10.09 -
원천 시스템에서의 데이터 생성
Data 흐름 원천 시스템에서의 데이터 생성 데이터 수집은 IoT 장치, 신용카드 단말기, 망원경 센서, 주식 거래 등에서 데이터를 수집한다. File -> 바이트의 시퀀스로서 일반적으로 디스크에 저장 애플리케이션은 종종 파일에 데이터를 쓴다. (로컬 매개변수, 이벤트, 로그, 이미지 및 오디오 저장) 정형 : xlsx, csv 반정형 : json, xml, csv 비정형 : txt, csv API. : 시스템 간에 데이터를 교환하는 표준 방식 다양한 서비스와 프레임워크, 그리고 API 데이터 수집 자동화 서비스 애플리케이션 데이터베이스 OLTP 애플리케이션의 상태를 저장 은행 계좌의 잔액을 저장하는 데이터베이스 개별 데이터 레코드를 높은 속도로 읽고 쓰는 온라인 트랜잭션 처리 트랜잭션 데이터베이스 짧은..
2023.10.09 -
Git 명령어 정리&github
Git init 저장소(repository) 만들기 Git status 현재 저장소 상태 출력 .gitignore 사용자별, 시스템별로 달라지는 파일의 경우 여러 사람이 진행하는 프로젝트를 할 시에 git으로 관리하지 않을 대상 기술 Git add 현재 디렉터리 하위의 모든 파일을 추가 *Staging : 변경 사항을 저장소에 저장하기 직전 단계에 올려놓는 개념 Git commit /User/project/ config --global user.email harvey@naver.com // 이메일 설정 /User/project/ config --global user.name "harvey" // 이름 설정 git commit -m "Project is revised" Git diff 직전 커밋 후 변경 ..
2023.09.18 -
데이터 엔지니어링 수명 주기 전체에 걸친 기술 선택
데이터 기술 : 오픈 소스, 관리형 오픈 소스, 독점 소프트웨어, 독점 서비스 등 거의 모든 방식으로 사용할 수 있는 Turn-Key 제품으로 제공 "수명 주기 전체에 걸쳐 데이터를 운반하고, 최종 사용자의 요구에 따라 이를 제공하는 견고하고 신뢰성 높은 시스템 설계" - 아키텍처 : 비즈니스의 전략적 목표를 충족하는 데이터 시스템의 고수준 설계, 로드맵 및 청사진 데이터 엔지니어링 수명 주기 전반에 걸쳐 데이터 기술 선택 고려사항 팀의 규모와 능력 단순한 기술부터 복잡한 기술에 이르기까지 팀의 규모에 따라 솔루션에 할애할 수 있는 역량의 규모가 대략적으로 결정 Cargo-cult engineering : 소규모 데이터 팀이 대기업의 최첨단 기술에 관한 블로그 포스팅을 참고하여 모방하는 사례 소규모 팀이..
2023.09.17