Compartilhar via


Conjuntos de dados de exemplo no Cosmos DB no Microsoft Fabric

A carga de trabalho do banco de dados Cosmos DB do Microsoft Fabric fornece conjuntos de dados de exemplo internos para ajudá-lo a explorar, aprender e experimentar padrões de banco de dados NoSQL. Esse conjunto de dados representa um cenário de comércio eletrônico com produtos e revisões de clientes, demonstrando como diferentes tipos de entidade coexistem no mesmo contêiner.

Dois conjuntos de dados de exemplo estão disponíveis:

  • Dados de exemplo padrão: principais dados de comércio eletrônico com produtos e revisões
  • Dados de exemplo de vetor: versão aprimorada que inclui inserções de vetor de 1536 dimensões geradas usando o modelo text-embedding-ada-002 do OpenAI para cenários de pesquisa semântica.

Visão geral do conjunto de dados

Ambos os conjuntos de dados de exemplo contêm os mesmos dados de comércio eletrônico com dois tipos de documento.

  • Documentos do produto (docType: "product") – produtos individuais com nome, descrição, inventário, preço atual e uma matriz inserida do histórico de preços desse produto.
  • Examinar documentos (docType: "review") – Avaliações e classificações de clientes vinculadas a produtos via productId

O conjunto de dados de exemplo de vetor baseia-se no conjunto de dados de exemplo padrão. Os documentos do produto no conjunto de dados de vetor incluem uma propriedade adicional vectors que contém representações de 1536 dimensões para recursos de pesquisa semântica.

Observação

Você pode encontrar tanto os conjuntos de dados quanto um conjunto de dados adicional com vetores gerados usando o modelo OpenAI text-embedding-3-large com 512 dimensões na pasta de Exemplos de Conjuntos de Dados do Cosmos DB no Fabric – Repositório de Exemplos

Esquemas de documento

Esquema de documento do produto

Os documentos do produto contêm informações detalhadas sobre itens individuais no catálogo de comércio eletrônico:

Propriedade Tipo Descrição
id string Identificador exclusivo para o produto no formato GUID
docType string Identificador de tipo de documento, sempre "product"
productId string Identificador de produto, o mesmo que id para documentos do produto
name string Nome de exibição do produto
description string Descrição detalhada do produto
categoryName string Categoria do produto (por exemplo, "Computadores, Laptops", "Mídia", "Acessórios")
inventory number Número de itens atualmente em estoque
firstAvailable string Data em que o produto ficou disponível (formato ISO 8601)
currentPrice number Preço de venda atual
priceHistory array Matriz de objetos de alteração de preço com date e price campos
priceHistory[].date string Data e hora da alteração de preço no formato ISO 8601
priceHistory[].price number Preço na data especificada
vectors array Somente dados de exemplo de vetor – inserção de vetor de 1536 dimensões

Examinar o esquema do documento

Os documentos de revisão contêm comentários e classificações dos clientes para produtos:

Propriedade Tipo Descrição
id string Identificador exclusivo para a revisão no formato GUID
docType string Identificador de tipo de documento, sempre "review"
productId string Faz referência ao id do produto que está sendo revisado
categoryName string Categoria de produto (herdada do produto revisado)
customerName string Nome do cliente que escreveu a revisão
reviewDate string Data em que a revisão foi enviada (formato ISO 8601)
stars number Classificação fornecida pelo cliente (escala de 1 a 5)
reviewText string Conteúdo de revisão escrito do cliente

Observação

O Cosmos DB gera automaticamente propriedades do sistema (_rid, , _self, _etag, _attachments, _ts) para todos os documentos.

Observação

Para obter mais informações sobre o formato ISO 8601, consulte o padrão internacional de data e hora. Para obter mais informações sobre o formato GUID, consulte identificadores universalmente exclusivos.

Documentos de exemplo

Os exemplos a seguir mostram a estrutura de documentos em ambos os conjuntos de dados de exemplo.

Exemplo de documento de produto padrão

{
  "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
    }
  ]
}

Exemplo de documento de produto vetorizado

{
    "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
    ]
}

Exemplo de documento de revisão

Os documentos de revisão são idênticos em ambos os conjuntos de dados de exemplo:

{
  "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."
}

Como usar os dados de exemplo

Ambos os conjuntos de dados de exemplo ajudam a praticar a consulta, a filtragem e a agregação de dados no Cosmos DB. Os tipos de documento misto fornecem cenários realistas para vários casos de uso.

Cenários de dados de exemplo padrão

  • Junção de dados relacionados: Vincular revisões a produtos usando productId
  • Análise de categoria: Consultar produtos e revisões por categoryName
  • Análise de avaliações: examinar os padrões e classificações de feedback dos clientes

Padrões de consulta comuns

Obtenha todos os produtos em uma categoria:

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

Obtenha revisões para um produto específico:

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

Cenários de amostra de dados de vetor

  • Pesquisa de similaridade semântica: localizar produtos com recursos semelhantes usando inserções de vetor
  • Recomendações baseadas em conteúdo: gerar sugestões de produto com base na similaridade de descrição
  • Consultas híbridas: combinar filtros tradicionais com similaridade de vetor para resultados aprimorados

Esquemas JSON

Os esquemas JSON a seguir descrevem a estrutura de documentos em ambos os conjuntos de dados de exemplo. Use esses esquemas para validar ou gerar dados semelhantes para suas próprias cargas de trabalho do Cosmos DB.

Esquema de documento de produto padrão

{
  "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 produto com suporte a vetor

{
  "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"
  ]
}

Examinar o esquema do 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"
  ]
}