• Publicidad

Manejos de archivos de texto de gran tamaño

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Manejos de archivos de texto de gran tamaño

Notapor MARKO » 2017-01-24 22:09 @964

Saludos, Perl en Español.

Les comento que tengo a mi cargo el manejo de cierta información que está dividida en 6 archivos .txt los cuales están escritos en columnas con encabezados y separados por tabuladores "\t". Dichos archivos son bastante extensos (250 MB cada uno) y la información que contienen tiene información relacional entre los archivos.

Pretendo ingresar la información a bases de datos MySQL con DBI y para el procesamiento de archivos pienso leer los archivos línea a línea.

A continuación, una idea de mi código:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. @archivos ; # acá tengo las direcciones de los archivos .txt
  2.  
  3. foreach my $archivo (@archivos){
  4.     open (ARCHIVO, $archivo);
  5.  
  6.     while(my $fila = <ARCHIVO>){
  7.         my @arreglo_fila = split '\t', $fila;
  8.         #
  9.         # acá pretendo poner la consulta que ingresará la información a base de datos
  10.         #
  11.     }
  12.     close ARCHIVO;
  13. }
  14.  
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4

Me pregunto si me aconsejan algo para hacer mejor mi procesamiento de estos archivos tan grandes.

Gracias por adelantado.
MARKO
Perlero nuevo
Perlero nuevo
 
Mensajes: 86
Registrado: 2012-01-10 22:34 @982

Publicidad

Re: Manejos de archivos de texto de gran tamaño

Notapor explorer » 2017-01-25 07:56 @372

Si los archivos están bien formados... yo usaría el comando LOAD DATA INFILE de MySQL.

Obtendrás la máxima velocidad y comodidad.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Manejos de archivos de texto de gran tamaño

Notapor charlygarcia » 2017-02-22 06:57 @331

Definitivamente, lo que dice explorer: aumentarás dramáticamente la carga en la BD.
[text]¿Cómo lograr que no se seque una gota de agua? Arrojándola al mar. [/text] - Nota: Este tag no se puede utilizar en firmas.Samsara
Avatar de Usuario
charlygarcia
Perlero nuevo
Perlero nuevo
 
Mensajes: 54
Registrado: 2009-03-06 23:16 @011

Re: Manejos de archivos de texto de gran tamaño

Notapor MARKO » 2017-08-14 22:20 @972

Como siempre arreglaste mi problema, explorer :D
MARKO
Perlero nuevo
Perlero nuevo
 
Mensajes: 86
Registrado: 2012-01-10 22:34 @982


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados