Amazon Redshift 공간 데이터 용어
다음 용어는 몇 가지 Amazon Redshift 공간 함수를 설명하는 데 사용됩니다.
경계 상자
지오메트리 또는 지리의 경계 상자는 지오메트리 또는 지리의 모든 점 좌표 범위의 외적(차원 간)으로 정의됩니다. 2차원 지오메트리의 경우 경계 상자는 지오메트리의 모든 점을 완전히 포함하는 직사각형입니다. 예를 들어 다각형 POLYGON((0 0,1 0,0 2,0 0))
의 경계 상자는 점 (0, 0) 및 (1, 2)에 의해 왼쪽 하단 및 오른쪽 상단 모서리로 정의되는 직사각형입니다. Amazon Redshift는 기하학적 술어와 공간 조인의 속도를 높이기 위해 경계 상자를 미리 계산하고 지오메트리 내부에 저장합니다. 예를 들어 두 지오메트리의 경계 상자가 교차하지 않으면 이 두 지오메트리는 교차할 수 없으며 ST_Intersects 술어를 사용하는 공간 조인의 결과 집합에 있을 수 없습니다.
공간 함수를 사용하여 경계 상자에 대한 추가(AddBBox), 삭제(DropBBox) 및 지원 결정(SupportsBBox)을 할 수 있습니다. Amazon Redshift는 모든 지오메트리 하위 유형에 대한 경계 상자의 사전 계산을 지원합니다.
다음 예에서는 테이블의 기존 지오메트리를 업데이트하여 경계 상자와 함께 저장하는 방법을 보여줍니다. 클러스터가 클러스터 버전 1.0.26809 이상인 경우 기본적으로 미리 계산된 경계 상자를 사용하여 모든 새 지오메트리가 생성됩니다.
UPDATE my_table SET geom = AddBBox(geom) WHERE SupportsBBox(geom) = false;
기존 지오메트리를 업데이트한 후 업데이트된 테이블에서 VACUUM 명령을 실행하는 것이 좋습니다. 자세한 내용은 VACUUM 단원을 참조하십시오.
세션 중 지오메트리를 경계 상자로 인코딩할지 여부를 설정하려면 default_geometry_encoding 섹션을 참조하세요.
기하학적 유효성
Amazon Redshift에서 사용하는 기하학적 알고리즘은 입력 지오메트리가 유효한 지오메트리라고 가정합니다. 알고리즘에 대한 입력이 유효하지 않으면 결과가 정의되지 않습니다. 다음 섹션에서는 각 지오메트리 하위 유형에 대해 Amazon Redshift에서 사용하는 기하학적 유효성 정의를 설명합니다.
- Point
-
다음 조건 중 하나에 해당하면 점이 유효한 것으로 간주됩니다.
점이 빈 점입니다.
모든 점 좌표가 유한 부동 소수점 숫자입니다.
점은 빈 점일 수 있습니다.
- 라인스트링
-
다음 조건 중 하나에라도 해당하면 라인스트링이 유효한 것으로 간주됩니다.
라인스트링이 비어 있습니다. 즉, 점을 포함하지 않습니다.
비어 있지 않은 라인스트링의 모든 점에 유한 부동 소수점 숫자인 좌표가 있습니다.
라인스트링은 비어 있지 않은 경우 1차원이어야 합니다. 즉, 점으로 퇴화할 수 없습니다.
라인스트링은 빈 점을 포함할 수 없습니다.
라인스트링에 중복된 연속 점이 있을 수 있습니다.
라인스트링에 자체 교차점이 있을 수 있습니다.
- 다각형
-
다음 조건 중 하나에라도 해당하면 다각형이 유효한 것으로 간주됩니다.
다각형이 비어 있습니다. 즉, 링을 포함하지 않습니다.
비어 있지 않은 경우 다음 모든 조건에 해당하면 다각형이 유효합니다.
다각형의 모든 링이 유효합니다. 다음 모든 조건에 해당하면 링이 유효한 것으로 간주됩니다.
링의 모든 점에 유한 부동 소수점 숫자인 좌표가 있습니다.
링이 닫혔습니다. 즉, 첫 번째 점과 마지막 점이 일치합니다.
링에 자체 교차점이 없습니다.
링이 2차원입니다.
다각형의 링이 일관된 방향을 갖습니다. 즉, 링을 가로지르는 경우 다각형의 내부는 오른쪽 또는 왼쪽에 있습니다. 이는 다각형의 외부 링이 시계 방향 또는 시계 반대 방향인 경우 모든 다각형의 내부 링은 동일한 시계 반대 방향 또는 시계 방향이어야 함을 의미합니다.
모든 내부 링이 다각형의 외부 링 내에 있어야 합니다.
내부 링은 중첩될 수 없습니다. 즉, 한 내부 링이 다른 내부 링 안에 있을 수 없습니다.
내부 및 외부 링은 유한한 수의 점에서만 교차할 수 있습니다.
다각형의 내부는 단순히 연결되어야 합니다.
다각형은 빈 점을 포함할 수 없습니다.
- 다중 점
-
다음 조건 중 하나에라도 해당하면 다중 점이 유효한 것으로 간주됩니다.
다중 점이 비어 있습니다. 즉, 점을 포함하지 않습니다.
다중 점이 비어 있지 않고 모든 점이 점 유효성 정의에 따라 유효합니다.
다중 점은 하나 이상의 빈 점을 포함할 수 있습니다.
다중 점에 중복 점이 있을 수 있습니다.
- 다중 라인스트링
-
다음 조건 중 하나에라도 해당하면 다중 라인스트링이 유효한 것으로 간주됩니다.
다중 라인스트링이 비어 있습니다. 즉, 라인스트링을 포함하지 않습니다.
비어 있지 않은 다중 라인스트링의 모든 라인스트링이 라인스트링 유효성 정의에 따라 유효합니다.
빈 라인스트링만으로 구성된 비어 있지 않은 다중 라인스트링은 유효한 것으로 간주됩니다.
다중 라인스트링의 빈 라인스트링은 유효성에 영향을 미치지 않습니다.
다중 라인스트링에 중복된 연속 점이 있는 라인스트링이 있을 수 있습니다.
다중 라인스트링에 자체 교차점이 있을 수 있습니다.
다중 라인스트링은 빈 점을 포함할 수 없습니다.
- 다중 다각형
-
다음 조건 중 하나에라도 해당하면 다중 다각형이 유효한 것으로 간주됩니다.
다중 다각형이 다각형을 포함하지 않습니다(비어 있음).
다중 다각형이 비어 있지 않으며 다음에 모두 해당합니다.
다중 다각형의 모든 다각형이 유효합니다.
다중 다각형의 두 다각형은 무한한 수의 점에서 교차할 수 없습니다. 특히 이는 두 다각형의 내부가 교차할 수 없고 유한한 수의 점에서만 접촉할 수 있음을 의미합니다.
다중 다각형의 빈 다각형은 다중 다각형을 무효화하지 않습니다.
다중 다각형은 빈 점을 포함할 수 없습니다.
- 지오메트리 컬렉션
-
다음 조건 중 하나에라도 해당하면 지오메트리 컬렉션이 유효한 것으로 간주됩니다.
지오메트리 컬렉션이 비어 있습니다. 즉, 지오메트리를 포함하지 않습니다.
비어 있지 않은 지오메트리 컬렉션의 모든 지오메트리는 유효합니다.
이 정의는 재귀적 방식이지만 중첩 지오메트리 컬렉션에 계속 적용됩니다.
지오메트리 컬렉션에는 빈 점과 빈 점이 있는 다중 점이 포함될 수 있습니다.
기하학적 단순성
Amazon Redshift에서 사용하는 기하학적 알고리즘은 입력 지오메트리가 유효한 지오메트리라고 가정합니다. 알고리즘에 대한 입력이 유효하지 않으면 단순성 확인이 정의되지 않습니다. 다음 섹션에서는 각 지오메트리 하위 유형에 대해 Amazon Redshift에서 사용하는 기하학적 단순성 정의를 설명합니다.
- Point
-
다음 조건 중 하나에라도 해당하면 유효 점이 단순한 것으로 간주됩니다.
유효 점이 항상 단순한 것으로 간주됩니다.
빈 점이 단순한 것으로 간주됩니다.
- 라인스트링
-
다음 조건 중 하나에라도 해당하면 유효 라인스트링이 단순한 것으로 간주됩니다.
라인스트링이 비어 있습니다.
라인스트링이 비어 있지 않고 다음 모든 조건에 해당합니다.
중복된 연속 점이 없습니다.
일치할 수 있는 첫 번째 점과 마지막 점을 제외하고 자체 교차점이 없습니다. 즉, 라인스트링이 경계 점을 제외하고는 자체 교차점을 가질 수 없습니다.
- 다각형
-
유효 다각형은 중복된 연속 점을 포함하지 않으면 단순한 것으로 간주됩니다.
- 다중 점
-
다음 조건 중 하나에라도 해당하면 유효 다중 점이 단순한 것으로 간주됩니다.
다중 점이 비어 있습니다. 즉, 점을 포함하지 않습니다.
다중 점의 비어 있지 않은 두 점은 일치하지 않습니다.
- 다중 라인스트링
-
다음 조건 중 하나에라도 해당하면 유효 다중 라인스트링이 단순한 것으로 간주됩니다.
다중 라인스트링이 비어 있습니다.
다중 라인스트링이 비어 있지 않고 다음 모든 조건에 해당합니다.
해당 라인스트링이 모두 단순합니다.
다중 라인스트링의 두 라인스트링은 해당 라인스트링의 경계 점을 제외하고는 교차하지 않습니다.
빈 라인스트링으로 구성된 비어 있지 않은 다중 라인스트링은 비어 있는 것으로 간주됩니다.
다중 라인스트링의 빈 라인스트링은 단순성에 영향을 미치지 않습니다.
다중 라인스트링의 닫힌 라인스트링은 다중 라인스트링의 다른 라인스트링과 교차할 수 없습니다.
다중 라인스트링에 중복된 연속 점이 있는 라인스트링이 있을 수 없습니다.
- 다중 다각형
-
유효 다중 다각형은 중복된 연속 점을 포함하지 않으면 단순한 것으로 간주됩니다.
- 지오메트리 컬렉션
-
다음 조건 중 하나에라도 해당하면 유효 지오메트리 컬렉션이 단순한 것으로 간주됩니다.
지오메트리 컬렉션이 비어 있습니다. 즉, 지오메트리를 포함하지 않습니다.
비어 있지 않은 지오메트리 컬렉션의 모든 지오메트리는 단순합니다.
이 정의는 재귀적 방식이지만 중첩 지오메트리 컬렉션에 계속 적용됩니다.
H3
H3는 공간 좌표를 제곱미터 해상도까지 인덱싱하는 방법을 제공하는 계층적 지리공간 인덱싱 그리드 시스템입니다. 인덱싱된 데이터는 서로 다른 데이터 세트 간에 결합하고 다양한 정밀도 수준으로 집계할 수 있습니다. H3를 사용하면 가장 가까운 이웃, 최단 경로, 그래디언트 평활화 등 그리드를 기반으로 다양한 알고리즘과 최적화를 수행할 수 있습니다. H3 인덱스는 육각형 또는 오각형일 수 있는 셀을 나타냅니다. 해상도가 주어지면 공간이 계층적으로 세분됩니다. H3는 0에서 15까지의 해상도를 포함하여 16개의 해상도를 지원합니다. 0
이 가장 거칠고 15
가 가장 정교합니다.
Amazon Redshift는 다음과 같은 H3 공간 함수를 제공합니다.