Compartir a través de


Conjuntos de datos de ejemplo en Cosmos DB en Microsoft Fabric

La carga de trabajo de base de datos de Cosmos DB de Microsoft Fabric proporciona conjuntos de datos de ejemplo integrados para ayudarle a explorar, aprender y experimentar con patrones de base de datos NoSQL. Este conjunto de datos representa un escenario de comercio electrónico con productos y revisiones de clientes, lo que muestra cómo coexisten los distintos tipos de entidad en el mismo contenedor.

Hay dos conjuntos de datos de ejemplo disponibles:

  • Datos de ejemplo estándar: Datos básicos de comercio electrónico con productos y revisiones
  • Datos de ejemplo de vector: versión mejorada que incluye incrustaciones de vectores dimensionales de 1536 generadas mediante el modelo text-embeding-ada-002 de OpenAI para escenarios de búsqueda semántica.

Introducción al conjunto de datos

Ambos conjuntos de datos de ejemplo contienen los mismos datos de comercio electrónico con dos tipos de documento.

  • Documentos de producto (docType: "product"): productos individuales con nombre, descripción, inventario, precio actual y una matriz insertada del historial de precios para ese producto.
  • Examinar documentos (docType: "review") - Opiniones y clasificaciones de clientes vinculadas a productos a través de productId

El conjunto de datos de ejemplo vectorial se basa en el conjunto de datos de ejemplo estándar. Los documentos de producto del conjunto de datos vectoriales incluyen una propiedad adicional vectors que contiene incrustaciones 1536 dimensionales para funcionalidades de búsqueda semántica.

Nota:

Puede encontrar ambos conjuntos de datos, así como un conjunto de datos adicional con vectores generados mediante el modelo OpenAI text-embedding-3-large con 512 dimensiones en la carpeta Sample Datasets de Cosmos DB en Fabric – Repositorio de Ejemplos

Esquemas de documento

Esquema del documento del producto

Los documentos del producto contienen información detallada sobre elementos individuales en el catálogo de comercio electrónico:

Propiedad Tipo Descripción
id string Identificador único del producto en formato GUID
docType string Identificador de tipo de documento, siempre "product"
productId string Identificador de producto, igual que id para los documentos del producto
name string Nombre para mostrar del producto
description string Descripción detallada del producto
categoryName string Categoría de producto (por ejemplo, "Equipos, portátiles", "Media", "Accesorios")
inventory number Número de artículos actualmente en stock
firstAvailable string Fecha de disponibilidad del producto (formato ISO 8601)
currentPrice number Precio actual de venta
priceHistory array Matriz de objetos de cambio de precio con campos date y price
priceHistory[].date string Fecha y hora del cambio de precio en formato ISO 8601
priceHistory[].price number Precio en la fecha especificada
vectors array Solo datos de ejemplo de vector : inserción de vectores de 1536 dimensiones

Revisión del esquema del documento

Los documentos de revisión contienen comentarios y clasificaciones de los clientes para los productos:

Propiedad Tipo Descripción
id string Identificador único de la revisión en formato GUID
docType string Identificador de tipo de documento, siempre "review"
productId string Hace referencia al id del producto que se está revisando
categoryName string Categoría de producto (heredada del producto revisado)
customerName string Nombre del cliente que escribió la opinión
reviewDate string Fecha en que se envió la revisión (formato ISO 8601)
stars number Clasificación dada por el cliente (escala de 1 a 5)
reviewText string Contenido de revisión escrito del cliente

Nota:

Cosmos DB genera automáticamente propiedades del sistema (_rid, _self, _etag, _attachments, _ts) para todos los documentos.

Nota:

Para obtener más información sobre el formato ISO 8601, consulte la norma internacional de fecha y hora. Para obtener más información sobre el formato GUID, consulte identificadores únicos universalmente.

Documentos de ejemplo

En los ejemplos siguientes se muestra la estructura de documentos en ambos conjuntos de datos de ejemplo.

Ejemplo de documento de producto estándar

{
  "id": "ae449848-3f15-4147-8eee-fe76cfcc6bb4",
  "docType": "product",
  "productId": "ae449848-3f15-4147-8eee-fe76cfcc6bb4",
  "name": "EchoSphere Pro ANC-X900 Premium Headphones",
  "description": "EchoSphere Pro ANC-X900 Premium Headphones deliver immersive sound with advanced 40mm drivers and Adaptive Hybrid Active Noise Cancellation. Bluetooth 5.3 ensures seamless connectivity.",
  "categoryName": "Accessories, Premium Headphones",
  "inventory": 772,
  "firstAvailable": "2024-01-01T00:00:00",
  "currentPrice": 454.87,
  "priceHistory": [
    {
      "date": "2024-01-01T00:00:00",
      "price": 349.0
    },
    {
      "date": "2024-08-01T00:00:00",
      "price": 363.0
    },
    {
      "date": "2025-04-01T00:00:00",
      "price": 408.14
    },
    {
      "date": "2025-08-01T00:00:00",
      "price": 454.87
    }
  ]
}

Ejemplo de documento de producto vectorizado

