본문 바로가기 메뉴 바로가기

승밈

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

승밈

검색하기 폼
  • 분류 전체보기 (64)
    • Server (12)
    • Web (16)
    • Js (1)
    • Algorithm (14)
    • SQL (5)
    • 일상 (2)
    • AI (1)
    • CryptoBot (10)
    • 데이터 엔지니어링 (3)
  • 방명록

SQL (5)
UTC와 KST의 전쟁: Stored Procedure로 인덱스 살린 이야기

분석 쿼리 한 줄 때문에 운영 DB CPU가 천장을 치는 경험, 다들 한 번씩 있을 거다.우리도 있었다. 그리고 그 원인이 의외로 단순했다. 시간대 변환.UTC로 저장된 데이터를 KST 기준으로 집계하려고 했을 뿐인데, 그게 인덱스를 완전히 무력화했다. 풀스캔이 일어났고, 분석 쿼리 한 번에 운영 DB가 흔들렸다. 이번 글은 이걸 어떻게 풀었는지에 대한 정리.발단: UTC 저장, KST 집계우리 운영 DB는 모든 timestamp를 UTC로 저장한다. 글로벌 서비스를 고려해 일관된 시간대를 쓰는 건 표준이고, 우리도 그렇게 하고 있었다.근데 분석 요구사항은 KST 기준이다. "5월 5일 KST 하루치 메시지 수 집계해줘" 같은 요청.처음엔 단순하게 풀었다.SELECT COUNT(*) FROM messag..

SQL 2026. 5. 14. 08:34
[SQL] MySQL Date Type between 과 대소 비교 연산자(>,<) 성능 비교

date 타입으로 저장된 컬럼을 Select 해올때 between과 대소 비교 연산자 성능의 차이에 대해 테스트 해보려고 한다. 일단 더미데이터 테이블의 DDL은 다음과 같다. create table test_datetime ( id bigint unsigned auto_increment primary key, isTest tinyint default 0 not null, createdAt datetime(6) default CURRENT_TIMESTAMP(6) not null, updatedAt datetime(6) default CURRENT_TIMESTAMP(6) not null on update CURRENT_TIMESTAMP(6), deletedAt datetime(6) null ); creat..

SQL 2023. 2. 5. 18:43
[SQL] mySQL Procedure 사용하여 반복문 사용하기

쿼리를 이용하여 작업중, 수많은 더미데이터를 Insert 해야하는 경우가 생겼는데 반복문을 사용해야하는 경우 프로시저를 이용하여 손쉽게 처리할 수 있습니다. CREATE PROCEDURE dummy_insert_loop() BEGIN DECLARE i INT DEFAULT 1; WHILE i

SQL 2023. 2. 5. 16:03
[SQL] mySQL 계정 생성, 삭제, 권한 부여

여러가지 DataBase를 만들다보면 계정별로 권한을 따로 줘야할 일이 많은데 자주 사용하는 계정 관련 SQL 정리 입니다. mysql 사용 show databases -- 생성된 데이터베이스 목록 보기 use mysql -- 계정, DB, 각종 config 설정은 mysql 데이터 베이스를 사용해야함 계정 조회 select host,user,password from user -- 계정 조회 계정 생성 create user test_user@'localhost' identified by 'insertPassWord'; -- localhost 에서만 계정 접근 허용 create user test_user@'%' identified by 'insertPassWord'; -- 모든IP 의 계정 접근 허용 cr..

SQL 2022. 5. 3. 10:47
[SQL] mySQL Query 사용 데이터 암호화

사용자의 정보를 DB에 그대로 저장하지 않고 난독화 또는 암호화 하여 변환하여 저장하는 방법 데이터를 암호화하는방법에는 여러가지 방법이 있지만, 제일 간단하게 SQL 쿼리를 통해 암호화(난독화) 및 복호화 하는 쿼리이다. //ENCRYPT insert tempTable (usernm) values ( HEX(AES_ENCRYPT(usernm, SHA2('암호화 할때 사용할 key', 256))) ) //DECRYPT SELECT CONVERT(AES_DECRYPT(UNHEX(usernm), SHA2('암호화 할때 사용할 key',256)) USING UTF8) 복호화 FROM tempTable 들어온 문자열 + key값을 이용하여 암호화 하는것이기때문에 rainbow table이 존재한다. 민감하지 않은..

SQL 2021. 11. 12. 10:10
이전 1 다음
이전 다음
공지사항
  • GITHUB
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • GitHub
TAG
  • LLM동적호출
  • LLM비용오차
  • Haiku4096토큰
  • SlidingWindowTTL
  • 일경계처리
  • AnthropicCaching
  • 데이터엔지니어링
  • 트레일링스탑버그
  • jdbc
  • Telegram알림
  • 수수료슬리피지
  • 비용80%절감
  • CryptoBot
  • 일일주간월간스케줄러
  • Kafka
  • 한달운영진단
  • LLM파라미터머지
  • 코인별전략배정
  • 5중검증
  • 메이저화이트리스트
  • CDC
  • kafka connect
  • BOJ #JS
  • 데모모드
  • LLM비활성결정
  • 코드자체감사
  • 코인별손익분석
  • DataFramebool
  • Page_DownPage_DownPage_Down
  • P0P4우선순위
more
«   2026/05   »
일 월 화 수 목 금 토
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
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바