Dieser Text wurde mit dem automatisierten Übersetzungssystem von Salesforce übersetzt. Nehmen Sie an unserer Umfrage teil, um Feedback zu diesem Inhalt zu geben und uns mitzuteilen, was Sie als Nächstes sehen möchten.

Automatisiert – Datenintegrität

Weitere Informationen zu Well-Architected EasyAutomatedData IntegrityData Handling (Datenverarbeitung)

Wohin schauen?
Produktbereich | Standort
Wie sieht gut aus?
Muster
Data 360 | Datenwörterbuch✅ Feldebenendaten und Priorisierungslogik für alle Datenquellen und Data-Lake-Objekte vorhanden
Data 360 | Organisation✅ Zusammengesetzte Schlüssel werden verwendet, um einen eindeutigen Primärschlüssel zu erstellen, falls keiner vorhanden ist Verwenden eines Formelfelds zum Verknüpfen mehrerer Felder aus Ihrem Datenset, wenn kein einzelnes Feld im Datenset vorhanden ist, das eindeutig ist
Data 360 | Organisation✅ Datenströme, die den CRM-Konnektor verwenden, nutzen die zweiwöchentliche vollständige Aktualisierung Wenn Sie den CRM-Konnektor für inkrementelle Lasten verwenden, wird alle zwei Wochen eine vollständige Aktualisierung initiiert. Dies kann zwar die Datenaufnahme erhöhen, schützt jedoch die Datenintegrität für Metadaten (wie Formelfelder), die keine DML-Transaktion auslösen und daher nicht in inkrementelle Ladevorgänge einbezogen werden.
Data 360 | Organisation✅ Die ID für Einzelpersonen wird verwendet, um Data 360-Daten anderen Systemen zuzuordnen. Ordnen Sie mithilfe der ID für Einzelpersonen Einzelpersonen in Data 360 anderen Systemen zu. Beispielsweise sollte der Marketing Cloud Engagement-Abonnentenschlüssel der ID "Einzelperson" aus Data 360 zugeordnet werden.
Data 360 | Organisation✅ Vollständig qualifizierte Schlüssel werden verwendet, um Daten genau zu interpretieren Alle DLOs, die einen Schlüsselwert enthalten, verfügen über ein Schlüsselqualifizierer-Feld und "Vollständig qualifizierte Schlüssel" sind in der Organisation aktiviert, um Konflikte zu vermeiden, die auftreten können, wenn mehrere Datenströme zu einem einzelnen Datenmodellobjekt (DMO) harmonisiert werden.
Data 360 | Organisation✅ Normalisierte Abgleichsmethoden werden in Abgleichsregeln verwendet, wenn sie verfügbar sind Genau normalisierte Abgleichstransformationen – Quelldaten, um häufige Abgleichsprobleme wie nachgestellte Leerzeichen, inkonsistente Formatierungen und Sonderzeichen zu beheben. Verwenden Sie diese Methode in Feldern, in denen sie verfügbar ist, statt Fuzzyübereinstimmungen zu verwenden, es sei denn, Sie haben mehrere Regelsätze für Tests konfiguriert und bestätigt, dass die Konsolidierungsrate nicht den Geschäftsanforderungen entspricht.
Einstein | Dokumentation✅ Die Datennutzbarkeit wird im Rahmen des AI-Projektdesigns dokumentiert Die Definition der Datennutzbarkeit Ihres Unternehmens wird dokumentiert und operationalisiert, um AI-Antworten zu verbessern.
Platform | Apex✅ Future Apex wird sparsam für Callouts oder Systemobjekt-DML verwendet
Platform | Apex✅ Asynchrone Apex-Aufrufe verwenden warteschlangenfähiges, um komplexes DML transaktionsübergreifend zu verketten
Platform | Apex✅ Batch Apex wird ausschließlich für große Datenmengen verwendet Batch Apex kann große Datenmengen am besten verarbeiten. Für asynchrones Apex gelten höhere Obergrenzen als für synchrones Apex. Vermeiden Sie nach Möglichkeit sehr kleine Batchgrößen, um die Folgen der Flow-Steuerung (Warteschlangenüberflutung), den Overhead und die Ausschöpfung der täglichen Obergrenze für asynchrones Apex zu vermeiden
Platform | Apex✅ Alle synchronen DML-Anweisungen oder Datenbankklassen-Methoden werden vor der Ausführung von Auslösern ausgeführt
Platform | Apex✅ Die Bulk-API wird nur verwendet, wenn große Datenmengen verarbeitet werden müssen Die Bulk-API wird verwendet, wenn große Datenmengen verarbeitet werden müssen. Native SOAP- und REST-APIs werden für kleinere Datenverarbeitungsmengen genutzt
Plattform | Datenwörterbuch✅ Feldzuordnung vom Data-Lake-Objekt zum Datenmodellobjekt vorhanden
Plattform | Flow✅ Alle im Benutzerkontext gestarteten Flows abstrahieren alle Systemkontexttransaktionen in Subflows, die konsistent nach einem Pausenelement platziert werden, um eine neue Transaktion zu erstellen
Plattform | Flow✅ Bei allen durch einen Datensatz ausgelösten Flows werden Auslöserreihenfolgenwerte ausgefüllt
Plattform | Flow✅ Flows, die externe System-Callouts oder langfristige Prozesse beinhalten, verwenden asynchrone Pfade
Plattform | Flow✅ Komplexe Sequenzen zugehöriger Datenvorgänge werden mit Orchestrator erstellt (anstatt mehrere Subflows in einem monolithischen Flow aufzurufen)
Plattform | Organisation✅ Schlichtungsregeln für die Identitätsbestimmung folgen der Priorisierungslogik in Ihrem Datenwörterbuch

