sql >> Databasteknik >  >> NoSQL >> MongoDB

Exportera JSON-data och ladda in i en relationsdatabas

vi har vår mongo DB som lagrar JSON-data. Vi ville migrera data till Redshift för vissa frågeändamål.

Vi använde mongoexport csv för att skapa csv från mongo table och laddade upp det till S3. Vi skapade motsvarande relationsschema i Redshift och använde kopieringskommandon för att ladda dessa csv-data från s3 till redshift.

Vi kan använda java apis för att fråga mongo och skapa och ladda upp csv till s3. Detsamma kan laddas till rödförskjutning.

Det verkliga problemet är att eftersom vi använder mongo (json) eller NoSQL kan vi ha olika antal kolumner för ett givet objekt som tillhör samma tabell (som vi JSON), men i Redshift har vi ett fast antal kolumner per tabell, så i sådana fall kan du måste skapa alla möjliga kolumner och ladda data. För de objekt som inte har alla kolumner kan vi fylla i null-värden för dem.




  1. Returnera alla fält MongoDB Aggregate

  2. Mongoose - Aggregation $match baserat på enumvärden

  3. Hur returnerar man Mongoose-resultat från hittametoden?

  4. 5 sätt att få protokollet från ett datum i MongoDB