Freigeben über


Abfragen datenbankübergreifender Daten in Cosmos DB in Microsoft Fabric

Der gespiegelte SQL-Analyseendpunkt ermöglicht es, Abfragen über zwei verschiedene Cosmos DB innerhalb von Microsoft Fabric-Containern oder -Datenbanken auszuführen. In diesem Leitfaden erstellen Sie eine Abfrage, die sich über zwei Cosmos DB in Fabric-Datenbanken erstreckt.

Voraussetzungen

  • Mindestens ein anderer SQL-Analyseendpunkt für ein zweites Cosmos DB-Datenbankelement in Fabric.

Öffnen des SQL-Analyseendpunkts für die erste Datenbank

Greifen Sie zunächst auf den SQL-Analyseendpunkt für die erste Cosmos DB in Fabric-Datenbank zu.

  1. Öffnen Sie das Fabric-Portal (https://app.fabric.microsoft.com).

  2. Navigieren Sie zu Ihrer ersten Cosmos DB-Datenbank.

    Von Bedeutung

    Für diesen Leitfaden hat die erste Cosmos DB-Datenbank den Beispieldatensatz bereits geladen. In den verbleibenden Abfragebeispielen in diesem Leitfaden wird davon ausgegangen, dass Sie denselben Datensatz für diese Datenbank verwenden.

  3. Wählen Sie in der Menüleiste die Cosmos DB-Liste und dann SQL-Endpunkt aus.

    Screenshot der Endpunktauswahloption in der Menüleiste für eine Datenbank in Cosmos DB in Fabric.

  4. Wählen Sie auf der Seite "Analyseendpunkt" in der Menüleiste "Neue SQL-Abfrage " aus.

  5. Öffnen Sie einen neuen Abfrage-Editor, und führen Sie dann eine Testabfrage aus. Stellen Sie sicher, dass die erwarteten Daten angezeigt werden.

    SELECT TOP 5
      countryOfOrigin AS geography,
      COUNT(*) AS itemCount
    FROM
      [<first-database-name>].[SampleData]
    GROUP BY
      countryOfOrigin
    ORDER BY
      COUNT(*) DESC
    

    Diese Abfrage führt zu folgenden Ergebnissen:

    geography itemCount
    Nigeria 21
    Egypt 20
    France 18
    Japan 18
    Argentina 17

    Hinweis

    Diese Abfrage verwendet auch Daten, die im Beispieldatensatz in einem Container mit dem Namen SampleDatagefunden werden. Weitere Informationen finden Sie unter Beispieldatensatz.

Herstellen einer Verbindung mit dem zweiten Datenbankendpunkt

Stellen Sie nun eine Verbindung mit dem gespiegelten SQL-Analyseendpunkt für eine zweite Cosmos DB in Fabric-Datenbank her.

  1. Wählen Sie auf der Seite "Analyse-Endpunkt" in der Menüleiste + Lagerhäuser aus.

  2. Fügen Sie ein weiteres SQL Analytics-Endpunktelement für das zweite Fabric-Element hinzu, das Sie abfragen möchten.

  3. Öffnen Sie einen anderen neuen Abfrage-Editor, und führen Sie dann eine Testabfrage aus. Stellen Sie erneut sicher, dass die erwarteten Daten angezeigt werden.

    SELECT 
      *
    FROM
      [<second-database-endpoint>].[<second-database-name>].[<second-database-container-name>]
    

    Hinweis

    In diesem Beispiel wird ein beliebiger Datensatz verwendet, der im Cosmos DB-Container in Fabric gespeichert ist. Dieser Datensatz enthält Regionsgebietsschemas, die den in der ersten Abfrage angegebenen Regionen entsprechen. Eine Teilmenge dieses Datasets ist hier verfügbar:

    name code
    Nigeria en-ng
    Egypt ar-eg
    France fr-fr
    Japan ja-jp
    Argentina es-ar

Ausführen einer datenbankübergreifenden Abfrage

Führen Sie schließlich eine Abfrage aus, die Daten aus beiden Datenbanken kombiniert.

  1. Während Sie sich noch innerhalb des SQL-Analyseendpunkts befinden, öffnen Sie einen dritten Abfrage-Editor.

  2. Führen Sie eine Abfrage aus, die Daten aus beiden Endpunkten kombiniert.

    SELECT TOP 5
      regionCodes.code AS regionCode,
      COUNT(*) AS itemCount
    FROM
      [<first-database-endpoint>].[<first-database-name>].[SampleData] sampleData
    INNER JOIN
      [<second-database-endpoint>].[<second-database-name>].[<second-database-container-name>] regionCodes
    ON
      sampleData.countryOfOrigin = regionCodes.name
    GROUP BY
      sampleData.countryOfOrigin, regionCodes.code
    ORDER BY
      itemCount DESC
    

    Diese Abfrage führt zu folgenden Ergebnissen:

    regionCode itemCount
    en-ng 21
    ar-eg 20
    fr-fr 18
    ja-jp 18
    es-ar 17