The Google IO session I was looking forward to the most was definitely the one on full-text search (FTS). When I found out half a year ago that I’d have to write my own FTS engine in order to search through my data in a reasonable way, it felt ironic. Today, the search engine giant announced their own FTS implementation, filling a ‘hole’ in de GAE SDK by finally offering a sophisticated way of searching on the Google App Engine.

The session was held just a few hours ago and as I’m not at Google IO, I was unable to hear about it at first hand. My growing curiosity made me to search through Twitter, looking for developers that would tweet about it. I decided to write my findings down, for you interested folks out there. What we know so far:

  • FTS runs on the megastore (what is the megastore?).
  • It supports geopoints, atoms and HTML.
  • Results can be ordered by hit count, relevance, fields or a custom metric.
  • It supports cursors, so you can easily load more results to fill a second page of search results.
  • It can return up to three snippets (each of 160 characters max) containing the matching content.
  • FTS documents can be generated automatically from datastore entities.
  • It has configurable consistency, either live or eventually.
  • FTS documents are versioned and its indexes are hot swappable.

(Sources: johnwlockwoodiv, mmastrac and __tosh)

If you have anything else to share, please leave a comment.

Update: The full Google IO session is now available on youtube! (Thanks Jakub Bednář)

Tagged with:  
Share →

3 Responses to (Updated) Google unveils full-text search on the App Engine

  1. johan says:

    do you know if it is included in 1.5.0?

  2. No it’s not, since 1.5.0 was released two days ago (http://googleappengine.blogspot.com/2011/05/app-engine-150-release.html). If you’d ask the same question for 1.6.0 my answer would be: don’t know.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>