Vous êtes sur la page 1sur 16

Software Open Source

Definición: Es aquel software distribuido y desarrollado libremente. Se define por


la licencia que lo acompaña, que permite a cualquier persona usar, modificar y
redistribuir el software libre.

Las condiciones de distribución de todo programa Open-Source deben cumplir los


siguientes criterios:

 Libre Redistribución: No debe haber restricciones para vender o


distribuir el software.
 Código fuente: El software debe incluir el código fuente. El software
también debe permitir crear distribuciones compiladas.
 Trabajos derivados: Se permiten crear trabajos derivados, que deben ser distribuidos
bajo los mismos términos que la licencia original del software.
 Integridad del código del autor: Se permite la distribución del código
fuente modificado, aunque puede haber restricciones para que se pueda
distinguir el código fuente del autor original del código fuente del trabajo
derivado.
 No discriminar personas o grupos: No debe discriminar a ninguna persona
o grupo.
 No discriminar ningún tipo de uso del programa: No debe impedir a nadie el uso del
programa en una determinada actividad.
 Distribución de la Licencia: Los derechos que acompañan al programa
deben aplicarse a todo el que redistribuya el programa, sin necesidad
de licencias adicionales.
 La licencia no debe ser específica a un producto: Los derechos que ofrece la licencia no
pueden ser distintos para la distribución original que para la que funcione en
un contexto totalmente diferente.
 La licencia no debe ir en contra de otro software: La licencia no debe restringir a otro
software que se distribuya con el mismo.
 La licencia debe ser tecnológicamente neutral: Ninguna disposición de la licencia puede
ser cualquier persona basado en la tecnología o el estilo de interfaz.
Ventajas de Open Source

Coste de propiedad reducido. El coste de productos Open Source con licencia GPL
es significativamente inferior al de productos equivalentes con licencias
propietarias, e incluso puede ser nulo.

Alta fiabilidad, escalabilidad y rendimiento. Prueba de ello es que empresas de


gran porte como Yahoo, etc. lo usan.

Uso de estándares, que posibilitan la integración con otros sistemas y la evolución


de los existentes. Esto es más importante de lo que se piensa, especialmente en
proyectos a largo plazo. Por ejemplo, un sistema de seguimiento de expedientes
desarrollado hace años en base al formato de WordPerfect -un antiguo procesador
de texto- es hoy inutilizable con la consiguiente pérdida de información. El uso de
formatos estandar como rtf, dif, etc. es fundamental para quebrar la dependencia
de los protocolos propietarios y asegurar la continuidad de las operaciones a largo
plazo.

Control absoluto sobre los procesos y la información que se trata en los equipos de
la organización. El código abierto es de dominio público y puede ser auditado
siempre que se quiera asegurando así que no exístan puertas traseras o bombas
lógicas entre otros problemas. Sobran ejemplos de los graves inconvenientes que
conlleva el uso de código propietario como le ocurrió al gobierno danés con Lotus
Notes y su fallo en el código de encriptación o al gobierno inglés con los
documentos sobre las pruebas de armas químicas en Iraq por fallos de seguridad
en word.

Independencia frente a estrategias de los fabricantes. ¿Que pasa cuando sale una
nueva versión de linux o de cualquier software libre? Simplemente se baja la nueva
versión, se instala o se recompila y ya está pronto. ¿Que les pasó a los usuarios de
NT cuando salió 2000 Server y no actualizaron sus licencias? Hoy están sin ninguna
clase de soporte. Son instalaciones muertas. El software Open Source en cambio
está mantenido y respaldado por una comunidad de desarroladores y testers que
se extiende a todo el mundo, ellos aseguran que su aplicación este siempre
actualizada y de no ser así, podrá migrar hacia otra de prestaciones iguales o
superiores sin grandes contratiempos.

Optimización del uso de la plataforma existente. Un servidor Linux puede operar


