Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Datenfilterung für Amazon RDS Zero-ETL-Integrationen mit Amazon Redshift

Fokusmodus
Datenfilterung für Amazon RDS Zero-ETL-Integrationen mit Amazon Redshift - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon RDS Zero-ETL-Integrationen unterstützen Datenfilterung, sodass Sie kontrollieren können, welche Daten aus Ihrem Warehouse repliziert werden. Anstatt die gesamte Datenbank zu replizieren, können Sie einen oder mehrere Filter anwenden, um bestimmte Tabellen selektiv ein- oder auszuschließen. Auf diese Weise können Sie die Speicher- und Abfrageleistung optimieren, indem sichergestellt wird, dass nur relevante Daten übertragen werden. Derzeit ist die Filterung auf Datenbank- und Tabellenebene beschränkt. Das Filtern auf Spalten- und Zeilenebene wird nicht unterstützt.

Datenfilterung kann nützlich sein, wenn Sie:

  • Verbinden Sie bestimmte Tabellen aus zwei oder mehr verschiedenen , und Sie benötigen keine vollständigen Daten aus einem der .

  • Sparen Sie Kosten, indem Sie Analysen nur mit einer Teilmenge von Tabellen und nicht mit einer ganzen Flotte von Datenbanken durchführen.

  • Filtern Sie vertrauliche Informationen wie Telefonnummern, Adressen oder Kreditkarteninformationen aus bestimmten Tabellen heraus.

Sie können Datenfilter zu einer Zero-ETL-Integration hinzufügen AWS Management Console, indem Sie die AWS Command Line Interface (AWS CLI) oder die Amazon RDS-API verwenden.

Wenn die Integration einen bereitgestellten Amazon Redshift Redshift-Cluster als Ziel hat, muss sich der Cluster auf Patch 180 oder höher befinden, um Datenfilterung verwenden zu können.

Format eines Datenfilters

Sie können mehrere Filter für eine einzelne Integration definieren. Jeder Filter schließt alle vorhandenen und future Datenbanktabellen ein oder schließt sie aus, die einem der Muster im Filterausdruck entsprechen. Amazon RDS Zero-ETL-Integrationen verwenden die Maxwell-Filtersyntax für die Datenfilterung.

Jeder Filter besteht aus den folgenden Elementen:

Element Beschreibung
Typ des Filters

Ein Include Filtertyp umfasst alle Tabellen, die einem der Muster im Filterausdruck entsprechen. Ein Exclude Filtertyp schließt alle Tabellen aus, die einem der Muster entsprechen.

Filterausdruck

Eine durch Kommas getrennte Liste von Mustern. Ausdrücke müssen die Maxwell-Filtersyntax verwenden.

Muster

Ein Filtermuster im Format database.table . Sie können Literalnamen angeben oder reguläre Ausdrücke definieren.

Sie können keine Filter oder Ablehnungslisten auf Spaltenebene einbeziehen.

Eine einzelne Integration kann insgesamt maximal 99 Muster haben. In der Konsole können Sie Muster innerhalb eines einzelnen Filterausdrucks eingeben oder sie auf mehrere Ausdrücke verteilen. Ein einzelnes Muster darf nicht länger als 256 Zeichen sein.

Die folgende Abbildung zeigt die Struktur der in der Konsole:

Datenfilter für eine Zero-ETL-Integration
Wichtig

Nehmen Sie keine personenbezogenen, vertraulichen oder sensiblen Informationen in Ihre Filtermuster auf.

Datenfilter im AWS CLI

Wenn Sie den verwenden AWS CLI , um einen Datenfilter hinzuzufügen, unterscheidet sich die Syntax geringfügig von der der Konsole. Sie müssen jedem Muster einzeln einen Filtertyp (IncludeoderExclude) zuweisen, sodass Sie nicht mehrere Muster unter einem Filtertyp gruppieren können.

In der Konsole können Sie beispielsweise die folgenden durch Kommas getrennten Muster unter einer einzigen Include Anweisung gruppieren:

mydb.mytable, mydb./table_\d+/

Wenn Sie den verwenden AWS CLI, muss derselbe Datenfilter jedoch das folgende Format haben:

'include: mydb.mytable, include: mydb./table_\d+/'

