맛있는 개발자의 기록 일기
  • 홈
  • 관리창
  • 메뉴 닫기
  • 글작성
  • 방명록
  • 환경설정
    • 분류 전체보기 (84)
      • Java (74)
      • Food (2)
      • Java 기초 (0)
      • Java 심화 (0)
      • Language (4)
        • Java (4)
      • Framework (2)
        • Spring (2)
      • DevOps (1)
        • Git (1)
      • Cloud (1)
        • Amazon Cloud (1)
  • 홈
  • 태그
  • 방명록
Java

[SQL] Index 문법

인덱스 문법 인덱스 생성 -- 단일 인덱스 CREATE INDEX 인덱스이름 ON 테이블이름(필드이름1) -- 다중 컬럼 인덱스 CREATE INDEX 인덱스이름 ON 테이블이름(필드이름1, 필드이름2, ...) 인덱스 조회 SHOW INDEX FROM 테이블이름 UNUQUE 인덱스 생성(중복 값을 허용하지 않는 인덱스) -- 단일 인덱스 CREATE UNIQUE INDEX 인덱스 이름 ON 테이블이름(필드이름1) -- 다중 컬럼 인덱스 CREATE UNIQUE INDEX 인덱스 이름 ON 테이블이름(필드이름1, 필드이름2, ...) 인덱스 정렬(인덱스 생성 시점에 필드의 정렬방식 설정) CREATE INDEX 인덱스이름 ON 테이블이름 (필드이름 DESC) CREATE INDEX 인덱스이름 ON 테이블..

2022. 5. 31. 15:38
Java

SlowQuery 해결하기

0. 인덱스의 개념 인덱스는 테이블의 동작속도(조회)를 높여주는 자료구조이다. 인덱스로 데이터의 위치를 빠르게 찾아주는 역할이고 쉽게 예를 들어보면 책 뒤편에 '색인'이 인덱스의 역할과 동일하다고 볼 수 있다. 인덱스가 설정되지 않았다면 Table Full Scan이 일어나 성능이 저하되거나 치명적인 장애가 발생한다. 조회속도는 빨라지지만 UPDATE, INSERT, DELETE의 속도는 저하된다는 단점이 있다. (Table의 index 색인 정보를 갱신하는 추가적인 비용 소요) , 때문에 효율적인 인덱스 설계로 단점을 최대한 보완하는 방법을 생각해 볼 수 있다. 1. SlowQuery 문제 서버를 운영하는 환경에서 쿼리를 조회할때 수 분 이상 걸렸던 문제가 발생하여 서비스가 힘든 상황이 생겼다. 해당 ..

2022. 5. 31. 15:35
Java

인덱스(Index)란?

1. 인덱스(Index)란? [ 인덱스(index)란? ] 인덱스란 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상하기 위한 자료구조이다. 만약 우리가 책에서 원하는 내용을 찾는다고 하면, 책의 모든 페이지를 찾아 보는것은 오랜 시간이 걸린다. 그렇기 때문에 책의 저자들은 책의 맨 앞 또는 맨 뒤에 색인을 추가하는데, 데이터베이스의 index는 책의 색인과 같다. 데이터베이스에서도 테이블의 모든 데이터를 검색하면 시간이 오래 걸리기 때문에 데이터와 데이터의 위치를 포함한 자료구조를 생성하여 빠르게 조회할 수 있도록 돕고 있다. 인덱스를 활용하면, 데이터를 조회하는 SELECT 외에도 UPDATE나 DELETE의 성능이 함께 향상된다. 그러한 이유는 해당 연산을 수행하려면..

2022. 5. 31. 11:36
  • «
  • 1
  • »
Powered by Privatenote Copyright © 맛있는 개발자의 기록 일기 All rights reserved. TistoryWhaleSkin3.4

티스토리툴바