¿Como me doy de baja de la lista? Gracias!
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Libre de virus. www.avg.com <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> El 4 de agosto de 2017, 17:02, Diego Ayala <netdieg...@gmail.com> escribió: > Gracias jvenegasperu, intentare realizar tambien esta prueba que me pasas > en la siguiente semana. Agradecido por la ayuda. > > El 4 de agosto de 2017, 15:33, jvenegasperu . <jvenegasp...@gmail.com> > escribió: > >> Hola Diego >> >> Se me ocurre que hagas lo siguiente: >> >> hazte una tabla digamos con 1000 registros extrayendolos de la tabla de >> 1.5 Tb >> >> luego miras cuanto pesa esta tabla de 1000 registros >> >> con eso te haces una idea de cuanto pesa cada registro de tu BD. >> >> luego mide y pesa unas cuantas imagens para que tengas una idea de las >> medidas y pesos de las fotos >> >> Con esos datos a esa tabla de prueba con 1000 registros resultante >> aplicale el script anterior que te pase ajustandole las dimensiones >> >> aplicas el script a la tabla dandole las medidas que te servirian y le >> haces vacuum para que actualice las estadisticas >> >> y nuevamente pasas la consulta para el tamaño asi tendras una idea de >> cuanto puedes reducir las imagenes. en tu tabla real de 1.5 Tb >> >> PD: Esto te serviria si por ejemplo la alta resolucion de las imagenes no >> es necesaria una vez un medico me dijo que necesitaba las fotos con 20 >> Megapixels para poder notar un minusculo cambio de color que representaba >> una infección. >> >> Ahora tu hablas de unas 2000 fotos y 5000Gb por dia eso da 2.5 Mb por >> foto y es una barbaridad si te estoy entendiendo bien y se trata de fotos >> de cedulas para identificacion o DNI como le llamamos aqui en Peru yo diria >> que con 100Kb es ya una exageracion mira ahi te adjunto mi foto que uso >> para la cedula y solo pesa 15Kb jeje >> >> Estoy imaginando que se trata de un fotografo que tomas las fotos para la >> cedula con una super camara asi pueden retocar la foto y hasta ponerte >> terno jajaja como mi foto. >> >> O quizas como es postgres 8.3 ya son como 10 años y antes cargaban las >> fotos con scaneres y esas fotos pesaban una barbaridad quiza solo baste >> ajustando las imagenes de años pasados para bajar el peso de tu BD a la >> quinta parte y hasta menos porque quien sabe y por ahi alguien uso en años >> pasados fotos en formato BMP que pesan un monton y por nada porque incluso >> solo cambiando el formato sin cambiar tamaño ya ganas muchisimo espacio eso >> me lleva a pensar que quiza en tu prueba de 1000 registros puedas incluir >> digamos unos 100 registros de cada año. y te averigues cual era el origen >> de las fotos. >> >> Bueno ahi te envio mi foto de la cedula para que veas que es mas que >> suficiente y eso que solo tiene 15Kb si tu caso se parece a lo que te >> comento puedes aplicar estos pequeños aportes saludos >> >> El 4 de agosto de 2017, 13:43, Diego Ayala <netdieg...@gmail.com> >> escribió: >> >>> Buen dia, Gracias por tu ayuda, te explico, la tabla principal, de >>> imagen crece a razon de 4 a 5 GB por dia, debido a que se procesan entre >>> 1500 a 2000 renovaciones o nuevas emisiones de cedulas de identidad >>> personal, por eso ese crecimiento. Es un software propietario que se >>> instalo con el 8.3 en windows, ya varios años atras, por lo tanto el >>> mantemiento y demas se ha complicado. >>> >>> El 4 de agosto de 2017, 14:08, jvenegasperu . <jvenegasp...@gmail.com> >>> escribió: >>> >>>> Diego que tal buen dia >>>> Queria preguntarte porque esta creciendo tanto tu BD ¿no sera que por >>>> ejemplo tienes fotos gigantes y no las necesitas tan grandes? >>>> >>>> Por ejemplo a mi me pasaba que mis usuarios tomaban fotos con camaras y >>>> celulares con resoluciones de 8 10 o hasta 16Mb y luego las subian a la BD >>>> a traves del sistema y bueno el resultado es que cada imagen la mas pequeña >>>> pesaba 3 MB y cuando las mostraban en pantalla en el monitor pues ni >>>> siquiera caben en el monitor tenian estar jugando con la lupa para que >>>> puedan verse. >>>> >>>> y claro se ajustaba el tamaño en el sistema web pero igual a veces se >>>> notaba lento cuando tenia que cargar una iamgen muy grande >>>> >>>> Asi que lo que hice fue pues cambiarle el tamaño a todas las fotos >>>> considerando solo un alto maximo de 999 pixeles y conservando el ratio de >>>> aspecto asi ocupa casi todo el alto de la mayoria de monitores y se ven >>>> bien. >>>> bueno lo hice por partes con un where para ir avanzando y reduje el >>>> tamaño de mi BD como 40 Gb en mi caso no tengo tanta información. >>>> >>>> Quizas sea tu caso aqui te dejo el script en php que use para cambiar >>>> el tamaño a las imagenes quizas sea tu caso. >>>> >>>> set_time_limit(0); >>>> >>>> ini_set('gd.jpeg_ignore_warning', 1); >>>> >>>> $conn = pg_connect("user=usuario password=clave dbname=nombre_bd >>>> host=ip_del_deserver port=5433"); >>>> >>>> $result = pg_query($conn, "SELECT fotos_notif_id FROM cp_fotos_notif >>>> where fotos_notif_id >= 17105 "); >>>> >>>> session_start(); >>>> ob_end_flush(); >>>> ob_start(); >>>> >>>> while ($raw = pg_fetch_array($result)) { >>>> >>>> $query = pg_query($conn, "SELECT foto FROM cp_fotos_notif where >>>> fotos_notif_id = " . $raw['fotos_notif_id'] . " "); >>>> $row = pg_fetch_row($query); >>>> >>>> $image = pg_unescape_bytea($row[0]); >>>> >>>> $fichero = file_put_contents('image_original.jpg', $image); >>>> >>>> $fotito = 'image_original.jpg'; >>>> >>>> //Ruta de la imagen original >>>> $rutaImagenOriginal = $fotito; >>>> >>>> //Creamos una variable imagen a partir de la imagen original >>>> $img_original = imagecreatefromjpeg($rutaImagenOriginal); >>>> >>>> //Se define el maximo ancho o alto que tendra la imagen final >>>> $max_ancho = 999; >>>> $max_alto = 999; >>>> >>>> //Ancho y alto de la imagen original >>>> list($ancho, $alto) = getimagesize($rutaImagenOriginal); >>>> >>>> if ($alto > 999) { >>>> >>>> //Se calcula ancho y alto de la imagen final >>>> $x_ratio = $max_ancho / $ancho; >>>> $y_ratio = $max_alto / $alto; >>>> >>>> //Si el ancho y el alto de la imagen no superan los maximos, >>>> //ancho final y alto final son los que tiene actualmente >>>> if (($ancho <= $max_ancho) && ($alto <= $max_alto)) {//Si >>>> ancho >>>> $ancho_final = $ancho; >>>> $alto_final = $alto; >>>> } >>>> /* >>>> * si proporcion horizontal*alto mayor que el alto maximo, >>>> * alto final es alto por la proporcion horizontal >>>> * es decir, le quitamos al alto, la misma proporcion que >>>> * le quitamos al alto >>>> * >>>> */ elseif (($x_ratio * $alto) < $max_alto) { >>>> $alto_final = ceil($x_ratio * $alto); >>>> $ancho_final = $max_ancho; >>>> } >>>> /* >>>> * Igual que antes pero a la inversa >>>> */ else { >>>> $ancho_final = ceil($y_ratio * $ancho); >>>> $alto_final = $max_alto; >>>> } >>>> >>>> //Creamos una imagen en blanco de tamanio $ancho_final por >>>> $alto_final . >>>> $tmp = imagecreatetruecolor($ancho_final, $alto_final); >>>> >>>> //Copiamos $img_original sobre la imagen que acabamos de >>>> crear en blanco ($tmp) >>>> imagecopyresampled($tmp, $img_original, 0, 0, 0, 0, >>>> $ancho_final, $alto_final, $ancho, $alto); >>>> >>>> //Se destruye variable $img_original para liberar memoria >>>> imagedestroy($img_original); >>>> >>>> //Definimos la calidad de la imagen final >>>> $calidad = 95; >>>> >>>> //Se crea la imagen final en el directorio indicado >>>> imagejpeg($tmp, "ejemplo.jpg", $calidad); >>>> >>>> $data = file_get_contents('ejemplo.jpg'); >>>> $pg_tmp = pg_escape_bytea($data); >>>> >>>> //pg_query($conn, "insert into fotitos (foto) values('{$pg_tmp}')"); >>>> pg_query($conn, "UPDATE cp_fotos_notif SET foto = '{$pg_tmp}' >>>> WHERE fotos_notif_id = " . $raw['fotos_notif_id'] . " "); >>>> >>>> echo 'se actualizo'.$raw['fotos_notif_id'].'<br>'; >>>> >>>> } else { >>>> >>>> echo $raw['fotos_notif_id'].' ya tiene el tamaño menor a 999 >>>> <br>'; >>>> } >>>> >>>> ob_flush(); >>>> flush(); >>>> } >>>> pg_close($conn); >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> El 4 de agosto de 2017, 11:11, Diego Ayala <netdieg...@gmail.com> >>>> escribió: >>>> >>>>> Buenos días, tengo un compañero de una institución que esta teniendo >>>>> problemas, el problema es el siguiente, tiene una DB PostgresSQL 8.3 sobre >>>>> windows, aclaro que es un sistema critico, y que al adquirir el software >>>>> hace varios años, se lo entregaron asi, el tema es que se esta quedando >>>>> sin >>>>> espacio en disco, y ya no puede agregar discos(tiene 2TB de capacidad, >>>>> pero >>>>> ya esta utilizado 1,8 TB), el cluster tiene varias DB's, pero es una DB >>>>> la >>>>> que tiene 1 sola tabla que es la que esta con crecimiento , la tabla tiene >>>>> 1.5TB (imágenes), que esta sobre un tablespace (otro disco) que también >>>>> esta quedando sin espacio, la pregunta que tengo, como se puede optimizar >>>>> el Backup, pg_dump, ya que dura aproximadamente 16hs en terminar y otras >>>>> 15 >>>>> horas en restore, es un sistema critico que no se puede parar por mucho >>>>> tiempo, la idea es migrar a un servidor nuevo, con mas disco, pero implica >>>>> parar para realizar el bkp, pero es mucho tiempo, alguien podria darme una >>>>> mano de como realizarlo, lastimosamente, el 8.3 no tiene todavia la >>>>> replicacion nativa, por lo tanto no puedo utilizar el SR. >>>>> >>>>> Gracias. >>>>> >>>>> >>>> >>>> >>>> -- >>>> José Mercedes Venegas Acevedo >>>> cel Mov RPC 964185205 >>>> >>>> Member of the PHP Documentation Group (Spanish) >>>> >>> >>> >> >> >> -- >> José Mercedes Venegas Acevedo >> cel Mov RPC 964185205 >> >> Member of the PHP Documentation Group (Spanish) >> > > -- Vanesa Montagna Lic. en Cs. de la Computación