Lucene's TaxonomyReader is nice to counting with hierarchical path and current Faceting API can not do this.
Old example: http://chimpler.wordpress.com/2013/01/30/faceted-search-with-lucene/