Exempeldatauppsättningar i Cosmos DB i Microsoft Fabric

Microsoft Fabrics Cosmos DB-databasarbetsbelastning innehåller inbyggda exempeldatauppsättningar som hjälper dig att utforska, lära dig och experimentera med NoSQL-databasmönster. Den här datamängden representerar ett e-handelsscenario med produkter och kundgranskningar som visar hur olika entitetstyper samexisterar i samma container.

Det finns två exempeldatauppsättningar:

  • Standardexempeldata: Kärndata för e-handel med produkter och granskningar
  • Vektorexempeldata: Förbättrad version som innehåller 1536-dimensionella vektorinbäddningar som genereras med OpenAI:s textinbäddnings-ada-002-modell för semantiska sökscenarier.

Översikt över datauppsättning

Båda exempeldatauppsättningarna innehåller samma e-handelsdata med två dokumenttyper.

  • Produktdokument (docType: "product") – Enskilda produkter med namn, beskrivning, inventering, aktuellt pris och en inbäddad matris med prishistoriken för produkten.
  • Dokumentgranskning (docType: "review") – Kundrecensioner och omdömen som är länkade till produkter via productId

Datauppsättningen för vektorexempel baseras på standarddatauppsättningen för exempel. Produktdokument i vektordatauppsättningen innehåller ytterligare vectors en egenskap som innehåller 1536-dimensionella inbäddningar för semantiska sökfunktioner.

Anmärkning

Du hittar både datauppsättningar samt en ytterligare datauppsättning med vektorer som genereras med hjälp av OpenAI-modellen text-inbäddning-3-stor med 512 dimensioner i mappen Exempeldatauppsättningar i Cosmos DB i Fabric – Exempelförvar

Dokumentscheman

Schema för produktdokument

Produktdokument innehåller detaljerad information om enskilda objekt i e-handelskatalogen:

Fastighet Typ Beskrivning
id string Unik identifierare för produkten i GUID-format
docType string Identifierare för dokumenttyp, alltid "product"
productId string Produktidentifierare, samma som id för produktdokument
name string Namn på produktens display
description string Detaljerad produktbeskrivning
categoryName string Produktkategori (t.ex. "Datorer, bärbara datorer", "Media", "Tillbehör")
inventory number Antal artiklar som för närvarande finns i lager
firstAvailable string Datum då produkten blev tillgänglig (ISO 8601-format)
currentPrice number Aktuellt försäljningspris
priceHistory array Matris med prisändringsobjekt med date och price fält
priceHistory[].date string Datum och tid för prisändringen i ISO 8601-format
priceHistory[].price number Pris vid angivet datum
vectors array Endast vektorexempeldata – 1536-dimensionell vektorinbäddning

Granska dokumentschema

Granskningsdokument innehåller kundfeedback och klassificeringar för produkter:

Fastighet Typ Beskrivning
id string Unik identifierare för granskningen i GUID-format
docType string Identifierare för dokumenttyp, alltid "review"
productId string Refererar till id för produkten som granskas
categoryName string Produktkategori (ärvd från den granskade produkten)
customerName string Namnet på kunden som skrev recensionen
reviewDate string Datum då granskningen skickades (ISO 8601-format)
stars number Omdöme som ges av kunden (skala 1–5)
reviewText string Skriftligt granskningsinnehåll från kunden

Anmärkning

Cosmos DB genererar automatiskt systemegenskaper (_rid, , _self_etag, _attachments, _ts) för alla dokument.

Anmärkning

Mer information om FORMATET ISO 8601 finns i internationell datum- och tidsstandard. Mer information om GUID-formatet finns i universellt unika identifierare.

Exempeldokument

I följande exempel visas strukturen för dokument i båda exempeldatauppsättningarna.

Exempel på standardproduktdokument

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

Exempel på vektoriserat produktdokument

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

Granska dokumentexemplet

Granskningsdokumenten är identiska i båda exempeldatauppsättningarna:

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

Så här använder du exempeldata

Båda exempeldatauppsättningarna hjälper dig att öva på att fråga, filtrera och aggregera data i Cosmos DB. De blandade dokumenttyperna ger realistiska scenarier för olika användningsfall.

Standardexempeldatascenarier

  • Koppla relaterade data: Länka recensioner till produkter med hjälp av productId
  • Kategorianalys: Fråga efter produkter och recensioner efter categoryName
  • Granskningsanalys: Granska kundfeedbackmönster och omdömen

Vanliga frågemönster

Hämta alla produkter i en kategori:

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

Få recensioner för en specifik produkt:

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

Scenarier för vektorexempeldata

  • Semantisk likhetssökning: Hitta produkter med liknande funktioner med vektorinbäddningar
  • Innehållsbaserade rekommendationer: Generera produktförslag baserat på beskrivningslikhet
  • Hybridfrågor: Kombinera traditionella filter med vektorlikhet för förbättrade resultat

JSON-scheman

Följande JSON-scheman beskriver strukturen för dokument i båda exempeldatauppsättningarna. Använd dessa scheman för att verifiera eller generera liknande data för dina egna Cosmos DB-arbetsbelastningar.

Standardschema för produktdokument

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

Vektoraktiverat produktdokumentschema

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

Granska dokumentschema

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