{
    "id": "ae449848-3f15-4147-8eee-fe76cfcc6bb4",
    "docType": "product",
    "productId": "ae449848-3f15-4147-8eee-fe76cfcc6bb4",
    "name": "EchoSphere Pro ANC-X900 Premium Headphones",
    "description": "EchoSphere Pro ANC-X900 Premium Headphones deliver immersive sound with advanced 40mm drivers and Adaptive Hybrid Active Noise Cancellation. Bluetooth 5.3 ensures seamless connectivity.",
    "categoryName": "Accessories, Premium Headphones",
    "inventory": 772,
    "firstAvailable": "2024-01-01T00:00:00",
    "currentPrice": 454.87,
    "priceHistory": [
      {
        "date": "2024-01-01T00:00:00",
        "price": 349.0
      },
      {
        "date": "2025-08-01T00:00:00",
        "price": 454.87
      }
    ],
    "vectors": [
      -0.02783808670938015,
      0.011827611364424229,
      -0.04711977392435074,
      // ... (1536 dimensions total)
      0.04251981899142265
    ]
}

Ejemplo de documento de revisión

Los documentos de revisión son idénticos en ambos conjuntos de datos de ejemplo:

{
  "id": "fa799013-1746-4a7f-bd0f-2a95b2b76481",
  "docType": "review",
  "productId": "e847e069-d0f9-4fec-b42a-d37cd5b2f536",
  "categoryName": "Accessories, Premium Headphones",
  "customerName": "Emily Rodriguez",
  "reviewDate": "2025-03-02T00:00:00",
  "stars": 5,
  "reviewText": "Excellent sound quality! Premium build! This EchoSphere Pro ANC-X900 exceeded hopes."
}

Uso de los datos de ejemplo

Ambos conjuntos de datos de ejemplo le ayudan a practicar consultas, filtrados y agregación de datos en Cosmos DB. Los tipos de documentos mixtos proporcionan escenarios realistas para varios casos de uso.

Escenarios de datos de ejemplo estándar

  • Unión de datos relacionados: Vinculación de revisiones a productos mediante productId
  • Análisis de categorías: consultar productos y revisiones por categoryName
  • Análisis de revisión: Examen de los patrones y clasificaciones de comentarios de los clientes

Patrones de consulta comunes

Obtener todos los productos de una categoría:

SELECT *
FROM c
WHERE 
  c.docType = "product" AND 
  c.categoryName = "Computers, Laptops"

Obtenga revisiones para un producto específico:

SELECT *
FROM c
WHERE 
  c.docType = "review" AND 
  c.productId = "77be013f-4036-4311-9b5a-dab0c3d022be"

Escenarios de ejemplos de datos vectoriales

  • Búsqueda de similitud semántica: buscar productos con características similares mediante incrustaciones vectoriales
  • Recomendaciones basadas en contenido: generar sugerencias de producto basadas en la similitud de descripción
  • Consultas híbridas: combinar filtros tradicionales con similitud vectorial para resultados mejorados

Esquemas JSON

Los siguientes esquemas JSON describen la estructura de los documentos de ambos conjuntos de datos de ejemplo. Use estos esquemas para validar o generar datos similares para sus propias cargas de trabajo de Cosmos DB.

Esquema de documento de producto estándar

{
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "docType": { "type": "string" },
    "productId": { "type": "string" },
    "name": { "type": "string" },
    "description": { "type": "string" },
    "categoryName": { "type": "string" },
    "inventory": { "type": "number" },
    "firstAvailable": { "type": "string" },
    "currentPrice": { "type": "number" },
    "priceHistory": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": { "type": "string" },
          "price": { "type": "number" }
        },
        "required": ["date", "price"]
      }
    }
  },
  "required": [
    "id", "docType", "productId", "name", "description", "categoryName", "inventory", "firstAvailable", "currentPrice", "priceHistory"
  ]
}

Esquema de documento de producto con capacidades de vectores

{
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "docType": { "type": "string" },
    "productId": { "type": "string" },
    "name": { "type": "string" },
    "description": { "type": "string" },
    "categoryName": { "type": "string" },
    "inventory": { "type": "number" },
    "firstAvailable": { "type": "string" },
    "currentPrice": { "type": "number" },
    "priceHistory": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": { "type": "string" },
          "price": { "type": "number" }
        },
        "required": ["date", "price"]
      }
    },
    "vectors": {
      "type": "array",
      "items": { "type": "number" },
      "minItems": 1536,
      "maxItems": 1536
    }
  },
  "required": [
    "id", "docType", "productId", "name", "description", "categoryName", "inventory", "firstAvailable", "currentPrice", "priceHistory", "vectors"
  ]
}

Revisión del esquema del documento

{
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "docType": { "type": "string", "const": "review" },
    "productId": { "type": "string" },
    "categoryName": { "type": "string" },
    "customerName": { "type": "string" },
    "reviewDate": { "type": "string" },
    "stars": { "type": "number" },
    "reviewText": { "type": "string" }
  },
  "required": [
    "id", "docType", "productId", "categoryName", "customerName", 
    "reviewDate", "stars"
  ]
}