The most interesting thing about the LISInfo project, for us as its creators and, we hope, for its users, is that it’s big. Really, really big. Our goal for the LISInfo project is to organize a catalog that includes access points for anything a reasonable person might want to know about library and information science. That’s a lot of metadata. Which means that not only will the data store be big, but the culture around LISInfo is going to have to be big because it’s going to take a lot of volunteers to steward the data.
We thought at first we could build our project in Flamenco, Marti Hearst’s very cool faceted interface. But after using Flamenco for our first prototype, we learned that this sort of thing, a multi-editor database designed to be editable via the web, wasn’t what she had in mind when she created Flamenco.
Our next move was to look at a standard Django installation, but that proved limiting as well. PostgreSQL is wonderful, and SQL is capable of mapping the diverse set of objects (e.g. faculty members at accredited LIS programs, journals, scholarships, conferences) and relationships (e.g. “will be speaking at” or “is the publisher of”) we have in mind, but it isn’t pretty. Attempts to create facets across all those relationships would result in some long and slow SQL queries.
So we’re going Solr. More specifically, we’re creating an interface between Django, which is the framework we’re using to create our user and administrative interfaces, and Solr, which will make finding objects in LISInfo faster and more efficient than any other model we’ve found so far. We’re still not sure how the database/index hybrid will play out, but investigating that intersection should be instructive.