Concepto de columna familiar y modelo de datos

Estoy investigando los diferentes tipos de bases de datos NoSQL y estoy tratando de entender el modelo de datos de las tiendas de familias de columnas, como Bigtable, HBase y Cassandra.

Primer modelo

Algunas personas describen una familia de columnas como uncolección de filas, donde cada fila contiene columnas[1], [2]. Un ejemplo de este modelo (las familias de columnas están en mayúsculas):

{
  "USER":
  {
    "codinghorror": { "name": "Jeff", "blog": "http://codinghorror.com/" },
    "jonskeet": { "name": "Jon Skeet", "email": "[email protected]" }
  },
  "BOOKMARK":
  {
    "codinghorror":
    {
      "http://codinghorror.com/": "My awesome blog",
      "http://unicorns.com/": "Weaponized ponies"
    },
    "jonskeet":
    {
      "http://msmvps.com/blogs/jon_skeet/": "Coding Blog",
      "http://manning.com/skeet2/": "C# in Depth, Second Edition"
    }
  }
}
Segundo modelo

Otros sitios describen una familia de columnas como un grupo de columnas relacionadas.dentro de una fila [3], [4]. Datos del ejemplo anterior, modelados de esta manera:

{
  "codinghorror":
  {
    "USER": { "name": "Jeff", "blog": "http://codinghorror.com/" },
    "BOOKMARK":
    {
      "http://codinghorror.com/": "My awesome blog",
      "http://unicorns.com/": "Weaponized ponies"
    }
  },
  "jonskeet":
  {
    "USER": { "name": "Jon Skeet", "email": "[email protected]" },
    "BOOKMARK":
    {
      "http://msmvps.com/blogs/jon_skeet/": "Coding Blog",
      "http://manning.com/skeet2/": "C# in Depth, Second Edition"
    }
  }
}

Una posible razón detrás de laprimer modelo es que no todas las familias de columnas tienen una relación comoUSER yBOOKMARK hacer. Esto implica que no todas las familias de columnas contienen claves idénticas. Colocar las familias de columnas en el nivel exterior se siente más natural desde este punto de vista.

El nombre 'familia de columnas' implica un grupo de columnas. Así es exactamente cómo se presentan las familias de columnas en elsegundo modelo.

Ambos modelos son representaciones válidas de los datos. Me doy cuenta de que estas representaciones son únicamente para comunicar los datos a los humanos; las aplicaciones no "piensan" en los datos de esa manera.

Pregunta

¿Cuál es la definición 'estándar' de una familia de columnas? ¿Es una colección de filas o un grupo de columnas relacionadas dentro de una fila?

Tengo que escribir un artículo sobre el tema, así que también estoy interesado en cómo las personas generalmente explican el concepto de 'familia de columnas' a otras personas. Ambos modelos parecen contradecirse entre sí. Me gustaría usar el modelo 'correcto' o generalmente aceptado para describir las tiendas de familias de columnas.

Actualizar

Me decidí por el segundo modelo para explicar el modelo de datos en mi artículo. Todavía estoy interesado en cómotú explique el modelo de datos de las tiendas de la familia de columnas a otras personas.

Respuestas a la pregunta(3)

Su respuesta a la pregunta