programing

공간 색인이란 무엇이며 언제 사용해야 합니까?

kingscode 2022. 10. 9. 11:32
반응형

공간 색인이란 무엇이며 언제 사용해야 합니까?

대부분의 일반 PHP 웹 개발자와 마찬가지로 MySql을 RDBMS로 사용합니다. MySql은 (다른 RDBMS와 마찬가지로) SPACIAL INDEX 기능을 제공하지만 잘 이해하지 못합니다.나는 그것을 검색해 보았지만, 그것에 대한 나의 나쁜 지식을 명확하게 하기 위한 명확한 실제 사례를 찾지 못했다.

공간 인덱스가 무엇인지, 언제 사용해야 하는지 설명해 주실 수 있나요?

공간 인덱스를 사용하여 지오 오브젝트 - 도형을 인덱싱할 수 있습니다.공간 인덱스를 통해 공간에서 겹치는 물체를 효율적으로 검색할 수 있습니다.

공간 인덱스는 공간 객체가 1D 데이터 포인트가 아닌 보다 높은 차원 공간(예: 2D)에 있으므로 BTree와 같은 일반 인덱스는 이러한 데이터 인덱스에 적합하지 않다는 차이를 가진 일반 인덱스와 같다.잘 알려진 공간 색인 기법은 R-트리입니다(wikipedia에서 구글 검색).

위치를 저장하기 위해 지리적 데이터를 저장해야 하거나 형상 관련 데이터를 저장해야 할 때 사용할 수 있습니다.

예를 들어, 당신이 사람들이 식당, 술집, 술집, 술집, 그리고 근처에 있는 다른 행락지를 찾을 수 있도록 도와주는 어플리케이션을 개발하려고 한다고 상상해 보세요.한마디로 로케이션 디스커버리 플랫폼입니다.

백엔드의 관점에서 보면 위도나 경도 등의 지리적 데이터를 저장해야 합니다.그리고 사용자와 위치 사이의 거리를 계산하는 함수를 작성해야 합니다(위치가 사용자로부터 얼마나 떨어져 있는지 표시).동일한 기능을 사용하여 사용자에게 가장 가까운 장소 또는 주어진 반경 내에서 가장 가까운 곳을 찾는 알고리즘을 설계할 수 있습니다.

더 좋은 아이디어는 이쪽에서 보실 수 있습니다.- https://medium.com/sysf/playing-with-geometry-spatial-data-type-in-mysql-645b83880331

공간 인덱스는 범위 스캔이 아니라 정확히 일치하는 값 조회를 검색하는 데 사용하는 것이 가장 좋습니다.주로 MyISAM 테이블에서 지원되지만 MySQL 5.7.4 LAB 릴리즈부터는 Innodb에서도 지원됩니다.

자료: - http://dev.mysql.com/doc/refman/5.5/en/creating-spatial-indexes.html http://mysqlserverteam.com/innodb-spatial-indexes-in-5-7-4-lab-release/

언급URL : https://stackoverflow.com/questions/2256364/what-is-a-spatial-index-and-when-should-i-use-it

반응형