lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael McCandless <luc...@mikemccandless.com>
Subject Re: Using Lucene's Multi Dimensional Space Search for Air traffic handling.
Date Thu, 25 Aug 2016 15:52:38 GMT
Geo3D uses more "straightforward" math since it can do everything on a unit
(well, slightly squashed) sphere, but the downside is it must store 3
floats in the doc values.

Whereas LatLonPoint must use Haversine, supposedly more costly, except
Lucene has a rather optimized implementation, and in practice seems to be
faster than the 3D math: see our nightly geo benchmarks at
http://home.apache.org/~mikemccand/geobench.html

That said, having competing choices in open source is very healthy.  E.g.
we have multiple highlighter implementations, multiple query parsers, etc.

Mike McCandless

http://blog.mikemccandless.com

On Thu, Aug 25, 2016 at 12:09 AM, Janaka Thilakarathna <
bjchathuranga@gmail.com> wrote:

> Hi Michael,
>
> I am kinda confused about the difference between LatLon and Geo3D points.
> Since, Geo3D does not in fact search 3 dimensions, what is the use of it
> over LatLonPoint. Why there are two Fields as LatLon and Geo3D if both do
> the Planet Surface search ?
>
> Regards,
> Janaka
>
> On Mon, Aug 22, 2016 at 3:19 PM, Michael McCandless <
> lucene@mikemccandless.com> wrote:
>
>> Hi Janaka,
>>
>> Unfortunately, Geo3D does not in fact search three dimensions: it only
>> handles the same 2D earth surface as lat/lon.  It's just that, internally,
>> it's using three x,y,z coordinates to do all its math.  But those three
>> coordinates must be on the earth's surface for the math to be correct.  We
>> have wanted to rename this package so it's not so confusing, but have not
>> yet succeeded.  I believe the x,y,z are in the "unit sphere" coordinate
>> space.
>>
>> Mike McCandless
>>
>> http://blog.mikemccandless.com
>>
>> On Mon, Aug 22, 2016 at 2:13 AM, Janaka Thilakarathna <
>> bjchathuranga@gmail.com> wrote:
>>
>>> Hi Michael,
>>>
>>> I started playing with Lucene LatLon and Geo3D points. I have a problem
>>> about the constructor of Geo3DPoint.
>>>
>>> In the other constructor, Geo3DPoint(String name, double x, double y,
>>> double z)
>>> <https://lucene.apache.org/core/6_1_0/spatial3d/org/apache/lucene/spatial3d/Geo3DPoint.html#Geo3DPoint-java.lang.String-double-double-double->.
>>> How can I map*,* Lat, Lon and Altitude into x,y,z. If we use x,y,z
>>> there should be an Axis system. For an example I have these questions,
>>>
>>>    - Where those axises are pointed to?
>>>    - What are the units (km or m)?
>>>
>>> If you can give me an idea on that it will be really helpful. :-)
>>> Thank you.
>>>
>>> Regards,
>>>
>>> Janaka.
>>>
>>> On Thu, Aug 18, 2016 at 9:55 AM, Janaka Thilakarathna <
>>> bjchathuranga@gmail.com> wrote:
>>>
>>>> Hi Michael,
>>>>
>>>> Sorry for the late reply and thank you very much for your quick
>>>> respond. :-)
>>>>
>>>> Yeah, it looks like an interesting data set to play with, but it is
>>>> really large to start. :D
>>>> I will try some simple projects and get back to you if I find any
>>>> trouble.
>>>>
>>>> Janaka.
>>>>
>>>> On Tue, Aug 16, 2016 at 2:49 PM, Michael McCandless <
>>>> lucene@mikemccandless.com> wrote:
>>>>
>>>>> What a fun use case for dimensional points!  I just saw NASA announce
>>>>> this data set recently: https://plus.google.
>>>>> com/+MichaelMcCandless/posts/h8eUtkhizKG
>>>>>
>>>>> And I was wondering how to play with it... 36 TB of airplane flight
>>>>> routes :)
>>>>>
>>>>> You can easily index your data (3 spatial dims + 1 time dim) using
>>>>> e.g. DoublePoint but then the only way to query those points currently
is
>>>>> the PointRangeQuery (4D boxes); maybe you can use that to find the
>>>>> "interesting area" traversals?
>>>>>
>>>>> For "minimum distance between two air-planes", you might be able to
>>>>> start with LatLonPoint.nearest (KNN search implementation) but generalize
>>>>> it a bit to N dims not just the 2 (lat, lon) that it supports today?
>>>>>
>>>>> Mike McCandless
>>>>>
>>>>> http://blog.mikemccandless.com
>>>>>
>>>>> On Tue, Aug 16, 2016 at 4:29 AM, Janaka Thilakarathna <
>>>>> bjchathuranga@gmail.com> wrote:
>>>>>
>>>>>> Hi everyone,
>>>>>>
>>>>>> I am from University of Moratuwa. I have a quite understanding in
>>>>>> Lucene's
>>>>>> Text Search, Geo3DPoint
>>>>>> <https://lucene.apache.org/core/6_0_0/spatial3d/org/apache/l
>>>>>> ucene/spatial3d/Geo3DPoint.html#newShapeQuery-java.lang.Stri
>>>>>> ng-org.apache.lucene.spatial3d.geom.GeoShape->,
>>>>>> LatLonPoint
>>>>>> <https://lucene.apache.org/core/6_0_0/sandbox/org/apache/luc
>>>>>> ene/document/LatLonPoint.html#newPolygonQuery-java.lang.Stri
>>>>>> ng-double:A-double:A->
>>>>>> but I have never used Lucene for multi dimentional space search.
>>>>>>
>>>>>> The idea is to use multi dimensional space search on 4 dimensional
>>>>>> space(3
>>>>>> physical dimensions and time as another dimension) to calculate
>>>>>> results for
>>>>>> following queries.
>>>>>>
>>>>>>    - minimum distance between two air-planes
>>>>>>    - whether air planes goes through and interesting area. (For a
>>>>>> example:
>>>>>>    A forbidden air space)
>>>>>>
>>>>>> Paths of air-planes can be represented by arrays of 4D points.
>>>>>> (time,x,y,z). In other words I have different x,y,z coordinates for
>>>>>> different time values. My idea is to index these points and query
for
>>>>>> above
>>>>>> results.
>>>>>>
>>>>>> Since there is no much tutorials on this new feature on Lucene 6,
I am
>>>>>> quite confused where to start the project. I am really glad if
>>>>>> someone can
>>>>>> help me with this.
>>>>>>
>>>>>> I just want to know whether I can use Lucene for this use-case.
>>>>>> Further if
>>>>>> you can point me out a place to start developing, it will be really
>>>>>> help
>>>>>> full.
>>>>>>
>>>>>> Thank you!
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> --
>>>>>> *Janaka Chathuranga Thilakarathna*
>>>>>> Undergraduate at Computer Science and Engineering Department,
>>>>>> UNIVERSITY OF Moratuwa, Sri Lanka*.*
>>>>>>
>>>>>> mobile :(+94)* 713315725 **| *email :  *janaka.13@cse.mrt.ac.lk*
>>>>>> <janaka.13@cse.mrt.ac.lk>*, bjchathuranga@gmail.com
>>>>>> <bjchathuranga@gmail.com>*
>>>>>> skype  : *janaka.chathurangat* |  website : janakact.wordpress.com
>>>>>>
>>>>>> my public profiles :  [image: Facebook]
>>>>>> <http://www.facebook.com/bjchathuranga> [image: LinkedIn]
>>>>>> <http://lk.linkedin.com/pub/janaka-chathuranga-thilakarathna
>>>>>> /78/2a8/807/>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> *Janaka Chathuranga Thilakarathna*
>>>> Undergraduate at Computer Science and Engineering Department,
>>>> UNIVERSITY OF Moratuwa, Sri Lanka*.*
>>>>
>>>> mobile :(+94)* 713315725 **| *email :  *janaka.13@cse.mrt.ac.lk*
>>>> <janaka.13@cse.mrt.ac.lk>*, bjchathuranga@gmail.com
>>>> <bjchathuranga@gmail.com>*
>>>> skype  : *janaka.chathurangat* |  website : janakact.wordpress.com
>>>>
>>>> my public profiles :  [image: Facebook]
>>>> <http://www.facebook.com/bjchathuranga> [image: LinkedIn]
>>>> <http://lk.linkedin.com/pub/janaka-chathuranga-thilakarathna/78/2a8/807/>
>>>>
>>>
>>>
>>>
>>> --
>>> *Janaka Chathuranga Thilakarathna*
>>> Undergraduate at Computer Science and Engineering Department,
>>> UNIVERSITY OF Moratuwa, Sri Lanka*.*
>>>
>>> mobile :(+94)* 713315725 **| *email :  *janaka.13@cse.mrt.ac.lk*
>>> <janaka.13@cse.mrt.ac.lk>*, bjchathuranga@gmail.com
>>> <bjchathuranga@gmail.com>*
>>> skype  : *janaka.chathurangat* |  website : janakact.wordpress.com
>>>
>>> my public profiles :  [image: Facebook]
>>> <http://www.facebook.com/bjchathuranga> [image: LinkedIn]
>>> <http://lk.linkedin.com/pub/janaka-chathuranga-thilakarathna/78/2a8/807/>
>>>
>>
>>
>
>
> --
> *Janaka Chathuranga Thilakarathna*
> Undergraduate at Computer Science and Engineering Department,
> UNIVERSITY OF Moratuwa, Sri Lanka*.*
>
> mobile :(+94)* 713315725 **| *email :  *janaka.13@cse.mrt.ac.lk*
> <janaka.13@cse.mrt.ac.lk>*, bjchathuranga@gmail.com
> <bjchathuranga@gmail.com>*
> skype  : *janaka.chathurangat* |  website : janakact.wordpress.com
>
> my public profiles :  [image: Facebook]
> <http://www.facebook.com/bjchathuranga> [image: LinkedIn]
> <http://lk.linkedin.com/pub/janaka-chathuranga-thilakarathna/78/2a8/807/>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message