Filterlogik

Wenn Sie in Ihrer Integration keine Datenfilter angeben, geht Amazon RDS von einem Standardfilter von ausinclude:*.*, der alle Tabellen in das Ziel-Data Warehouse repliziert. Wenn Sie jedoch mindestens einen Filter hinzufügen, wechselt die Standardlogik zuexclude:*.*, wodurch standardmäßig alle Tabellen ausgeschlossen werden. Auf diese Weise können Sie explizit definieren, welche Datenbanken und Tabellen in die Replikation einbezogen werden sollen.

Wenn Sie beispielsweise den folgenden Filter definieren:

'include: db.table1, include: db.table2'

Amazon RDS bewertet den Filter wie folgt:

'exclude:*.*, include: db.table1, include: db.table2'

Daher repliziert Amazon RDS nur table1 und table2 von der angegebenen Datenbank in db das Ziel-Data Warehouse.

Priorität filtern

Amazon RDS wertet Datenfilter in der von Ihnen angegebenen Reihenfolge aus. In der AWS Management Console verarbeitet es Filterausdrücke von links nach rechts und von oben nach unten. Ein zweiter Filter oder ein individuelles Muster, das dem ersten folgt, kann ihn überschreiben.

Wenn der erste Filter beispielsweise aktiviert istInclude books.stephenking, schließt er nur die stephenking Tabelle aus der books Datenbank ein. Wenn Sie jedoch einen zweiten Filter hinzufügenExclude books.*, überschreibt dieser den ersten Filter. Dadurch wird verhindert, dass Tabellen aus dem books Index nach Amazon Redshift repliziert werden.

Wenn Sie mindestens einen Filter angeben, beginnt die Logik mit der Standardannahme, wodurch automatisch alle Tabellen exclude:*.* von der Replikation ausgeschlossen werden. Es hat sich bewährt, Filter vom breitesten bis zum spezifischsten Filter zu definieren. Beginnen Sie mit einer oder mehreren Include Anweisungen, um die zu replizierenden Daten anzugeben, und fügen Sie dann Exclude Filter hinzu, um bestimmte Tabellen selektiv zu entfernen.

Das gleiche Prinzip gilt für Filter, die Sie mit dem definieren. AWS CLIAmazon RDS wertet diese Filtermuster in der Reihenfolge aus, in der Sie sie angeben, sodass ein Muster möglicherweise ein Muster überschreibt, das Sie zuvor angegeben haben.

Beispiele

Die folgenden Beispiele zeigen, wie Datenfilterung für Zero-ETL-Integrationen funktioniert:

  • Schließt alle Datenbanken und alle Tabellen ein:

    'include: *.*'
  • Schließt alle Tabellen in die books Datenbank ein:

    'include: books.*'
  • Schließt alle Tabellen mit den folgenden Namen ausmystery:

    'include: *.*, exclude: *.mystery'
  • Schließt zwei spezifische Tabellen in die books Datenbank ein:

    'include: books.stephen_king, include: books.carolyn_keene'
  • Schließt alle Tabellen in die books Datenbank ein, außer denen, die die Teilzeichenfolge mystery enthalten:

    'include: books.*, exclude: books./.*mystery.*/'
  • Schließt alle Tabellen in die books Datenbank ein, außer denen, die beginnen mitmystery:

    'include: books.*, exclude: books./mystery.*/'
  • Schließt alle Tabellen in die books Datenbank ein, mit Ausnahme der Tabellen, die wie folgt endenmystery:

    'include: books.*, exclude: books./.*mystery/'
  • Schließt alle Tabellen in der books Datenbank ein, die mit beginnentable_, mit Ausnahme der benanntentable_stephen_king. Zum Beispiel, table_movies oder table_books würde repliziert werden, aber nichttable_stephen_king.

    'include: books./table_.*/, exclude: books.table_stephen_king'

Hinzufügen von Datenfiltern zu einer Integration

Sie können die Datenfilterung mithilfe der AWS Management Console AWS CLI, der oder der Amazon RDS-API konfigurieren.

Wichtig

