Zum Inhalt springen

Redis-Verbindungsdetails

Einführung

Connector-Version

Diese Dokumentation basiert auf Version 23.0.8895 des Connectors.

Erste Schritte

Redis Versionsunterstützung

Der Connector modelliert Redis Instanzen als relationale Datenbanken. Der Connector nutzt die Redis-Befehle, um bidirektionalen Zugriff auf Redis und Redis Enterprise-Daten über SQL zu ermöglichen. Redis-Versionen 2.8.0 und höher werden unterstützt.

Herstellen einer Verbindung

Mit Redis verbinden

Setzen Sie die Server Verbindungseigenschaft zum Namen oder zur Adresse des Servers, auf dem Ihre Redis-Instanz ausgeführt wird.

Wenn Ihr Redis-Server auf einem anderen Port als dem Standardport (6379) läuft, können Sie Ihren Port im angeben Port Eigentum.

Authentifizieren gegenüber Redis

Der Connector unterstützt Kennwort- und ACL-Authentifizierung. Verbindungen zu Redis-Instanzen, die nicht kennwortgeschützt sind, werden ebenfalls unterstützt.

Keine Authentifizierung

Setzen Sie die AuthScheme Eigentum an None. Dies zeigt an, dass die Redis-Instanz nicht passwortgeschützt ist (mit dem requirepass Anweisung in der Konfigurationsdatei).

Passwort

Setzen Sie die AuthScheme Eigentum an Password und setzen Sie die Password Eigenschaft des Kennworts, das zur Authentifizierung bei einer kennwortgeschützten Redis Instanz mithilfe des Redis AUTH-Befehls verwendet wird.

ACL (Zugriffskontrollliste)

Stellen Sie zum Verbinden Folgendes ein:

  • AuthScheme: Setzen Sie dies auf ACL.
  • User: Legen Sie hier den Benutzernamen fest, den Sie zur Authentifizierung mit Redis ACL verwenden.
  • Password: Legen Sie hier das Kennwort fest, das Sie zur Authentifizierung bei Redis ACL verwenden.

Sichere Redis Verbindungen

Sie können festlegen UseSSL um bei der Verbindung eine SSL/TLS Verschlüsselung auszuhandeln.

Wichtige Hinweise

Konfigurationsdateien und ihre Pfade

  • Alle Verweise auf das Hinzufügen von Konfigurationsdateien und deren Pfaden beziehen sich auf Dateien und Speicherorte auf dem Jitterbit-Agenten, auf dem der Connector installiert ist. Diese Pfade sind je nach Agent und Operationssystem entsprechend anzupassen. Wenn mehrere Agenten in einer Agentengruppe verwendet werden, werden auf jedem Agenten identische Dateien benötigt.

Datenmodell

Der Connector ermöglicht es Ihnen, Redis-Key-Value Paare als Tabellen zu modellieren.

Tabellen

Der Connector ermöglicht zwei Hauptparadigmen zum Modellieren von Redis-Key-Value Paaren als Tabellen.

Modellieren von Redis-Hashes als Tabellen

Redis-Schlüsselmuster können als Tabellen modelliert werden. Siehe Freiformabfrage von Redis-Schlüsseln für eine Aufschlüsselung der verschiedenen Konfigurationsoptionen.

Freiformabfrage von Redis-Schlüsseln

Es ist auch möglich, Schlüssel direkt Abfrage, als wären sie Tabellen.

Wenn Sie bestimmte Schlüssel als Tabellen Abfrage möchten, lesen Sie Modellieren von Redis-Hashes als Tabellen.

Wenn Sie alle Schlüssel im Redis Schlüsselspeicher aus einer einzigen Tabelle Abfrage möchten, lesen Sie die Schlüssel Tisch.

Redis Datentypen

Siehe Redis Datentypen für eine Liste der vom Connector unterstützten Redis Datentypen.

Gespeicherte Prozeduren

Verwenden Sie die verfügbaren gespeicherten Prozeduren, um Befehle zu übermitteln (in nativem redis-cli-Syntax) an den Redis-Server zur direkten Ausführung.

Modellieren von Redis-Hashes als Tabellen

Der Connector kann so konfiguriert werden, dass er die erkannten Metadaten formt.

Verwenden Sie DefineTables, TablePattern, Und PatternSeparator Verbindungseigenschaften zum Anpassen, wie Tabellen und Spalten aus dem Redis Schlüsselspeicher abgeleitet werden.

Angenommen, die folgenden Hashes wurden im Redis-Server erstellt (entweder mit redis-cli oder der RunCommand Storec-Prozedur).

> hmset user:1000 name "John Smith" email "john.smith@example.com" password "s3cret"
OK
> hmset user:1001 name "Mary Jones" email "mjones@example.com" password "hidden"
OK
> hmset user:1002 name "Sally Brown" email "sally.b@example.com" password "p4ssw0rd"
OK
> hmset customer:200 name "John Smith" account "123456" balance "543.21"
OK
> hmset customer:201 name "Mary Jones" account "123457" balance "654.32"
OK
> hmset customer:202 name "Sally Brown" account "123458" balance "765.43"
OK

Wenn diese Eigenschaften verwendet werden, um das Verhalten des Connectors zu definieren, werden die Redis-Schlüssel pivotiert, sodass jeder Redis-Schlüssel, der dem Muster in der Definition entspricht, als einzelne Zeile in der Tabelle dargestellt wird. Jeder mit diesem Redis-Schlüssel verknüpfte Wert wird zu einer Spalte für die Tabelle.