Weitere Informationen zu Well-Architected EasyAutomatedData IntegrityError Handling (Wohlüberlegt – einfach)

Wohin schauen?
Produktbereich | Standort
Wie sieht gut aus?
Muster
Einstein | Org✅ Eingabeaufforderungen geben die erwartete Ausgabe an. Fügen Sie direkte Anweisungen für die LLM ein, um nur den erwarteten Inhaltstyp zu generieren.
Platform | Apex✅ Benutzerdefinierte Ausnahmen werden zum Erstellen von erweiterten Fehlermeldungen und Logik verwendet
Platform | Apex✅ Code umschließt alle DML-, SOQL-, Callout- und anderen wichtigen Prozessschritte in try-catch
Platform | Apex✅ Datenbankklassenmethoden können ausschließlich für alle Datenvorgänge (anstelle von DML) verwendet werden
Platform | Apex✅ In asynchronen und Massenkontexten werden Datenbankklassenmethoden anstelle von DML verwendet
Plattform | Aura✅ JavaScript umschließt alle Datenvorgänge und wichtigen Prozessschritte in try-catch
Plattform | Aura✅ In try-catch-Blöcken wird native JavaScript-Error in throw-Anweisungen verwendet (keine Verwendung von $A.error())
Plattform | Aura✅ Alle behebbaren Fehlerlogiken werden in catch-Anweisungen angezeigt und bieten klare Benutzermeldungen
Plattform | Flow✅ Flows mit Datenvorgängen, Callouts und anderen wichtigen Verarbeitungslogiken weisen Fehlerpfade für alle wichtigen Aktionen auf
Plattform | Flow✅ Bildschirm-Flows verwenden konsistent Fehler-Konnektoren, um Benutzern Fehler anzuzeigen
Plattform | Flow✅ Benutzerdefinierte Fehlermeldungen werden für Fehler konfiguriert, die auf dem Bildschirm angezeigt werden
Plattform | Lightning Web Components (LWC)✅ JavaScript umschließt alle Datenvorgänge und wichtigen Prozessschritte in if ()/else if ()-Blöcke
Plattform | Lightning Web Components (LWC)✅ Alle @wire verwenden die von der API bereitgestellten data- und error.
Plattform | Lightning Web Components (LWC)✅ Alle if (error)/else if (error)-Anweisungen enthalten Logik zum Verarbeiten von Fehlern und Bereitstellen informativer Meldungen

Weitere Informationen zu Well-Architected EasyAutomatedData IntegrityData Handling (Datenverarbeitung)