como un controlador de dominio en una red windows implementando todo los
servicios en forma transparente para los usarios. De iguál forma puede emular un
servidor novell. Esto no es así a la inversa.
Las soluciones de inteligencia de negocios de código abierto ofrecen los mismos
beneficios en general que las soluciones de otros segmentos de software libre.
Brindan desde una reducción de costos iniciales hasta opciones de soporte e
integración más flexibles, en comparación con productos propietarios, señalaron
los analistas. Además, las organizaciones que han utilizado software de código
abierto a menudo encuentran que sus desarrolladores internos se comprometen
más, ya que son capaces de investigar y ampliar el código fuente con mucha más
libertad, añade el informe. Existe una amplia gama de opciones de código abierto
en las subcategorías, como la integración de datos, herramientas de informes y
minería de datos. Características tales como una fuerte seguridad integrada,
herramientas de escalabilidad y conexiones de datos a las fuentes populares,
generalmente tendrán una etiqueta con precio.

Sin embargo, aunque las ediciones para la comunidad no pueden usarse como
suites de BI de nivel empresarial, los componentes individuales que están
disponibles pueden tener algún valor para las empresas con "departamentos de TI
ahorrativos en tecnología que hacen frente a la decisión de comprar un sistema de
BI o construir uno . Mientras tanto, es difícil establecer comparaciones directas
entre las cuatro suites de código abierto. También cubren aspectos tales como
OLAP (procesamiento analítico en línea), y deben ser comparados con productos
comerciales vendidos por Oracle, SAP y otros, Aunque las opciones de código
abierto no tienen todas las características encontradas en esos productos, algunos
clientes pueden no necesitar. Pero hay una diferencia crucial, en que esos
proyectos de fuente abierta son generalmente manejados en forma independiente
y tienen poco incentivo para priorizar una integración estrecha con los
componentes de otros proyectos, agrega el documento.
Software Propietario

Definición

Costo elevado
Seguridad para las empresas
Licencia Segura y confiable
Software privado exclusivo del usuario

Ventajas de Software Propietario

 Las compañías productoras de software propietario por lo general tienen


departamentos de control de calidad que llevan a cabo muchas pruebas
sobre el software que producen.
 Se destina una parte importante de los recursos a la investigación sobre la
usabilidad del producto. Se tienen contratados algunos programadores muy
capaces y con mucha experiencia.
 El software propietario de marca conocida ha sido usado por muchas personas y es
relativamente fácil encontrar a alguien que lo sepa usar.
 Existe software propietario diseñado para aplicaciones muy específicas que no existe en
ningún otrolado más que con la compañía que lo produce.

Desventajas del Software Propietario

 El funcionamiento del software propietario es un secreto que guarda


celosamente la compañía que lo produce. En muchos casos resulta riesgosa
la utilización de un componente que es como una caja negra, cuyo
funcionamiento se desconoce y cuyos resultados son impredecibles. En
otros casos es imposible encontrar la causa de un resultado erróneo, producido por
un componente cuyo funcionamiento se desconoce.
 En la mayoría de los casos el soporte técnico es insuficiente o tarda
demasiado tiempo en ofrecer una respuesta satisfactoria.
 Es ilegal extender una pieza de software propietario para adaptarla a las necesidades
particulares de un problema específico. En caso de que sea vitalmente
necesaria tal modificación, es necesario pagar una elevada suma de dinero
a la compañía fabricante, para que sea ésta quien lleve a cabo la
modificación a su propio ritmo de trabajo y sujeto a su calendario de
proyectos.
 La innovación es derecho exclusivo de la compañía fabricante. Si alguien
