SQL/MariaDB

    [sql] 클러스터형 인덱스와 보조 인덱스 특징

    클러스터형 인덱스 특징 (Clustered Index) 클러스터형 인덱스 생성 시에는 데이터 페이지 전체가 재정렬됨. 따라서 이미 대용량 데이터가 입력된 상태라면 업무시간에 클러스터형 인덱스를 생성하는 것은 심각한 시스템 부하를 줄 수 있음. 클러스터형 인덱스는 인덱스 자체의 리프 페이지가 곧 데이터임. 그러므로, 인덱스 자체에 데이터가 포함되어 있다고 할 수 있음 클러스터형 인덱스는 보조 인덱스보다 검색 속도는 더 빠르다. 하지만 데이터 입력/수정/삭제는 더 느림 클러스터 인덱스는 성능이 좋지만 테이블에 한 개만 생성할 수 있음. 따라서, 어느 열에 클러스터형 인덱스를 생성하는지에 따라서 시스템의 성능이 달라질 수 있음 보조 인덱스 (Secondary Index) 보조 인덱스 생성 시, 데이터 페이지는..

    [SQL] 뷰(VIEW)란 무엇인가?

    SqlD나 데이터베이스를 공부하다 보면 뷰(view)에 대해 다룬 내용을 마주할 때가 있으리라 생각됩니다. 대부분 뷰가 그냥 SELECT문을 날려서 보여주는 테이블 정도로만 이해하하고 넘어가시는 분도 계시지만 조금 구체적으로(?) 뷰와 뷰의 특징은 어떻게 되는지 한번 알아보겠습니다. 우선 뷰는 한 번 생성해 놓으면 테이블이라고 생각해도 될 정도로 테이블과 거의 동일한 개체로 여겨집니다. 그렇기 때문에 사용자가 SELECT 문을 통해 쿼리를 실행하면, 그것에 대한 결과값으로 보여지는 테이블이 뷰 테이블이라고 할 수 있습니다. 그럼 일반 테이블이랑 뭐가 다른 것이냐? '읽기 전용'으로 많이 사용되는 것이 다르다고 할 수 있습니다. 하지만 뷰를 통해 원 테이블의 데이터를 수정할 수도 있습니다. 이 부분에 대해..