Dela via


Konfigurera MongoDB i en kopieringsaktivitet

Den här artikeln beskriver hur du använder kopieringsaktiviteten i datapipelines för att kopiera data från och till MongoDB.

Konfiguration som stöds

För konfigurationen av varje flik under kopieringsaktivitet går du till följande avsnitt.

Allmänt

Se Allmänna-inställningar vägledning för att konfigurera inställningsfliken Allmänt.

Källa

Gå till fliken Källa för att konfigurera kopieringsaktivitetskällan. Se följande innehåll för den detaljerade konfigurationen.

Skärmbild som visar källfliken och listan med egenskaper.

Följande egenskaper krävs:

  • Anslutning: Välj en MongoDB-anslutning i anslutningslistan. Om det inte finns någon anslutning skapar du en ny MongoDB-anslutning genom att välja Ny.
  • Databas: Välj din databas i listrutan.
  • Samlingsnamn: Ange namnet på samlingen i MongoDB-databasen. Du kan välja samlingen i listrutan eller välja Redigera för att ange den manuellt.
  • Version: Den version som du anger. Rekommenderar att du uppgraderar till den senaste versionen för att dra nytta av de senaste förbättringarna. Om du vill veta skillnaden mellan olika versioner går du till det här avsnittet.

Under Avancerat kan du ange följande fält:

  • Filter: Anger markeringsfilter med hjälp av frågeoperatorer. Om du vill returnera alla dokument i en samling utelämnar du den här parametern eller skickar ett tomt dokument ({}).
  • Markörmetoder: Välj + Ny för att ange hur den underliggande sökfrågan ska köras. Sätten att utföra frågor är:
    • project: Anger de fält som ska returneras i dokumenten för projektion. Om du vill returnera alla fält i matchande dokument utelämnar du den här parametern.
    • sort: Anger i vilken ordning frågan returnerar matchande dokument. Gå till cursor.sort() för mer information.
    • gräns: Anger det maximala antalet dokument som servern returnerar. Gå till cursor.limit() för mer information.
    • skip: Anger antalet dokument som ska hoppa över och varifrån MongoDB börjar returnera resultat. Gå till cursor.skip() för mer information.
  • Batchstorlek: Anger antalet dokument som ska returneras i varje batch av svaret från MongoDB-instansen. I de flesta fall påverkar det inte användaren eller programmet att ändra batchstorleken.
  • Ytterligare kolumner: Lägg till ytterligare datakolumner för att lagra källfilernas relativa sökväg eller statiska värde. Uttrycket stöds för det senare fallet.

Resmål

Gå till fliken Destination för att konfigurera mål för kopieringsaktiviteten. Se följande innehåll för den detaljerade konfigurationen.

Skärmbild som visar målfliken och listan med egenskaper.

Följande egenskaper krävs:

  • datalagertyp: Välj extern.
  • Anslutning: Välj en MongoDB-anslutning i anslutningslistan. Om det inte finns någon anslutning skapar du en ny MongoDB-anslutning genom att välja Ny.
  • Databas: Välj din databas i listrutan.
  • Samlingsnamn: Ange namnet på samlingen i MongoDB-databasen. Du kan välja samlingen i listrutan eller välja Redigera för att ange den manuellt.

Under Avancerat kan du ange följande fält:

  • Skrivbeteende: Beskriver hur du skriver data till MongoDB. Tillåtna värden: Infoga och Upsert.

    Upserts beteende är att ersätta dokumentet om ett dokument med samma _id redan finns. Annars infogar du dokumentet.

    Anmärkning

    Tjänsten genererar automatiskt ett _id för ett dokument om ett _id inte har angetts i det ursprungliga dokumentet eller efter kolumnmappning. Det innebär att du måste se till att ditt dokument har ett ID för att Upsert ska fungera som förväntat.

  • Skrivbatchens tidsgräns: Ange väntetiden för batchinmatningsoperationen att slutföras innan den avbryts. Det tillåtna värdet är tidsperiod.

  • Skriv batchstorlek: Den här egenskapen styr storleken på dokument som ska skrivas i varje batch. Du kan försöka öka värdet för att förbättra prestanda och minska värdet om dokumentstorleken är stor.

Kartläggning

Information om konfiguration av fliken Mappning finns i Konfigurera dina mappningar under mappningsfliken. Mappning stöds inte när både källa och mål är hierarkiska data.

Datatypsmappning för MongoDB

När du kopierar data från MongoDB används följande mappningar från MongoDB-datatyper till mellanliggande datatyper som används av tjänsten internt.