Wohin schauen?
Produktbereich | Standort
Was vermeiden?
Anti-Pattern
Data 360 | Organisation⚠️ Felder mit unterstützten normalisierten Abgleichsmethoden verwenden Fuzzyübereinstimmung Fuzzyübereinstimmung wird auf Felder angewendet, die genaue normalisierte Abgleichsmethoden bieten
Data 360 | OrganisationDie ID der zusammengeführten Einzelperson wird als Master-ID oder globale ID verwendet, die vom Rest der Organisation verwendet werden soll.
Data 360 | Organisation⚠️ "Ereignisdatum" wird einem veränderlichen Datum/Uhrzeit-Wert zugeordnet "Ereignisdatum" wird einem veränderlichen Datum/Uhrzeit-Feld wie "Zuletzt aktualisiert" oder "Zuletzt extrahiert" zugeordnet
Data 360 | Organisation⚠️ Der Primärschlüssel wird einem Feld zugeordnet, das nicht eindeutig ist. Auswählen eines Felds als Primärschlüssel für Ihren Datenstrom, wenn eines in Ihrem Datenset nicht vorhanden ist, ohne zunächst zu überprüfen, ob das ausgewählte Feld eindeutig ist
Data 360 | Organisation⚠️ Laden Sie Daten in Batches und versuchen Sie dann, sie in Echtzeit zu aktivieren. Ein gängiger, aber fehlerhafter Ansatz kann beispielsweise darin bestehen, dass Daten stündlich aus einem Amazon S3-Bucket geladen und dann über Datenaktionen aktiviert werden.
Platform | Apex⚠️ DML-Anweisungen werden regelmäßig in Code angezeigt, der nach Auslöserkontexten aufgerufen wird
Platform | Apex⚠️ Apex Batchaufträge haben eine sehr kleine Umfangsgröße Es werden sehr kleine Batchgrößen (z. B. Umfangsgröße = 1) verwendet.
Platform | ApexBatch Apex wird für externe Callouts verwendet Große Mengen an Salesforce-Daten werden mithilfe von Batch Apex aus Salesforce an ein externes System übertragen
Platform | Apex⚠️ Plattformereignisse werden unabhängig von den Anforderungen an die Veröffentlichungsreihenfolge oder den Datensatzsperrrisiken adhoc Ereignisse vom Typ "Sofort veröffentlichen" (Echtzeit) anstelle von "Nach Commit veröffentlichen" (Nicht in Echtzeit) verwendet.
Platform | Apex⚠️ Asynchrone Apex Funktionen werden beliebig verwendet Future Methods und Queueable Apex werden inkonsistent oder austauschbar verwendet
Platform | Apex⚠️ Die Funktionen von asynchronem Apex werden beliebig verwendet. Es ist nicht klar, wann Entwickler zukünftiges und warteschlangenfähiges Apex verwenden und wann DML an Batchaufträge übergeben sollten.
Platform | Apex⚠️ Asynchrones Apex wird selten verwendet
Platform | Apex⚠️ Asynchrone Apex Funktionen werden beliebig verwendet Datenbankvorgänge verfügen nicht über eine klare, konsistente Logik, um die Ausführung bei Bedarf an Batch Apex weiterzugeben
Plattform | Datenwörterbuch⚠️ Die Feldzuordnung von Data-Lake-Objekten zu Datenmodellobjekten ist nicht enthalten
Plattform | Datenwörterbuch⚠️ Feldebenendaten und Priorisierungslogik für Datenquellen und Data-Lake-Objekte sind nicht enthalten
Plattform | Flow⚠️ Ausführen von DML mithilfe einer Sammlung, die eine Ausgabe einer Bildschirmkomponente ist, Verwenden der Einstellung "IDs und alle Feldwerte aus einem Datensatz oder einer Datensatzsammlung verwenden" für ein Element vom Typ "Erstellen", "Aktualisieren" oder "Löschen", wenn diese Sammlung eine Ausgabe einer Bildschirmkomponente ist
Plattform | Flow⚠️ Durch einen Datensatz ausgelöste Flows verwenden überhaupt keine Attribute für die Auslöserreihenfolge oder keine durchgängigen Werte für die Auslöserreihenfolge
Plattform | Flow⚠️ Asynchrone Pfade werden nicht einheitlich oder überhaupt verwendet
Plattform | Flow⚠️ Große monolithische Flows versuchen, komplexe Sequenzen von zugehörigen Datenvorgängen (mit oder ohne Subflows) zu koordinieren
Plattform | Organisation⚠️ Schlichtungsregeln für die Identitätsbestimmung folgen nicht der Priorisierungslogik im Datenwörterbuch

Weitere Informationen zu Well-Architected EasyAutomatedData IntegrityError Handling (Wohlüberlegt – einfach)

Wohin schauen?
Produktbereich | Standort
Was vermeiden?
Anti-Pattern
Platform | Apex⚠️ DML, SOQL, Callouts oder andere wichtige Prozessschritte werden nicht konsistent in Try-Catch-Blöcke eingeschlossen
Platform | Apex⚠️ Es werden keine Datenbankklassenmethoden verwendet
Platform | Apex⚠️ Datenvorgänge werden ausschließlich mit DML ausgeführt
Platform | Apex⚠️ System.debug werden im Produktionscode angezeigt (und nicht auskommentiert)
Plattform | AuraJavaScript umschließt Datenvorgänge und wichtige Prozessschritte nicht konsistent in try-catch
Plattform | Aura⚠️ Komponenten verwenden $A.error()
Plattform | Aura⚠️ Fehlerbehebungslogik wird in catch-Anweisungen nicht einheitlich angezeigt und Fehlermeldungen an Benutzer sind nicht eindeutig
Plattform | Flow⚠️ Flows verwenden Fehlerpfade nicht einheitlich oder überhaupt
Plattform | Flow⚠️ Benutzerdefinierte Fehlermeldungen werden nicht verwendet, sodass Benutzern die Standardmeldung "In diesem Flow ist ein nicht bearbeiteter Fehler aufgetreten" angezeigt wird.
Plattform | Lightning Web Components (LWC)⚠️ @wire-Funktionen verwenden die von der API bereitgestellten data- und error-Eigenschaften nicht (oder nicht einheitlich)
Plattform | Lightning Web Components (LWC)⚠️ Wenn überhaupt verwendet, enthalten if (error)/else if (error)-Anweisungen keine Logik zum Verarbeiten von Fehlern und bieten nützliche Fehlermeldungen
Plattform | Lightning Web Components (LWC)JavaScript verwendet if ()/ else if ()-Blöcke nicht konsistent mit Datenvorgängen oder wichtigen Prozessschritten