Autor Tema: ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010  (Leído 17815 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado mxgxw

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 5665
  • Starlet - 999cc
    • mxgxw
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #15 : enero 27, 2016, 01:24:42 pm »
nope. lo mejor es un repositorio de archivos. las bases de datos NO son para guardar archivos, son para datos atomicos y precisos. lo que haces con eso es pisarte la eficiencia de la BD.
si te preocupa la privacidad siempre podes poner una rutina de encriptado a los archivos y guardarlos asi.

mmm sí y no.

Tuve el (desagrado) de trabajar alguna vez con DB2 de IBM. Tenés que entender que hay algunas empresas de BD cuya filosofía es todo lo que sea datos tiene que ir en al base de datos. Incluyendo coff coff datos binarios grandes.

Es más, uno de los selling points que ellos tenían era que en vez de estar con un sistema de archivos desorganizado, si por ejemplo tenías archivos multimedia te recomendaban guardarlos en la BD y que su gestor de BD era lo suficientemente potente para manejarlo... Y no solo eso... Te exponían la API para que vos pudieras hacer tus propios querys sobre los formatos binarios nativos. Por ejemplo... Que hicieras una función que te buscara todos los videos de cierta longitud.

Literalmente uno de los sellings points que tenían era que con (mucho esfuerzo) podrías tener querys tipo:

Código: [Seleccionar]
SELECT video FROM videos WHERE lenght(video) between 1:00m and 5:00m
SELECT video FROM videos WHERE predominant_color(video) IS blue

Ahora... Nunca conocí a nadie en su sano juicio que lo hiciera. Pero pues... XD Hay cosas raras en el mundo de las BDs sobre todo cuando ya entras al mundo de los proveedores tipo Enterprise que se jactan de manejar bases de datos mastodóndicas... Coff, Coff ORACLE Coff, Coff

Edit: Ahora que lo analizo con detenimiento tiene bastante sentido. Para los tiempos en que los sistemas de archivos con mucho esfuerzo llegaban a ser medianamente confiables. Ya existían gestores de bases de datos que guardaban directamente los datos en los medios de almacenamiento (sin pasar por un sistema de archivo). Así que no dudo que todos los gestores que vienen de esas épocas confiaran total y completamente en su BD para guardar binarios de gran tamaño.
« Última Modificación: enero 27, 2016, 02:38:32 pm por mxgxw »


Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #16 : enero 27, 2016, 01:40:24 pm »
mmm sí y no.

Tuve el (desagrado) de trabajar alguna vez con DB2 de IBM. Tenés que entender que hay algunas empresas de BD cuya filosofía es todo lo que sea datos tiene que ir en al base de datos. Incluyendo coff coff datos binarios grandes.

Es más, uno de los selling points que ellos tenían era que en vez de estar con un sistema de archivos desorganizado, si por ejemplo tenías archivos multimedia te recomendaban guardarlos en la BD y que su gestor de BD era lo suficientemente potente para manejarlo... Y no solo eso... Te exponían la API para que vos pudieras hacer tus propios querys sobre los formatos binarios nativos. Por ejemplo... Que hicieras una función que te buscara todos los videos de cierta longitud.

Ahora... Nunuca conocí a nadie en su sano juicio que lo hiciera. Pero pues... XD Hay cosas raras en el mundo de las BDs sobre todo cuando ya entras al mundo de los proveedores tipo Enterprise que se jactan de manejar bases de datos mastodóndicas... Coff, Coff ORACLE Coff, Coff
osea tecnicamente si *podes* hacerlo, pero put@ sacrificas tanta flexibilidad solo por eso... vaya hagamos interesante el tema

lo unico mas chambon que meter archivos en una BD es embeber las imagenes de una pagina web en el mismo codigo. el mismo principio aplica y las mismas malas consecuencias tenes: aunque la BD se jacte de ser suficientemente robusta como para poder manejar eficientemente archivos... mira las consecuencias:
1. si es para web, no podes usar un CDN porque tus datos estan amarrados a una sola fuente. aunque la BD pueda manejarlo, es en principio mas lento que tener tu BD+CDN.

2. del lado de administracion... si manejas una base realmente grande... lo que menos queres es que te este creciendo por puro gusto. en mi trabajo manejamos una BD que tiene varias decenas de gigabytes de puros datos, nada de archivos, restaurar esa babosada toma mas de seis horas. ahora sumale que tuvieramos todo incluyendo las decenas de gigas de archivos que tenemos en el repositorio de archivos estuvieran sampados ahi... pota, capaz pasas dos dias volandole v3rga. solo para restaurar o montar un entorno de pruebas.

3. si tenes archivos de estructura de tu web en una BD... pota que huevo tener que estar haciendo queries cada vez que queras cambiar un detalle del sistema, en vez de editar el archivo directamente.

4.  de nuevo, usar un repositorio de datos es MEJOR. es mas trabajo implementarlo, pero vale la pena.

Desconectado mxgxw

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 5665
  • Starlet - 999cc
    • mxgxw
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #17 : enero 27, 2016, 01:50:34 pm »
osea tecnicamente si *podes* hacerlo, pero put@ sacrificas tanta flexibilidad solo por eso... vaya hagamos interesante el tema

lo unico mas chambon que meter archivos en una BD es embeber las imagenes de una pagina web en el mismo codigo. el mismo principio aplica y las mismas malas consecuencias tenes: aunque la BD se jacte de ser suficientemente robusta como para poder manejar eficientemente archivos... mira las consecuencias:
1. si es para web, no podes usar un CDN porque tus datos estan amarrados a una sola fuente. aunque la BD pueda manejarlo, es en principio mas lento que tener tu BD+CDN.

2. del lado de administracion... si manejas una base realmente grande... lo que menos queres es que te este creciendo por puro gusto. en mi trabajo manejamos una BD que tiene varias decenas de gigabytes de puros datos, nada de archivos, restaurar esa babosada toma mas de seis horas. ahora sumale que tuvieramos todo incluyendo las decenas de gigas de archivos que tenemos en el repositorio de archivos estuvieran sampados ahi... pota, capaz pasas dos dias volandole v3rga. solo para restaurar o montar un entorno de pruebas.

3. si tenes archivos de estructura de tu web en una BD... pota que huevo tener que estar haciendo queries cada vez que queras cambiar un detalle del sistema, en vez de editar el archivo directamente.

4.  de nuevo, usar un repositorio de datos es MEJOR. es mas trabajo implementarlo, pero vale la pena.

No y honestamente te digo. No conosco a nadie en su sano juicio que lo haga.

Estoy de acuerdo con 1, 3 y 4.

Respecto a 2... estamos hablando ya de BDs entreprise level. Se supone que si estas usando algo así ya tenes tu datacenter con tus procedimientos de replicación y restauración semi-automatizados, backups incrementales o parciales, etc, et, etc. Se supone que todo esto te lo ofrece un proveedor Enterprise, independientemente del tipo de dato o estrategia de almacenamiento que decidás implementar se supone que estas pagando a razón de miles de dolares en licencias por core de procesamiento en que se corre tu DB para que se pueda procesar y mantener (aunque sea con un mini equipo swat de DBAs). Literalmente ellos te venden su producto para que pueda manejar TB y TB de datos como si nada. (O al menos eso te tratan de vender los de Marketing).

Como punto interesante... La mayoría de BDs NoSQL que se han puesto de moda en los últimos años funcionan más bien como un sistema de archivos distribuido con algún mecanismo para consulta de metadata que como un DB relacional tradicional, así que realmente se encuentran como en un punto intermedio.




Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #18 : enero 27, 2016, 01:53:15 pm »
Respecto a 2... estamos hablando ya de BDs entreprise level. Se supone que si estas usando algo así ya tenes tu datacenter con tus procedimientos de replicación y restauración semi-automatizados, backups incrementales o parciales, etc, et, etc. Se supone que todo esto te lo ofrece un proveedor Enterprise, independientemente del tipo de dato o estrategia de almacenamiento que decidás implementar se supone que estas pagando a razón de miles de dolares en licencias por core de procesamiento en que se corre tu DB para que se pueda procesar y mantener (aunque sea con un mini equipo swat de DBAs). Literalmente ellos te venden su producto para que pueda manejar TB y TB de datos como si nada. (O al menos eso te tratan de vender los de Marketing).
tecnicamente, es cierto, y talvez sea pila mia de apegarme a la regla de oro de la informatica: divide y venceras. me gustan las soluciones que no ponen todos sus huevos en una sola canasta.

Desconectado ELITE

  • The Communiter-
  • *
  • Mensajes: 6227
  • NEMO ME IMPUNE LACESSIT
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #19 : enero 27, 2016, 02:20:24 pm »
lo unico mas chambon que meter archivos en una BD es embeber las imagenes de una pagina web en el mismo codigo.

Juela no se que ondas pero entre en un lapsos con esa afirmación  x_x

A que te referis cuando pones "embeber" (se el significado de lo que es embeber) pero me perdi entre eso y los tag <img> </img> de html  :sad:

Solo despeja mi duda, pueda que no halla captado tu comentario

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #20 : enero 27, 2016, 02:32:07 pm »
que hay mara tan san verga que en lugar de poner

Código: [Seleccionar]
<img src="midir/mi_imagen_cacasa.png">
hacen esto:

Código: [Seleccionar]
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
 NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
 cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
 gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
 0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
 aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
 v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
 NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
 Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
 AAAAAElFTkSuQmCC" alt="mi_imagen_cacasa.png">

Desconectado ELITE

  • The Communiter-
  • *
  • Mensajes: 6227
  • NEMO ME IMPUNE LACESSIT
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #21 : enero 27, 2016, 03:05:41 pm »
WTF ??  :shockd:

Mejor explicado se arruina, muy fino  :thumbsup:





Juela pero eso ya es el colmo del extremo considero  :dumb:

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #22 : enero 27, 2016, 03:18:03 pm »
Hacer es puede no ser ideal para páginas web comunes pero es lo más convenieniente para crear aplicaciones HTML5 locales que contengan absolutamente todo el código y los recursos en un único archivo.

La otra opción sería guardar todo en un TAR y descomprimir la aplicación y sus recursos sueltos dentro de un subdirectorio, aunque parece que empacar e incluso comprimir los datos con JavaScript mismo implementando LZW, GZip, LZ77, codificación Huffman o una combinación de esos algoritmos en un mismo archivo HTML5 es lo más práctico y lo más parecido a crear un ejecutable más portable y multiplataforma que un programa de Java.

Se podría organizar o compilar de alguna forma para que todo esté organizado de forma eficiente como los recursos de un programa binario regular de Windows.
anda a fumar piedra a otro lado bicho.

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #23 : enero 27, 2016, 03:24:53 pm »
este maje solo es astralidades bayuncas y ni sabe que sus pederas ya fueron superadas por cosas de verdad. anda a leerte sobre Node.js y averiguate sobre todas las aplicaciones de escritorio que YA funcionan como vos alucinas, solo que mejor porque de hecho sirven y son vergonas.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #24 : enero 27, 2016, 04:15:56 pm »
no iva a responder a este thread, pero en vista de los últimos comentarios (nada que ver con ~) voy a exponer mi caso...

yo tengo un proyectiyo en vb.Net sobre postgresql... como sabran los mejores rportes de .Net son los de CrystalReport, a estos debes de samparlos en el exe, o cargarlos desde archivos .rpt... yo lo que hago es meter mis .rpt a una tabla en la base de datos y extraerlos al momento de la ejecución del reporte... los archivos más pesados llegan a tener los miseros 16KB... lo que gano al tenerlos en la DB es que si quieren modificar un reporte, solo reemplazo el .rpt en mi DB y ya todos los usuarios tienen el reporte actualizado.

obviamente, ya comentaron antes de que hay razones donde guardar archivos binarios en la DB es una buena decisión, acá dejo nada más una excelente muestra de ello

lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #25 : enero 27, 2016, 04:21:06 pm »
no iva a responder a este thread, pero en vista de los últimos comentarios (nada que ver con ~) voy a exponer mi caso...

yo tengo un proyectiyo en vb.Net sobre postgresql... como sabran los mejores rportes de .Net son los de CrystalReport, a estos debes de samparlos en el exe, o cargarlos desde archivos .rpt... yo lo que hago es meter mis .rpt a una tabla en la base de datos y extraerlos al momento de la ejecución del reporte... los archivos más pesados llegan a tener los miseros 16KB... lo que gano al tenerlos en la DB es que si quieren modificar un reporte, solo reemplazo el .rpt en mi DB y ya todos los usuarios tienen el reporte actualizado.

obviamente, ya comentaron antes de que hay razones donde guardar archivos binarios en la DB es una buena decisión, acá dejo nada más una excelente muestra de ello


en proyectos pequenos es valido pues, osea no es como que estes trabajando con cantidades masivas de datos, aparte que tenes un control bien fino sobre que entra y que sale,  me llegan esos proyectos chiquitos porque podes hacer cualquier pelazon experimental y mientras te funcionen, generalmente nadie te dice nada, pero en sistemas grandecitos que manejan distintas fuentes de datos y esas fuentes de datos pueden tener entradas inesperadas... como que no mucho pues.

y si no me equivoco, igual te funcionara con un repositorio publico de configuracion, aunque tu caso es bien curioso donde si es mas elegante tenerlo en la base de datos.
aparte que vos sos un DBA verdad?
« Última Modificación: enero 27, 2016, 04:25:03 pm por g00mba »

Desconectado Jonhyrey

  • Sv Full Member
  • *
  • Mensajes: 558
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #26 : enero 27, 2016, 04:24:20 pm »
Hacer es puede no ser ideal para páginas web comunes pero es lo más convenieniente para crear aplicaciones HTML5 locales que contengan absolutamente todo el código y los recursos en un único archivo.

La otra opción sería guardar todo en un TAR y descomprimir la aplicación y sus recursos sueltos dentro de un subdirectorio, aunque parece que empacar e incluso comprimir los datos con JavaScript mismo implementando LZW, GZip, LZ77, codificación Huffman o una combinación de esos algoritmos en un mismo archivo HTML5 es lo más práctico y lo más parecido a crear un ejecutable más portable y multiplataforma que un programa de Java.

Se podría organizar o compilar de alguna forma para que todo esté organizado de forma eficiente como los recursos de un programa binario regular de Windows.

Nambe no seas bayunco chele!
Si ya está la ruedita optima para manejar el asunto para que le queres dar vuelta??

Y esto de guardar datos binarios en una BD es problemático. Recuerdo hace un tiempo que teniamos imagenes guardadas en un campo varbinary en una BD, y en una de esas pelazones de la Red un sector de la empresa se quedo sin comunicaciones y dejaron a medias un guardado de imagen.
Tocó Truncate table y a tratar de salvar los datos.

Esta onda de meter archivos y cosas no deberían ser utilizadas en aplicaciones Medianas - grandes. Sin embargo, yo me quebre un Sistemita pequeño WPF de Scores de Golf que guardaba las imagenes en la BD de SQL Server y funcionaba de toque con esa nueva columna Image que metieron a partir del SQL 2008.

Yo creo que hay que analizar el crecimiento para poder tomar una decisión de esas.



Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #27 : enero 27, 2016, 04:28:41 pm »
Yo creo que hay que analizar el crecimiento para poder tomar una decisión de esas.
por regla general es mejor separar las cosas. hay casos donde la escalabilidad no importa tanto, sistemas pequenios, sistemas que no van a recibir mucho cambio en esos datos... si, digamos que no es un crimen pues.

pero dejense de paja, si un DBA mete su cuchara TODO lo va a querer hacer a puro tubo con la BD  :yao_ming:

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #28 : enero 27, 2016, 04:33:20 pm »
pero dejense de paja, si un DBA mete su cuchara TODO lo va a querer hacer a puro tubo con la BD  :yao_ming:

ahuevo y va a venir un desarrollador y va a querer que todas las reglas del negocio estén en el proyecto jejejejeejej
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:ABRIR UN PDF ALMACENADO EN SQL DESDE VISUAL STUDIO 2010
« Respuesta #29 : enero 27, 2016, 04:37:59 pm »
ahuevo y va a venir un desarrollador y va a querer que todas las reglas del negocio estén en el proyecto jejejejeejej




pero... esque asi tiene que ser, para eso son los modelos y controladores
« Última Modificación: enero 27, 2016, 04:40:23 pm por g00mba »