DataStore Full Text Search documentation? - google-app-engine

This Google IO video from 2011 introducing the Full Text Search API (at 31:13), refers to DataStore Integration by setting a few properties in attributes.
However I can't seem to find any related documentation to show how to go about using this feature.
Does anyone know if anything's changed since the release of the API and if works in another way now?
Any pointers will be greatly appreciated.

Related

exporting the experiment/simulation screen with PLE possible?

so i made the model for my thesis and like to share it with my prof. over the anylogic cloud. Unfortunatelly when i try to export the model it shows:
"Model parameter values overridden by experiment 'Simulation' will not be used; default values will be exported."
and it will not show the simulation screen in the cloud version. Is this because i use the PLE, if no: how can i improve my export?
i already tried the documentation and various google searches, but i was not able to find anything useful.
Thank you in advance! :)
There is no simulation screen in the cloud. This is independent of your version.
Learn how to create simulation-setups in the cloud by checking the "Run configuration" part of your model before uploading to the cloud. Also check the help on that and example models (those uploaded by AnyLogic to the cloud and that you find matched in the AnyLogic example library).

Is Mapstraction still the way to go

I was starting to write a multi-Map JS library, but I see that Mapstraction does that exactly..
I really would like to use Maptraction but it looks a little old (The commit's on GITHUB) (Not a issue if it is still "supported"), also The tutorial page, the Maps do not show up in my browsers.
Any input is highly appreciated.
Thanks
Kim
Depends what your use case is - if you don't want to be tied in to any one map provider and only need standard features then, yes.
Version 2.1 of Mapstraction is currently being prepared (on the release-2.1 branch) which brings some improvements in behavioural consistency across the providers.
Because of the nature of the library development isn't continuous and tends to be reactive to changes in the underlying providers or issues being raised. That said the community is fairly active and you can sign up to the mailing list via the site.

About TAP in libcouchbase

I've seen "TAP" from couchbase document. I do kind of understand what it does, however it is hard to find any examples using TAP Apis. It would be great if you could expalin what TAP is exactly and how it can be used + any example source will be great.
Thank you
TAP is an internal API used by Couchbase for moving data around the cluster. There are a few tools that use it as well.
One use case would be to view all updates on the cluster as they occur. This can perhaps be better accomplished with some of the code in our Elastic Search adapter (in Java):
https://github.com/couchbaselabs/elasticsearch-transport-couchbase
Or there is a project to provide a changed feed in Ruby: https://github.com/scalabl3/couchbase-xdcr-sinatra

Google App Engine : GeoPtProperty query

I have this latlng = db.GeoPtProperty() in app engine.
Given a lat long, how do I query the first 10 closer latlng without using any third party library?
Is there any nice documentation for me to refer?
Thanks in advance.
Geospatial queries aren't supported natively by the datastore. There are userland implementations however, including geomodel, documented here.
I don't believe this is natively supported yet. However, there is a talk at Google I/O 2011 on App Engine full text search (emphasis mine):
"At last we are adding a full text
search service to App Engine. The
upcoming service will be built on top
of the very infrastructure used by
Google. In addition to full text
search queries we will also offer
numeric, geo, date search
capabilities, and much more. This
session will cover the basic full text
search API, briefly outline more
advanced features, and how full text
search ties to existing services such
as datastore."
Stay tuned...

How can one perform full text search in Google App Engine?

It's a simple question, but I haven't found the answer anywhere. Thoughts and input appreciated.
I'm using Django, too, for what it's worth. :)
Cheers.
The Search API is now available as experimental for Java and Python .
With Java GAE, you could use Compass, but that won't help with Django. For Python, Bill Katz offers one solution -- open source -- and these guys offer a Django-specific approach which, however, is free only for non-commercial applications (i.e. if your app makes money they want you to pay for their full-text search). I have no real-world experience with either of these solutions so I can't really give well-grounded recommendations, but from what one can see with just a little playing around they seem quite useful.
An overview of the Python App Engine searches that I am aware of:
Google did add a cut down search using SearchableModel although that has limitations (5000 indexed word limit, String property only not Text):
http://groups.google.com/group/google-appengine/browse_thread/thread/f64eacbd31629668/8dac5499bd58a6b7?lnk=gst&q=searchablemodel
Or as another posters have pointed out there are these options:
The Quick and simple text search:
http://www.billkatz.com/2009/6/Simple-Full-Text-Search-for-App-Engine
This product which has a fairly comprehensive free version and a more extensive commercial version:
http://gae-full-text-search.appspot.com/customers/download/
I've read that Google do have a project to bring full text search to App Engine although this is not scheduled to happen any time soon
I'd really like to see a comparison of the various searching frameworks and see how they stack up to each other. Does anyone know of any report like this?
Edit:
Google Search API now available (although still experimental)
For now, the real answer is that there is no real full-text search on Google App Engine. The solutions provided by the other answers here are fine for toy data sets, but do not scale to anything more than O(10000) documents or so. Google will have to provide search as an infrastructural feature of GAE. See the feature request for (mostly superfluous) discussion.
# The Quick and simple text search:
http://www.billkatz.com/2009/6/Simple-Full-Text-Search-for-App-Engine
this solution did not work for me - and looking at the limitations below, it is unlikely to be useful for real use cases.
It uses StringListProperty to store phrases which has a limitation of 500 characters.
It does not work with the standard query filters.
Issue 217 Bill Katz released a package to deal with and http://gae-full-text-search.appspot.com/ is available alternatively, levensthein is a another match measure
You should be able to adapt Whoosh! to write in the datastore instead of on disk. It's a pure python full-text search engine. It's not as fast or full-featured as Lucene, but it should run on GAE without too many modifications.

Resources