Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

Utilice Vistas de MongoDB

Otra forma de controlar los datos visibles para BI Connector sin utilizar un El archivo .drdl es para leer desde una vista. Las vistas te permiten tomar una colección fuente y elegir qué campos mostrar, cambiar los nombres de los campos, ordenar los datos y realizar cualquier tipo de transformación que sea posible con el pipeline de agregación.

Ejemplo

Puedes usar vistas para redactar información confidencial de una colección y dirigir a BI Connector para que lea desde la vista, en lugar de la colección de origen.

Usa el mongo método shell createView para definir una vista sobre una colección y luego usar esa vista como un namespace específico al iniciar mongosqld.

Considera una colección llamada salaries en la base de datos employees. Al crear una vista en la colección salaries que excluya toda información personal identificable, BI Connector puede facilitar de manera segura el análisis de datos en la vista sin comprometer los datos privados en la colección fuente.

El siguiente comando inicia mongosqld con datos de una vista llamada salaries_redacted en la base de datos employees:

mongosqld --sampleNamespaces "employees.salaries_redacted"

Tip

Otro caso de uso para gestionar tu esquema con una vista de MongoDB es si tu conjunto de datos de trabajo incluye un campo importante pero escasamente poblado que puede ser excluido en el proceso de muestreo de BI Connector.

Considera una colección llamada sparseCollection que contiene un campo que aparece en cada documento y otro campo que solo aparece ocasionalmente. Una porción de la colección podría verse así:

{ "_id" : 0, "mainField": 247 }
{ "_id" : 1, "mainField": 71 }
{ "_id" : 2, "mainField": 981 }
{ "_id" : 3, "mainField": 712 }
{ "_id" : 4, "mainField": 781, "sparseField": 1000 }
{ "_id" : 5, "mainField": 256 }
{ "_id" : 6, "mainField": 910 }

Para asegurar que sparseField esté incluido cuando BI Connector cree su esquema, crea una vista en la que se rellene sparseField con ceros en cada documento en el que no ocurra.

db.runCommand (
{
create: "denseCollection",
viewOn: "sparseCollection",
pipeline: [
{
$addFields: {
sparseField: { $ifNull: [ "$sparseField", 0 ] }
}
}
]
}
)

Para utilizar la vista como fuente de datos al iniciar mongosqld, especifícalo con la opción --sampleNamespaces.

mongosqld --sampleNamespaces "myDatabase.denseCollection"

Volver

Modo de esquema automático (guardar un esquema en MongoDB)

En esta página