728x90 반응형 분류 전체보기103 윈도우 함수란? 아래와 같은 주문 데이터 셋이 있다고 가정해보자Date Customer Order_ID Amount2025-05-01Alice10152025-05-02Alice10272025-05-03Alice103102025-05-04Bob10442025-05-05Bob1056 우리는 이 데이터 셋에서 5월 1일부터 5월 5일까지 어떤 고객이 어떤 주문 ID를 통해 얼마나 주문했는지 알 수 있다.하지만 이것은 원시 데이터이고 아주 간단하면서도 적은 양이기 때문에 실제로 엄청나게 많은 양의 데이터를 한눈에 보는 것은 어렵다. 해서 조금 더 한눈에 볼 수 있고 의미있는 데이터를 보기 위해서는 각 고객별로 얼마나 주문을 했는지의 집계를 보고 싶을 수 있다. 집계를 내고 보는 방법은 다양하다.오늘은 윈도우 함수라는 것을 사용.. 2025. 5. 20. 그래서 JWT가 뭔데? (Stateless의 장단점과 보완방법) JWT(JSON Web Token)의 이해와 활용JWT는 JSON Web Token로 말 그대로 JSON 객체로 토큰을 주고 받는 토큰 인증 방식이다.이 토큰은 디지털 서명되어 있어 정보의 신뢰성과 무결성을 보장하고 HMAC 알고리즘을 사용한 비밀키나 RSA를 사용한 공개/개인 키 쌍으로 서명될 수 있다고 한다.JWT는 세 부분으로 구성되어 있다.헤더(Header): 토큰 유형(JWT)과 서명 알고리즘페이로드(Payload): 토큰에 포함할 사용자에 대한 정보나 메타데이터, 통칭 클레임서명(Signature): 헤더와 페이로드를 Base64Url로 인코딩한 비밀키이 세 부분은 점(.)으로 구분되어 xxxxx.yyyyy.zzzzz 형태로 표현된다. JWT의 Flow토큰 생성: 클라이언트가 웹에 로그인하면 .. 2025. 4. 8. ELK + 내장 Filebeat 2 (Kafka 얹기) https://samori.tistory.com/119 ELK + 내장 Filebeat samori.tistory.com에 이어 Kafka라는 데이터 스트리밍을 제공하는 오픈 소스 플랫폼을 연결해서 파일비트와 ELK 사이에 둘 것이다.왜?아래와 같은 장점이 있기 때문이다.ScalabilityFault ToleranceReal-Time AnalyticsLoad Management 다 중요하지만 Fault Tolerance와 Load Management가 핵심인데 바로 데이터 유실 방지와 분산 처리이다.아래는 샘플 Compose 파일로 하나의 Kafka 서비스가 아닌 3개의 서비스를 띄우고 이를 연결해준 것을 볼 수 있다.이는 Fault Tolerance(데이터 유실 방지)와 Load Management(분.. 2025. 4. 8. ELK + 내장 Filebeat 소스 가져오기: git clone https://github.com/deviantony/docker-elk.git 컴포즈로 ELK 셋업: docker compose up setup Filebeat 를 추가한 Main Compose 파일 만들기services: # Setup service (unchanged) setup: profiles: - setup build: context: setup/ args: ELASTIC_VERSION: ${ELASTIC_VERSION} init: true volumes: - ./setup/entrypoint.sh:/entrypoint.sh:ro,Z - ./setup/lib.sh:/lib.sh:.. 2025. 3. 26. 페이징의 종류와 각각의 장단점 (파이썬+장고) 장고에서 페이징은 크게 세 종류가 있다 1. Page Number PaginationFront에서 요청을 날릴 때 특정 페이지 번호를 구분자(URI)에 붙여서 Back에서 받고 그 페이지에 맞는 데이터를 필터링해서 응답해주는 방식 예시)/api/items/?page=3 장점)직관적이고 간단해서 적용하기 쉽다 단점)대용량 조회에 적합하지 않다. 적합하지 않은 이유는 Limit Offset Pagination과 마찬가지로 동작원리에 있다. 특정 페이지, 예를 들어, 999페이지를 요청했다고 가정하면 서버는 999페이지에 도달하기 위해 처음부터 989 페이지까지 쭉 확인하면서 스킵해야 하는데 확인하고 스킵하는 것도 시간이 걸리는 법이다. 2. Limit Offset PaginationFront에서 요청.. 2025. 1. 23. CSV 포맷에서 Xlsx 포맷으로 추출하기 (숫자 앞에 0 짤림 방지) 사건의 전말 테이블의 특정 칼럼은 int, 즉 , 정수 타입이다. 정수는 앞에 0이 붙지 못한다.하지만 0이 들어와야 하는 경우가 발생하고 이 0을 사용자는 화면에서 보고, 출력을 할 수 있어야 한다.백엔드에서든, 앞단에서든 0이야 digit 수 만큼 붙여줄 수 있다. 하지만 출력을 할 때는 얘기가 다르다. 만약 csv 포맷으로 출력을 한다면 해당 칼럼의 서식은 변경할 수 없다.아무리 앞단에서 0이 붙어진 데이터를 display 했다고 하더라도 csv로 출력하고 여는순간 앞에 0은 사라질 것이다.왜? 숫자이기 때문이다. 출력하기 전에 문자열로 바꿨다 하더라도 상관없다. 이를 위해 엑셀 전용 포맷인 xlsx를 사용해야 하며위와 같은 이유로 xlsx로 추출할 때 어떻게 해야하는지 공유하려고 한다. 제일 먼.. 2024. 10. 18. initdb와 pg_dump 통해서 Postgres DB 통채로 Migrate 하는법 (Feat. Docker) 도커에 대한 기본 이해가 필요하기 때문에 관련 배경지식이 부족한 경우 아래 포스팅을 참고하길 바란다.https://samori.tistory.com/88 도커 & 쿠버네티스 이해하기도커(Docker)란? 도커를 한 문장으로 요약하면 개발자가 만든 코드가 어느 환경에서도 작동할 수 있게 도와주는 오픈소스이다. 그런데 왜 굳이 Docker일까? 영어로 된 대부분의 기술 용어들은 이름samori.tistory.com 준비물:1. 최신 Postgres 이미지https://hub.docker.com/_/postgres postgres - Official Image | Docker HubNote: the description for this image is longer than the Hub length limit.. 2024. 10. 4. 이전 1 2 3 4 ··· 15 다음 728x90 반응형