Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-8126

Spatial prefix tree based on S2 geometry

    Details

    • Type: New Feature
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: modules/spatial-extras
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Hi David Smiley,

      I have been working on a prefix tree based on goggle S2 geometry (https://s2geometry.io/) to be used mainly with Geo3d shapes with very promising results, in particular for complex shapes (e.g polygons). Using this pixelization scheme reduces the size of the index, improves the performance of the queries and reduces the loading time for non-point shapes.

      If you are ok with this contribution and before providing any code I would like to understand what is the correct/prefered approach:

      1) Add new depency to the S2 library (https://mvnrepository.com/artifact/io.sgr/s2-geometry-library-java). It has Apache 2.0 license so it should be ok.

      2) Create a utility class with all methods necessary to navigate the S2 tree and create shapes from S2 cells (basically port what we need from the library into Lucene).

      What do you think?

        Attachments

        1. SPT-query.jpeg
          121 kB
          Ignacio Vera
        2. SPT-cell.pdf
          378 kB
          Ignacio Vera

          Issue Links

            Activity

              People

              • Assignee:
                ivera Ignacio Vera
                Reporter:
                ivera Ignacio Vera
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 0.5h
                  0.5h