tiene una idea innovadora con respecto a una aplicación propietaria, tiene
que elegir entre venderle la idea a la compañía dueña de la aplicación o
escribir desde cero su propia versión de una aplicación equivalente, para
DIFERENCIA ENTRE BASE DE DATOS PROPIETARIA Y OPEN SOURCE
No hay diferencias entre una plataforma open Source y una Propietaria, más allá
del modelo de licenciamiento y desarrollo. En ambos casos hay soluciones de
calidad y variedad de prestaciones. Un software Open Source ofrece un TCO (Total
Cost of Ownership) menor y puede ser adaptado a las particularidades de una
PYME. Pero, es difícil estimar cuanto más económico es porque depende de
muchos factores. Hay cientos de LMS propietarios de diversos valores y modelos
de comercialización: solo SaaS, solo licencias o modelo mixto. Entre los que venden
la licencia hay también diferentes políticas: desde la venta por un valor cerrado
(como comprar un paquete Office) hasta la venta de licencias por usuario con un
fee anual. También entran en juego los upgrades y el soporte técnico que, si es
SaaS, pueden estar incluidos. Si la licencia se instalará en servidores propios,
también influye el costo de la base de datos, porque muchos sistemas propietarios
solo soportan bases de datos comerciales. Otros, igual que los open source,
admiten también las licencias libres, como MySQL o PostgreSQL. Por último, los
sistemas open source evolucionados ofrecen ventajas con respecto a los
propietarios: no depender de un proveedor, actualizaciones más frecuentes, gran
número de extensiones que suman funcionalidades y gran comunidad de usuarios.
Más allá de cuál sea la elección, de acuerdo a la necesidad específica de cada
cliente e implementación, hoy la clave está en la independencia tecnológica que
pueda proponer cada proveedor, en su conocimiento y experiencia de mercado, y
capacidad para seleccionar, evaluar, integrar e implementar herramientas open
source y propietarias. Antes que elegir entre una de estas opciones, o bien
combinarlas, la decisión pasa por efectuar un análisis adecuado de consultoría, que
permita responder a las necesidades y objetivos de cada organización interesada
en desarrollar un proceso de gestión del conocimiento. Para ello será vital,
preguntarle al cliente si precisa una plataforma sencilla de administrar y utilizar;
una solución con grandes posibilidades de integración a sus sistemas de
autentificación de usuarios, RRHH, o bases de datos corporativas; una herramienta
con diversidad de configuración y funcionalmente modular; o si simplemente
desea que sus usuarios se autentifiquen para navegar los contenidos SCORM y
luego obtener sus reportes de seguimiento. Luego de obtener estas respuestas,
será el momento de evaluar los sistemas open source y propietarios que resuelven
los requerimientos identificados y proponer opciones al cliente.
MySQL

MySQL es un sistema de gestión de bases de datos relacionales, creado por la


empresasueca MySQL AB y licenciado bajo GPL (Licencia Pública General). Su
diseño le permitesoportar una gran carga de forma rápida y muy eficiente.MySQL
surgió por la necesidad que vieron sus creadores de tener un gestor de basesde
datos rápido y sencillo, ya que los SGBDs en general no eran lo bastante flexibles
niveloces para lo que necesitaban, por lo que tuvieron que desarrollar
nuevas funciones. Detodo esto surgió una nueva interfaz SQL (con código más
portable) desarrollada en lenguaje Cy con apariencia similar a los nombres y
funciones de muchos de sus programas.Su principal objetivo de diseño fue la
velocidad, por ello en sus primeras versiones sesuprimieron algunas características
de otros SGBDs (Sistemas de Gestion de Base de Datos),como el control de
transacciones y las subconsultas. Consume pocos recursos y se distribuyebajo
licencia GPL.

Ventajas

 Velocidad al realizar las operaciones, lo que le hace uno de los gestores


con mejor rendimiento.
 Bajo costo en requerimientos para la elaboración de bases de datos, ya
que debido a su bajo consumo puede ser ejecutado en una máquina
con escasos recursos sin ningún problema.
 Facilidad de configuración e instalación.
 Soporta gran variedad de Sistemas Operativos
 Baja probabilidad de corromper datos, incluso si los errores no se
producen en el propio gestor, sino en el sistema en el que está.
 Su conectividad, velocidad, y seguridad hacen de MySQL Server
