ich mit den oben genannten Lösungen einverstanden und denke, der beste Weg ist, um:
- gefälschte Informationen generieren Bibliothek Tool.
- Konvertieren Sie die gefälschten Informationen in eine JSON-Datei.
- Laden Sie es auf Mongo mit Mongoimport.
I OUND gibt es Bibliotheken gibt, die Sie kostenlos gefälschte Daten tun generieren können wie Faker.js (wenn Sie mit node.js und js allgemein bekannt sind) oder Sie können die kostenlose Java-Version verwenden von Faker hier: https://github.com/blocoio/faker
Ich fand auch eine kostenpflichtige Lösung hier: https://www.mockaroo.com/ aber weiß nicht, warum jemand dafür bezahlen möchte, da es ziemlich einfach ist, die gefälschten Daten zu erzeugen - hier ist eine Schritt für Schritt Anleitung.
Import der Fälscher Java-Bibliothek und die json Schriftsteller in Ihr Projekt (ich verwende gradle so ist hier die gradle Code):
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
compile 'com.github.blocoio:faker:1.0.1'
compile 'com.googlecode.json-simple:json-simple:1.1.1'
}
Verwenden Sie den folgenden Java-Code so viele gefälschte Objekte, wie Sie zu generieren wollen, hier verwende ich eine Schleife, um 3 Objekte zu generieren, und speichern Sie es in einer json.file.
public class FakerTest {
static FileWriter file;
public static void main(String[] args) {
try {
file = new FileWriter("c:\\<Your Location>\\test.json"); //try opening the file
for (int i = 0; i < 3; i ++) {
Faker faker = new Faker();
JSONObject obj = new JSONObject();
obj.put("Name", faker.name.firstName());
obj.put("address",faker.address.streetAddress());
obj.put("email",faker.internet.email());
file.write(obj.toJSONString());
}
file.flush();
file.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Ergebnisse der JSON-Datei:
{ "Adresse": "790 Murphy Vista", "E-Mail": "willa @ schmittjenkinsandabernathy.net "," Name ":" Christop "} {" Adresse ":" 7706 Larkin Fluss "," email ":" [email protected] "," Name ":" Braeden "} {" Adresse ":" 1893 Jamarcus Rest“, "E-Mail": "[email protected]", "Name": " Marlee"}
Nun laden sie mit mongoimport
Die Fälscher Bibliothek lassen Sie generieren Sie viele Felder, siehe auch:
, die robust genug klingt. Gibt es eine einfache Möglichkeit, die Beziehungen von Dokumenten in diesem Ansatz zu verwalten? Beispielsweise hat jeder Schüler eine Schul-ID als ein Feld. In meinem Skript behandelt Mungo diese ID-Erstellungsphase (einfach beim Erstellen des Objekts) - muss ich bei diesem Ansatz Ids manuell an die Schulen setzen und sie im json-Dokument verlinken? – ralzaul
Ja, Sie müssten die Beziehungen manuell pflegen. Denken Sie daran, dass eine '_id' keine ObjectId sein muss. Es kann alles sein, solange es einzigartig ist. Also 'school.json' könnte enthalten:' {_id: 1, name: "Foo"} 'und' student.json' könnte '{_id:" student_1 ", school_id: 1, name:" John "}' enthalten . Denken Sie daran, das Dokument einzubetten, anstatt "SQL-ähnliche Verknüpfungen" zu erstellen. –
Außerdem würde ich verschiedene (kleine) JSON-Dateien verwenden, um sicherzustellen, dass alle meine Tests unabhängig bleiben, um riesige Datensätze zu vermeiden. –