Hibernate-search 5.0 spatial - 不确定它是否将 lat/lon 存储在哈希中
Hibernate-search 5.0 spatial - Not sure it is storing lat/lon in hashes
我正在使用 Hibernate-Search 5.2,并尝试使用空间哈希索引坐标。我在 PostgreSQL 9.4 中使用它。
我已按照说明进行操作,一切正常(搜索 return 结果),但是当我查看 pgAdmin 中为纬度和经度存储的值时,我看到的是实际数值而不是哈希值我早就料到了。
这是正常行为还是我实际上没有像我最初打算的那样将值存储为散列?
这是我的示例 class:
@Entity
@Indexed
@Spatial(spatialMode = SpatialMode.HASH, name = "entityLocation")
@Table
public class RatedEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long entityId;
private String name;
private String entityType;
private String address;
private String city;
@Column(length = 2)
private String state;
@Latitude(of = "entityLocation")
@Column
private Double latitude;
@Longitude(of = "entityLocation")
@Column
private Double longitude;
Hibernate Search 将数据库存储的实体与 Apache Lucene 索引同步。
此索引未存储在关系数据库中,因此使用 pgAdmin(或其他 SQL 终端)不是检查索引内容的正确工具, 因为您有效地使用了结合关系数据库的 NoSQL 技术。
Lucene 索引通常存储在文件系统中,位置由 Hibernate 配置属性控制,例如:
hibernate.search.default.directory_provider = filesystem
hibernate.search.default.indexBase = /usr/lucene/indexes
另请参阅参考文档中的 Directory Configuration。
要打开这些高性能二进制编码索引,您可能需要使用像 Luke, or the Eclipse tooling for Hibernate Search
这样的工具
我正在使用 Hibernate-Search 5.2,并尝试使用空间哈希索引坐标。我在 PostgreSQL 9.4 中使用它。
我已按照说明进行操作,一切正常(搜索 return 结果),但是当我查看 pgAdmin 中为纬度和经度存储的值时,我看到的是实际数值而不是哈希值我早就料到了。
这是正常行为还是我实际上没有像我最初打算的那样将值存储为散列?
这是我的示例 class:
@Entity
@Indexed
@Spatial(spatialMode = SpatialMode.HASH, name = "entityLocation")
@Table
public class RatedEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long entityId;
private String name;
private String entityType;
private String address;
private String city;
@Column(length = 2)
private String state;
@Latitude(of = "entityLocation")
@Column
private Double latitude;
@Longitude(of = "entityLocation")
@Column
private Double longitude;
Hibernate Search 将数据库存储的实体与 Apache Lucene 索引同步。
此索引未存储在关系数据库中,因此使用 pgAdmin(或其他 SQL 终端)不是检查索引内容的正确工具, 因为您有效地使用了结合关系数据库的 NoSQL 技术。
Lucene 索引通常存储在文件系统中,位置由 Hibernate 配置属性控制,例如:
hibernate.search.default.directory_provider = filesystem
hibernate.search.default.indexBase = /usr/lucene/indexes
另请参阅参考文档中的 Directory Configuration。
要打开这些高性能二进制编码索引,您可能需要使用像 Luke, or the Eclipse tooling for Hibernate Search
这样的工具