I read that a simple way to implement hierarchical facet is to concatenate strings with a separator. Something like "level1>level2>level3" with ">" as the separator.
A problem with this approach is that the number of facet values will greatly increase. For example I have a facet "Location" with the hierarchy country>state>city. Using the above approach every single city will lead to a separate facet value. With tens of thousands of cities in the world the response from Solr will be huge. And then on the client side I'd have to loop through all the facet values and combine those with the same country into a single value. Ideally Solr would be "aware" of the hierarchy structure and send back responses accordingly. So at level 1 Solr will send back facet values based on country (100 or so values). Level 2 the facet values will be based on the states within the selected country (a few dozen values). Next level will be cities within that state. and so on. Is it possible to implement hierarchical facet this way using Solr?