Finn.ian
article thumbnail
[MySQL] MySQL 이벤트 스케줄러 (Event Scheduler)
Data Engineering/DBMS 2023. 11. 19. 14:57

이번에는 MySQL에서 이벤트 스케줄링 하는 방법에 대해 작성하고자 합니다. MySQL 이벤트 스케줄링 요약 MySQL 이벤트 스케줄링은 데이터베이스의 특정 작업을 일정 간격으로 자동으로 실행할 수 있는 기능이다. 해당 기능을 사용할 수 있는 일반적인 경우는 아래와 같다. 백업 통계 수집 데이터 정리 데이터 마이그레이션 자동화 MySQL 예제를 통한 EVENT Scheduler 활용법 1단계: Event Scheduler 활성화하기 이벤트 스케줄러는 MySQL 서버에 기본적으로 내장된 구성 요소로서, 이벤트를 실행하는 데 사용됩니다. 다음 명령어로 이벤트 스케줄러를 활성화 할 수 있다. SET GLOBAL event_scheduler = ON; 2단계: Event 생성 다음은 매일 밤 12시에 'old_..

article thumbnail
[PostgreSQL] Database Partitioning
Data Engineering/DBMS 2023. 8. 23. 23:45

Dark Mode 기능은 꺼주셔야 내용이 잘보입니다😄 Database volume에 대한 고민 전체 Database에 모든 데이터를 하나의 테이블에 들어간다면 데이터베이스 관리에 어려움을 겪는다. 이유는 데이터베이스 볼륨 증가로 인해 데이터베이스의 읽기/쓰기에 대한 성능이 감소하며, 데이터베이스의 병목 지점이 되기 때문이다. 따라서 데이터를 하나의 테이블에 넣되, 적절히 분할한다면 성능 향상이 될 것이라 판단된다. 데이터베이스 성능 향상을 위해 데이터를 분할하여 저장하는 파티셔닝(Partitioning) 혹은 샤딩(Sharding)기법을 사용한다. 위 2가지 기법 모두 거대한 데이터셋을 서브셋으로 분리하여 관리하는 방법 중 파티셔닝(Partitioning)에 대해 정리하고자 한다. 1. 파티셔닝(Part..

article thumbnail
[DB 기초] 트랜잭션(Transaction)과 그 특성은 무엇인가
Data Engineering/DBMS 2023. 8. 19. 20:49

기술 면접의 단골 질문인 데이터베이스의 기초인 트랜잭션(Transaction)과 특성(ACID)에 대해 작성해보려 한다. 01. 트랜잭션(Transaction)이란 무엇일까? 🙄 트랜잭션(Transaction)은 데이터베이스의 상태를 변경 시키기 위해 수행되는 작업 단위라는 의미를 갖는다. 그렇다면, 데이터베이스의 상태를 변경시킨다는 의미는 무엇일까? 간단히 말하면 아래의 질의어(DML, 데이터 조작어)를 활용해 데이터베이스에 접근한다는 의미이다. - SELECT : 데이터베이스에 들어있는 데이터들을 조회하거나 검색하기 위한 명령어 - INSERT : 데이터베이스에 들어있는 데이터를 추가하기 위한 명령어 - UPDATE : 데이터베이스에 들어있는 데이터들을 갱신하기 위한 명령어 - DELETE : 데이터..

article thumbnail
[DBMS] Data structure store Redis
Data Engineering/DBMS 2023. 7. 27. 23:52

Redis (Remote Dictionary Server) 1-1. Redis 개념 Redis는 Key-Value 기반의 In-memory 데이터 저장소이다. Redis의 장점 Key-Value 기반이기 때문에, 쿼리를 작성하지 않아도 결과를 즉시 확인 가능 디스크에 데이터를 쓰는 구조가 아니라 메모리에서 데이터를 처리하기 때문에 속도 측면에서 빠름 1-2.다양한 데이터 구조(Collection) 제공 상단 그림은 데이터별 저장 구조에 대해 표현된 것이고, 하단은 Redis의 다양한 데이터 구조에 대해 표로 정리해둔 내용이다. No Structure Definition Simple Description 1 String 단순 Key-Value 매핑 구조 2 Lists Array형식의 데이터 구조 처음과 끝..

article thumbnail
[PostgreSQL] 사용자에게 권한 부여하기
Data Engineering/DBMS 2023. 7. 13. 00:03

오늘은 PostgreSQL Database에서 사용자에게 권한을 부여하거나 제거하는 방법에 대해 작성하려 합니다. PostgreSQL에서 사용자에게 권한을 부여하거나 뺏기 위해서는 GRANT 또는 REVOKE 명령을 사용합니다. 우선 사용자에게 권한을 부여하거나 제거하기 전, 사용자계정인 user 계정을 생성하는 방법에 root 계정을 생성하는 방법을 작성하고, 사용자에게 권한을 부여하거나 뺏는 명령어에 대해 작성하고자 합니다. 해당 글을 읽기 전, Dark Mode는 풀어주시면 글을 읽기 쉽습니다. 01. 계정 생성법 (CREATE) User 계정 생성하는 방법은 아래 SQL을 활용해주시면 되고, 비밀번호는 '따옴표'를 꼭 작성해주어야 합니다. CREATE USER username WITH PASSWO..

article thumbnail
[PostgreSQL] Primary Key 재설정
Data Engineering/DBMS 2023. 7. 4. 23:17

데이터베이스에서 기본키(Primary Key)는 굉장히 중요한 개념이다. 오늘은 간단히 PostgreSQL의 기본키에 대해 알아보고자 한다. PostgreSQL 기본키(Primary Key)는 테이블의 각 행을 고유하게 식별하는 데 사용되는 특별한 열 또는 열 집합이다. 관계형 데이터베이스 설계에서 중요한 구성 요소이며 데이터 무결성을 보장하고 효율적인 데이터 검색을 가능하게 한다. 01. 기본키의 특징 고유성 (Uniqueness) 기본키의 각 값은 테이블 내에서 고유해야 합니다. 두 행은 동일한 기본키 값을 가질 수 없다. 널 값 허용 불가 (Not Null) 기본키 값은 널 값을 가질 수 없다. 모든 행은 기본키 열에 정의된 값을 가져야 한다. 분해 불가능성(Irreducible) 기본키는 더 작은..

article thumbnail
[PostgreSQL] ERROR : Column reference [컬럼명] is ambiguous 오류 및 해결법
Data Engineering/DBMS 2023. 4. 11. 23:48

ERROR : Column reference [컬럼명] is ambiguous 오류와 해결법에 대해 포스팅을 진행하려 합니다. 원인 해당 오류는 2개 이상의 테이블 조인 시, 동일한 컬럼명이 존재하며 해당 컬럼이 어떠한 테이블의 컬럼을 참조하는지 명시되어 있지 않아 발생되는 오류입니다. 예시 예를 들어, base_tb 테이블의 [column1]라는 컬럼이 있고, JOIN하려는 tot_tb 테이블에도 [column1] 라는 컬럼명이 있을 때, 하단의 쿼리를 실행시키면 제목과 같은 오류가 발생합니다. SELECT a.[column1] FROM base_tb a JOIN tot_tb b ON a.[column1] = b.[column1] WHERE [column1] = '1' ; Column reference..

article thumbnail
[PostgreSQL] 중복 데이터 찾기
Data Engineering/DBMS 2023. 3. 23. 23:37

하루에 10GB이상 수집되는 데이터 중 중복된 데이터를 찾기 위해서는 PostgreSQL DB에서 어떠한 방식의 쿼리를 사용해야 하는지 정리해본다. GROUP BY와 HAVING 절 활용 GROUP BY와 HAVING 절을 활용하면 쉽게 찾아낼 수 있다. 예를 들어, users 테이블에서 email 컬럼의 값이 중복되는 데이터를 찾기 위해서는 아래와 같은 쿼리를 실행하면 된다. SELECT email, COUNT(*) FROM users GROUP BY email HAVING COUNT(*) > 1; 상단의 쿼리는 users 테이블에서 email 컬럼의 값이 중복되는 데이터를 찾아서, 그 개수를 함께 출력하는 쿼리이다. GROUP BY 절은 email 컬럼 값으로 그룹화를 하고, HAVING 절은 그룹화..

[MacOS] PostgreSQL 설치 및 테이블 생성
Data Engineering/DBMS 2023. 1. 8. 21:30

참고자료 https://shanepark.tistory.com/186 MacOS PostgreSQL 설치 하고 테이블 생성, 조회하기 MacOS PostgreSQL 설치 하고 테이블 생성, 조회하기 ​ PostgreSQL PostgreSQL은 확장 가능성 및 표준 준수를 강조하는 객체-관계형 데이터베이스 관리 시스템의 하나 입니다. 오픈소스 RDBMS로서 사용율은 Or shanepark.tistory.com 급하게 설치하여 설명법은 따로 작성하지 않아 참고자료만 올린 상태 추후 게시글 수정 예정

검색 태그