Una de las decisiones más importantes al instalar un sistema de gestión documental en una organización (empresa, AAPP… ver nota al pie) es la base de datos en la que almacenar los miles, decenas de miles… o millones de documentos que se van a gestionar con el nuevo software.
Aunque parezca una decisión «técnica», sus consecuencias son muy importantes por lo que no debe dejarse de lado como una «característica técnica más». Estamos hablando del «contenedor» de todos los documentos y una elección incorrecta puede poner en peligro el funcionamiento de la empresa por lo que su elección no debe responder únicamente a criterios técnicos.
Sin ánimo de ser exhaustivo, me gustaría recorrer las diferentes posibilidades que encontramos en el mercado y analizar sus principales ventajas e inconvenientes. Estoy seguro que este sencillo ejercicio será suficiente para tomar una decisión bien fundada o, al menos, servirá para descartar algunas opciones rápidamente.
Empecemos por lo más sencillo: guardo mis documentos como archivos en Windows (o Mac) dispersos por carpetas en los ordenadores de cada usuario. Obviamente esta forma de guardar los documentos no tiene ningún sentido (en un ámbito profesional) porque no ofrece las mínimas garantías de seguridad, no permite hacer copias de una forma sencilla y segura y resulta casi imposible localizar un documento concreto, a no ser que Pepe, María o Juan se acuerden casualmente dónde lo guardaron. Lo cito simplemente para que tengamos claro qué problemas esperamos que nos resuelva un buen programa de gestión documental.
El siguiente paso sería guardar estos documentos, ficheros, en un servidor único al que acceden los usuarios. Es un paso adelante. Simplifica muchísimo la creación de copias de seguridad y aumenta las posibilidades de encontrar un documento cuando vaya a buscarlo. Sigue pendiente un sistema de búsquedas eficiente y aunque posibles, las copias de seguridad requerirán un programa que controle los cambios, añadidos, eliminaciones… para que sea eficiente. Para cientos de documentos, a lo sumo unos pocos miles, y pocos usuarios puede funcionar. Pero no resistirá si aumente el volumen (de ficheros o usuarios).
Tercera opción: un programa de gestión de ficheros (me resisto a llamarlo «gestión documental») que permite clasificarlos con una estructura más o menos sencilla. Mantiene los documentos como ficheros de Windows (o Mac, ya no lo repetiré más) y resuelve o mejora las búsquedas. No resuelve, en absoluto, el problema de hacer copias de seguridad de los documentos (ficheros dispersos) ni el acceso a ellos. No deja de ser un juguete para pocos documentos. Nada más.
Cuarta posibilidad: por fin, una base de datos para almacenar los documentos. En realidad debería haber empezado por aquí. No tiene sentido hablar de gestión documental «en serio» si no hay una base de datos gestionando los documentos. Así que, empiezo de nuevo la numeración porque hay varias opciones.
1.- Base de datos «propietaria». Aunque parezca mentira, hay empresas que ofrecen sus productos sobre «su» propia base de datos. Digo que parece mentira porque esta situación la vivimos hace 20 años con los sistemas operativos y el hardware y parecía que se había acabado ya. A muchos, no solo a mí, nos sorprende que haya empresas que utilizan su propia base de datos para conservar y gestionar documentos. Casi tanto como si no utilizasen un sistema operativo «estándar» como Windows, Mac o Linux. Sin embargo, ahí están. Existen. Y tienen, algunas empresas, buenos productos. Me cuesta encontrar «pros» a esta forma de archivo. Es evidente que para estas empresas su producto es estupendo y lo conocen a la perfección, ya que ellos lo han desarrollado. Pero igualmente puedes conocer muy bien Oracle o SQL server. Pueden decir que son robustas, pero ¿más que Oracle? Creo que la única ventaja posible puede ser el precio. Y, sin embargo, inconvenientes le encuentro muchos. Robustez, calidad, seguridad… ¿Pueden compararse con los «monstruos» de las bases de datos que llevan 20, 30 ó 40 años instalando millones de gestores de datos por todo el mundo? Y, por encima de todo: ¿qué pasa si tienes un problema con tu proveedor, con esta empresa? ¿Cómo accedes a tus documentos, guardados en un sistema que nadie, nadie, conoce salvo ellos? Realmente me cuesta imaginar que sea razonable instalar un programa de gestión documental sobre una base de datos propietaria.
2.- Base de datos «estándar». Con «estándar» quiero decir que sea un producto conocido, con muchos años de vida, del que hay manuales, documentación, cursos… del que puedes encontrar un técnico en cualquier lugar del mundo. En esta categoría, que puede parecer restrictiva, hay muchos productos. Por citar alguno: DB2, Firebird, Informix, Interbase, MySQL, Oracle, PostgreSQL, Pervasive, SQLite, SQL Server, Sybase… Todos estos tienen una característica: se basan en el lenguage de consulta estructurado SQL que es tan, tan estándar, que no creo razonable salirse de él. Ya tenemos un grupo ganador. Aunque dentro de esta lista haría 3 grupos:
2.a.- Las de software libre: MySQL es, creo, la más representativa o conocida.
2.b.- Oracle y SQL Server (de Microsoft): las más extendidas, de largo. (Tanto que ya escribí hace tiempo sobre ellas).
2.c.- El resto. Algunas como DB2 casi tan conocidas como Oracle, pero propiedad de IBM, dirigida a grandes empresas y, por tanto, mucho menos extendida que Oracle o SQL server. Otras han tenido su momento de gloria, o tienen su nicho de mercado, pero su popularidad no tiene comparación respecto a las dos anteriores.
Para empezar, descartaría el tercer grupo, ya que en este blog hablo de gestión documental para PYMES.
Me quedo, por fin, con 3 finalistas. Tanto Oracle como SQL Server o MySQL tienen las características que considero IMPRESCINDIBLES para un programa que vaya a instalar en una empresa: son muy, muy conocidas, hay técnicos expertos en su manejo en cualquier sitio y son muy robustas y escalables. A partir de ahí, la discusión de si una es mejor que otra en tal y cual punto es irrelevante: cualquiera de ellas es más que suficiente para manejar mis cientos de miles de documentos sin problema. Un software de gestión documental «basado» en cualquiera de las tres será bueno o malo por sí mismo, pero no por la base de datos que utiliza.
Por mi parte, si eres lector habitual ya lo sabes, me gusta más Oracle, probablemente porque es la que mejor conozco. Pero no descartaría un programa que utilice alguna de las otras dos. Eso sí, asegúrate de que la empresa que te instale el software te da las claves de acceso a los datos. Si les toca la lotería y desaparecen o simplemente te peleas con ellos porque te suben el precio del mantenimiento, tener un acceso directo a los documentos es un seguro de vida.
Nota: en todas las entradas de este blog, y en ésta en particular, utilizo «empresa» para referirme a la organización que instala o piensa instalar un sistema de gestión documental. Puede ser una empresa, pública o privada, un despacho profesional, una consulta de un médico o una Administración Pública, ya sea un ayuntamiento o un departamento de un ministerio o una Universidad. Incluso una persona solamente (aunque con muchos documentos). Utilizo la palabra «EMPRESA» por economía del lenguaje. Espero que no haya que respetar la «paridad» en este caso y los lectores de organizaciones que no son una empresa no se sientan discriminados.
Vaya, pero si el señor Anti-Software Libre ahora parece que tiene palabras bonitas para uno de los máximos exponentes de este movimiento. Resumiendo, dices que «MySQL tiene características que considero IMPRESCINDIBLES, es muy conocida y hay técnicos expertos en su manejo en cualquier sitio, es muy robusta y escalable».
Me alegro que digas eso, para que veas que cuando te interesa hablas bien de software libre. MySQL tiene una empresa detrás que vende soporte y licencias de MySQL Enterprise. Como tantos otros productos que lo único malo que tienen es que afectan a tu negocio directamente, por lo tanto, no eres Anti-Software Libre, eres «Anti-Lo que me toque el bolsillo». Como yo y como todos. Si hablamos de tecnología que quede claro y si hablamos de economía también.
Se te ha visto el plumero amigo…
Cuanto lees, en vez de escuchar la voz, no sabes qué tono ha usado el «escritor». En tu caso he supuesto que la ironía y me has sacado más de una sonrisa.
Pero me sorprende que aún no conozcas mi posición sobre el software libre. No me extenderé, puedes leer mi entrada «algunas mentiras del software libre», pero te lo resumo: lo que me molesta es el falso argumento de algunos vendedores, la utilización de algunas características del software libre para dar por sentado que es superior al propietario y no entrar en una comparación técnica.
En definitiva, no estoy en contra del software libre pero sí de la forma de «usarlo» por parte de políticos (que no tienen ni idea) y vendedores interesados. De hecho, estoy escribiendo ahora mismo en WordPress y migrando todas mis Webs a esta plataforma… libre.
En cuanto al dinero, yo, como el 99% de las personas, trabajo por dinero. No lo oculto. Los favores se los hago a mis amigos, o a mis familiares. Pero cuando voy a trabajar a la oficina cada día espero ganar algo de dinero por ello. ¿Tú no?
Gracias por tu comentario, aunque esta vez no lo comparto.
Hola Fernando, te tenía un poco dejado el blog, mea culpa.
Bajo mi punto de vista y para proyectos a medio/largo plazo, PostgreSQL es la opción a elegir. Y desde la compra de MySQL por parte de Oracle, es la única opción seria para un DBMS ‘Enterprise Ready’ open source.
Si te gusta el open source, comparto tu opinión.
Aunque bien sabes que Oracle es mi elección.
Un saludo.
¿Hola Fernando!
Me ha interesado mucho tu blog. Yo soy totalmente novato en estos temas. Hace años, pero muchos años aprendí algo de Access. El caso es que ahora tengo cientos de documentos personales, videos, música y conferencias grabadas. Que me gustaría conservar en mi PC, sin perderlos como ya me paso en dos ocasiones por deterioro del disco duro. Mi PC funciona con Windows 7 (2 gb RAM y 500 GB en disco duro). Por otro lado, quisiera tener la posibilidad de hacer copias de seguridad de una forma automática y con facilidad. Además, esto no es imprescindible, quisiera que otros 3 miembros de la familia pudieran ver las fotos, videos y cintas.
¿Qué base de datos me recomiendas? ¿Cuanto tiempo me llevaria aprender a utilizarla? Tendría que depender siempre de una empresa proveedora? Un saludo muy fuerte.
Juan Carlos
Hola Juan Carlos. Muchas preguntas. Y no todas son fáciles de responder.
Te comento algunas impresiones, aunque no hay una respuesta única: tienes varias opciones y elegir la más adecuada requiere un poco más de información. Podrías grabar todos esos documentos en un programa como ArchivaTech, que utiliza una base de datos Oracle. De esa forma sería mucho más fácil hacer una copia de seguridad semiautomática. Sin embargo, creo que es un poco «exagerado» usar un programa de 3.000€ para este fin. Por no decir muy exagerado. Un programa de gestión documental basado en Oracle es «matar moscas a cañonazos» para un usuario individual. Por mucho que me guste vender mi programa, no creo que sea, ni de lejos, la opción adecuada en tu caso.
Creo que lo que te resultaría más cómodo es utilizar programas específicos de copias de seguridad. Hay muchos. Nero, por ejemplo. Pero hay muchos otros, algunos creo que gratuitos. Tienes que perder un poco de tiempo en configurarlos, pero luego funcionan muy bien y con un mínimo esfuerzo por tu parte.
También podrías usar algún programa de gestión documental «básico», como el «Rack 2 Filer» que viene con algunos escáneres Fujitsu, o comprar alguno sencillo como Paper Port. No los conozco muy bien, pero seguro que te permiten gestionar tus documentos y facilitan las copias de seguridad.
Usar una base de datos por tu cuenta no es fácil. Puedes usar indistintamente SQL Server, Oracle, MySQL… pero no creo que sea una solución válida, a menos que te quieras inchar a estudiar. En ese caso, puede ser la mejor opción.
En cuanto a compartir las fotos y otros documentos, lee mi entrada sobre Dropbox y Wetransfer en este mismo blog. Hay otros programas similares, como Evernote. Cualquiera de ellos te puede resultar válido.
A ver si alguien se anima y te da también su opinión y resuelves tus dudas.
Un saludo.
Buenas tardes Fernando,
He encontrado tu blog por casualidad buscando información sobre que base de datos para mi galeria/oficina de proyectos culturales es la mejor opción. De hecho, admito, que estoy bastante perdida ya que me hablaron también de Filemaker pro y de outlook pro, pero la verdad es que no se cual escoger. Me gustaria que la base de datos fuera compartida con las 3 socias que somos y así hacer el trabajo mas facil.
He mirado las páginas web de las bases de datos que aquí has mencionado pero no tengo claro que me sirvan del todo ya que, por ejemplo, me llamaba la atención Oracle per necesito que se pueda usar en windows y en Mac.
Me podrias echar un cable?
muchas gracias!
Vanessa
Hola Vanessa. Me planteas una pregunta muy difícil, no por el contenido sino porque necesitaría muchos más datos para contestarte «bien».
Para no echar balones fuera, te doy algunas ideas para que vayas encajando tus opciones.
Oracle es sin duda las más conocida, extendida y popular base de datos. Pero está dirigida a programadores. Es decir, es perfecta para desarrollar un programa informático que la utilice para almacenar sus datos, sean del tipo que sean, para cualquier número de usuarios y para cualquier número de datos (millones si quieres). No es, sin embargo, adecuada para «usuarios» finales no técnicos ya que es complicada de manejo y no está pensada para este fin.
Hay otras similares, SQL Server de Microsoft, SyBase, MySQL… que tienen las mismas características: pensadas para programadores, no para usuarios finales.
Otro grupo lo forman las que están dirigidas a un entorno ofimático. La más conocida es ACCESS, del paquete Office de Microsoft. Es mucho más sencilla de manejo, y mucho menos potente. Filemaker podría encajar en este grupo, aunque yo no la elegiría para empezar un nuevo proyecto porque es mucho menos conocida y es más difícil encontrar técnicos que la conozcan bien. Hay muchas más.
No conozco tu proyecto. Si vas a desarrollar una pequeña aplicación, Oracle tiene una versión gratuita hasta 2Gb, aunque quizás sea matar moscas a cañonazos.
Si te vas a mover a nivel de usuario y buscas una herramienta sencilla, Access puede ser muy apropiada. Insisto en que hay muchas con este perfil, aunque no las conozco mucho porque no las suelo usar.
No sé si te habré ayudado. Si tienes alguna pregunta más, no dejes de hacerla. Un saludo.
muy buena tu ayuda a los demás, te felicito por eso
Estoy intentando crear una base de datos para una asociación. Estaba dudando entre el uso de ACCES y MYSQL.
En la base de datos necesito poder buscar fácilmente los teléfonos , pero pudiendo buscarlos por distintos campos (tipo: buscar por un apellido concreto, o por que pertenezca a una etapa (tenemos una clasificación por edades), o poder buscar niños concretos y que me aparezca su ficha)
También necesito poder localizarlos fácilmente por peculiaridades/enfermedades tipo: celiaco/alergias varias
y poder actualizar las entradas (pero eso se que puedo hacerlo en ambas)
También habíamos pensado en que fuese accesible via internet,para que todos los monitores pudiesen tener acceso, pero en ese campo si que estamos muy pérdidos… lo que es compartir datos no manejas nada más allá de dropbox y google.doc o prezi
Te agradecemos cualquier tipo de consejo que pudieses darnos.
Gracias 🙂
Estimada Beatriz:
Para la primera parte de tu problema cualquier base de datos te sirve. Todas ellas permiten búsquedas potentes y cambios. La elección de MySQL en lugar de Access vendría condicionada por el volumen de datos. Hasta unos pocos miles Access te servirá perfectamente.
Pero hay dos «problemas» técnicos que te pueden hacer cambiar de opinión.
Por un lado el acceso a través de internet. En ese caso MySQL te va a proporcionar más herramientas y más robustas. El problema será que tendrás que instalar un «servidor Web» que reciba las peticiones de consulta desde Internet y que acceda a la base de datos. No es difícil, para el que sabe de estos temas, pero no es en absoluto elemental. Y no es un problema de la base de datos que elijas. Es un problema de saber programar servicios Web.
El otro aspecto técnico a tener en cuenta es si vas a guardar documentos: en Word, PDF, excel, fotos… Si es así, la elección de la base de datos es mucho más importante. En ese caso no te recomiendo Access. Y si el volumen es grande, miles o decenas de miles de documentos, quizás os convendría comprar un software de gestión documental que os resuelva el problema de forma inmediata, aunque con un coste, claro.
Si necesitas información adicional no dejes de consultarme, aquí o en mi correo, direccion@mtcsoft.es
Hola con Oracle XE viene Apex y en el puedes hacer tu propio sitio practicamente sin programar, claro no sera algo asi super profesional como si lo hiciera un desarrollador ( me apunto ) pero puedes buscar tutoriales en youtube, en udemy.com hay un curso de oracle apex
Cordial saludo,
1)En tu artículo, mencionabas a Sqlite, qué opinas de esta base de datos, teniendo como interfaz de desarrollo flash.
2) Quisiera tu opinión sobre una base de datos con interfaz de desarrollo en access (por su facilidad de diseño) pero en vez de utilizar las tablas nativas de este programa, conectar los formularios con base de datos de mysql
Gracias.
Lewis Sarmiento.
Lo siento Lewis pero no tengo experiencia ni directa ni indirecta sobre desarrollo en flash sobre SQLlite.
En cuanto a tu segunda pregunta, daría el salto a mySql. Es un pequeño esfuerzo de aprendizaje pero ganas tanto que merece la pena.
Deja Access para usuarios finales, pero no para programar.
SQLite es para desarrollos sencillos para un usuario, se puede usar en varias herramientas, XOJO, php, Adobe AIR, yo la utilizare con xojo para una aplicacion que funcionara para un solo usuario
Me gusta usar MySQL con herramienta gratuita de Valentina Studio, hace todo lo que necesito, y lo hace muy bien http://www.valentina-db.com/en/valentina-studio-overview
[…] Bibliografía:http://es.wikipedia.org/wiki/Base_de_datos https://gestiondocumentalparagentenormal.com/2011/01/24/elegir-una-base-de-datos/ […]
Saludos Fernando y me parece muy interesante tu opinión y apreciación sobre temas tan cotidianos que no nos damos muchas veces cuenta que la escalabilidad es muy importante.
A la actualidad estoy haciendo un proyecto para administrar un conjunto de 3000 a 5000 documentos y sigo indeciso sobre la base de datos que utilizare.
Si bien tengo mucha costumbre con el uso de Mysql y su gran flexibilidad tengo dudas si seria una buena alternativa ( mas alla del almacenamiento de meta tags y links con dirección a los archivos); me gustaría saber tu apreciacion actual sobre que tecnologia en BD me convendria ya que uso php como lenguaje base para mis implementaciones.
Un abrazo y gracias de antemano
Para ese volumen de documentos tan pequeño te sirve cualquier base de datos. Si ya usas MySql, no veo motivo para cambiar.
Un saludo.
Alguien puede decirme que es un centro de base de datos robusto
Hola Fernando, he encontrado tu bloc por casualidad, buscando precisamente encontrar una base de datos adecuada… Verás, yo he usado durante años un programa de contabilidad muy intuitivo pero está en MsDos tan sencillo como completo, es decir los datos para llevar la contabilidad como se hace a mano, sin tanta estadísticas e información que casi nunca se usa. Lo sigo usando a través del VirtualBox… Pero me gustaría hacerlo , lo más parecido posible perro que trabaje en Windows. ¿Que me recomiendas Access o Visual Basic (de estos tengo nociones) u otro, no se cual elegir, Tengo hecho un diagrama de flujos un tanto particular, he copiado en una hoja Excel, todas sus pantallas secuencialmente. Puedes orientarme?, Saludos
Access es más sencillo, pero está bastante limitado. Si es para un usuario y no muchos datos, te vale.
Visual Basic es perfecto. Es mucho más complejo pero puedes crecer sin límites. A largo plazo es mucho mejor.
Un saludo.
NOTA: Los archivos utilizados son dbf.
aguilucho1914@gmail.com
En la empresas seguimos utilizando un programa de contabilidad de dBase sobre archivos dbf. Funciona perfectamente en Windows y no vamos a migrarlo. Es de uso interno y no tenemos que «quedar bien» con nadie, así que se queda en dBase.
Para un caso aislado, aprender Visual Basic es desproporcionado. Es un esfuerzo enorme para una sola vez.
Para aprender, el manual y consultas a Google. Hay foros y videos de cualquier tema de programación que se te pueda ocurrir. Una academia es mejor, claro, pero si solo vas a hacer un programa me parece que es demasiado.
Un saludo.
Lo de la academia, era más que nada, por tener a quién acudir en cualquier duda que se me presente.
Gracias de nuevo, me has ayudado mucho.
Gracias por tu respuesta tan rápida
Saludos
Puedes orientarme de algún curso o Academia, yo vivo en Gijón, Asturias.
Y sería para este caso, no pienso dedicarme a la programación