PostGIS 위에 구현 된 공간 애플리케이션을위한 스키마를 생성하기 위해 (공간적) hibernate 어노테이션을 사용하고 있습니다. 주석이 달린 클래스에서 데이터베이스 스키마를 만들 때 응용 프로그램 전체에서 사용되는 공간 쿼리 속도를 높이기 위해 공간 인덱스를 만들어야합니다.@Index annotation을 사용할 때 인덱스 메소드 지정하기
@Entity
@Table(name = "MY_CLASS")
@org.hibernate.annotations.Table(
appliesTo = "MY_CLASS", indexes = {
@Index(name = "idx_my_class_sidx",
columnNames = { "GEOM" }) })
public class MyClass {
[...]
@Column(name = "GEOM")
@Type(type = "org.hibernate.spatial.GeometryType")
private LineString geom;
[...]
}
내 보낸 스키마에 색인이 포함되어 있지만 불행히도 원하지 않는 색인 방법으로 생성되었습니다. 최대 절전 모드는 btree
으로 기본 설정되어 있지만 PostGIS는 공간 데이터를 처리 할 때 GIST
인덱스를 사용할 것을 권장합니다 (http://postgis.net/docs/manual-2.0/using_postgis_dbmanagement.html#id441511 참조). 난 그냥 일반 SQL과 인덱스를 생성 다시 떨어질 가능성이있는 반면
CREATE INDEX idx_my_class_sidx
ON my_class
USING btree
(geom);
, PostgreSQL을위한 기본 방법의 유형을 재정의 최대 절전 모드 주석을 사용하는 방법이 있는지 궁금 해요? 솔루션이나 아이디어를 어떻게 할 것인지 매우 높이 평가 될 것입니다.
TIA, 틸만
[최대 절전 모드에서 PostgreSQL GIN 색인에 주석을 달 수있는 방법] 가능한 복제본 (http://stackoverflow.com/questions/13243263/how-to-annotate-a-postgresql-gin-index-in-hibernate) –