Behind the Scenes with our New Book Search

Posted by matt on Thu, Nov 6, 2008 at 10:41am

I've been busy the last few weeks--among other things, incorporating the Book Search into IndieBound.org. For what it's worth, I think the Book Search is a terrific bit of code...it searches about a dozen fields in a database of millions of books, sorts by all kinds of things (relevance, popularity, etc.) and does it all nearly instantaneously. The Book Search was originally developed by our E-Commerce team for the new ABA E-Commerce Sites (which are also being built in Drupal!).

End users tend to take how fast it is for granted...as well you should. But to me as a developer, its speed and accuracy are *very* impressive. One of the reasons it's so fast is that it actually runs on a separate server! Unlike the IndieBound.org Site Search, it is not part of Drupal at all, but an adaptation of the Java-based (and lightning fast) Apache Lucene Solr Search. We've adapted it for use with our sites using the Apache Solr module available for Drupal.

This Book Search is still in its infancy, but it should form the backbone of all book-related features in the IndieBound Community--starting with our new Wish Lists. This is probably the most exciting thing I've worked on since the launch of the community...I hope the Wish Lists are straightforward, simple, and fun to use for everyone! I think they really underscore the potential for this community--they build on the existing "fans" system for stores to encourage community members' friends and family to shop local. If you haven't yet, check out my list and make your own!

Comments

RichR's picture

New search rocks!

I agree with Matt, the new search is much faster and (seemingly) more relevant -- when my search terms are vague the top results usually contain the book I'm looking for. Rock on dudes!

Rich Rennicks
Parent, Bookseller, Gardener, Graphic Designer, Jack-of-many-trades
Asheville, NC

Currently reading:
Here Comes Everybody by Clay Shirky
Sly Mongoose by Tobias Buckell
Buyology by Martin Lindstrom
Mainspring by Jay Lake

ejr's picture

Searching by ISBN?

I'm trying to move my wishlist from another source. The easiest information to extract from that other source is the ISBN, but I cannot find a way to search for ISBN here...

Also, any plans for an API? Or maybe some integration with LibraryThing?

matt's picture

ISBNz

Actually, you can search by ISBN--10- or 13-. Just enter them in the search box like anything else.

I will look into LibraryThing integration. Between you and me and the proverbial deep blue sea, I actually looked into importing A****n wishlists and it would be very simple except that we would have to sign up for an API key to receive their XML feeds, and that is not exactly an approved use...

I'm sure there will be an IndieBound Community API someday, but it's early goings now...what exactly are you looking for? An XML feed you could put in a blog? Let me know and I'll see what we can do...

ejr's picture

ISBN search

Ah, thanks! I guess none of the books I tried exist in your system. Having a result stating that the book exists but isn't available would be handy. (LT knows all my ISBNs...)

And my first use for an API would be for bulk-loading my wishlist (actually from Half) or adding a bookmarklet.

Indie Bookstore Finder

FIND US ON:
IndieBound on Twitter IndieBound on Facebook

Indie Bestsellers

Lucky Us
Amy Bloom
Random House
Good Poems, American Places
Garrison Keillor
Penguin Books
The Paleo Kitchen
Juli Bauer; George Bryant
Victory Belt Publishing
The Great Glass Sea
Josh Weil
Grove Press

Make Your Own Wishlist






Update Profile