Freigeben über


Kleine Datennutzlasten – begrenzen Sie die Datenmenge, die Sie erhalten

Eines der wichtigsten Muster für Unternehmensdaten-Apps besteht darin, die Größe der Daten zu begrenzen, die Sie nach Power Apps abrufen. Wenn die Datennutzlast klein ist, 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 Standard nutzt die Tatsache aus, dass Endbenutzende selten mehr als hundert Datensätze für eine Benutzeraufgabe benötigen.

Verwenden der Delegierung

Eine wichtige Möglichkeit, die Datennutzlast klein zu halten, besteht darin, sich darauf zu verlassen, dass die Datenquelle die Arbeit für Sie erledigt, bevor sie Power Apps erreicht. Die Delegation erfolgt, wenn Power Fx einen Power Fx-Ausdruck in einen Abfrageausdruck übersetzen kann, mit dem eine Datenquelle wie Dataverse, SQL Server, SharePoint und Excel allein zurechtkommt. Und dann Power Fx diese Abfrage delegiert oder die Verantwortung für die Abfragearbeit, das Daten-Mashup, an die Datenquelle übergibt. Die Datenquelle erzeugt die korrekten 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 Leistungsschritten von 100 Datensätzen ausgegeben oder an Power Apps zurückgegeben. Unterschiedliche Datenquellen verfügen über unterschiedliche Funktionen. Dataverse verfügt beispielsweise über viel mehr Möglichkeiten zum Filtern von Daten auf dem Server als Excel. Ein gutes Beispiel sind CountRows und CountIf. Dataverse unterstützt CountRows in begrenztem Umfang. Dataverse berechnet regelmäßig die Größe der Tabelle und behält diesen Wert bei. Wenn CountRows aufgerufen wird, erhalten Sie diesen Wert. Auf diese Weise muss kein vollständiger Tabellenscan durchgeführt werden, um die genaue Zahl für jeden CountRows-Aufruf zu erhalten. Dataverse unterstützt aber auch eine genaue Zählung mit CountIf von bis zu 50.000 Zeilen. Es stellt diese beiden unterschiedlichen Funktionen bereit, um die gute Leistung des Dataverse Servers aufrechtzuerhalten. SharePoint unterstützt diese Funktion dagegen nicht. Daher wird ein Power Fx-Ausdruck mit CountRows oder CountIf für SharePoint nicht delegiert. Power Apps lädt stattdessen eine begrenzte Anzahl von Zeilen herunter: 500 bis 2.000. Power Fx arbeitet lokal mit den 500 bis 2.000 Datensätzen und gibt ein Ergebnis zurück. Wenn Ihre Daten immer weniger als 500 bis 2.000 Datensätze umfassen, kann dieser Ansatz funktionieren. Wenn es jedoch mehr als 500 bis 2.000 Datensätze sind, erhalten Sie möglicherweise falsche Ergebnisse.

Zu viele Spalten vermeiden

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 der expliziten Spaltenauswahl in der Canvas App zu aktivieren, gehen Sie zu Einstellungen > Neue Funktionen > Vorschau> und schalten Sie dann den Schalter Explizite Spaltenauswahl ein.

Vorschläge

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

  1. Ziel ist es, dass die Standardabfrage für einen Katalog oder eine Tabelle nur etwa 100 bis 200 Datensätze zurückgibt. Wenn Sie eine delegierbare Abfrage verwenden, geschieht dies automatisch. Wenn Sie eine API oder eine andere Quelle abfragen, die die Delegierung nicht unterstützt, verwenden Sie Parameter, um die Ergebnisse zu verfeinern.

    • Erwägen Sie die Verwendung einer auf der Datenquelle basierenden Ansicht, die die Daten automatisch filtert. Die meisten Apps für Unternehmen nutzen die Ansichten von Datenquellen in erheblichen Umfang.
    • Überlegen Sie, Standardsuch- oder Filterwerte zu verwenden, um den Datenbereich festzulegen.
    • Überlegen Sie, Suchargumente in der Benutzeroberfläche anzufordern, bevor Sie Daten anzeigen.
    • Berücksichtigen Sie diese Fragen zu Ihrer App:
      • Was ist auf einem bestimmten Bildschirm standardmäßig erforderlich?
      • Welche Daten benötigen Endbenutzende wirklich, um eine bestimmte geschäftliche Aktion durchzuführen?
      • Benutzende benötigen im Allgemeinen nicht Tausende von Datensätzen auf einem Einstiegsbildschirm, um eine Aufgabe auszuführen.
  2. Beginnen Sie mit dem Erstellen Ihrer Abfrage für einen Katalog oder eine Tabelle, indem Sie die Delegierungstabellen für Ihr Datenquelle verwenden. Wählen Sie nur die für Ihre Abfrage unterstützten Funktionen aus. Wenn Ihre Anfrage nicht delegierbar ist, was können Sie tun, um sie delegierbar zu machen?