I need to design a faceted search against a number of products. The content is tagged up with metadata using Categories and Keywords. Normally I'd use something like Elasticsearch or SOLR to deal with the faceting based on this metadata but in this case it's not an option that's available to me.

Speaking to various people, I'm hearing a general theme that the API is sub-optimal for doing this sort of work and you'd have to construct the facets yourself from the taxonomy using many API calls. I appreciate the genericity of this question but has anyone successfully implemented this? What are the pitfalls?