Freigeben über


Kleine Datennutzlasten – Begrenzen der Datenmenge, die Sie erhalten

Eines der wichtigsten Muster für Unternehmensdaten-Apps besteht darin, die Größe der Daten zu begrenzen, die Sie in Power Apps abrufen. Wenn die Datennutzlasten klein sind, wird fast alles andere einfacher. Die Katalog- und Tabellensteuerelemente erledigen dies automatisch für Sie, wenn Sie eine direkte Verbindung zur Datenquelle in der Items-Eigenschaft herstellen. Wenn beispielsweise eine direkte Verbindung zu einer entfernten Datenquelle besteht, gibt ein Katalog die Daten in kleinen Schritten aus, beispielsweise jeweils 100 Datensätze. Dieser Standardwert nutzt die Tatsache, dass ein Endbenutzer selten mehr als hundert Datensätze für eine Benutzeraufgabe benötigt.

Delegierung verwenden

Eine wichtige Möglichkeit, Datennutzlasten klein zu halten, besteht darin, dass die Datenquelle für Sie funktioniert, bevor sie zu Power Apps gelangt. Delegierung ist, wenn Power Fx einen Power Fx-Ausdruck in einen Abfrageausdruck übersetzen kann, den eine Datenquelle wie Dataverse, SQL Server, SharePoint und Excel eigenständig verarbeiten kann. Und dann delegiert Power Fx diese Abfrage oder überträgt die Verantwortung für die Bearbeitung der Abfrage, das Daten-Mashup, an die Datenquelle weiter. Die Datenquelle erzeugt die richtigen Daten und gibt sie an Power Apps zurück.

Wenn die Datenquelle direkt an einen Katalog oder eine Tabelle gebunden ist, werden die Daten in kleinen, leistungsstarken Schritten von jeweils 100 Datensätzen paginiert oder an Power Apps zurückgegeben. Verschiedene Datenquellen verfügen über unterschiedliche Funktionen. Dataverse verfügt beispielsweise über viele weitere Funktionen zum Filtern von Daten auf dem Server als Excel. Ein gutes Beispiel ist CountRows und CountIf. Dataverse unterstützt CountRows auf begrenzte Weise. Dataverse berechnet die Größe der Tabelle regelmäßig und behält diesen Wert bei. Wenn CountRows aufgerufen wird, erhalten Sie diesen Wert. Auf diese Weise muss kein vollständiger Tabellenscan ausgeführt werden, um die genaue Nummer für jeden CountRows-Aufruf abzurufen. Dataverse unterstützt jedoch auch eine genaue Zählung mit CountIf bis zu 50.000 Zeilen. Sie stellt diese beiden verschiedenen Funktionen als Möglichkeit bereit, um eine gute Leistung des Dataverse-Servers zu erhalten. Im Gegensatz dazu unterstützt SharePoint diese Funktion nicht. Ein Power Fx-Ausdruck mit CountRows oder CountIf für SharePoint wird also nicht delegiert. Stattdessen lädt Power Apps eine begrenzte Anzahl von Zeilen herunter, 500 – 2000. Power Fx funktioniert lokal auf den 500/2000 Datensätzen und gibt ein Ergebnis zurück. Wenn Ihre Daten immer kleiner als 500/2000 Datensätze sind, kann dieser Ansatz funktionieren. Wenn es jedoch mehr als 500/2000 Datensätze ist, erhalten Sie möglicherweise falsche Ergebnisse.

Vermeiden Sie zu viele Spalten.

Standardmäßig berechnet Power Apps die tatsächlichen Spalten, die Sie für eine bestimmte Abfrage benötigen, mithilfe eines Featureaufrufs "Explizite Spaltenauswahl". Dieses Feature ist standardmäßig für alle neuen Apps aktiviert. Um das Feature für die explizite Spaltenauswahl in der Canvas-App zu aktivieren, navigieren Sie zu Einstellungen>, Bevorstehende Funktionen> und Vorschau>, und aktivieren Sie die Option Explizite Spaltenauswahl.

Anregungen

Um das Ziel einer kleinen Datennutzlast zu erreichen, berücksichtigen Sie die folgenden Fragen und Vorschläge:

  1. Die Standardabfrage für einen Katalog oder eine Tabelle soll nur ungefähr 100 bis 200 Datensätze zurückgeben. Wenn Sie eine delegierbare Abfrage verwenden, geschieht dies automatisch. Wenn Sie eine API oder eine andere Quelle abfragen, die keine Delegierung unterstützt, verwenden Sie Parameter, um die Ergebnisse zu verfeinern.

    • Erwägen Sie die Verwendung einer datenquellenbasierten Ansicht, die die Daten automatisch filtert. Die meisten unternehmensgerechten Apps nutzen die Views der Datenquelle intensiv.
    • Überlegen Sie, Standardsuch- oder Filterwerte zu verwenden, um den Datenbereich festzulegen.
    • Erwägen Sie, dass Suchargumente in der Benutzeroberfläche erforderlich sind, bevor Sie Daten anzeigen.
    • Berücksichtigen Sie diese Fragen zu Ihrer App:
      • Was ist auf einem bestimmten Bildschirm standardmäßig erforderlich?
      • Welche Daten benötigt der Endbenutzer wirklich, um eine bestimmte Geschäftsaktion zu ergreifen?
      • Benutzer benötigen in der Regel nicht Tausende von Datensätzen auf einem Ersten Bildschirm, um eine Aufgabe auszuführen.
  2. Beginnen Sie mit dem Erstellen der Abfrage für einen Katalog oder eine Tabelle, indem Sie die Delegierungstabellen für Ihre Datenquelle verwenden. Wählen Sie nur die für Ihre Abfrage unterstützten Funktionen aus. Wenn Ihre Abfrage nicht delegierbar ist, was können Sie tun, um sie delegierbar zu machen?