Skip to main content

전체 테이블 스캔이란 무엇입니까?

full 전체 테이블 스캔은 데이터베이스를 스캔하는 가장 느리게하지만 가장 철저한 방법 중 하나입니다.이 스캔 방법이 너무 느린 이유는 데이터베이스가 모든 행을 읽고 관리자가 부과 한 쿼리 또는 조건에 대해 하나 이상의 열이 유효한지 확인하기 때문입니다.전체 테이블 스캔의 가장 일반적인 트리거는 데이터베이스에 쿼리가 시작될 수있는 인덱스 행이 포함되어 있지 않다는 것입니다.한 행을 찾는 경우 수동으로 테이블을 스캔하는 것이 좋습니다. 그러나 더 많은 것을 찾고 있거나 큰 테이블을 살펴보면 전체 테이블 스캔이 더 잘 작동합니다.또는 테이블을 확인하여 상태를 충족 할 수 있는지 확인하십시오.전체 테이블 스캔은 조건과 일치하는 행을 발견하더라도 나머지 행을 계속 스캔하기 때문에 가장 철저한 스캔입니다.이 기능은 비싸기 때문에 스캔이 각 행을 읽고 쓰고, 또한 행을 철저히 확인하기 위해 여러 번의 메모리를 사용하기 때문에 많은 양의 메모리를 사용한다는 것을 의미합니다.쿼리 또는 함수가 수행 될 때 전체 스캔이 필요하지만 데이터베이스는 쿼리를 실행할 인덱스가 표시되지 않습니다.

index는 관리자의 선호도에 따라 테이블에 대한 정보를 색인화하는 테이블의 열입니다.예를 들어, 관리자가 이름에 대한 정보를 색인하려면 인덱스 열에 각 이름의 위치가 기록됩니다.이를 통해 관리자와 데이터베이스 모두 데이터베이스에 숨겨진 정보를 찾는 데 도움이됩니다.테이블에 인덱스가없는 경우 전체 테이블 스캔이 일반적으로 쿼리를 실행하도록 자동으로 시작합니다.

너무 많은 메모리가 전체 테이블 스캔에 할당되어 전체 스캔이 매우 느려서 철저합니다.관리자가 쿼리를 위해 하나 또는 몇 개의 행이 필요한 경우 일반적으로 작은 인덱스를 구축하는 것이 더 빠릅니다.이것은 사실이지만 쿼리가 크면 전체 스캔이 실제로 더 빠르게 작동 할 수 있습니다.관리자가 전체 데이터베이스의 5 % 이상에 영향을 미치는 쿼리를 작성하는 경우 전체 스캔은 일반적으로 관리자가 수동으로 동일한 작업을 수행하는 것보다 기능을 더 빨리 수행 할 수 있습니다.”기능, 테이블의 빠른 스캔을 수행합니다.이것은 관리자에게 쿼리에 인덱스가 필요한지 여부를 보여줍니다.결과를 얻음으로써 관리자는 쿼리가 그대로 실행될 수 있는지, 색인을 만들거나 검색 해야하는지 또는 전체 테이블 스캔을 수행하는 것이 효율적일 것인지 알 수 있습니다.