Estoy utilizando nodejs para analizar archivos xlsx con el módulo «jsxlsx_async» y los valores se almacenan en mongodb.
Mi código:

    xlsx(file, function(err,wb){
        if (err){
            //handling err
        }
        //get data array 
        wb.getSheetDataByName('Sheet1', function(err,data){
            if (err){
                //handling err
            }
            //handling data
            console.log(data);
        });
    });

Uso: Nodejs: v0.10.25, MongoDB: v2.2.6,
OS: win8, RAM:6GB

Mis pasos:
1.leer subido xlsx y el ahorro de los que se leen los valores en un objeto JS.
2.Guarde el leer valores en mongodb colecciones por iteración los valores de la JS objeto.

Esto funciona muy bien con los más pequeños de archivos xlsx, pero yo quería analizar xlsx archivos de más de 50 MB.

Mi problema es que donde yo estoy almacenar toda la xlsx valores en una sola JS objeto.
Sírvanse proporcionar algunas ideas para una solución.
¿Hay alguna manera mejor de leer xlsx por fila y el ahorro de los valores a la vez que una fila es leer?

InformationsquelleAutor bijin-ab | 2014-02-21

1 Comentario

  1. 45

    He tenido un problema similar antes. Necesito leer un enorme objeto JSON desde un archivo txt, pero el proceso fue asesinado porque se corrió fuera de la memoria. Con respecto a este problema, mi solución fue dividir este enorme archivo en 2 archivos.

    Cuanto a tu problema, mis sugerencias son:

    1. Pruebe a aumentar el límite de memoria de motor v8. https://github.com/joyent/node/wiki/FAQ Ejemplo (8192 significa 8GB):

      node --max-old-space-size=8192 server.js 
    2. Si #1 no funciona, trate de leer xlsx fila por fila con este lib: https://github.com/ffalt/xlsx-extract

    3. Si #1, #2 no funciona, intente https://github.com/extrabacon/xlrd-parser

    • #1 no funcionan porque quiero utilizar sólo máximo de 3 gb de mi RAM #2 1) instalar el .NET Framework SDK 2.0, 2) instalar Microsoft Visual Studio 2005, que yo no quiero hacer en cloud server #3 no funciona en windows. ¿Alguien sabe cómo usar/instalar el módulo «xlrd-analizador» en windows?
    • Gracias, el módulo «xlsx-extracto de» las buenas obras con visual studio instalado.

Dejar respuesta

Please enter your comment!
Please enter your name here