altamente apropiado para acceder bases de datos en Internet
 El software MySQL usa la licencia GPL.
 Mayor rendimiento
 Mejores utilidades de admon
 Integracón perfecta con PHP
 Sin límites en los tamaños de los registros
 Mejor control de acceso de usuarios
 Mayor rendimiento. Mayor velocidad tanto al conectar con el servidor
como al servir selects y demas.
 Mejores utilidades de administracion (backup, recuperacion de errores,
etc).
 Aunque se cuelgue, no suele perder informacion ni corromper los datos.
 Mejor integracion con PHP.
 No hay limites en el tamaño de los registros.
 Mejor control de acceso, en el sentido de que usuarios tienen acceso a
que tablas y con
que permisos.
 MySQL se comporta mejor que Postgres a la hora de modificar o añadir
campos a una tabla "en caliente"

Desventajas

No soporta transacciones, "roll-backs" ni subselects.

No considera las claves ajenas. Ignora la integridad referencial, dejándola en


manos del programador de la aplicación.

Arquitectura

Anl. Mauricio Arévalo M.


-
Pág. 43 -

Tiene soporte completo para distintos conjuntos de caracteres, incluyendo latin1


(ISO-8859-1), german, big5, ujis, etc. El soporte para Unicode también está
disponible.

Todas las comparaciones para columnas normales de cadenas de caracteres son


“case-insensitive”, es decir no distinguen mayúsculas y minúsculas.
- Clientes y herramientas

MySQL Server viene con las aplicaciones


mysqlcheck
y
myisamchk
que realizanoperaciones como chequear, optimizar, y reparar tablas de tipo
InnoDB y de tipoMyISAM respectivamente.

Incluye las aplicaciones


mysqlhotcopy
y el
mysqldump
para crear copias de seguridadde la base de datos.

Mysqladmin
es una aplicación cliente para realizar operaciones administrativas, se usapara
comprobar la configuración y el estado actual del servidor; también para crear
yborrar bases de datos, entre otras finalidades.

Existen herramientas en modo consola como el Cliente MySQL o de entorno


gráficocon Interfaz Gráfica de Usuario (GUI) como MySQL Front, MySQL
Administrador,MyODBC, phpMyAdmin; las mismas que nos son muy útiles
facilitándonos laadministración del servidor MySQL y sus bases de datos con un
entorno gráfico paracomodidad del usuario. Así también se pone en conocimiento
buenas herramientas demodelado de bases de datos MySQL como DeZings
y DBDesigner. MySQL QueryBrowser es una herramienta para crear, ejecutar y
optimizar consultas; también existeuna herramienta llamada MySQL Migration
Toolkit para migrar bases de datos deotros sistemas manejadores de Bases de
Datos hacia MySQL.Además de las características mencionadas anteriormente, vale
la pena realizar acontinuación un análisis de ciertas características que considero
importantes y destacadas;muchas de estas características
8
se han venido incoorporado en las últimas versiones deMySQL, algunas de ellas se
muestran en la tabla4.1:
8
Se puede revisar más información en
http://dev.mysql.com/doc/refman/5.0/es/roadmap.html
Anl. Mauricio Arévalo M.

-
Pág. 44 -
Característica

Serie (Versión) MySQL desde que se incluye


