1

Hibernate で空間検索を実行したいと考えています。特に、緯度/経度でいくつかのアイテムを保存し、特定のポイントから x km 以内にあるアイテムをクエリしたいと思います。

私は、hibernate-searchがLucene 統合を通じて空間クエリをサポートしていることを発見しました。

また、Lucene の空間モジュールが Lucene バージョン 4.0 で完全に書き直されていることも知っていますが、最新バージョンのhibernate-searchは Lucene の Lucene 3.6.2 を使用しています。

それで、いくつか質問があります:

  1. 現在廃止されている lucene 空間モジュールを使用した hibernate-search での空間サポートはありますか?
  2. または、hibernate-search は solr の空間モジュールを使用しますか?
  3. lucene Spatial が書き直された理由の 1 つは、信頼性が低く、バグが多かったためです。これは、hibernate-search の空間クエリが信頼できないということですか?
  4. 新しい lucene-spatial モジュールをサポートするために、hibernate-search は将来のバージョンで変更されますか? ( spatial4jに基づく)
  5. hibernate-search が将来 Lucene 4+ にアップグレードされると仮定すると、新しいバージョンの空間クエリは現在の hibernate-search API と下位互換性がある可能性がありますか?
4

1 に答える 1

4
  1. いいえ、そうではありませんでした。幸運にも、あなたと同じ理由で地理位置情報の分野の専門家をチームに参加させることができました。

  2. いいえ、カスタム Lucene コンポーネントのセットです。Hibernate Search の組み込みの性質により、少なくとも Lucene の統合に関しては、要件が非常に単純になりました (距離計算は依然として興味深いものです)。

  3. 新しい拡張機能の作成に対するインスピレーションと動機の元のモジュールからの制限なので、私たちが話しているのと同じ既知の制限であると仮定すると、そうではないと思います。

  4. その可能性は非常に高く、この時点で私たちが焦点を当てているのは、賢明で実用的な API を提供することです。今日説明した比較的単純な機能を使用すると、急ぐ必要はないかもしれませんが、統合を除外するわけではありません。Spatial 型のより良いサポートが Hibernate ORM にも計画されているため、カスタム型を統合したいと思うかもしれません: ユースケースや希望の形であっても、ヘルプとアドバイスは大歓迎です。

  5. 私たちは過去に API の安定性を非常に誇りに思っており、記録を維持するために懸命に努力します。間違いなく Lucene 4+ にアップグレードしますが、これにより一部の API が壊れる可能性があります (必ずしも Spatial に関連するわけではありません)。変更を最小限に抑えるように努めます。これは、まだあまり公開しない理由の 1 つです。少なくともアップグレードの準備をしている今は、実装の柔軟性を維持するようにしてください。

于 2013-01-10T23:58:51.327 に答える