Wenn Sie einen Filter hinzufügen, nachdem Sie eine Integration erstellt haben, behandelt Amazon RDS ihn so, als ob er schon immer existiert hätte. Es entfernt alle Daten im Amazon Redshift Redshift-Ziel-Data Warehouse, die nicht den neuen Filterkriterien entsprechen, und synchronisiert alle betroffenen Tabellen erneut.

Um Datenfilter zu einer Zero-ETL-Integration hinzuzufügen
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Zero-ETL-Integrationen aus. Wählen Sie die Integration aus, zu der Sie Datenfilter hinzufügen möchten, und klicken Sie dann auf Ändern.

  3. Fügen Sie unter Quelle eine oder mehrere Include Exclude AND-Anweisungen hinzu.

    Die folgende Abbildung zeigt ein Beispiel für Datenfilter für eine MySQL-Integration:

    Datenfilter für eine Zero-ETL-Integration in der RDS-Konsole
  4. Wenn Sie mit den Änderungen zufrieden sind, wählen Sie Weiter und Änderungen speichern.

RDS-Konsole

Um Datenfilter zu einer Zero-ETL-Integration hinzuzufügen
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Zero-ETL-Integrationen aus. Wählen Sie die Integration aus, zu der Sie Datenfilter hinzufügen möchten, und klicken Sie dann auf Ändern.

  3. Fügen Sie unter Quelle eine oder mehrere Include Exclude AND-Anweisungen hinzu.

    Die folgende Abbildung zeigt ein Beispiel für Datenfilter für eine MySQL-Integration:

    Datenfilter für eine Zero-ETL-Integration in der RDS-Konsole
  4. Wenn Sie mit den Änderungen zufrieden sind, wählen Sie Weiter und Änderungen speichern.

Um einer Zero-ETL-Integration mithilfe von Datenfilter hinzuzufügen AWS CLI, rufen Sie den Befehl modify-integration auf. Geben Sie den --data-filter Parameter zusätzlich zur Integrations-ID mit einer kommagetrennten Liste von und Maxwell-Filtern an. Include Exclude

Im folgenden Beispiel werden Filtermuster zu hinzugefügt. my-integration

Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:

aws rds modify-integration \ --integration-identifier my-integration \ --data-filter 'include: foodb.*, exclude: foodb.tbl, exclude: foodb./table_\d+/'

Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:

aws rds modify-integration ^ --integration-identifier my-integration ^ --data-filter 'include: foodb.*, exclude: foodb.tbl, exclude: foodb./table_\d+/'

Um einer Zero-ETL-Integration mithilfe von Datenfilter hinzuzufügen AWS CLI, rufen Sie den Befehl modify-integration auf. Geben Sie den --data-filter Parameter zusätzlich zur Integrations-ID mit einer kommagetrennten Liste von und Maxwell-Filtern an. Include Exclude

Im folgenden Beispiel werden Filtermuster zu hinzugefügt. my-integration

Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:

aws rds modify-integration \ --integration-identifier my-integration \ --data-filter 'include: foodb.*, exclude: foodb.tbl, exclude: foodb./table_\d+/'

Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:

aws rds modify-integration ^ --integration-identifier my-integration ^ --data-filter 'include: foodb.*, exclude: foodb.tbl, exclude: foodb./table_\d+/'

Um eine Zero-ETL-Integration mithilfe der RDS-API zu ändern, rufen Sie den Vorgang auf ModifyIntegration. Geben Sie die Integrations-ID an und stellen Sie eine durch Kommas getrennte Liste von Filtermustern bereit.

Um eine Zero-ETL-Integration mithilfe der RDS-API zu ändern, rufen Sie den Vorgang auf ModifyIntegration. Geben Sie die Integrations-ID an und stellen Sie eine durch Kommas getrennte Liste von Filtermustern bereit.

Datenfilter aus einer Integration entfernen

Wenn Sie einen Datenfilter aus einer Integration entfernen, bewertet Amazon RDS die verbleibenden Filter neu, als ob der entfernte Filter nie existiert hätte. Anschließend repliziert es alle zuvor ausgeschlossenen Daten, die jetzt die Kriterien erfüllen, in das Amazon Redshift Redshift-Ziel-Data Warehouse. Dadurch wird eine Neusynchronisierung aller betroffenen Tabellen ausgelöst.

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.