Hola: En mi empeño por conseguir que R me muestre cuantos registros lleva insertados en una megasubida de datos a un SQL Server, he empezado a mirar algo sobre paralelización de procesos en R. La idea es: 1. Lanzar en un hilo o proceso de R, una función (ya construida), que se encarga de consultar en la tabla de SQL cuantos registros se han insertado hasta el momento y mostrar una barra de progreso. El código seria algo como: #Parametros de seguimiento de la operación canal <- channel #Canal de conexión RODBC a SQL Server tab <- "Pruebas_R" #Nombre de tabla a la que se subirán los datos a.subir <- as.numeric(nrow(datos)) #Numero de registros a subir en.tabla <- as.numeric(sqlQuery(channel,paste("SELECT Count(*) ", " FROM ",tab, sep=""))) #Numero de registros que (antes de la subida) tiene la tabla frec <- 1 #Frecuencia en segundos de la actualización de la barra de progreso #Funcion de seguimiento de la operación pb <- function( channel, tabla,datos.a.subir,datos.ya.en.tabla,frec.actualiz ){ barra <- winProgressBar(title="Subiendo datos a SQL ", label = "Subido el: ", min= 0, max= 1,initial= 0, width = 800) total = 0 #Variable que acumula los registros subidos mas los que ya había while ( datos.ya.en.tabla + datos.a.subir > total ) { total <- sqlQuery(canal,paste("SELECT Count(*) ", " FROM ",tabla, sep="")) porcen <- as.numeric((total-datos.ya.en.tabla) / datos.a.subir) setWinProgressBar(barra, porcen,title="SUBIENDO DATOS A SQL", label =paste("Subido el: ", round(porcen *100,0), "% de los datos. Quedan por subir ",total-datos.a.subir, " registros de ", datos.a.subir, "." , sep="")) flush.console() Sys.sleep(frec.actualiz) } close(barra) print("SUBIDA DE DATOS TERMINADA") } pb(canal,tab,a.subir,en.tabla,frec) 2.En el otro hilo o proceso se llevaría a cabo la inserción de los registros del df datos en la tabla. Este proceso o hilo seria lanzado después del proceso anterior. El código seria una sola línea: sqlSave(channel,datos,tablename =tabla, rownames = FALSE, append=TRUE, fast=TRUE ) He estado intentándolo hacer con los paquetes snowfall y Rdsm pero no lo he conseguido por mas que leo y releo la ayuda. :-( Básicamente en lo que fallo es en decirle a R: Corre por un lado el proceso 1 y luego por otro lado el proceso 2, pero no hay manera de inicializar los cluster(en caso de snowfall) y los hilos(en caso de Rdsm). Por cierto trabajo con Windows XP asi que la opción del paquete multicore no me vale. Os agradecería que me abrierais los ojos. GRACIAS Un saludo. José Luis Gilsanz Gómez Estadística Tasaciones Hipotecarias María de Molina, 54 - 28006 - Madrid Tel. : 34-914549694 Fax : 34-917822164 Email : jluis.gilsanz en tasacionesh.com Site web: www.tasacionesh.es -- AVISO LEGAL -- Los datos personales que en esta comunicación aparecen, así como los que nuestra empresa mantiene de Vd. y de su empresa, son tratados con la finalidad de mantener el contacto así como realizar las gestiones que en esta aparecen (Ley Orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal). Puede ejercer sus derechos de acceso, rectificación, cancelación y oposición dirigiéndose a atencion.clientesth en tasacionesh.com. La utilización de su dirección de correo electrónico por parte de nuestra empresa queda sujeta a las disposiciones de la Ley 34/2002, de Servicios de la Sociedad de la Información y el Comercio Electrónico. Si Vd. recibe comunicación comercial por nuestra parte y desea dejar de recibirla, rogamos nos lo comunique por vía electrónica a través de la dirección atencion.clientesth en tasacionesh.com . -- AVISO LEGAL -- Los datos personales que en esta comunicación aparecen, así como los que nuestra empresa mantiene de Vd. y de su empresa, son tratados con la finalidad de mantener el contacto así como realizar las gestiones que en esta aparecen (Ley Orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal). Puede ejercer sus derechos de acceso, rectificación, cancelación y oposición dirigiéndose a atencion.clientes en tasacionesh.com La utilización de su dirección de correo electrónico por parte de nuestra empresa queda sujeta a las disposiciones de la Ley 34/2002, de Servicios de la Sociedad de la Información y el Comercio Electrónico. Si Vd. recibe comunicación comercial por nuestra parte y desea dejar de recibirla, rogamos nos lo comunique por vía electrónica a través de la dirección atencion.clientes en tasacionesh.com ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20130417/d1d52e6b/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: no disponible Type: image/jpeg Size: 24195 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20130417/d1d52e6b/attachment-0001.jpe>