Getting around Kibana's missing support for Nested Objects & Parent/Child

@3ygun
To answer your first need, you could do that with Elastic Stack, using Parent/Child model.
In Kibana, when you create your visualization, you can copy that in "search bar" :

{
	"has_parent": {
	   "parent_type": "kitchen",
	   "query": {
	      "query_string": {
	         "query": "type:old"
	      }
	   }
	}
} 

And then make a term aggregation based on "model" field, then order by "custom metric", which is sum of 'count' field.
This works for me in Kibana 4.6.3 and Kibana 5.0.1