Babelfish에서 지리공간 데이터 유형 지원 - Amazon Aurora

Babelfish에서 지리공간 데이터 유형 지원

버전 3.5.0 및 4.1.0부터 Babelfish는 다음 두 가지 공간 데이터 유형에 대한 지원을 포함합니다.

  • 기하학 데이터 유형 - 이 데이터 유형은 평면, 즉 유클리드(평평한 지구) 데이터를 저장하기 위한 것입니다.

  • 지리학 데이터 유형 - 이 데이터 유형은 GPS 위도 및 경도 좌표와 같은 타원체, 즉 둥근 지구 데이터를 저장하는 데 사용됩니다.

이러한 데이터 유형을 사용하면 공간 데이터를 저장하고 조작할 수 있지만 제한이 있습니다.

Babelfish의 지리공간 데이터 유형 이해

  • 지리공간 데이터 유형은 뷰, 프로시저 및 테이블과 같은 다양한 데이터베이스 객체에서 지원됩니다.

  • 2차원 포인트 데이터 유형을 지원하여 위치 데이터를 위도, 경도 및 유효한 공간 참조 시스템 식별자(SRID)로 정의된 포인트로 저장할 수 있습니다.

  • JDBC, ODBC, DOTNET, PYTHON과 같은 드라이버를 통해 Babelfish에 연결하는 애플리케이션은 이 지리공간 기능을 활용할 수 있습니다.

Babelfish에서 지원하는 기하학 데이터 유형 함수

  • STGeomFromText(geometry_tagged_text, SRID) - WKT(Well-Known Text) 표현을 사용하여 기하학 인스턴스를 만듭니다.

  • STPointFromText(point_tagged_text, SRID) - WKT 표현을 사용하여 포인트 인스턴스를 생성합니다.

  • Point(X, Y, SRID) - x 및 y 좌표의 부동 소수점 값을 사용하여 포인트 인스턴스를 만듭니다.

  • <geometry_instance>.STAsText ( ) - 기하학 인스턴스에서 WKT 표현을 추출합니다.

  • <geometry_instance>.STDistance(other_geometry) - 두 기하학 인스턴스 사이의 거리를 계산합니다.

  • <geometry_instance>.STX - 기하학 인스턴스의 X 좌표(경도)를 추출합니다.

  • <geometry_instance>.STY - 기하학 인스턴스의 Y 좌표(위도)를 추출합니다.

Babelfish에서 지원하는 지리학 데이터 유형 함수

  • STGeomFromText(geography_tagged_text, SRID) - WKT 표현을 사용하여 지리학 인스턴스를 만듭니다.

  • STPointFromText(point_tagged_text, SRID) - WKT 표현을 사용하여 포인트 인스턴스를 생성합니다.

  • Point(Lat, Long, SRID) - 위도 및 경도의 부동 소수점 값을 사용하여 포인트 인스턴스를 만듭니다.

  • geography_instance>.STAsText( ) - 지리학 인스턴스에서 WKT 표현을 추출합니다.

  • geography_instance>.STDistance(other_geography) - 두 지리학 인스턴스 사이의 거리를 계산합니다.

  • <geography_instance>.Lat - 지리학 인스턴스의 위도 값을 추출합니다.

  • <geography_instance>.Long - 지리학 인스턴스의 경도 값을 추출합니다.

Babelfish에서 지원하는 지리공간 데이터 유형의 한계

  • 현재 Babelfish는 지리공간 데이터 유형의 포인트 인스턴스에 대한 Z-M 플래그와 같은 고급 기능을 지원하지 않습니다.

  • 포인트 인스턴스 이외에 다음과 같은 기하학 유형은 현재 지원되지 않습니다.

    • LineString

    • CircularString

    • CompoundCurve

    • Polygon

    • CurvePolygon

    • MultiPoint

    • MultiLineString

    • MultiPolygon

    • GeometryCollection

  • 현재 공간 인덱싱은 지리공간 데이터 유형에 지원되지 않습니다.

  • 현재 이러한 데이터 유형에는 나열된 함수만 지원됩니다. 자세한 내용은 Babelfish에서 지원하는 기하학 데이터 유형 함수Babelfish에서 지원하는 지리학 데이터 유형 함수 단원을 참조하세요.

  • 지리학 데이터에 대한 STDistance 함수 출력값은 T-SQL과 비교하여 정밀도 차이가 약간 있을 수 있습니다. 이는 기본 PostGIS 구현 때문입니다. 자세한 내용은 ST_Distance를 참조하세요.

  • 성능을 최적화하려면 Babelfish에서 추가 추상화 계층을 만들지 말고 기본 제공되는 지리공간 데이터 유형을 사용하세요.

    작은 정보

    사용자 지정 데이터 유형을 만들 수 있지만 지리공간 데이터를 기반으로 생성하는 것은 권장되지 않습니다. 이로 인해 복잡성이 발생하고 지원이 제한적이어서 예상치 못한 동작이 발생할 수 있습니다.

  • Babelfish에서는 지리공간 함수 이름이 키워드로 사용되며 의도한 방식으로 사용하는 경우에만 공간 연산을 수행합니다.

    작은 정보

    Babelfish에서 사용자 정의 함수와 프로시저를 만들 때는 기본 제공되는 지리공간 함수와 같은 이름을 사용하지 마세요. 이름이 같은 기존 데이터베이스 객체가 있는 경우 sp_rename을 사용하여 이름을 바꾸세요.