DefineTables-Eigenschaft {: #definetables-property}##### SELECT * FROM Benutzer

Der DefineTables Mit der Verbindungseigenschaft können Sie die Namen der angezeigten Tabellen explizit definieren. Legen Sie dazu die Eigenschaft auf eine durch Kommas getrennte Zeichenfolge aus Name-Wert-Paaren fest, wobei der Name der Name der Tabelle und der Wert das Muster ist, das zum Zuweisen von Redis-Schlüsseln zu dieser Tabelle verwendet wird.

Der Connector aggregiert alle Redis-Schlüssel, die den angegebenen Mustern entsprechen.

DefineTables=Users=user:*,Customers=customer:*;

Wenn die Eigenschaft wie oben festgelegt ist, werden die Tabellen „Benutzer“ und „Kunden“ angezeigt. Wenn Sie die Tabellen Abfrage würden, würden Sie die folgenden Ergebnisse sehen:

SELECT * FROM Benutzer
RedisKey Name Email Passwort
Benutzer:1000 John Smith john.smith@example.com s3cret
Benutzer:1001 Mary Jones mjones@example.com versteckt
Benutzer:1002 Sally Brown sally.b@Beispiel p4ssw0rd
SELECT * FROM Customers
RedisKey Name Konto Guthaben
Kunde:200 John Smith 123456 543,21
Kunde:201 Mary Jones 123456 654,32
Kunde:202 Sally Brown 123456 765,43

TablePattern-Eigenschaft

Die TablePattern Mit der Verbindungseigenschaft können Sie die Trennzeichen definieren, die bestimmen, wie der Connector Tabellen definiert. Für die oben beschriebenen Redis-Schlüssel würden „Benutzer“ und „Kunde“ als Tabellen definiert, wenn das Trennzeichen auf „:“ eingestellt ist, da der eindeutige Teil jedes Redis-Schlüssels nach dem „:“ erscheint. Wenn Sie die Tabellen anders strukturieren müssen, um tiefer ins Detail zu gehen, können Sie mehrere Instanzen des Trennzeichens einfügen. Legen Sie die Eigenschaft auf ein Muster fest, das die Trennzeichen enthält, die zum Definieren Ihrer Tabellenstruktur erforderlich sind. (Unten ist der Standardwert.)

Sie können das Mustertrennzeichen auch unabhängig vom manuell angeben TablePattern unter Verwendung von PatternSeparator Eigentum.

TablePattern=*:*;

Wenn die Eigenschaft wie oben festgelegt ist, werden die Benutzer- und Kundentabellen angezeigt. Wenn Sie die Tabellen Abfrage würden, würden Sie die folgenden Ergebnisse sehen:

AUSWÄHLEN * FROM Benutzer
RedisKey Name Email Passwort
Benutzer:1000 John Smith john.smith@example.com s3cret
Benutzer:1001 Mary Jones mjones@example.com versteckt
Benutzer:1002 Sally Brown sally.b@Beispiel p4ssw0rd
SELECT * FROM customer
RedisKey Name Konto Guthaben
Kunde:200 John Smith 123456 543,21
Kunde:201 Mary Jones 123456 654,32
Kunde:202 Sally Brown 123456 765,43

Freiformabfrage von Redis-Schlüsseln

Der direkteste Weg, mit Redis Daten mit dem Connector zu arbeiten, besteht darin, einen Redis-Schlüssel als Tabellennamen zu verwenden. Nachfolgend finden Sie Beispieldaten, Abfragen und Ergebnisse basierend auf Redis Datentypen.

Hinweis

Diese Seite enthält redis-cli Syntax. Verwenden Sie entweder Ihre eigene Instanz von redis-cli oder den RunCommand Verfahren, um Abfragen vom Connector zur direkten Ausführung an den Redis-Server zu senden.

Redis Strings

Erstellen Sie eine Zeichenfolge in Redis:

> set mykey somevalue
OK

Wenn Sie eine SELECT- Abfrage ausführen auf mykey der Connector gibt Folgendes zurück:

SELECT * FROM mykey
RedisKey ValueIndex Value RedisType ValueScore
meinSchlüssel 1 irgendeinWert String NULL

Redis Listen

Erstellen Sie eine Liste in Redis:

> rpush mylist A B C
(integer) 3

Wenn Sie eine SELECT- Abfrage ausführen auf mylist der Connector gibt Folgendes zurück:

SELECT * FROM mylist
RedisKey ValueIndex Value RedisType ValueScore
meineListe 1 A Liste NULL
meineListe 2 B Liste NULL
meineListe 3 C Liste NULL
Redis löschen

Datensätze vom Typ „Liste“ können auch mit DELETE-Anweisungen gelöscht werden. Dies muss allerdings durch Angabe der Spalte „Value“ in der WHERE-Klausel erfolgen:

LÖSCHEN AUS Schlüsseln, wobei Wert = ‚meinWert‘ und RedisKey = ‚meineListe‘ ist

Beachten Sie, dass die Verwendung von ValueIndex in der WHERE-Klausel der DELETE-Anweisung nicht unterstützt wird.

Redis Sets

Erstellen Sie ein Set in Redis:

> sadd myset 1 2 3
(integer) 3

Wenn Sie eine SELECT- Abfrage ausführen auf myset Der Connector gibt Folgendes zurück (beachten Sie, dass Redis die Elemente eines Sets in beliebiger Reihenfolge zurückgeben kann):

AUSWÄHLEN * AUS myset
RedisKey ValueIndex Wert RedisType ValueScore
meinSet 1 2 Set NULL
meinSet 2 1 Set NULL
meinSet 3 3 Set NULL

Sortierte Redis-Sets

Erstellen Sie ein ZSet (sortiertes Set) in Redis:

> zadd hackers 1940 "Alan Kay" 1957 "Sophie Wilson" 1953 "Richard Stallman" 1949 "Anita Borg"
(integer) 9

Wenn Sie eine SELECT- Abfrage ausführen auf hackers der Connector gibt Folgendes zurück:

SELECT * FROM hackers
RedisKey ValueIndex Value RedisType ValueScore
Hacker 1 Alan Kay ZSet 1940
Hacker 2 Anita Borg ZSet 1949
Hacker 3 Richard Stallman ZSet 1953
Hacker 4 Sophie Wilson ZSet 1957

Redis-Hashes

Erstellen Sie einen Hash in Redis:

> hmset user:1000 username antirez birthyear 1977 verified 1
OK

Wenn Sie eine SELECT- Abfrage ausführen auf user:1000 der Connector gibt Folgendes zurück:

SELECT * FROM user:1000
RedisKey ValueIndex Value RedisType ValueScore
Benutzer:1000 Benutzername antirez Hash NULL
Benutzer:1000 Geburtsjahr 1977 Hash NULL
Benutzer:1000 verifiziert 1 Hash NULL

Abfragen von Schlüsselmustern als Tabellen

Sie können mehrere Redis-Schlüssel gleichzeitig abrufen, indem Sie ein Muster (z. B. „user:*“) als Tabellennamen verwenden. Beginnen Sie beispielsweise damit, mehrere Schlüssel zu Redis hinzuzufügen, die einem Muster entsprechen:

> hmset user:1000 name "John Smith" email "john.smith@example.com" password "s3cret"
OK
> hmset user:1001 name "Mary Jones" password "hidden" email "mjones@example.com"
OK

Wenn Sie verwenden user:* als Tabellenname, ruft der Connector alle Redis-Key-Value Paare ab, deren Schlüssel dem Muster entsprechen. Die erwarteten Ergebnisse können Sie unten sehen:

SELECT * FROM [Benutzer:*]
RedisKey ValueIndex Wert RedisType ValueScore
Benutzer:1000 Name John Smith Hash NULL
Benutzer:1000 Email john.smith@example.com Hash NULL
Benutzer:1000 Passwort s3cret Hash NULL
Benutzer:1001 Name Mary Jones Hash NULL
Benutzer:1001 Email mjones@example.com Hash NULL
Benutzer:1001 Passwort versteckt Hash NULL

Redis-Datentypen

Vom Connector unterstützte Redis-Datentypen

  • Binärsichere Zeichenfolgen.
  • Listen: Sammlungen von Zeichenfolgenelementen, sortiert nach der Reihenfolge der Einfügung. Im Grunde handelt es sich dabei um verknüpfte Listen.
  • Sets: Sammlungen eindeutiger, unsortierter Zeichenfolgenelemente.
  • Sortierte Sets (ZSets): ähnlich wie Sets, aber hier ist jedes String-Element einem Gleitkommawert zugeordnet, der als Score bezeichnet wird. Die Elemente werden immer nach ihrem Score sortiert, sodass es im Gegensatz zu Sets möglich ist, einen Bereich von Elementen abzurufen (Sie können beispielsweise fragen: Geben Sie mir die Top 10 oder die Bottom 10).
  • Hashes: Maps, die aus Feldern bestehen, die mit Werten verknüpft sind. Sowohl das Feld als auch der Wert sind Zeichenfolgen. Dies ist den Hashes von Ruby oder Python sehr ähnlich.

Tabellen

Der Connector modelliert die Daten in Redis als Liste von Tabellen in einer relationalen Datenbank, die mit Standard-SQL-Anweisungen abgefragt werden können.

Redis Connector-Tabellen

Name Beschreibung
Keys Gibt im Redis-Speicher vorhandene Schlüssel zurück.

Schlüssel

Gibt im Redis-Speicher vorhandene Schlüssel zurück.

Mit dieser Tabelle können Sie alle Redis-Schlüssel an einem Ort Abfrage. Sie modelliert die Metadaten der Redis-Schlüssel auf genau dieselbe Weise, wie in Freiformabfrage von Redis-Schlüsseln beschrieben.

Spalten
Name Typ Nur Lesen Beschreibung
RedisKey [KEY] String True Der Name des Redis-Schlüssels.
ValueIndex String True Variiert je nach Typ: 1 für Zeichenfolgen; der einsbasierte Index für Mengen, Listen und sortierte Mengen; oder der zugehörige Feldname für Hashes.
Value String True Der mit dem Redis-Schlüssel verknüpfte Wert.
RedisType String True Der mit dem Redis-Schlüssel verknüpfte Typ.
ValueScore Double True NULL für Zeichenfolgen, Listen, Mengen und Hashes. Gibt den zugehörigen Score für sortierte Mengen zurück.

Gespeicherte Prozeduren

Gespeicherte Prozeduren sind funktionsähnliche Schnittstellen, die die Funktionalität des Connectors über einfache SELECT/INSERT/UPDATE/DELETE-Operationen mit Redis hinaus erweitern.

Gespeicherte Prozeduren akzeptieren eine Liste von Parametern, führen ihre beabsichtigte Funktion aus und geben dann alle relevanten Antwortdaten von Redis zurück, zusammen mit einer Angabe, ob die Prozedur erfolgreich war oder fehlgeschlagen ist.

Gespeicherte Prozeduren des Redis Connectors

Name Beschreibung
CreateSchema Erstellt eine benutzerdefinierte Schema basierend auf den angegebenen Spalten.
RunBatchCommand Führt nacheinander einen Charge von Redis-Befehlen aus und verwendet dabei entweder eine temporäre Tabelle oder eine Charge.
RunCommand Übergibt einen Befehl zur direkten Ausführung an den Redis-Server. Verwenden Sie Standard-redis-cli Syntax.

Schema erstellen

Erstellt eine benutzerdefinierte Schema basierend auf den angegebenen Spalten.

Tabellen manuell definieren

Es ist auch möglich, die Felder und Muster einer Tabelle direkt mithilfe der gespeicherten Prozedur CreateSchema des Connectors zu definieren. Die von CreateSchema generierten Tabellendefinitionen sind reine Textkonfigurationsdateien, die leicht zu erweitern sind.

Um ein Schema zu erstellen, können Sie die Prozedur CreateSchema mit EXECUTE aufrufen. Sie akzeptiert diese fünf Parameter:

  • TableName ist der Name der zu erstellenden Tabelle.
  • KeyPattern enthält ein Schlüsselmuster, wie in rpgusingproperties beschrieben.
  • Columns enthält eine spaltengetrennte Liste von Namen, RedisKey ausgenommen. Diese werden als Attribute aller in die Tabelle eingefügten Hashes verwendet.
  • Description ist optional und enthält eine frei formulierte Notiz zur Tabelle. Wenn es nicht angegeben wird, bleibt es leer.
  • OutputFolder ist optional und enthält den Pfad des Ordners, in den die Schema geschrieben wird. Wenn nicht angegeben, wird Location Verbindungseigenschaft wird verwendet.

Sie können beispielsweise ein grundlegendes Schema mit einer Abfrage wie dieser erstellen:

EXECUTE CreateSchema TableName = 'users', KeyPattern = 'user:*', Columns = 'name,email,password'

Sobald ein Schema definiert wurde, kann es als Tabelle in SELECT-, INSERT-, UPDATE- oder DELETE-Anweisungen verwendet werden. Alle in die Tabelle eingefügten Werte werden als Hashes formatiert. Beispielsweise lautet die Abfrage:

INSERT INTO users (RedisKey, name, email, password) VALUES ('user:1000', 'John Smith', 'john.smith@example.com', 's3cret')

Generiert diesen Redis-Befehl:

hmset user:1000 name "John Smith" email "john.smith@example.com" password "s3cret"
Eingabe
Name Typ Erforderlich Beschreibung
TableName String True Der Name für die neue Tabelle.
KeyPattern String True Das Redis Schlüsselmuster für die Tabelle.
Columns String True Eine durch Kommas getrennte Liste von Spalten, die in die Schema aufgenommen werden sollen.
Description String Falsch Eine optionale Beschreibung für die Tabelle.
WriteToFile String Falsch Ob der Inhalt dieser gespeicherten Prozedur in eine Datei geschrieben werden soll oder nicht (Standard = True), muss auf „Falsch“ gesetzt werden, um den FileStream von FileData auszugeben
Ergebnissatzspalten
Name Typ Beschreibung
Success String Ob das Schema erfolgreich erstellt wurde oder nicht.
SchemaFile String Die generierte Schema.
FileData String Dateidaten, die Base64 codiert ausgegeben werden, wenn die Eingänge WriteToFile=False und FileStream nicht festgelegt sind.

RunBatchCommand

Führt nacheinander einen Charge von Redis-Befehlen aus, wobei entweder eine temporäre Tabelle oder eine Charge verwendet wird.

Batch-Befehle sind viel effizienter, da der Connector keine einzelnen Befehle senden und auf deren Ausführung warten muss. Stattdessen sendet der Connector mehrere Befehle und wartet als Gruppe auf sie.

Methode 1: Batchdatei

Erstellen Sie ein Textdokument und füllen Sie es mit einem Redis-Befehl pro Zeile ohne Trennzeichen. Leere Zeilen werden übersprungen.

Zum Beispiel:

set key1 value1
set key2 value2
set key3 value3

Rufen Sie dann die Prozedur mit dem Pfad zur Datei auf, der in der CommandFile-Eingabe angegeben ist.

EXECUTE RunBatchCommand CommandFile = "C:\Users\username\Public Documents\batchfile.txt"
TEMP-Tabellen

Füllen Sie eine temporäre Tabelle mit Redis-Befehlen.

INSERT INTO Commands#TEMP (CommandLine) VALUES ("rpush mylist value1")
INSERT INTO Commands#TEMP (CommandLine) VALUES ("rpush mylist value2")
INSERT INTO Commands#TEMP (CommandLine) VALUES ("rpush mylist value3")

Rufen Sie dann die Prozedur mit dem Namen der temporären Tabelle auf, der im CommandTable-Eingang angegeben ist.

EXECUTE RunBatchCommand CommandTable = "Commands#TEMP"
Eingabe
Name Typ Erforderlich Beschreibung
CommandTable String Falsch Gibt eine temporäre Tabelle an, die zum Generieren eines Charge von Redis Befehlen zur direkten Ausführung auf dem Redis-Server verwendet werden soll.
CommandFile String Falsch Der Pfad zu einer Datei, die eine Charge von Redis Befehlen enthält. Diese Befehle werden nacheinander und direkt auf dem Redis-Server ausgeführt.
KeyType String Falsch Das Format für die Redis-Serverausgabe. „AUTO“ gibt die Schlüssel im Listenformat zurück (verschachtelte Listen ergeben jeweils ein zusammengesetztes Ergebnis). „HASH“ gibt die Schlüssel als Hash zurück (jede Gruppe ist eine Zeile, jede Eigenschaft erhält ihre eigene Spalte). Die zulässigen Werte sind AUTO, HASH. Der Standardwert ist AUTO.
Ergebnissatzspalten
Name Typ Beschreibung
\* String Die Ausgabe variiert je nach Sammlung.

Ausführen-Befehl

Übergibt einen Befehl zur direkten Ausführung an den Redis-Server. Verwenden Sie Standard-redis-cli Syntax.

Redis-Befehle direkt ausführen

Mit diesem Verfahren können Sie einen Befehl direkt ausführen, der bei den üblichen CRUD-Operationen für Tabellen nicht verfügbar ist. Beispielsweise der FLUSHDB Befehl entfernt alle Schlüssel aus der aktuellen Datenbank:

EXECUTE RunCommand @CommandLine = 'FLUSHDB'

Sie können auch Befehle ausführen, die Parameter erfordern, indem Sie sie durch Leerzeichen trennen, genau wie in redis-cli. Doppelte Anführungszeichen sind auch verfügbar, wenn Sie Leerzeichen in einen Parameterwert einbetten müssen:

EXECUTE RunCommand @CommandLine = 'INFO "CPU"'

Der Connector verarbeitet die Ergebnisse des Befehls und gibt sie im entsprechenden Format zurück. Für Fälle wie FLUSHDB oder INFO Wenn das Ergebnis ein einfacher Wert oder ein flaches Array ist, wird jedes Element als separate Zeile zurückgegeben.

'# CPU'
'used_cpu_sys:1272.08'
'used_cpu_user:537.84'
'used_cpu_sys_children:4.81'
'used_cpu_user_children:98.89'

Komplexere Ergebnisse, wie die von zurückgegebenen Werte COMMAND-Befehl, wird zeilenweise getrennt und dann für die endgültige Ausgabe in JSON konvertiert.

'["slowlog","-2",[["admin"]],"0","0","0"]'
'["persist","2",[["write","fast"]],"1","1","1"]'
'["zrevrangebylex","-4",[["readonly"]],"1","1","1"]'
'["sinter","-2",[["readonly","sort_for_script"]],"1","-1","1"]'
'["lrange","4",[["readonly"]],"1","1","1"]'
'["hmset","-4",[["write","denyoom","fast"]],"1","1","1"]'
'["lpush","-3",[["write","denyoom","fast"]],"1","1","1"]'
'["zremrangebyscore","4",[["write"]],"1","1","1"]'
'["FT.DICTDEL","-1",[["readonly"]],"1","1","1"]'
...
Eingabe
Name Typ Erforderlich Beschreibung
CommandLine String Falsch Der Befehl, der zur Ausführung direkt an den Redis-Server übergeben werden soll.
KeyType String Falsch Das Format für die Redis-Serverausgabe. „AUTO“ gibt die Schlüssel im Listenformat zurück (verschachtelte Listen ergeben jeweils ein zusammengesetztes Ergebnis). „HASH“ gibt die Schlüssel als Hash zurück (jede Gruppe ist eine Zeile, jede Eigenschaft erhält ihre eigene Spalte). Die zulässigen Werte sind AUTO, HASH. Der Standardwert ist AUTO.
Ergebnissatzspalten
Name Typ Beschreibung
\* String Die Ausgabe variiert je nach Sammlung.

Systemtabellen

Sie können die in diesem Abschnitt beschriebenen Systemtabellen Abfrage, um auf Schema, Informationen zur Datenquellenfunktionalität und Statistiken zu Operation Charge.

Schematabellen

Die folgenden Tabellen geben Datenbankmetadaten für Redis zurück:

Datenquellentabellen

Die folgenden Tabellen enthalten Informationen dazu, wie eine Verbindung zur Datenquelle hergestellt und diese Abfrage wird:

  • sys_connection_props: Gibt Informationen zu den verfügbaren Verbindungseigenschaften zurück.
  • sys_sqlinfo: Beschreibt die SELECT-Abfragen, die der Connector an die Datenquelle auslagern kann.

Abfrageinformationstabellen

Die folgende Tabelle gibt Abfrage für Datenänderungsabfragen zurück, einschließlich Charge:

  • Systemidentität: Gibt Informationen zu Charge oder einzelnen Updates zurück.

sys_catalogs

Listet die verfügbaren Datenbanken auf.

Die folgende Abfrage ruft alle durch die Verbindungszeichenfolge ermittelten Datenbanken ab:

SELECT * FROM sys_catalogs
Spalten
Name Typ Beschreibung
CatalogName String Der Datenbankname.

sys_schemas

Listet die verfügbaren Schemas auf.

Die folgende Abfrage ruft alle verfügbaren Schemas ab:

SELECT * FROM sys_schemas
Spalten
Name Typ Beschreibung
CatalogName String Der Datenbankname.
SchemaName String Der Schema.

sys_tables

Listet die verfügbaren Tabellen auf.

Die folgende Abfrage ruft die verfügbaren Tabellen und Ansichten ab:

SELECT * FROM sys_tables
Spalten
Name Typ Beschreibung
CatalogName String Die Datenbank, die die Tabelle oder Ansicht enthält.
SchemaName String Das Schema, das die Tabelle oder Ansicht enthält.
TableName String Der Name der Tabelle oder Ansicht.
TableType String Der Tabellentyp (Tabelle oder Ansicht).
Description String Eine Beschreibung der Tabelle oder Ansicht.
IsUpdateable Boolean Ob die Tabelle aktualisiert werden kann.

sys_tablecolumns

Beschreibt die Spalten der verfügbaren Tabellen und Ansichten.

Die folgende Abfrage gibt die Spalten und Datentypen für die Tabelle „Kunden“ zurück:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Customers'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die die Tabelle oder Ansicht enthält.
SchemaName String Das Schema, das die Tabelle oder Ansicht enthält.
TableName String Der Name der Tabelle oder Ansicht, die die Spalte enthält.
ColumnName String Der Spaltenname.
DataTypeName String Der Name des Datentyps.
DataType Int32 Eine Ganzzahl, die den Datentyp angibt. Dieser Wert wird zur Laufzeit basierend auf der Umfeld bestimmt.
Length Int32 Die Speichergröße der Spalte.
DisplaySize Int32 Die normale Maximalbreite der angegebenen Spalte in Zeichen.
NumericPrecision Int32 Die maximale Anzahl von Ziffern in numerischen Daten. Die Spaltenlänge in Zeichen für Zeichen- und Datums-/Uhrzeitdaten.
NumericScale Int32 Die Spaltenskala oder Anzahl der Ziffern rechts vom Dezimalpunkt.
IsNullable Boolean Ob die Spalte Null enthalten kann.
Description String Eine kurze Beschreibung der Spalte.
Ordinal Int32 Die Sequenznummer der Spalte.
IsAutoIncrement String Ob der Spaltenwert in festen Schritten zugewiesen wird.
IsGeneratedColumn String Ob die Spalte generiert wird.
IsHidden Boolean Ob die Spalte ausgeblendet ist.
IsArray Boolean Ob die Spalte ein Array ist.
IsReadOnly Boolean Ob die Spalte schreibgeschützt ist.
IsKey Boolean Gibt an, ob ein von sys_tablecolumns zurückgegebenes Feld der Primärschlüssel der Tabelle ist.

sys_procedures

Listet die verfügbaren gespeicherten Prozeduren auf.

Die folgende Abfrage ruft die verfügbaren gespeicherten Prozeduren ab:

SELECT * FROM sys_procedures
Spalten
Name Typ Beschreibung
CatalogName String Die Datenbank, die die gespeicherte Prozedur enthält.
SchemaName String Das Schema, das die gespeicherte Prozedur enthält.
ProcedureName String Der Name der gespeicherten Prozedur.
Description String Eine Beschreibung der gespeicherten Prozedur.
ProcedureType String Der Typ der Prozedur, z. B. PROZEDUR oder FUNKTION.

sys_procedureparameters

Beschreibt Parameter gespeicherter Prozeduren.

Die folgende Abfrage gibt Informationen zu allen Eingabeparametern für die gespeicherte Prozedur SelectEntries zurück:

SELECT * FROM sys_procedureparameters WHERE ProcedureName='SelectEntries' AND Direction=1 OR Direction=2
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die die gespeicherte Prozedur enthält.
SchemaName String Der Name des Schema, das die gespeicherte Prozedur enthält.
ProcedureName String Der Name der gespeicherten Prozedur, die den Parameter enthält.
ColumnName String Der Name des gespeicherten Prozedurparameters.
Direction Int32 Eine Ganzzahl, die dem Typ des Parameters entspricht: Eingabe (1), Eingabe/Ausgabe (2) oder Ausgabe (4). Parameter vom Typ Eingabe/Ausgabe können sowohl Eingabe- als auch Ausgabeparameter sein.
DataTypeName String Der Name des Datentyps.
DataType Int32 Eine Ganzzahl, die den Datentyp angibt. Dieser Wert wird zur Laufzeit basierend auf der Umfeld bestimmt.
Length Int32 Die Anzahl der für Zeichendaten zulässigen Zeichen. Die Anzahl der für numerische Daten zulässigen Ziffern.
NumericPrecision Int32 Die maximale Genauigkeit für numerische Daten. Die Spaltenlänge in Zeichen für Zeichen- und Datums-/Uhrzeitdaten.
NumericScale Int32 Die Anzahl der Ziffern rechts vom Dezimalkomma in numerischen Daten.
IsNullable Boolean Ob der Parameter Null enthalten kann.
IsRequired Boolean Ob der Parameter zur Ausführung der Prozedur erforderlich ist.
IsArray Boolean Ob der Parameter ein Array ist.
Description String Die Beschreibung des Parameters.
Ordinal Int32 Der Index des Parameters.

sys_keycolumns

Beschreibt die Primär- und Fremdschlüssel.

Die folgende Abfrage ruft den Primärschlüssel für die Tabelle „Kunden“ ab:

SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Customers'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Schlüssel enthält.
SchemaName String Der Name des Schema, das den Schlüssel enthält.
TableName String Der Name der Tabelle, die den Schlüssel enthält.
ColumnName String Der Name der Schlüsselspalte.
IsKey Boolean Ob die Spalte ein Primärschlüssel in der Tabelle ist, auf die im Feld „TableName“ verwiesen wird.
IsForeignKey Boolean Ob die Spalte ein Fremdschlüssel ist, auf den im Feld TableName verwiesen wird.
PrimaryKeyName String Der Name des Primärschlüssels.
ForeignKeyName String Der Name des Fremdschlüssels.
ReferencedCatalogName String Die Datenbank, die den Primärschlüssel enthält.
ReferencedSchemaName String Das Schema, das den Primärschlüssel enthält.
ReferencedTableName String Die Tabelle, die den Primärschlüssel enthält.
ReferencedColumnName String Der Spaltenname des Primärschlüssels.

sys_foreignkeys

Beschreibt die Fremdschlüssel.

Die folgende Abfrage ruft alle Fremdschlüssel ab, die auf andere Tabellen verweisen:

SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Schlüssel enthält.
SchemaName String Der Name des Schema, das den Schlüssel enthält.
TableName String Der Name der Tabelle, die den Schlüssel enthält.
ColumnName String Der Name der Schlüsselspalte.
PrimaryKeyName String Der Name des Primärschlüssels.
ForeignKeyName String Der Name des Fremdschlüssels.
ReferencedCatalogName String Die Datenbank, die den Primärschlüssel enthält.
ReferencedSchemaName String Das Schema, das den Primärschlüssel enthält.
ReferencedTableName String Die Tabelle, die den Primärschlüssel enthält.
ReferencedColumnName String Der Spaltenname des Primärschlüssels.
ForeignKeyType String Gibt an, ob der Fremdschlüssel ein Importschlüssel (zeigt auf andere Tabellen) oder ein Exportschlüssel (referenziert von anderen Tabellen) ist.

sys_primarykeys

Beschreibt die Primärschlüssel.

Die folgende Abfrage ruft die Primärschlüssel aus allen Tabellen und Ansichten ab:

SELECT * FROM sys_primarykeys
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Schlüssel enthält.
SchemaName String Der Name des Schema, das den Schlüssel enthält.
TableName String Der Name der Tabelle, die den Schlüssel enthält.
ColumnName String Der Name der Schlüsselspalte.
KeySeq String Die Sequenznummer des Primärschlüssels.
KeyName String Der Name des Primärschlüssels.

sys_indexes

Beschreibt die verfügbaren Indizes. Durch das Filtern nach Indizes können Sie selektivere Abfragen mit schnelleren Abfrage schreiben.

Die folgende Abfrage ruft alle Indizes ab, die keine Primärschlüssel sind:

SELECT * FROM sys_indexes WHERE IsPrimary='false'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Index enthält.
SchemaName String Der Name des Schema, das den Index enthält.
TableName String Der Name der Tabelle, die den Index enthält.
IndexName String Der Indexname.
ColumnName String Der Name der mit dem Index verknüpften Spalte.
IsUnique Boolean Wahr, wenn der Index eindeutig ist. Andernfalls falsch.
IsPrimary Boolean Wahr, wenn der Index ein Primärschlüssel ist. Andernfalls falsch.
Type Int16 Ein ganzzahliger Wert, der dem Indextyp entspricht: Statistik (0), gruppiert (1), gehasht (2) oder Sonstiges (3).
SortOrder String Die Sortierreihenfolge: A für aufsteigend oder D für absteigend.
OrdinalPosition Int16 Die Sequenznummer der Spalte im Index.

sys_connection_props

Gibt Informationen zu den verfügbaren Verbindungseigenschaften und den in der Verbindungszeichenfolge festgelegten Eigenschaften zurück.

Bei der Abfrage dieser Tabelle sollte die Konfigurationsverbindungszeichenfolge verwendet werden:

jdbc:cdata:redis:config:

Mit dieser Verbindungszeichenfolge können Sie diese Tabelle ohne eine gültige Verbindung Abfrage.

Die folgende Abfrage ruft alle Verbindungseigenschaften ab, die in der Verbindungszeichenfolge festgelegt oder über einen Standardwert gesetzt wurden:

SELECT * FROM sys_connection_props WHERE Value <> ''
Spalten
Name Typ Beschreibung
Name String Der Name der Verbindungseigenschaft.
ShortDescription String Eine kurze Beschreibung.
Type String Der Datentyp der Verbindungseigenschaft.
Default String Der Standardwert, sofern nicht explizit einer festgelegt wurde.
Values String Eine durch Kommas getrennte Liste möglicher Werte. Wenn ein anderer Wert angegeben wird, wird ein Validierungsfehler ausgegeben.
Value String Der von Ihnen festgelegte Wert oder ein vorkonfigurierter Standard.
Required Boolean Ob für die Immobilie eine Anschlusspflicht besteht.
Category String Die Kategorie der Verbindungseigenschaft.
IsSessionProperty String Ob die Eigenschaft eine Sitzungseigenschaft ist, die zum Speichern von Informationen zur aktuellen Verbindung verwendet wird.
Sensitivity String Die Vertraulichkeitsstufe der Eigenschaft. Diese gibt Aufschluss darüber, ob die Eigenschaft in Protokollierungs- und Authentifizierungsformularen verschleiert wird.
PropertyName String Eine verkürzte Form des Verbindungseigenschaftsnamens in Camel-Case-Schreibweise.
Ordinal Int32 Der Index des Parameters.
CatOrdinal Int32 Der Index der Parameterkategorie.
Hierarchy String Zeigt zugehörige abhängige Eigenschaften an, die zusammen mit dieser festgelegt werden müssen.
Visible Boolean Informiert, ob die Eigenschaft in der Verbindungs-Benutzeroberfläche sichtbar ist.
ETC String Verschiedene sonstige Informationen zum Objekt.

sys_sqlinfo

Beschreibt die SELECT- Abfrage, die der Connector an die Datenquelle auslagern kann.

Entdecken der SELECT-Funktionen der Datenquelle

Unten sehen Sie einen Beispieldatensatz mit SQL-Funktionen. Einige Aspekte der SELECT-Funktionalität werden in einer durch Kommas getrennten Liste zurückgegeben, sofern sie unterstützt werden. Andernfalls enthält die Spalte NO.

Name Beschreibung Mögliche Werte
AGGREGATE_FUNCTIONS Unterstützte Aggregatfunktionen. AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNT Ob die COUNT-Funktion unterstützt wird. YES, NO
IDENTIFIER_QUOTE_OPEN_CHAR Das öffnende Zeichen, das zum Escapen eines Bezeichners verwendet wird. [
IDENTIFIER_QUOTE_CLOSE_CHAR Das abschließende Zeichen, das zum Escapen eines Bezeichners verwendet wird. ]
SUPPORTED_OPERATORS Eine Liste unterstützter SQL-Operatoren. =, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BY Ob GROUP BY unterstützt wird und wenn ja, in welchem Umfang. NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
STRING_FUNCTIONS Unterstützte String-Funktionen. LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONS Unterstützte numerische Funktionen. ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONS Unterstützte Datums-/Uhrzeitfunktionen. NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLES Zeigt an, dass während der Replikation Tabellen übersprungen wurden.
REPLICATION_TIMECHECK_COLUMNS Ein Zeichenfolgenarray mit einer Liste von Spalten, die (in der angegebenen Reihenfolge) zur Überprüfung verwendet werden, ob sie während der Replikation als geänderte Spalte verwendet werden sollen.
IDENTIFIER_PATTERN Zeichenfolgenwert, der angibt, welche Zeichenfolge für einen Bezeichner gültig ist.
SUPPORT_TRANSACTION Gibt an, ob der Anbieter Transaktionen wie Commit und Rollback unterstützt. YES, NO
DIALECT Gibt den zu verwendenden SQL-Dialekt an.
KEY_PROPERTIES Gibt die Eigenschaften an, die die einheitliche Datenbank identifizieren.
SUPPORTS_MULTIPLE_SCHEMAS Gibt an, ob für den Anbieter mehrere Schemas vorhanden sein können. YES, NO
SUPPORTS_MULTIPLE_CATALOGS Gibt an, ob für den Anbieter mehrere Kataloge vorhanden sein können. YES, NO
DATASYNCVERSION Die für den Zugriff auf diesen Treiber erforderliche Data Sync-Version. Standard, Starter, Professional, Enterprise
DATASYNCCATEGORY Die Kategorie „Datensynchronisierung“ dieses Treiber. Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQL Ob erweiterte SQL-Funktionen über das hinaus, was die API bietet, unterstützt werden. TRUE, FALSE
SUPPORTS_BATCH_OPERATIONS Ob Charge Operationen unterstützt werden. YES, NO
SQL_CAP Alle unterstützten SQL-Funktionen für diesen Treiber. SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONS Ein Zeichenfolgenwert gibt die bevorzugten Cacheoptionen an.
ENABLE_EF_ADVANCED_QUERY Gibt an, ob der Treiber erweiterte Abfragen aus dem Entity Framework direkt unterstützt. Wenn nicht, werden die Abfragen clientseitig verarbeitet. YES, NO
PSEUDO_COLUMNS Ein Zeichenfolgenarray, das die verfügbaren Pseudospalten angibt.
MERGE_ALWAYS Wenn der Wert „true“ ist, wird der Merge-Modus in der Datensynchronisierung zwangsweise ausgeführt. TRUE, FALSE
REPLICATION_MIN_DATE_QUERY Eine Abfrage zum Zurückgeben des Startdatums und der Startzeit der Replikation.
REPLICATION_MIN_FUNCTION Ermöglicht einem Anbieter, den Formelnamen anzugeben, der zum Ausführen eines serverseitigen Minimums verwendet werden soll.
REPLICATION_START_DATE Ermöglicht einem Anbieter, ein Replikationsstartdatum anzugeben.
REPLICATION_MAX_DATE_QUERY Eine Abfrage zum Zurückgeben des Enddatums und der Endzeit der Replikation.
REPLICATION_MAX_FUNCTION Ermöglicht einem Anbieter, den Formelnamen anzugeben, der zur Ausführung eines serverseitigen Max. verwendet werden soll.
IGNORE_INTERVALS_ON_INITIAL_REPLICATE Eine Liste von Tabellen, bei denen das Aufteilen der Replikation in Blöcke bei der ersten Replikation übersprungen wird.
CHECKCACHE_USE_PARENTID Gibt an, ob die CheckCache-Anweisung für die übergeordnete Schlüsselspalte ausgeführt werden soll. TRUE, FALSE
CREATE_SCHEMA_PROCEDURES Gibt gespeicherte Prozeduren an, die zum Generieren von Schema verwendet werden können.

Die folgende Abfrage ruft die Operatoren ab, die in der WHERE-Klausel verwendet werden können:

SELECT * FROM sys_sqlinfo WHERE Name = 'SUPPORTED_OPERATORS'

Beachten Sie, dass einzelne Tabellen unterschiedliche Einschränkungen oder Anforderungen an die WHERE-Klausel haben können; siehe Datenmodell Abschnitt für weitere Informationen.

Spalten
Name Typ Beschreibung
NAME String Eine Komponente der SQL-Syntax oder eine Funktion, die auf dem Server verarbeitet werden kann.
VALUE String Details zum unterstützten SQL bzw. zur SQL-Syntax.

sys_identity

Gibt Informationen zu versuchten Änderungen zurück.

Die folgende Abfrage ruft die IDs der geänderten Zeilen in einer Operation Charge:

SELECT * FROM sys_identity
Spalten
Name Typ Beschreibung
Id String Die von einer Operation zurückgegebene, von der Datenbank generierte ID.
Batch String Eine Kennung für den Charge. 1 für einen einzelnen Operation.
Operation String Das Ergebnis der Operation im Charge: EINGEFÜGT, AKTUALISIERT oder GELÖSCHT.
Message String SUCCESS oder eine Fehlermeldung, wenn das Update im Charge fehlgeschlagen ist.

sys_information

Beschreibt die verfügbaren Systeminformationen.

Die folgende Abfrage ruft alle Spalten ab:

SELECT * FROM sys_information
Spalten
Name Typ Beschreibung
Product String Der Name des Produkts.
Version String Die Versionsnummer des Produkts.
Datasource String Der Name der Datenquelle, mit der das Produkt eine Verbindung herstellt.
NodeId String Die eindeutige Kennung der Maschine, auf der das Produkt installiert ist.
HelpURL String Die URL zur Hilfedokumentation des Produkts.
License String Die Lizenzinformationen für das Produkt. (Wenn diese Informationen nicht verfügbar sind, kann das Feld leer gelassen oder als „N/A“ markiert werden.)
Location String Der Dateipfad, in dem die Produktbibliothek gespeichert ist.
Environment String Die Version der Umfeld oder Rumtine, unter der das Produkt derzeit ausgeführt wird.
DataSyncVersion String Die zur Verwendung dieses Connectors erforderliche Synchronisierungsebene.
DataSyncCategory String Die Kategorie der Synchronisierungsfunktionalität (z. B. Quelle, Ziel).

Erweiterte Konfigurationseigenschaften

Die erweiterten Konfigurationseigenschaften sind die verschiedenen Optionen, die zum Herstellen einer Verbindung verwendet werden können. Dieser Abschnitt enthält eine vollständige Liste der Optionen, die Sie konfigurieren können. Klicken Sie auf die Links, um weitere Einzelheiten zu erfahren.

Authentifizierung

Eigenschaft Beschreibung
AuthScheme Der Authentifizierungsmechanismus, den der Anbieter zur Authentifizierung bei Redis verwendet.
Server Der Host oder die IP-Adresse des Servers, auf dem die Redis Instanz gehostet wird.
Port Der Port für die Redis-Datenbank.
LogicalDatabase Der Index der logischen Redis-Datenbank.
User Der für die Authentifizierung mit Redis ACL bereitgestellte Benutzername.
Password Das zur Authentifizierung bei Redis verwendete Passwort.
EnableCluster Dieses Feld legt fest, ob der Redis-Clustermodus aktiviert ist.
UseSSL Dieses Feld legt fest, ob SSL aktiviert ist.
ReplicaSet Mit dieser Eigenschaft können Sie zusätzlich zu dem unter „Server“ und „Port“ konfigurierten Server mehrere weitere Server angeben. Geben Sie sowohl einen Servernamen als auch einen Port an; trennen Sie die Server durch Kommas.

Verbindung

Eigenschaft Beschreibung
DefineTables Definieren Sie die vom Anbieter bereitgestellten Tabellen mithilfe von Tabellennamen und Redis-Schlüsselmustern.
PatternSeparator Definieren Sie das Trennzeichen des Tabellenmusters.
ReaderEndpoints Die Slave-Hosts und das Port Array, das die Slave-Instanzen des Redis Master/Slave-Clusters angibt, werden durch ein Komma getrennt.
TablePattern Definieren Sie die vom Anbieter bereitgestellten Tabellen mithilfe von Redis-Schlüsselmustern.

SSL

Eigenschaft Beschreibung
SSLClientCert Der TLS/SSL-Client-Zertifikatspeicher für die SSL-Client-Authentifizierung (bidirektionales SSL).
SSLClientCertType Der Typ des Schlüsselspeichers, der das TLS/SSL-Client-Zertifikat enthält.
SSLClientCertPassword Das Passwort für das TLS/SSL-Client-Zertifikat.
SSLClientCertSubject Der Betreff des TLS/SSL-Client-Zertifikats.
SSLStartMode Diese Eigenschaft legt fest, wie der Anbieter die SSL-Aushandlung startet.
SSLServerCert Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL.

SSH

Eigenschaft Beschreibung
SSHAuthMode Die beim Aufbau eines SSH-Tunnels zum Dienst verwendete Authentifizierungsmethode.
SSHClientCert Ein Zertifikat, das zur Authentifizierung des SSH-Benutzers verwendet werden soll.
SSHClientCertPassword Das Passwort des SSHClientCert-Schlüssels, falls vorhanden.
SSHClientCertSubject Der Betreff des SSH-Client-Zertifikats.
SSHClientCertType Der Typ des privaten SSHClientCert-Schlüssels.
SSHServer Der SSH-Server.
SSHPort Der SSH- Port.
SSHUser Der SSH-Benutzer.
SSHPassword Das SSH-Passwort.
SSHServerFingerprint Der Fingerabdruck des SSH-Servers.
UseSSH Ob die Redis-Verbindung über SSH getunnelt werden soll. Verwenden Sie SSH.

Schema

Eigenschaft Beschreibung
Location Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.
BrowsableSchemas Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA, TabelleB, TabelleC.
Views Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA, AnsichtB, AnsichtC.

Verschiedenes

Eigenschaft Beschreibung
IgnoreTypeErrors Entfernt die Unterstützung für die angegebenen Datentypen und ignoriert Casting-Ausnahmen für diese Typen.
MaxRows Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.
Other Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
ParallelMode Diese Option legt fest, ob der Anbieter beim Herstellen einer Verbindung mit Redis mehrere Verbindungen verwenden soll.
PseudoColumns Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
QueryTimeout Das Timeout in Sekunden, das der Anbieter auf die Abfrage wartet. Der Standardwert ist -1, was bedeutet, dass beim Anbieter nie ein Timeout auftreten sollte.
RowScanDepth Die maximale Anzahl der zu scannenden Zeilen, um nach den in einer Tabelle verfügbaren Spalten zu suchen.
TableScanDepth Die maximale Anzahl zu scannender Schlüssel beim Suchen nach verfügbaren Tabellen in Ihrer Redis-Datenbank.
Timeout Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.
UserDefinedViews Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.

Authentifizierung

Dieser Abschnitt enthält eine vollständige Liste der Authentifizierungseigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
AuthScheme Der Authentifizierungsmechanismus, den der Anbieter zur Authentifizierung bei Redis verwendet.
Server Der Host oder die IP-Adresse des Servers, auf dem die Redis Instanz gehostet wird.
Port Der Port für die Redis-Datenbank.
LogicalDatabase Der Index der logischen Redis-Datenbank.
User Der für die Authentifizierung mit Redis ACL bereitgestellte Benutzername.
Password Das zur Authentifizierung bei Redis verwendete Passwort.
EnableCluster Dieses Feld legt fest, ob der Redis-Clustermodus aktiviert ist.
UseSSL Dieses Feld legt fest, ob SSL aktiviert ist.
ReplicaSet Mit dieser Eigenschaft können Sie zusätzlich zu dem unter „Server“ und „Port“ konfigurierten Server mehrere weitere Server angeben. Geben Sie sowohl einen Servernamen als auch einen Port an; trennen Sie die Server durch Kommas.

AuthScheme

Der Authentifizierungsmechanismus, den der Anbieter zur Authentifizierung bei Redis verwendet.

Mögliche Werte

Password, ACL, None

Datentyp

string

Standardwert

Password

Bemerkungen

Wählen Sie eine der folgenden Optionen:

  • None: Gibt an, dass die Redis-Instanz nicht passwortgeschützt ist (mit dem requirepass Direktive in der Konfigurationsdatei).
  • Password: Der Connector versucht, mit dem Redis-Befehl AUTH unter Verwendung von Passwort eine Verbindung herzustellen.
  • ACL: Der Connector authentifiziert sich mithilfe von ACL-Anmeldeinformationen.

Server

Der Host oder die IP-Adresse des Servers, auf dem die Redis-Instanz gehostet wird.

Datentyp

string

Standardwert

""

Bemerkungen

Der Host oder die IP-Adresse des Servers, auf dem die Redis-Instanz gehostet wird.

Port

Der Port für die Redis-Datenbank.

Datentyp

string

Standardwert

6379

Bemerkungen

Der Port für die Redis-Datenbank.

Logische Datenbank

Der Index der logischen Redis Datenbank.

Datentyp

string

Standardwert

0

Bemerkungen

Der Index der logischen Redis-Datenbank. Der Standardwert ist 0.

Benutzer

Der für die Authentifizierung mit Redis ACL bereitgestellte Benutzername.

Datentyp

string

Standardwert

""

Bemerkungen

Der für die Authentifizierung mit Redis ACL bereitgestellte Benutzername.

Passwort

Das zur Authentifizierung bei Redis verwendete Kennwort.

Datentyp

string

Standardwert

""

Bemerkungen

Das zur Authentifizierung bei Redis verwendete Kennwort.

Cluster aktivieren

Dieses Feld legt fest, ob der Redis Clustermodus aktiviert ist.

Datentyp

bool

Standardwert

false

Bemerkungen

Dieses Feld legt fest, ob der Redis Clustermodus aktiviert ist.

UseSSL

Dieses Feld legt fest, ob SSL aktiviert ist.

Datentyp

bool

Standardwert

false

Bemerkungen

Dieses Feld legt fest, ob der Connector versucht, TLS/SSL-Verbindungen zum Server herzustellen. Standardmäßig prüft der Connector das Zertifikat des Servers anhand des vertrauenswürdigen Zertifikatspeichers des Systems. Um ein anderes Zertifikat anzugeben, legen Sie SSLServerCert fest.

ReplicaSet

Mit dieser Eigenschaft können Sie zusätzlich zu dem unter „Server“ und „Port“ konfigurierten Server mehrere weitere Server angeben. Geben Sie sowohl einen Servernamen als auch einen Port an. Trennen Sie die Server durch Kommas.

Datentyp

string

Standardwert

""

Bemerkungen

Diese Eigenschaft funktioniert nur, wenn EnableCluster ist True. Mit dieser Eigenschaft können Sie zusätzlich zu dem in Server konfigurierten Server die anderen Server im Replikatsatz angeben und Port. Sie müssen alle Server im Replikatsatz mit angeben ReplicaSet, Server und Port.

Geben Sie in sowohl einen Servernamen als auch einen Port an ReplicaSet; Server durch Komma trennen. Beispiel:

Server=localhost;Port=6379;ReplicaSet=localhost:6380,localhost:6381;

Um den primären Server zu finden, fragt der Connector die Server in ab ReplicaSet und der durch Server angegebene Server und Port.

Verbindung

Dieser Abschnitt enthält eine vollständige Liste der Verbindungseigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
DefineTables Definieren Sie die vom Anbieter bereitgestellten Tabellen mithilfe von Tabellennamen und Redis-Schlüsselmustern.
PatternSeparator Definieren Sie das Trennzeichen des Tabellenmusters.
ReaderEndpoints Die Slave-Hosts und das Port Array, das die Slave-Instanzen des Redis Master/Slave-Clusters angibt, werden durch ein Komma getrennt.
TablePattern Definieren Sie die vom Anbieter bereitgestellten Tabellen mithilfe von Redis-Schlüsselmustern.

Tabellen definieren

Definieren Sie die vom Anbieter bereitgestellten Tabellen mithilfe von Tabellennamen und Redis-Schlüsselmustern.

Datentyp

string

Standardwert

""

Bemerkungen

Diese Eigenschaft wird verwendet, um das Schlüsselmuster in Redis zu definieren, das als Tabellen angezeigt wird. Der Wert ist eine durch Kommas getrennte Liste von Name-Wert-Paaren in der Form [Tabellenname]=[Redis-Schlüsselmuster]. Tabellenname ist der Name der Tabelle, die Sie für die Daten verwenden möchten und der beim Ausgeben von Abfragen verwendet wird. Das Redis-Schlüsselmuster ist das Muster, das zum Gruppieren und Pivotieren entsprechender Schlüssel in die benannte Tabelle verwendet werden soll.

Zum Beispiel:

DefineTables="DefinedTable1=table1:*,DefinedTable2=table2:*"

Bei diesem Wert werden alle Schlüssel, die mit „table1:“ beginnen, in gefunden DefinedTable1, während alle Schlüssel, die mit „table2:“ beginnen, in gefunden werden DefinedTable2.

Wenn es einen Konflikt zwischen den mit dieser Eigenschaft definierten Tabellen und den durch TablePattern definierten Tabellen gibt,, haben diese statisch definierten Tabellen Vorrang.

PatternSeparator

Definieren Sie das Trennzeichen des Tabellenmusters.

Datentyp

string

Standardwert

:

Bemerkungen

Diese Eigenschaft wird zusammen mit TablePattern verwendet, um das Trennzeichen für das Muster zu definieren, das bestimmt, wo die aus dem Schlüsselmuster abgeleiteten Tabellennamen enden.

Dies ist insbesondere dann nützlich, wenn Ihr TablePattern mehr als ein Trennzeichen enthält.

Wenn beispielsweise TablePattern ist eingestellt auf *@*:* und es gibt einen Schlüssel mit dem Namen „first@second:1“, dann erzeugt ein Mustertrennzeichen „@“ den Tabellennamen „first“ und ein Mustertrennzeichen „:“ erzeugt den Tabellennamen „first@second“.

Beachten Sie, dass das Verhalten des Mustertrennzeichens gierig ist, was bedeutet, dass die letzte Instanz des Trennzeichens verwendet wird, um das Ende des Tabellennamens anzugeben.

Wenn beispielsweise ein Schlüssel mit dem Namen „Erster:Zweiter:1“ vorhanden ist, erzeugt ein Mustertrennzeichen „:“ den Tabellennamen „Erster:Zweiter“.

ReaderEndpoints

Die Slave-Hosts und das Port Array, das die Slave-Instanzen des Redis Master/Slave-Clusters angibt, werden durch ein Komma getrennt.

Datentyp

string

Standardwert

""

Bemerkungen

Die Slave-Hosts und das Port Array geben die Slave-Instanzen des Redis Master/Slave-Clusters an. Beispiel: „ReaderEndpoints=app:6381,app:6382;“

Tabellenmuster

Definieren Sie die vom Anbieter bereitgestellten Tabellen mithilfe von Redis-Schlüsselmustern.

Datentyp

string

Standardwert

*:*

Bemerkungen

Diese Eigenschaft wird verwendet, um die Schlüsselmuster in Redis zu definieren, die als Tabellen angezeigt werden. Der Wert ist ein Redis-Schlüsselmuster. Das Redis-Schlüsselmuster ist ein Zeichenfolgenmuster, das ein Trennzeichen enthält, um eine hierarchische Struktur für die im Redis-Datenspeicher gespeicherten Schlüsselwerte zu bestimmen. Alle anderen Zeichenfolgenmuster im Wert begrenzen, welche Schlüssel pivotiert und als Tabellen zurückgegeben werden.

Zum Beispiel, TablePattern="*:*" bewirkt, dass das Zeichen ":" als Trennzeichen verwendet wird. Bei den folgenden Schlüsseln:

user:1001, user:1002, user:1003, admin:001, admin:002, admin:003

Zwei Tabellen würden angezeigt, Benutzer und Administrator, wobei die zugehörigen Schlüssel den einzelnen Zeilen in jeder Tabelle entsprechen.

SSL

Dieser Abschnitt enthält eine vollständige Liste der SSL-Eigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
SSLClientCert Der TLS/SSL-Client-Zertifikatspeicher für die SSL-Client-Authentifizierung (bidirektionales SSL).
SSLClientCertType Der Typ des Schlüsselspeichers, der das TLS/SSL-Client-Zertifikat enthält.
SSLClientCertPassword Das Passwort für das TLS/SSL-Client-Zertifikat.
SSLClientCertSubject Der Betreff des TLS/SSL-Client-Zertifikats.
SSLStartMode Diese Eigenschaft legt fest, wie der Anbieter die SSL-Aushandlung startet.
SSLServerCert Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL.

SSLClientCert

Der TLS/SSL-Client-Zertifikatspeicher für die SSL-Client-Authentifizierung (bidirektionales SSL).

Datentyp

string

Standardwert

""

Bemerkungen

Der Name des Zertifikatspeichers für das Client-Zertifikat.

Der SSLClientCertType Feld gibt den Typ des durch angegebenen Zertifikatspeichers an SSLClientCert. Wenn der Store kennwortgeschützt ist, geben Sie das Kennwort in SSLClientCertPassword an.

SSLClientCert wird in Verbindung mit SSLClientCertSubject verwendet, um Client-Zertifikate anzugeben. Wenn SSLClientCert hat einen Wert und SSLClientCertSubject gesetzt ist, wird eine Suche nach einem Zertifikat eingeleitet. Siehe SSLClientCertSubject für weitere Informationen.

Die Bezeichnungen der Zertifikatsspeicher sind plattformabhängig.

Nachfolgend sind die Bezeichnungen der gebräuchlichsten Benutzer- und Maschinen-Zertifikatspeicher in Windows aufgeführt:

Eigenschaft Beschreibung
MY Ein Zertifikatsspeicher, der persönliche Zertifikate mit den zugehörigen privaten Schlüsseln enthält.
CA Zertifikate der Zertifizierungsstelle.
ROOT Stammzertifikate.
SPC Zertifikate von Softwareherstellern.

In Java ist der Zertifikatspeicher normalerweise eine Datei, die Zertifikate und optionale private Schlüssel enthält.

Wenn der Zertifikatspeichertyp PFXFile ist, muss diese Eigenschaft auf den Namen der Datei gesetzt werden. Wenn der Typ PFXBlob ist, muss die Eigenschaft auf den binären Inhalt einer PFX-Datei gesetzt werden (z. B. PKCS12-Zertifikatspeicher).

SSLClientCertType

Der Typ des Schlüsselspeichers, der das TLS/SSL-Clientzertifikat enthält.

Mögliche Werte

USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PUBLIC_KEY_FILE, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_FILE, SSHPUBLIC_KEY_BLOB, P7BFILE, PPKFILE, XMLFILE, XMLBLOB

Datentyp

string

Standardwert

USER

Bemerkungen

Diese Eigenschaft kann einen der folgenden Werte annehmen:

Eigenschaft Beschreibung
USER - default Unter Windows gibt dies an, dass es sich bei dem Zertifikatspeicher um einen Zertifikatspeicher handelt, der dem aktuellen Benutzer gehört. Beachten Sie, dass dieser Speichertyp in Java nicht verfügbar ist.
MACHINE Unter Windows gibt dies an, dass es sich bei dem Zertifikatspeicher um einen Maschinenspeicher handelt. Beachten Sie, dass dieser Speichertyp in Java nicht verfügbar ist.
PFXFILE Der Zertifikatsspeicher ist der Name einer PFX-Datei (PKCS12), die Zertifikate enthält.
PFXBLOB Der Zertifikatsspeicher ist eine Zeichenfolge (Base-64-codiert), die einen Zertifikatsspeicher im PFX-Format (PKCS12) darstellt.
JKSFILE Der Zertifikatsspeicher ist der Name einer Java Key Store (JKS)-Datei, die Zertifikate enthält. Beachten Sie, dass dieser Speichertyp nur in Java verfügbar ist.
JKSBLOB Der Zertifikatsspeicher ist eine Zeichenfolge (base-64-codiert), die einen Zertifikatsspeicher im JKS-Format darstellt. Beachten Sie, dass dieser Speichertyp nur in Java verfügbar ist.
PEMKEY_FILE Der Zertifikatsspeicher ist der Name einer PEM-codierten Datei, die einen privaten Schlüssel und ein optionales Zertifikat enthält.
PEMKEY_BLOB Der Zertifikatsspeicher ist eine Zeichenfolge (base64-codiert), die einen privaten Schlüssel und ein optionales Zertifikat enthält.
PUBLIC_KEY_FILE Der Zertifikatsspeicher ist der Name einer Datei, die ein PEM- oder DER-codiertes öffentliches Schlüsselzertifikat enthält.
PUBLIC_KEY_BLOB Der Zertifikatsspeicher ist eine Zeichenfolge (Base-64-codiert), die ein PEM- oder DER-codiertes öffentliches Schlüsselzertifikat enthält.
SSHPUBLIC_KEY_FILE Der Zertifikatsspeicher ist der Name einer Datei, die einen öffentlichen Schlüssel im SSH-Stil enthält.
SSHPUBLIC_KEY_BLOB Der Zertifikatsspeicher ist eine Zeichenfolge (Base-64-codiert), die einen öffentlichen Schlüssel im SSH-Stil enthält.
P7BFILE Der Zertifikatsspeicher ist der Name einer PKCS7-Datei, die Zertifikate enthält.
PPKFILE Der Zertifikatsspeicher ist der Name einer Datei, die einen privaten PuTTY-Schlüssel (PPK) enthält.
XMLFILE Der Zertifikatsspeicher ist der Name einer Datei, die ein Zertifikat im XML-Format enthält.
XMLBLOB Der Zertifikatsspeicher ist eine Zeichenfolge, die ein Zertifikat im XML-Format enthält.

SSLClientCertPassword

Das Passwort für das TLS/SSL-Client-Zertifikat.

Datentyp

string

Standardwert

""

Bemerkungen

Wenn der Zertifikatspeicher von einem Typ ist, der ein Passwort erfordert, wird diese Eigenschaft verwendet, um dieses Passwort anzugeben, um den Zertifikatspeicher zu öffnen.

SSLClientCertSubject

Der Betreff des TLS/SSL-Clientzertifikats.

Datentyp

string

Standardwert

*

Bemerkungen

Beim Laden eines Zertifikats wird der Betreff verwendet, um das Zertifikat im Speicher zu finden.

Wenn keine genaue Übereinstimmung gefunden wird, wird der Speicher nach Betreffs durchsucht, die den Wert der Eigenschaft enthalten. Wenn immer noch keine Übereinstimmung gefunden wird, wird die Eigenschaft auf eine leere Zeichenfolge gesetzt und kein Zertifikat ausgewählt.

Der spezielle Wert „*“ wählt das erste Zertifikat im Zertifikatspeicher aus.

Der Betreff des Zertifikats ist eine durch Kommas getrennte Liste von Distinguished Name-Feldern und-Werten. Beispiel: „CN=www.server.com, OU=test, C=US, E=support@company.com“. Die allgemeinen Felder und ihre Bedeutungen werden unten angezeigt.

Feld Bedeutung
CN Allgemeiner Name. Dies ist normalerweise ein Host wie www.server.com.
O Organisation
OU Organisationseinheit
L Ort
S Staat
C Land
E Email Adresse

Wenn ein Feldwert ein Komma enthält, muss es in Anführungszeichen gesetzt werden.

SSLStartMode

Diese Eigenschaft bestimmt, wie der Anbieter die SSL-Aushandlung startet.

Mögliche Werte

Automatic, Implicit, Explicit, None

Datentyp

string

Standardwert

None

Bemerkungen

Die SSLStartMode Eigenschaft kann einen der folgenden Werte haben:

Eigenschaft Beschreibung
Automatic Wenn der Remote Port auf den Standard-Klartext-Port des Protokolls eingestellt ist (sofern zutreffend), verhält sich der Connector genauso, als ob SSLStartMode ist auf „Explizit“ eingestellt. In allen anderen Fällen erfolgt die SSL-Aushandlung implizit.
Implicit Die SSL-Aushandlung beginnt sofort, nachdem die Verbindung hergestellt wurde.
Explicit Der Connector stellt zunächst die Verbindung im Klartext her und startet dann explizit die SSL-Aushandlung über einen Protokollbefehl wie STARTTLS.
None Keine SSL-Aushandlung, keine SSL-Sicherheit. Die gesamte Kommunikation erfolgt im Nur-Text-Modus.

SSLServerCert

Das vom Server zu akzeptierende Zertifikat bei einer Verbindung über TLS/SSL.

Datentyp

string

Standardwert

""

Bemerkungen

Bei Verwendung einer TLS/SSL-Verbindung kann diese Eigenschaft verwendet werden, um das vom Server zu akzeptierende TLS/SSL-Zertifikat anzugeben. Jedes andere Zertifikat, dem der Computer nicht vertraut, wird abgelehnt.

Diese Eigenschaft kann folgende Formen annehmen:

Beschreibung Beispiel
Ein vollständiges PEM-Zertifikat (Beispiel der Kürze halber gekürzt) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
Ein Pfad zu einer lokalen Datei, die das Zertifikat enthält C:\\cert.cer
Der öffentliche Schlüssel (Beispiel der Kürze halber gekürzt) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
Der MD5-Fingerabdruck (Hex-Werte können auch durch Leerzeichen oder Doppelpunkte getrennt sein) ecadbdda5a1529c58a1e9e09828d70e4
Der SHA1-Fingerabdruck (Hex-Werte können auch durch Leerzeichen oder Doppelpunkte getrennt sein) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Wenn nicht angegeben, wird jedes vom Computer vertrauenswürdige Zertifikat akzeptiert.

Zertifikate werden vom Computer basierend auf dem Trust Store des Systems als vertrauenswürdig validiert. Der verwendete Trust Store ist der für das System angegebene Wert „javax.net.ssl.trustStore“. Wenn für diese Eigenschaft kein Wert angegeben ist, wird der Standard-Trust Store von Java verwendet (z. B. JAVA_HOME\lib\security\cacerts).

Verwenden Sie „*“, um anzugeben, dass alle Zertifikate akzeptiert werden. Beachten Sie, dass dies aus Sicherheitsgründen nicht empfohlen wird.

SSH

Dieser Abschnitt enthält eine vollständige Liste der SSH-Eigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
SSHAuthMode Die beim Aufbau eines SSH-Tunnels zum Dienst verwendete Authentifizierungsmethode.
SSHClientCert Ein Zertifikat, das zur Authentifizierung des SSH-Benutzers verwendet werden soll.
SSHClientCertPassword Das Passwort des SSHClientCert-Schlüssels, falls vorhanden.
SSHClientCertSubject Der Betreff des SSH-Client-Zertifikats.
SSHClientCertType Der Typ des privaten SSHClientCert-Schlüssels.
SSHServer Der SSH-Server.
SSHPort Der SSH- Port.
SSHUser Der SSH-Benutzer.
SSHPassword Das SSH-Passwort.
SSHServerFingerprint Der Fingerabdruck des SSH-Servers.
UseSSH Ob die Redis-Verbindung über SSH getunnelt werden soll. Verwenden Sie SSH.

SSHAuthMode

Die Authentifizierungsmethode, die beim Aufbau eines SSH-Tunnels zum Dienst verwendet wird.

Mögliche Werte

None, Password, Public_Key

Datentyp

string

Standardwert

Password

Bemerkungen
  • Keine: Es wird keine Authentifizierung durchgeführt. Der aktuelle Benutzer-Wert wird ignoriert und die Verbindung wird als anonym angemeldet.
  • Passwort: Der Connector verwendet die Werte von Benutzer und Passwort, um den Benutzer zu authentifizieren.
  • Public_Key: Der Connector verwendet die Werte von Benutzer und SSHClientCert, um den Benutzer zu authentifizieren. SSHClientCert muss einen privaten Schlüssel zur Verfügung haben, damit diese Authentifizierungsmethode erfolgreich ist.

SSHClientCert

Ein Zertifikat, das zur Authentifizierung des SSHUsers verwendet werden soll.

Datentyp

string

Standardwert

""

Bemerkungen

SSHClientCert muss einen gültigen privaten Schlüssel enthalten, um die Authentifizierung mit öffentlichem Schlüssel zu verwenden. Ein öffentlicher Schlüssel ist optional. Wenn keiner enthalten ist, generiert der Connector ihn aus dem privaten Schlüssel. Der Connector sendet den öffentlichen Schlüssel an den Server und die Verbindung wird zugelassen, wenn der Benutzer den öffentlichen Schlüssel autorisiert hat.

Der SSHClientCertType Feld gibt den Typ des durch angegebenen Schlüsselspeichers an SSHClientCert. Wenn der Store kennwortgeschützt ist, geben Sie das Kennwort in SSHClientCertPassword an.

Einige Arten von Schlüsselspeichern sind Container, die mehrere Schlüssel enthalten können. Standardmäßig wählt der Connector den ersten Schlüssel im Speicher aus, Sie können jedoch mit SSHClientCertSubject einen bestimmten Schlüssel angeben.

SSHClientCertPassword

Das Passwort des SSHClientCert-Schlüssels, falls vorhanden.

Datentyp

string

Standardwert

""

Bemerkungen

Diese Eigenschaft wird nur bei der Authentifizierung gegenüber SFTP-Servern mit SSHAuthMode verwendet auf PublicKey und SSHClientCert gesetzt auf einen privaten Schlüssel gesetzt.

SSHClientCertSubject

Der Betreff des SSH-Client-Zertifikats.

Datentyp

string

Standardwert

*

Bemerkungen

Beim Laden eines Zertifikats wird der Betreff verwendet, um das Zertifikat im Speicher zu finden.

Wenn keine genaue Übereinstimmung gefunden wird, wird der Speicher nach Betreffs durchsucht, die den Wert der Eigenschaft enthalten.

Wenn immer noch keine Übereinstimmung gefunden wird, wird die Eigenschaft auf eine leere Zeichenfolge gesetzt und kein Zertifikat ausgewählt.

Der spezielle Wert „*“ wählt das erste Zertifikat im Zertifikatspeicher aus.

Der Betreff des Zertifikats ist eine durch Kommas getrennte Liste von Distinguished Name-Feldern und-Werten. Zum Beispiel „CN=www.server.com, OU=test, C=US, E=example@jbexample.com“. Allgemeine Felder und ihre Bedeutungen werden unten angezeigt.

Feld Bedeutung
CN Allgemeiner Name. Dies ist normalerweise ein Host wie www.server.com.
O Organisation
OU Organisationseinheit
L Ort
S Staat
C Land
E Email Adresse

Wenn ein Feldwert ein Komma enthält, muss es in Anführungszeichen gesetzt werden.

SSHClientCertType

Der Typ des privaten SSHClientCert-Schlüssels.

Mögliche Werte

USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PPKFILE, PPKBLOB, XMLFILE, XMLBLOB

Datentyp

string

Standardwert

PEMKEY_FILE

Bemerkungen

Diese Eigenschaft kann einen der folgenden Werte annehmen:

Typen Beschreibung Zulässige Blob-Werte
MASCHINE/BENUTZER Auf dieser Plattform nicht verfügbar. Blob-Werte werden nicht unterstützt.
JKSFILE/JKSBLOB Eine Java Schlüsselspeicher Datei. Muss sowohl ein Zertifikat als auch einen privaten Schlüssel enthalten. Nur in Java verfügbar. Nur base64
PFXFILE/PFXBLOB Eine Datei im PKCS12-Format (.pfx). Muss sowohl ein Zertifikat als auch einen privaten Schlüssel enthalten. nur base64
PEMKEY_FILE/PEMKEY_BLOB Eine Datei im PEM-Format. Muss einen privaten RSA-, DSA- oder OPENSSH-Schlüssel enthalten. Kann optional ein Zertifikat enthalten, das zum privaten Schlüssel passt. Base64 oder einfacher Text. Zeilenumbrüche können durch Leerzeichen ersetzt werden, wenn der Blob als Text bereitgestellt wird.
PPKFILE/PPKBLOB Ein privater Schlüssel im PuTTY-Format, erstellt mit puttygen Werkzeug. nur Base64
XMLFILE/XMLBLOB Ein XML-Schlüssel im von der .NET RSA-Klasse generierten Format: RSA.ToXmlString(true). Base64 oder einfacher Text.

SSHServer

Der SSH-Server.

Datentyp

string

Standardwert

""

Bemerkungen

Der SSH-Server.

SSHPort

Der SSH- Port.

Datentyp

string

Standardwert

22

Bemerkungen

Der SSH- Port.

SSH-Benutzer

Der SSH-Benutzer.

Datentyp

string

Standardwert

""

Bemerkungen

Der SSH-Benutzer.

SSHPassword

Das SSH-Passwort.

Datentyp

string

Standardwert

""

Bemerkungen

Das SSH-Passwort.

SSHServerFingerprint

Der SSH-Server-Fingerabdruck.

Datentyp

string

Standardwert

""

Bemerkungen

Der Fingerabdruck des SSH-Servers.

UseSSH

Gibt an, ob die Redis-Verbindung über SSH getunnelt werden soll. Verwenden Sie SSH.

Datentyp

bool

Standardwert

false

Bemerkungen

Standardmäßig versucht der Connector, eine direkte Verbindung zu Redis herzustellen. Wenn diese Option aktiviert ist, stellt der Connector stattdessen eine SSH-Verbindung mit dem SSHServer her und tunneln Sie die Verbindung zu Redis dadurch.

Schema

Dieser Abschnitt enthält eine vollständige Liste der Schema, die Sie konfigurieren können.

Eigenschaft Beschreibung
Location Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.
BrowsableSchemas Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA, TabelleB, TabelleC.
Views Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA, AnsichtB, AnsichtC.

Standort

Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.

Datentyp

string

Standardwert

%APPDATA%\Redis Data Provider\Schema

Bemerkungen

Der Pfad zu einem Verzeichnis, das die Schema für den Connector enthält (.rsd-Dateien für Tabellen und Ansichten, .rsb-Dateien für gespeicherte Prozeduren). Der Ordnerspeicherort kann ein relativer Pfad vom Speicherort der ausführbaren Datei sein. Der Location Die Eigenschaft wird nur benötigt, wenn Sie Definitionen anpassen (z. B. einen Spaltennamen ändern, eine Spalte ignorieren usw.) oder das Datenmodell mit neuen Tabellen, Ansichten oder gespeicherten Prozeduren erweitern möchten.

Wenn nichts angegeben wird, ist der Standardspeicherort "%APPDATA%\ Redis Data Provider\Schema" mit %APPDATA% wird auf das Konfigurationsverzeichnis des Benutzers eingestellt:

Plattform %APPDATA%
Windows Der Wert der Umfeld APPDATA
Mac ~/Bibliothek/Anwendungsunterstützung
Linux ~/.config

BrowsableSchemas

Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Datentyp

string

Standardwert

""

Bemerkungen

Das Auflisten der Schemata aus Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Schemata in der Verbindungszeichenfolge verbessert die Leistung.

Tabellen

Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA,TabelleB,TabelleC.

Datentyp

string

Standardwert

""

Bemerkungen

Das Auflisten der Tabellen aus einigen Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Tabellen in der Verbindungszeichenfolge verbessert die Leistung des Connectors.

Diese Eigenschaft kann auch als Alternative zum automatischen Auflisten von Ansichten verwendet werden, wenn Sie bereits wissen, mit welchen Sie arbeiten möchten, und es sonst zu viele wären, mit denen Sie arbeiten könnten.

Geben Sie die gewünschten Tabellen in einer durch Kommas getrennten Liste an. Jede Tabelle sollte ein gültiger SQL-Bezeichner sein, wobei alle Sonderzeichen mit eckigen Klammern, Anführungszeichen oder Backticks maskiert werden. Beispiel: Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Beachten Sie, dass Sie beim Herstellen einer Verbindung zu einer Datenquelle mit mehreren Schemata oder Katalogen den vollqualifizierten Namen der Tabelle in dieser Eigenschaft angeben müssen, wie im letzten Beispiel hier, um Mehrdeutigkeiten zwischen Tabellen zu vermeiden, die in mehreren Katalogen oder Schemata vorhanden sind.

Ansichten

Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA,AnsichtB,AnsichtC.

Datentyp

string

Standardwert

""

Bemerkungen

Das Auflisten der Ansichten aus einigen Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Ansichten in der Verbindungszeichenfolge verbessert die Leistung des Connectors.

Diese Eigenschaft kann auch als Alternative zum automatischen Auflisten von Ansichten verwendet werden, wenn Sie bereits wissen, mit welchen Sie arbeiten möchten, und es sonst zu viele wären.

Geben Sie die gewünschten Ansichten in einer durch Kommas getrennten Liste an. Jede Ansicht sollte ein gültiger SQL-Bezeichner sein, wobei alle Sonderzeichen mit eckigen Klammern, Anführungszeichen oder Backticks maskiert werden. Beispiel: Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Beachten Sie, dass Sie beim Herstellen einer Verbindung zu einer Datenquelle mit mehreren Schemata oder Katalogen den vollqualifizierten Namen der Tabelle in dieser Eigenschaft angeben müssen, wie im letzten Beispiel hier, um Mehrdeutigkeiten zwischen Tabellen zu vermeiden, die in mehreren Katalogen oder Schemata vorhanden sind.

Verschiedenes

Dieser Abschnitt enthält eine vollständige Liste verschiedener Eigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
IgnoreTypeErrors Entfernt die Unterstützung für die angegebenen Datentypen und ignoriert Casting-Ausnahmen für diese Typen.
MaxRows Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.
Other Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
ParallelMode Diese Option legt fest, ob der Anbieter beim Herstellen einer Verbindung mit Redis mehrere Verbindungen verwenden soll.
PseudoColumns Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
QueryTimeout Das Timeout in Sekunden, das der Anbieter auf die Abfrage wartet. Der Standardwert ist -1, was bedeutet, dass beim Anbieter nie ein Timeout auftreten sollte.
RowScanDepth Die maximale Anzahl der zu scannenden Zeilen, um nach den in einer Tabelle verfügbaren Spalten zu suchen.
TableScanDepth Die maximale Anzahl zu scannender Schlüssel beim Suchen nach verfügbaren Tabellen in Ihrer Redis-Datenbank.
Timeout Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.
UserDefinedViews Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.

IgnoreTypeErrors

Entfernt die Unterstützung für die angegebenen Datentypen und ignoriert Casting-Ausnahmen für diese Typen.

Datentyp

string

Standardwert

""

Bemerkungen

Eine durch Kommas getrennte Liste von Datentypen, bei denen Casting-Ausnahmen ignoriert und die als Zeichenfolgen behandelt werden sollen. Beispiel: IgnoreTypeErrors=Date,Time.

Wenn der Wert als der angegebene Typ analysiert werden kann, wird er als Zeichenfolge zurückgegeben. Andernfalls wird der Wert stattdessen als NULL zurückgegeben.

MaxRows

Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.

Datentyp

int

Standardwert

-1

Bemerkungen

Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.

Andere

Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.

Datentyp

string

Standardwert

""

Bemerkungen

Die unten aufgeführten Eigenschaften sind für bestimmte Anwendungsfälle verfügbar. Für normale Anwendungsfälle und Funktionen von Treiber sollten diese Eigenschaften nicht erforderlich sein.

Geben Sie mehrere Eigenschaften in einer durch Semikolon getrennten Liste an.

Integration und Formatierung
Eigenschaft Beschreibung
DefaultColumnSize Legt die Standardlänge von Zeichenfolgefeldern fest, wenn die Datenquelle keine Spaltenlänge in den Metadaten bereitstellt. Der Standardwert ist 2000.
ConvertDateTimeToGMT Bestimmt, ob Datums-/Uhrzeitwerte in GMT statt in die lokale Zeit des Computers konvertiert werden sollen.
RecordToFile=filename Protokolliert den zugrunde liegenden Socket-Datenübertragungsvorgang in die angegebene Datei.

ParallelMode

Diese Option legt fest, ob der Anbieter beim Herstellen einer Verbindung mit Redis mehrere Verbindungen verwenden soll.

Datentyp

bool

Standardwert

false

Bemerkungen

Standardmäßig ist der Parallelmodus deaktiviert, was bedeutet, dass der Connector bei der Kommunikation mit Redis nur eine Verbindung verwendet. Dies funktioniert gut für kleinere Datenbanken, kann jedoch bei größeren Datenbanken zu Leistungs- und Speichernutzungsproblemen führen.

Wenn der Parallelmodus aktiviert ist, öffnet der Connector verschiedene Verbindungen zu Redis, um Schlüssel zu ermitteln und Daten zu lesen. Dies macht die Interaktion mit größeren Datenbanken effizienter, kann jedoch bei kleineren Datenbanken zusätzlichen Aufwand bedeuten.

Wenn der Parallelmodus aktiviert ist, können Sie mithilfe der versteckten Eigenschaft MaxPageSize (siehe Other einstellen, wie viel Speicher vom Connector verwendet wird). Der Standardwert ist 5, aber Sie können ihn erhöhen, um den Connector schneller zu machen, oder verringern, damit der Connector weniger Speicher verbraucht.

PseudoColumns

Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.

Datentyp

string

Standardwert

""

Bemerkungen

Diese Einstellung ist insbesondere im Entity Framework hilfreich, da Sie in diesem nicht einen Wert für eine Pseudospalte festlegen können, es sei denn, es handelt sich um eine Tabellenspalte. Der Wert dieser Verbindungseinstellung hat das Format „Tabelle1=Spalte1, Tabelle1=Spalte2, Tabelle2=Spalte3“. Sie können das Zeichen „*“ verwenden, um alle Tabellen und alle Spalten einzuschließen, z. B. „*=*“.

AbfrageTimeout

Das Timeout in Sekunden, das der Anbieter auf die Abfrage wartet. Der Standardwert ist -1, was bedeutet, dass der Anbieter niemals ein Timeout haben sollte.

Datentyp

string

Standardwert

-1

Bemerkungen

Das Timeout in Sekunden, das der Connector auf die Abfrage wartet. Der Standardwert ist -1, was bedeutet, dass der Connector niemals ein Timeout haben sollte.

RowScanDepth

Die maximale Anzahl der zu scannenden Zeilen, um nach den in einer Tabelle verfügbaren Spalten zu suchen.

Datentyp

int

Standardwert

50

Bemerkungen

Die Spalten einer Tabelle müssen durch das Scannen der Tabellenzeilen ermittelt werden. Dieser Wert legt die maximale Anzahl der zu scannenden Zeilen fest.

Das Festlegen eines hohen Wertes kann die Leistung beeinträchtigen. Das Festlegen eines niedrigen Wertes kann dazu führen, dass der Datentyp nicht richtig bestimmt wird, insbesondere wenn Nulldaten vorhanden sind.

TableScanDepth

Die maximale Anzahl zu scannender Schlüssel beim Suchen nach verfügbaren Tabellen in Ihrer Redis-Datenbank.

Datentyp

string

Standardwert

-1

Bemerkungen

Da Redis schemalos ist, ermittelt der Connector Tabellen, indem er Schlüssel findet, die dem TablePattern entsprechen. Dieser Wert bestimmt die maximale Anzahl von Schlüsseln, die für jeden Eintrag in TablePattern gescannt werden.

Um diese Begrenzung zu deaktivieren und immer alle Schlüssel zu scannen, setzen Sie den Wert dieser Eigenschaft auf „-1“. Andernfalls setzen Sie diese Eigenschaft auf eine positive Ganzzahl, um die Anzahl der gescannten Schlüssel auf diese Anzahl zu begrenzen.

Zeitüberschreitung

Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.

Datentyp

int

Standardwert

60

Bemerkungen

Wenn Timeout = 0, Operationen werden nicht abgebrochen. Die Operationen werden ausgeführt, bis sie erfolgreich abgeschlossen sind oder bis ein Fehler auftritt.

Wenn Timeout abläuft und der Operation noch nicht abgeschlossen ist, löst der Connector eine Ausnahme aus.

Benutzerdefinierte Ansichten

Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.

Datentyp

string

Standardwert

""

Bemerkungen

Benutzerdefinierte Ansichten werden in einer JSON-formatierten Konfigurationsdatei namens UserDefinedViews.json. Der Connector erkennt die in dieser Datei angegebenen Ansichten automatisch.

Sie können auch mehrere Ansichtsdefinitionen haben und diese mit steuern UserDefinedViews Verbindungseigenschaft. Wenn Sie diese Eigenschaft verwenden, werden vom Connector nur die angegebenen Ansichten angezeigt.

Diese Konfigurationsdatei für benutzerdefinierte Ansichten ist wie folgt formatiert:

  • Jedes Stammelement definiert den Namen einer Ansicht.
  • Jedes Stammelement enthält ein untergeordnetes Element namens query, das die benutzerdefinierte SQL- Abfrage für die Ansicht enthält.

Zum Beispiel:

{
    "MyView": {
        "query": "SELECT * FROM Customers WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Verwenden Sie die UserDefinedViews Verbindungseigenschaft, um den Speicherort Ihrer JSON-Konfigurationsdatei anzugeben. Beispiel:

"UserDefinedViews", C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json

Beachten Sie, dass der angegebene Pfad nicht in Anführungszeichen steht.