MongoDB-datatyp Tillfällig tjänstdatatyp (för version 1.1) Tillfällig tjänstdatatyp (för version 1.0)
Datum Datum och tid Sträng
Objekt-ID Sträng Sträng
Decimal 128 Sträng Sträng
Tidsstämpel De viktigaste 32 bitarna –> DateTime
De minst signifikanta 32 bitarna –> Int32
Int32
Sträng Sträng Sträng
Array Array Array
dubbel dubbel Sträng
Int32 Int32 Sträng
Int64 Int64 Sträng
Boolesk Boolesk Boolesk
NullData Noll Noll
Dokument Ordbok Ordbok
JavaScript Sträng Sträng
Regex Sträng Sträng
minKey Sträng Int32
maxKey Sträng Int32
Binär GUID (när SubType är "04" )
Sträng
Sträng

Inställningar

För Inställningar flikkonfiguration går du till Konfigurera dina andra inställningar under fliken Inställningar.

Skillnader mellan MongoDB-versioner

Tabellen nedan visar funktionsskillnaderna mellan olika versioner.

Version 1.1 Version 1.0
Följande mappningar används från MongoDB-datatyper till mellanliggande tjänstdatatyper.

Datum –> DateTime
TimeStamp –> De viktigaste 32 bitarna –> DateTime; De minst signifikanta 32 bitarna –> Int32
Dubbel -> Dubbel
Int32 –> Int32
Int64 –> Int64
minKey –> textsträng
maxKey –> Sträng
Binärt –> GUID (när SubType är "04") / Sträng
Följande mappningar används från MongoDB-datatyper till mellanliggande tjänstdatatyper.

Datum –> sträng
TimeStamp –> Int32
Dubbel –> sträng
Int32 –> sträng
Int64 –> sträng
minKey –> Int32
maxKey –> Int32
Binär –> sträng

Tabellsammanfattning

Följande tabell innehåller mer information om kopieringsaktiviteten i MongoDB.

Källinformation

Namn Beskrivning Värde Krävs JSON-skriptegenskap
Datalager-typ Typ av ditt datalager. extern Ja /
Anslutning Din anslutning till källdatalagret. < din MongoDB-anslutning > Ja anslutning
Databas Din databas som du använder som källa. < din databas > Ja databas
Samlingsnamn Namnet på samlingen i MongoDB-databasen. < din samling > Ja samling
Version: Den version som du anger. • 1.1
• 1.0
Ja version:
• 1.1
• 1.0
Filter Urvalsfiltret som använder frågeoperatorer. Om du vill returnera alla dokument i en samling utelämnar du den här parametern eller skickar ett tomt dokument ({}). < ditt urvalsfilter > Nej filter
Markörmetoder Det sätt som den underliggande sökfrågan körs på. projekt
sortera
gräns
hoppa över
Nej kursormetoder:
•projekt
• sortera
•gräns
• hoppa över
Batch-storlek Antalet dokument som ska returneras i varje batch av svaret från MongoDB-instansen. < din skrivsatstorlek >
(standardvärdet är 100)
Nej batchstorlek
Ytterligare kolumner Lägg till ytterligare datakolumner för att lagra källfilernas relativa sökväg eller statiska värde. Uttrycket stöds för det senare fallet. •Namn
•Värde
Nej ytterligareKolumner:
•Namn
• värde

Destinationsinformation

Namn Beskrivning Värde Krävs JSON-skriptegenskap
Datalager-typ Typ av ditt datalager. extern Ja /
Anslutning Din anslutning till måldatalagret. < din MongoDB-anslutning > Ja anslutning
Databas Din databas som du använder som mål. < din databas > Ja databas
Samlingsnamn Namnet på samlingen i MongoDB-databasen. < din samling > Ja samling
Skrivbeteende Beskriver hur du skriver data till MongoDB. Tillåtna värden: Infoga och Upsert.

Upserts beteende är att ersätta dokumentet om ett dokument med samma _id redan finns. Annars infogar du dokumentet.

Obs! Tjänsten genererar automatiskt ett _id för ett dokument om ett _id inte har angetts i det ursprungliga dokumentet eller efter kolumnmappning. Det innebär att du måste se till att ditt dokument har ett ID för att Upsert ska fungera som förväntat.
Infoga (standard)
Uppdatera/Infoga
Nej writeBehavior:
• infoga
• infoga eller uppdatera
Tidsgräns för batchskrivning Väntetiden för att batchinfogningsåtgärden ska slutföras innan tidsgränsen uppnås. tidsintervall
(standardvärdet är 00:30:00 – 30 minuter)
Nej writeBatchTimeout
Skriv batchstorlek Styr storleken på dokument som ska skrivas i varje batch. Du kan prova att öka det här värdet för att förbättra prestanda och minska värdet om dokumentstorleken är stor. < din skrivsatstorlek > Nej writeBatchSize