본문 바로가기
728x90

인덱스 생성3

[PostgreSQL] Postgre에서 인덱스 사용하는 방법 Postgre에서 인덱스를 조회, 생성, 삭제, 확인하는 방법과 인덱스를 어디에 어떻게 생성해야 하는지 인덱스는 조회 속도를 향상시킬 수 있는 중요한 역할을 한다 .하지만 인덱스를 막 사용하게 되면 인덱스를 효울적으로 사용하지 못하기도 하고, 오히려 삽입, 수정, 삭제 등의 연산 작업을 느리게 하여 역효과가 날 수 있다. 인덱스는 어떤 컬럼에 걸어야 할까? 기본키(Primary Key): 기본키는 테이블에서 각 행을 고유하게 식별하는데 사용되기 때문에 자동으로 인덱스가 생성된다. 외래키(Foreign Key): 외래키를 포함하는 컬럼은 다른 테이블과의 관계를 나타내므로 조인 연산 및 외래키 제약조건 검색을 최적화하는데 도움된다. 조회(검색)가 자주 발생하는 컬럼: 데이터 검색 (WHERE, JOIN, O.. 2024. 2. 24.
[Database] 데이터베이스 성능 최적화 작업 (feat. Data Mart) 대량의 데이터 처리로 부하가 많은 기능에 대한 속도 개선을 위한 Database 성능 최적화 작업 프로젝트를 개발하다 보면 간단하게 처리할 수 있는 기능들도 있지만 매우 많은 양의 데이터를 복잡하게 처리해야 하는 기능들도 필요하다. (이런 시간/공간 복잡도가 높은 기능들을 잘 처리해야 프로젝트의 성능을 높일 수 있다!) 우선 어떤 부분에서 어느 로직이 문제인지 정확하게 파악하는게 중요한데 이 글에서 다루고자 하는 경우는 대량의 통계 데이터를 with, group by, join이 무분별하게 사용된 매우 복잡한 쿼리로 처리하다 보니 데이터베이스에서 데이터를 처리하는 속도가 매우 늦어져서 발생한 성능 이슈이다. 데이터베이스 성능 최적화에는 인덱스 튜닝, 쿼리 최적화, 정규화/비정규화, 캐시 사용, 데이터 분.. 2024. 2. 24.
[Index] index 사용 방법 index 생성 테이블 생성 시 인덱스 생성 -- INDEX ( 칼럼명1, 칼럼명2 ) CREATE TABLE `books` ( `id` varchar(5) NOT NULL, `name` varchar(20) NOT NULL, `password` varchar(20) NOT NULL, PRIMARY KEY (`id`), INDEX `idx_test` (`name`) ); 인덱스 추가로 생성 -- CREATE INDEX ON ( 칼럼명1, 칼럼명2, ... ); CREATE INDEX idx_test ON books ( name ); 테이블에 추가 -- ALTER TABLE ADD INDEX ( 칼럼명1, 칼럼명2, ... ); ALTER TABLE books ADD INDEX idx_test ( name.. 2023. 8. 27.
728x90