Cláusula Union 4.0Subconsultas
4.1Procedimientos Almacenados 5.0Triggers o Disparadores 5.0 y 5.1Claves
foráneas para tablas
MyISAM
5.2 (ya está implementado para tablas
InnoDB
)
Tabla 4.1: Historia de las características de MySQL
- Servidor Incrustrado
La biblioteca del Servidor incrustado “
libmysqld
” permite que MySQL Server puedatrabajar con una gran cantidad de dominios
de aplicaciones. Usando esta biblioteca, losdesarrolladores pueden añadir MySQL
Server en varias aplicaciones y dispositivoselectrónicos, donde el usuario final no
tiene conocimiento que hay una base de datosincrustrada.La biblioteca incrustada
MySSQL usa la misma interfaz que la biblioteca clientenormal, por lo que es
conveniente y fácil de usar.
- Disparadores o Triggers
Otra de las características que presenta MySQL es la del soporte básico para
disparadores
(triggers). Un disparador es un objeto programado de una base de datos que
seasocia a una tabla y se activa cuando ocurre un evento en particular para dicha
tabla.Algunos usos para los disparadores son verificar valores a ser insertados o
llevar acabo cálculos sobre valores involucrados en una actualización. Un
disparador se asocia conuna tabla y se define para que se active automáticamente
al ocurrir una sentencia INSERT,DELETE, o UPDATE sobre dicha tabla; además la
activación puede ocurrir antes o despuésde la sentencia. Para crear o eliminar
un disparador se emplean las sentencias CREATETRIGGER y DROP TRIGGER. La
sintaxis para crear un disparador es la siguiente
Anl. Mauricio Arévalo M.

-
Pág. 62 -
más rápido que las soluciones de gestores de bases de datos existentes y ha sido
usadocon éxito en entornos de producción de alto rendimiento durante varios años.

MySQL Server trabaja en entornos cliente/servidor o incrustados; el software de basesde


datos MySQL es un sistema cliente/sevidor que consiste en un servidor SQL quetrabaja
con diferentes programas y bibliotecas cliente, herramientas administrativas ydiversas
interfaces de programación para aplicaciones (APIs). También se proporcionael
MySQL Server como biblioteca incrustada, que se puede incluir en una aplicaciónpara
obtener un producto más pequeño, rápido y fácil de administrar.

Una gran cantidad de software de contribuciones está disponible para MySQL, y poresta
razón se pueden usar muchas herramientas disponibles en modo consola y enentorno
gráfico para la administración completa del servidor My SQL.

MySQL posee un buen control de acceso de usuarios y seguridad en los datos.


Integración perfecta con el lenguaje PHP (Preprocesador de Hipertexto).


Soporte completo para cláusulas, funciones, tipos de datos y comandos estándar


yextendidos del estándar SQL.

Soporte para control de transacciones en tablas transaccionales (tipo InnoDB), y


soportepara procedimientos almacenados, subconsultas y disparadores (Triggers) en las
últimasversiones de MySQL (5.x).

Gran portabilidad entre distintos sistemas o plataformas.



Se permite la replicación de bases de datos trabajando con servidores MySQL maestrosy
esclavos. También se permite trabajar con el entorno “MySQL Clúster” para dar
altadisponibilidad y rendimiento al sistema.

Uso de MyODBC, que proporciona a MySQL soporte para programas clientes que
usenconexiones ODBC (Open Database Connectivity).

Soporta múltiples modos asignados para comportarse como otros gestores de bases
dedatos, definiendo la validación o no de los valores erróneos o incorrectos y la forma
enque se ingresan los datos.

Anl. Mauricio Arévalo M.

-
Pág. 63 -
4.4.2.

Desventajas

Actualmente, el soporte para disparadores es básico, por lo tanto hay ciertas


limitacionesen lo que puede hacerse con ellos.

Cuando MySQL maneja la


Integridad referencial
, con tablas NO transaccionales de tipoMyISAM, aunque admite la declaración de claves
ajenas o foráneas en la creacióntablas, internamente no las trata de forma diferente al
resto de campos.

Los privilegios para una tabla no se eliminan automáticamente cuando se borra


unatabla. Debe usarse explícitamente un comando REVOKE para quitar los privilegios
deuna tabla.

La función de conversión CAST() no soporta la conversión a REAL o BIGINT.Los


desarrolladores comentan en la documentación de MySQL que estas carencias noles
resultaban un problema, ya que era lo que en principio ellos necesitaban. Sin embargo
selas optimizará con la colaboración de los propios usuarios y desarrolladores a nivel
mundial,gracias a que es Software Libre.

Vous aimerez peut-être aussi