Inicio » Uncategorized » Precalentar colecciones en memoría

Precalentar colecciones en memoría

Prueba para cargar en memoria los ficheros en mongodb con wiretiger. Con wiretiger desaparece la opción de touch y como ya comentamos en post anteriores se puede copiar en memoria los ficheros.

https://cajondesastreoracle.wordpress.com/2016/07/30/precargando-los-datos-en-memoria-en-mongodb/

Queríamos hacer la prueba de que mejor suponía cargar los ficheros en memoria al reinicio de la máquina. Y se nos ocurrió hacer la siguiente prueba. Crear un fichero que obtuviera un find de todos los _id de la colección. Desordenar todos los datos. Y hacemos tres consultas:

 

  1. Con todos los datos en memoria
  2. Reiniciando y sin precalentar las colecciones
  3. Reiniciando y precalentado las colecciones.

 

Estos son los resultados finales

Crear el fichero sessions.js

db = db.getSiblingDB('Prueba');

db.SESION.find({}).forEach(function (SESIONES) {

printjson("db. SESION.find({\"_id\": ObjectId(\"" + SESIONES._id + "\")})" );

})

 

Lo ejecutamos en la base de datos:

mongo xx.xx.xx.xx:27017/admin -u admin -p xxxx  sessions.js > sesiones.js

Le quitamos la primera y segunda linea que tienen la conexión a mongdb y le quitamos los \

cat sesiones.js | sed 's/^.\|.$//g' |  sed 's/\\//g' | sed '1d' | sed '1d'  >sesionesnew.js

Lo desodernamos

cat sesionesnew.js | sort -R > sesionesdesordenadas.js

Hacemos un split porque el fichero es demasiado grande. El fichero contenía 5000000 de líneas y lo dejamos en 5 ficheros de 1000000

wc -l sesionesdesordenadas.js
5238482 sesionesdesordenadas.js

split -l 1000000 sesionesdesordenadas.js

 

 

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s