Existem muitas maneiras de modelar isso no HBase, desde armazenar tudo em uma única coluna até ter uma tabela diferente para cada subentidade com várias outras tabelas para "indexação".
De um modo geral, você modela os dados em hbase com base em seus padrões de acesso de leitura e gravação. por exemplo, as famílias de colunas são armazenadas em diferentes arquivos no disco. Uma razão para dividir os dados em duas famílias de colunas é se houver muitos casos em que você precisa de dados de uma e não da outra. etc.
Há uma boa apresentação sobre o design do esquema HBAse por Ian Varley da HBaseCon 2012 você pode encontrar os slides aqui e o vídeo aqui