Gerar Dados Sintéticos
Nesta página
Você também pode gerar dados sintéticos que se alinham ao esquema de dados reais. Os dados sintéticos são úteis para ambientes de teste e desenvolvimento.
Este tutorial se conecta a um Atlas cluster e gera dados sintéticos usando Node.js e falser.js. Para saber mais, consulte os do Faker.JavaScript Docs
Pré-requisitos
Para criar dados sintéticos usando as etapas deste tutorial, você deve:
Crie um cluster do Atlas para carregar dados. Para saber mais, consulte Tipos de cluster.
Instalar o faker.js:
npm install --save-dev @faker-js/faker
Procedimento
Siga estas etapas para gerar dados sintéticos em seu cluster:
Crie seu aplicativo Node.js.
Execute o seguinte comando para criar e navegar até o diretório do aplicativo:
mkdir syntheticdata cd syntheticdata Execute o seguinte comando para inicializar seu projeto e vinculá-lo ao
npm
.npm init Pressione
Enter
para aceitar todos os valores padrão, excetoentry point: (index.js)
. Quando o terminal retornarentry point: (index.js)
, insira este texto e pressioneEnter
:myapp.js Continue aceitando todos os valores padrão e digite
Yes
quando solicitado.Execute o seguinte comando para instalar
express
, uma estrutura de aplicativo da web:npm install express --save No diretório que você criou, crie um arquivo chamado
myapp.js
.
Adicione o código para gerar dados sintéticos.
No arquivo myapp.js
, adicione o seguinte código. Substitua os seguintes valores nos espaços reservados por seus valores e salve o conteúdo do arquivo:
<YOUR-ATLAS-URI>
: a connection string do seu Atlas cluster. Para saber como encontrar sua connection string,consulte Encontrar sua connection MongoDB Atlas string do .<DATABASE-NAME>
: Nome do reconhecimento de data center a ser criado no Atlas.<COLLECTION-NAME>
: Nome da collection para criar no Atlas.
// require the necessary libraries const { faker } = require("@faker-js/faker"); const MongoClient = require("mongodb").MongoClient; function randomIntFromInterval(min, max) { // min and max included return Math.floor(Math.random() * (max - min + 1) + min); } async function seedDB() { // Connection URL const uri = "<YOUR-ATLAS-URI>"; const client = new MongoClient(uri); try { await client.connect(); console.log("Connected correctly to server"); const collection = client.db("<DATABASE-NAME>").collection("<COLLECTION-NAME>"); // make a bunch of time series data let timeSeriesData = []; for (let i = 0; i < 5000; i++) { const firstName = faker.person.firstName(); const lastName = faker.person.lastName(); let newDay = { timestamp_day: faker.date.past(), cat: faker.lorem.word(), owner: { email: faker.internet.email({firstName, lastName}), firstName, lastName, }, events: [], }; for (let j = 0; j < randomIntFromInterval(1, 6); j++) { let newEvent = { timestamp_event: faker.date.past(), weight: randomIntFromInterval(14,16), } newDay.events.push(newEvent); } timeSeriesData.push(newDay); } await collection.insertMany(timeSeriesData); console.log("Database seeded with synthetic data! :)"); } catch (err) { console.log(err.stack); } } seedDB();
Por exemplo, seu código pode incluir as seguintes linhas que especificam um banco de dados chamado synthetic-data-db
e uma coleção chamada synthetic-data-collection
:
const collection = client.db("synthetic-data-db").collection("synthetic-data-collection");
Esse código cria uma coleção de séries temporais sobre gatos, adiciona os seguintes campos a cada documento e preenche os campos com dados sintéticos do faker.js:
timestamp_day
cat
owner.email
owner.firstName
owner.lastName
events
Você pode substituir os campos e valores do código por campos e valores que se alinham aos seus dados. Para saber mais sobre os campos disponíveis em faker.js, consulte Referência da API do Faker.
No Atlas, VáGo para a Clusters página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se ainda não estiver exibido, clique em Clusters na barra lateral.
A página Clusters é exibida.
Vá para a página.<a class=\" \" href=\" \" title=\" \"><svg xmlns=\" \" width=\" \" height=\" \"Collections fill=\" \" viewbox=\" \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \">
Clique no botão Browse Collections para o seu cluster.
O Data Explorer é exibido.