Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Comparación entre sistemas de gestión de bases de datos (SGBD)




Enviado por www_rojas@yahoo.es



Partes: 1, 2, 3

    1. Objetivos
    2. Justificación
    3. Alcances
    4. Limitaciones
    5. Marco referencial del
      proyecto
    6. Sistemas de
      gestión de bases de datos a 
      comparar
    7. Metodología
    8. Estrategia
      de comunicación
    9. Programación
    10. Recursos
    11. Presupuesto
    12. Conclusiones
    13. Bibliografía
    14. Anexos

    INTRODUCCION

    Antes de las bases de datos
    que hoy conocemos, se utilizaban ficheros secuenciales como
    almacenes de
    datos. Estos daban un acceso muy rápido pero
    sólo de forma secuencial,  más tarde
    aparecieron los ficheros indexados, donde el acceso ya
    podía ser aleatorio,  el sistema de
    ficheros era el sistema más común de almacenamiento de
    datos. para compartir los datos entre varias máquinas
    surgió el NFS (Network File System), y más tarde
    para evitar fallos en los sistemas de fichero aparecieron los
    sistemas RAID.

    Pero los programas y datos
    cada vez eran más complejos y grandes por tal motivo se
    requería de un almacenamiento que garantizara un cierto
    número de condiciones y que permitiera operaciones
    complejas sin que se violaran estas restricciones.

    Además cada usuario que accediera a los datos
    debían tener su trabajo
    protegido de las operaciones que hicieran el resto de
    usuarios,  respondiendo a estas necesidades, surgieron las
    bases de datos jerárquicas donde los datos se situaban
    siguiendo una jerarquía,  estas bases de datos
    jerárquicas tenían el problema que los accesos a
    los datos eran unidireccionales, y era más complicado
    hacer el camino inverso, pero posible, aunque el tiempo de
    cálculo
    era mayor, ( Por ejemplo, era fácil saber que cuentas
    tenía un cliente, pero no
    tan fácil  saber de que cliente era una cierta
    cuenta).

    Para dar absoluta libertad a las
    relaciones entre tablas surgieron las bases de datos relacionales
    (RDBMS), las RDBMS trajeron dos cosas muy importantes: las
    propiedades ACID y un lenguaje
    común de acceso a los datos: SQL., 
    mediante SQL, por primera vez, decías QUE datos
    querías y no COMO los tenías que sacar.
    Apareció el término de transacción:
    Agrupación de instrucciones SQL (Selects, Inserts y
    Updates).

    Con el advenimiento de Internet, el software libre
    se ha consolidado como alternativa, técnicamente viable y
    económicamente sostenible al software comercial,
    contrariamente a lo que a menudo se piensa, grandes empresas
    informáticas como IBM, Sun y Apple ofrecen apoyo
    financiero y comercial al software
    libre.

    Para algunas  compañías, 
    es  prioridad  inminente la reducción de
    costos,
    empresas que han invertido una fuerte suma de dinero en
    cuestión de licenciamiento y utilizan estas herramientas
    de forma ilegal,  hoy ven en el software libre como otra
    alternativa para ofrecer los mismos servicios a un
    costo,
    significativamente reducido.

    Estas alternativas las podemos encontrar tanto para
    sistemas
    operativos, herramientas de ofimática,
    software especializado, manejadores de bases de datos.

     

    Tabla 1.  Ficha  del proyecto

     RESUMEN EJECUTIVO

    La finalidad  de este trabajo es realizar  un
    estudio  comparativo  entre sistemas de gestión
    de bases de datos uno de licenciamiento  libre y otro de
    licenciamiento comercial.

    Con el advenimiento de Internet, el software libre se ha
    consolidado como alternativa, técnicamente viable y
    económicamente sostenible al software comercial,
    contrariamente a lo que a menudo se piensa, 
    convirtiéndose  el software libre como otra
    alternativa para ofrecer los mismos servicios a un costo
    significativamente reducido, encontrando estas  alternativas
    tanto para sistemas
    operativos, herramientas de ofimática, software
    especializado, manejadores de bases de datos,  para este
    caso nos basaremos en los manejadores de Bases de Datos,  se
    pretende determinar un soporte  para  recomendar a
    una empresa la
    utilización de estos recursos de
    distribución libre, de la misma forma en
    que se confía en software  propietario o mucho mejor,
    para la toma de esta decisión se tendrán  en
    cuenta factores como; seguridad en el
    almacenamiento de los  datos, ventajas que proporciona 
    un manejador de base de datos
    gratuito, volúmenes de información que soportara,  cual es su
    rendimiento, complejidad en la migración
    de los datos,  soporte ofrecido,  sistema de
    backup,  confiabilidad  ofrecida,  considerando
    estos  elementos   como importantes para un buen
    desempeño en la  aplicación y
    con esto el soporte de la decisión.

    Como objetivo
    general   se tiene el elaborar un documento donde se
    encuentre el diseño  y ejecución de pruebas, entre
    dos sistemas de gestión de bases de datos, uno protegido
    bajo licencia comercial y el otro bajo licenciamiento
    Libre,  con el fin  de evaluar factores mencionados
    anteriormente,  lo cual permitirá de conformidad con
    el resultado, determinar la conveniencia  para el auditor
    de  recomendar a una organización la utilización de un
    sistema protegido bajo licenciamiento libre.

    Durante la elaboración de este documento  se
    desarrollaran los siguientes objetivos
    específicos para el complemento  de  alcanzar el
    objetivo general:

    Seleccionar un sistema de gestión de base de
    datos protegido bajo licencia comercial y otro bajo licencia
    libre.

    Diseño de  pruebas comparativas 
    para  manejadores de bases de  datos.

    Diseñar un sistema de evaluación
    para valorar los resultados arrojados por las pruebas
    desarrolladas

    La decisión de  realizar los comparativos
    entre estas dos formas de licenciamiento  es porque hoy en
    día la tecnología "Open
    Source"  ha tomado  fuerza
    se ha convertido en una buena opción, pero de ahí
    a  vender la idea y convencer  el cambiar de una
    solución comercial a una libre, con el fin de reducir
    costos o solucionar los problemas de
    licenciamiento a uno de nuestros clientes, implica
    comprometer  nuestra credibilidad  como profesionales,
    teniendo un soporte  técnico  que avale las
    posibles recomendaciones.

    Para  complementar   este documento se
    realizaron búsquedas en Internet, bibliografía de
    textos  alusivos al tema y en la experiencia tanto de los
    participantes  como de algunos profesionales en el medio
    laboral, el
    propósito   no es probar  cual es el mejor
    sino que tan bueno  es el motor 
    protegido bajo licenciamiento libre.

    Para la realización  de este documento 
    se tendrán en cuenta los siguientes criterios o
    limitantes:

    ·        
    Se realizará las pruebas en una sola
    máquina

    ·        
    No se utilizara ningún entorno de red, pero si se
    desarrollara un entorno que emule una red de X cantidad de
    estaciones de trabajo realizando cada una de ellas sus propias
    peticiones independientes a la base de datos, esto se explica
    mejor en la parte de la metodología

    ·        
    Se utilizara un solo lenguaje de
    programación para hacer la pruebas de velocidad en
    la base de datos y volúmenes de datos

    1.      
    OBJETIVOS

    1.1.            
    OBJETIVO GENERAL

    Elaborar un documento donde se encuentre el
    diseño  de un conjunto de pruebas  y
    ejecución de las mismas,  entre dos sistemas de
    gestión de bases de datos, uno protegido bajo licencia
    comercial y el otro bajo licenciamiento Libre,  con el
    objetivo de evaluar factores como capacidad para soportar altos
    volúmenes de datos, Integridad, concurrencia, velocidad,
    sistema de backup y confiabilidad, lo cual permitirá de
    conformidad con los  resultados, determinar la
    conveniencia  para el auditor de avalar  una
    recomendación a una organización para la
    utilización de un sistema protegido bajo licenciamiento
    libre.

    1.2.            
    OBJETIVOS  ESPECIFICOS

    ·        
    Seleccionar un sistema de gestión de base de datos
    protegido bajo licencia comercial y otro bajo licencia
    libre.

    ·        
    Diseñar un conjunto de  pruebas comparativas 
    para  manejadores de bases de  datos.

    ·        
    Diseñar un sistema de evaluación para valorar los
    resultados arrojados a las Seleccionar pruebas
    desarrolladas

    ·        
    Concluir  que tan conveniente es para un auditor  dar
    una recomendación a una organización 
    sobre,  la utilización de un sistema de
    gestión de base de datos protegido bajo licenciamiento
    libre

    2.      
    JUSTIFICACIÓN

    Hoy en día la tecnología "Open
    Source"  ha tomado  fuerza y  se ha convertido en
    una buena opción,   pero   de
    ahí a  realizar una recomendación de cambiar
    de una solución comercial a una libre con el fin de
    reducir costos o solucionar los problemas de licenciamiento a uno
    de nuestros clientes es de pensar,  teniendo en cuenta que
    el activo mas importantes para una organización es la
    información y se corre el riesgo de perder
    la credibilidad como profesional,  de ahí  nace
    la importancia  de  diseñar, ejecutar, valorar
    y  analizar pruebas  que  soporten  las 
    posibles recomendaciones  que se pueden  dar  con
    respecto a ventajas  que posee un  software libre 
    Vs un software comercial.

    3.      
    ANTECEDENTES

    Se realizo una búsqueda  tanto en 
    Internet  como en el medio laboral,   para validar
    la existencia de  documentación  donde  se
    plasmaran  pruebas  comparativas en cuanto al
    rendimiento de uno u otro manejador de bases de datos, 
    teniendo en cuenta los factores mencionados en el alcance, en
    donde la finalidad  no es probar  cual es el mejor sino
    que tan bueno  es el motor  protegido bajo
    licenciamiento libre, logrando encontrar
    información   sobre  características
    entre un manejador de base de datos comercial y uno 
    libre,  pero no   un diseño de pruebas como
    el que se esta planteando.

    Sin embargo los documentos   encontrados  
    serán de gran  apoyo para dar inicio al  trabajo
    y  parte de esta información se incluirá en el
    documento  que se pretende realizar.

    4.      
    ALCANCES

    Se realizará un diseño de pruebas y
    posterior ejecución a los manejadores de datos de tipo
    comercial y libre  con el fin de conocer:

    • Capacidad para soportar altos volúmenes de
      datos
    • Integridad en los datos
    • Concurrencia
    • Velocidad
    • Sistemas de Backup y Restauración
    • En el  desarrollo
      de este trabajo  no se  incluye análisis de costos  con respecto a
      capacitación, asesoría  
      ni migración de datos.
    • Se darán a conocer  nombres  de
      firmas que prestan soporte y capacitación para la
      administración del manejador de datos bajo
      licenciamiento libre

    5.      
    LIMITACIONES

    Las siguientes son las limitaciones que se
    tendrán en cuenta para el desarrollo de este
    trabajo:

    ·        
    Se realizará las pruebas en una sola
    máquina

    ·        
    No se utilizara ningún entorno de red.

    ·        
    Se desarrollara un entorno que emule una red de  n numero
    de  estaciones de trabajo,  realizando cada una de
    ellas sus propias peticiones independientes a la base de datos,
    esta información se amplia en la metodología.

    ·        
    Se utilizara un solo lenguaje de programación para hacer la pruebas 
    de velocidad y volumen de
    datos,   en la base de datos.

    6.      
    MARCO REFERENCIAL DEL PROYECTO

    6.1.            
      MARCO
    CONCEPTUAL

    El mercado de
    manejadores de bases de datos es bastante grande y 
    ofrece

    demasiadas alternativas a la hora de elegir un software
    en que confiar,   en el momento  de  tomar
    una decisión con respecto a por cual herramienta
    inclinarnos,

    cual es la optima, cual  me ofrece mayores
    garantías  en mi desarrollo específico, que
    detalles de implementación debemos tener en cuenta para
    elegir  nuestro sistema de gestión de bases de
    datos,    se convierte  en una gran
    preocupación y  responsabilidad  el conocer las  
    características ventajas  y desventajas, no
    desconocemos  que  las herramientas constituyen
    un  aspecto fundamental a la hora de desarrollar un
     proyecto o una implementación, las
    características  de los proyectos, de las
    compañías o  las necesidades hacen prioritario
     que estas herramientas se ajusten a esos 
    requerimientos específicos,  por estas  razones
    se debe  profundizar e investigar  las diferentes
    alternativas que se tienen  al alcance ,evitando
    inconvenientes   posteriores como son,
     perdida  de tiempo, perdida de dinero o aun mas grave
    comprometer la credibilidad  profesional al  avalar un
    concepto
    técnico sin el suficiente  soporte y conocimiento.

    Para  esta investigación se realizo una
    búsqueda  en  Internet, 
    bibliografía  en  temas específicos sobre
    sistemas manejadores de bases de datos,  software libre y
    software comercial,  la finalidad  no es probar 
    cual es el mejor sino que tan bueno  es el motor 
    protegido bajo licenciamiento libre, definiendo
    características entre un manejador de base de datos
    comercial y uno  libre.

    Se realizará un diseño de pruebas y
    posterior ejecución a los manejadores de datos de tipo
    comercial y libre  con el fin de conocer, capacidad para
    soportar altos volúmenes de datos,  integridad en los
    datos, concurrencia, velocidad, sistemas de Backup y
    Restauración.    

    En el desarrollo de este trabajo  no se 
    realiza  análisis de costos  de
    capacitación, asesoría   ni
    migración de datos,  daremos  a conocer 
    nombres  de firmas que prestan soporte y capacitación
    para la administración del manejador de datos bajo
    licenciamiento libre.

    Dentro de las limitaciones  contenidas en esta
    investigación contemplamos  que  las pruebas
     se realizaran en una sola maquina , no se utilizara
    ningún entorno de red  por lo tanto se desarrollara
    un entorno que emule una red de  N numero de 
    estaciones de trabajo,  ejecutando cada una de ellas sus
    propias peticiones independientes a la base de datos, se
    utilizara un solo lenguaje de programación para hacer la
    pruebas  de velocidad y volumen de datos,   en la
    base de datos.

    6.2.            
    MARCO TEORICO

    El software ha experimentado un auge
    extraordinario  a raíz de la progresiva
    informatización de casi la totalidad de las empresas, ante
    esta notable demanda,
    surgen  multitud  de soluciones  en programas como  sistemas
    operativos,  manejadores de Bases de
    Datos,    servidores
    web , sistemas
    de red, paquetes de oficina entre
    otros, los cuales  ofrecen a la comunidad 
    diferentes formas   de licenciamiento tanto libre
    como  comercial,    por  esta
    razón damos a conocer un  poco de historia y
    características  del software libre y
    generalidades  del software comercial.

    6.2.1.                   
       SOFTWARE
    LIBRE

    El Software Libre es un asunto de libertad, no de
    precio,
    para  tener mejor claridad  del concepto  se
    debe  pensar  en libre,  como en libertad de
    expresión no en algo gratis,  se refiere a la
    libertad de los usuarios para ejecutar, copiar, distribuir,
    estudiar, cambiar y mejorar el software,  de modo más
    preciso:, se refiere a cuatro libertades de los usuarios del
    software:

    • Libertad de usar el programa, con
      cualquier propósito .
    • La libertad de estudiar cómo funciona el
      programa, y adaptarlo a tus necesidades,  acceso al
      código fuente es una condición
      previa para esto.
    • Libertad de distribuir copias, con lo que puedes
      ayudar  a interesados.
    • Libertad de mejorar el programa y hacer
      públicas las mejoras a los demás, de modo que
      todos se  beneficien.

    Software libre, no significa no comercial. Un programa
    libre debe estar disponible para uso comercial, desarrollo
    comercial y distribución comercial. El desarrollo
    comercial del software libre ha dejado de ser inusual; el
    software comercial libre es muy importante, Es aquel que puede
    ser distribuido, modificado, copiado y usado; por lo tanto, debe
    venir acompañado del código fuente para hacer
    efectivas las libertades que lo caracterizan. Dentro de software
    libre hay, a su vez, matices que es necesario tener en
    cuenta.

    Por ejemplo, el software de dominio
    público significa que no está protegido por el
    copyright, por lo tanto, podrían generarse versiones no
    libres del mismo, en cambio el
    software libre protegido con copyleft impide a los
    redistribuidores incluir algún tipo de restricción
    a las libertades propias del software así concebido, es
    decir, garantiza que las modificaciones seguirán siendo
    software libre.

    También es conveniente no confundir el software
    libre con el software gratuito, éste no cuesta nada, hecho
    que no lo convierte en software libre, porque no es una
    cuestión de precio, sino de libertad.

    6.2.2.                   
    Cómo surge el software  libre

    El movimiento del
    Software Libre tuvo su origen en el mundo académico. Desde
    hace más de treinta años, numerosos programadores
    de distintas universidades han desarrollado herramientas de forma
    cooperativa y
    abierta, intercambiando libremente su código fuente. De
    esta manera se ha logrado construir productos de
    software de gran envergadura y excelentes cualidades técnicas.
    Con el crecimiento de Internet, dicho movimiento ha sumado
    adeptos en todo el mundo, trascendiendo el ámbito
    académico. En la última década han surgido
    empresas que basan su negocio en el desarrollo, la
    distribución y el soporte de Software Libre. En la
    actualidad numerosas empresas que tradicionalmente han utilizado
    el modelo
    propietario para el desarrollo y la comercialización de sus productos,
    comienzan ha incorporar productos de software libre. A modo de
    ejemplo podemos citar a IBM, que basa todos sus productos
    orientados a la web en el servidor libre
    Apache.

    Algo que  indujo a este desarrollo fueron los
    procedimientos
    abusivos utilizados por casi todas las principales empresas
    desarrolladoras de software propietario que han sido denunciados
    reiteradamente ante la justicia. Los
    tribunales norteamericanos han llegado incluso a condenar a una
    de las firmas más importantes del mundo por
    prácticas monopólicas violatorias de las leyes,  la
    necesidad de liberarse de tan irritante esclavitud ha
    movido a técnicos de todo el mundo a desarrollar e
    introducir, de manera ordenada y sistemática, el software
    libre.

    6.2.3.                   
    Historia  y evolución 

    Tabla 2. Historia y Evolución del software libre

    1.974:

    Bell Labs publica la descripción de Unix: un
    sistema operativo
    portable escrito en un lenguaje avanzado de 3ra generación
    Lenguaje C,
    multiusuario, multitarea, con capacidad de procesamiento en
    línea, sistema de archivos
    jerárquico, editor, compilador de C y herramientas de
    procesamiento de texto.

    1.975:

    Las Universidades empiezan a manifestar intereses por
    compartir el producto. Bell
    Labs distribuye Unix con fuentes de
    manera abierta y libre a los entes del ambiente
    académico y científico solicitantes a cambio de
    pagar los gastos de medio
    magnético, manual y flete; y
    deben reportar toda investigación y mejora que se
    desarrolle con el Sistema. Berkeley 1BSD.

    1.976:

    Es instalado en las Universidades importantes de USA y
    Europa.

    1.977:

    500 instalaciones registradas.

    1.978:

    Unix versión 6; se estiman 700 instalaciones.
    Berkeley 2BSD.

    1.979:

    Primera versión del Sistema UUCP para comunicación de datos entre computadoras.
    Berkeley 3BSD.

    Es instalado en Venezuela en
    la Universidad
    Simón Bolívar.

    Se Licencia Unix versión 7, que se populariza de
    manera explosiva como plataforma para experimentar y desarrollar
    tecnología, probar algoritmos,
    protocolos de
    comunicación, lenguajes de
    programación y manejadores de Base de
    Datos.

    1.980:

    Berkeley despacha Unix 4.0BSD al Departamento de Defensa
    de USA. En la Red DARPANET desde 1.979 se usa UUCP y se empieza a
    utilizar TCP/IP bajo
    Unix 4.0BSD.

    Arranca la cruzada de la Computación Personal y la era
    de la integración a escala en
    Microprocesadores.

    1.981:

    Unificación de versiones: Unix System III,
    Licencia Comercial.

    Surge nuevos proveedores de
    Computadoras bajo Unix como Onys, Plexus, Convergent Techs.,
    Altos y Ohio Scie. AT&T anuncia línea de computadoras
    bajo Unix. Sperry, Motorolla y NCR anuncia línea de mini
    computadoras basadas en Microprocesadores 68000 y
    Unix.

    1.982:

    Varias versiones comerciales de Unix (Xenix, Citix,
    Centix, etc).

    Berkeley incorpora UUCP HDB que puede operar sobre
    TCP/IP.

    Unix para arquitectura IBM
    S/370.

    1.983:

    Unix System V unifica versiones y llama a un
    estándar. Sun, HP, Apollo, Data General, Tecktronics,
    Silicon Graphics e Intergraph lanzan las Estaciones Gráficas de Trabajo Profesional bajo Unix
    dedicadas al procesamiento gráfico y CAD.

    DARPA y Berkeley aseguran que Unix 4.1BSD ofrece mayor
    rendimiento y mejores herramientas en un Digital VAX que el
    propio sistema operativo Digital VMS.

    Más de 130.000 instalaciones.

    1.984:

    Unix System V Release 2 incorpora los últimos
    avances
    tecnológicos en manipulación y administración de recursos, protocolos de
    comunicación, lenguajes, Base de Datos, procesamiento
    distribuido y paralelismo. El proyecto de Interfaces
    Gráficas con Ventanas e Iconos (Athena X-Window System) se
    desarrolla e implementa bajo Unix.

    Más de 200.000 instalaciones.

    1.985:

    Xenix System V para PC con 80286 y el novedoso
    80386.

    Sun implementa NFS (Networf File System/Shearing) sobre
    TCP/IP para compartir archivos en Red.

    Surgen productos para interconectar PC con Redes Unix.

    Cray, Amdhal, Elxsi y Alliant establecen a Unix como
    estándar para sus Supercomputadores con procesamiento
    paralelo.

    IBM anuncia el desarrollo de AIX para S/370 y
    Serie/1.

    HP anuncia línea de computadoras Basadas en
    Tecnología RISC bajo Unix.

    Carnegie Mellon university anuncia versión de
    Unix MATCH diseñado con tecnología de Microkernel
    Orientado a Objetos.

    NSFnet, Milnet y Arpanet utilizan TCP/IP a
    plenitud=Internet.

    Se publican críticas a Unix para tratar de frenar
    su avance.

    Más de 420.000 instalaciones.

    1.986:

    Unix System V release 3.0 incorpora nuevos servicios,
    Facilidades de Interconexión, poderosos esquemas para la
    administración de Recursos que aumentan el
    rendimiento.

    SUN publica definición de Protocolos de RED
    necesarios para implementar NFS (Network File
    System/Shearing).

    AT&T provee RFS (Remote File System).

    ETHERNET se convierte en protocolo
    estándar para Redes Locales y X.25 para Redes Amplias.
    TCP/IP protocolo estándar para Redes Locales y Amplias. El
    Departamento de Defensa de USA manifiesta su intensión de
    adquirir solo equipos bajo Unix, pero pide aumentar controles de
    acceso y seguridad.

    Manejadores de Base de Datos Relacional que ofrecen SQL
    como INFORMIX, UNIFY, INGRES, Oracle y
    otros, impulsan a Unix al mercado Aplicacional.

    Más de 680.000 instalaciones
    registradas.

    ORGANIZACIONES QUE EMITEN ESTÁNDARES COBRAN GRAN
    IMPORTANCIA Y COINCIDEN EN SUS APRECIACIONES.

    1.987:

    AT&T propone nuevas estrategias de
    mercadeo Unix
    COMO SOLUCION TOTAL., AT&T y SUN anuncian la Fusión de
    sus centros de Desarrollo y absorben parte del personal de
    Berkeley., IBM lanza su primera Estación Gráfica de
    Trabajo Profesional con Tecnología RISC y Unix (RT/AIX).,
    Productos para CAD/CAM, CAD/CAE, procesamiento de Imágenes,
    Análisis de Estructuras y
    Sólidos, Dibujo
    Gráfico, Animación y Edición
    de publicaciones, inundan el Mercado de las Estaciones
    Gráficas de Trabajo Profesional bajo Unix.

    1998

    Oracle, Informix, Sybase, Progress, y la mayoría
    de las casas productoras de manejadores de Bases de Datos portan
    sus productos a Linux.

    Existen gran variedad de distribuciones comerciales de
    Linux.

    La comunidad organizada Linux empieza a tener mucha
    presencia, fuerza de opinión y reconocimiento en toda La
    Internet y en la comunidad Unix comercial.

    Solaris, FreeBSD y Linux dominan las estadísticas de Servidores de grandes e
    importantes Web Sites en La Internet.

    IBM: Aix será su plataforma preferida para su
    estrategia
    e-Business.

    Linux debuta en los efectos especiales del cine
    compartiendo escena con SGI en Titanic.

    StartDivision incorpora compatibilidad con formatos de
    Office98 en su StarOffice.

    1.999:

    Las encuestas
    realizadas en La Internet revelan que el Sistema Operativo
    preferido por la comunidad de desarrolladores del WWW es Linux,
    como servidor Web y Estación.

    IBM, HP, Dell y Compaq ofrecen línea de
    Servidores y Estaciones bajo Linux.

    Compaq/Digital-Alpha, Motorota y PowerPC no
    soportarán más a WindowsNT, ofrecerán
    soporte a Unix y Linux.

    Unix se recupera en las estadísticas del mercado
    de Servidores.

    Linux tiene el dominio del mercado de los Servidores
    Web.

    Linux le roba terreno en las proyecciones de crecimiento
    y mercado a WindowsNT.

    Intel invierte grandes capitales en
    compañías relacionadas con Linux.

    Gracias al movimiento Linux, se consolida el movimiento
    del software libre (free) como tendencia comercial viable y
    sustentable.

    Sun compra StarDivision y despacha gratis StarOffice
    para uso personal o comercial.

    LinuxWeek en Venezuela.

    [1]

    6.2.4.                   
    Contenidos actuales del software libre

    Los sistemas operativos y programas de aplicación
    de software libre son múltiples y variados y abarcan las
    más corrientes necesidades de los usuarios. Están
    siendo permanentemente perfeccionados a través de la
    interacción de quienes los usan, los pueden
    modificarlos y adaptarlos fácilmente a sus
    necesidades.
    Se plantea así una alternativa válida para aquellos
    que aspiran a utilizar sistemas y programas informáticos
    eficaces, seguros y
    estables sin la amenaza de sanciones legales por su uso no
    autorizado.

    Las empresas  colombianas  y de países
    vecinos  han comenzado ha comprobar  lo beneficios
    tecnológicos y financieros  que ofrece el software de
    código libre, frente a  los tradicionales
    programas  comerciales o propietarios.

    Tal tendencia  se refleja  en las cifras 
    del crecimiento que este tipo de software  ha tenido en las
    empresas latinoamericanas: 144 por ciento frente al año
    anterior, según la firma de investigación
    IDC.

    Esto Se debe a que las compañías de
    nuestros países  no cuentan con mucho dinero para
    invertir  en tecnología, además el software
    libre les ofrece soluciones informáticas de alta calidad y
    eficiencia  que en el mundo comercial cuestan
    mucho.     

    6.2.5.                   
    Algunos de los mejores programas libres
    disponibles

    Tabla 3.  Algunos de los mejores programas
    libres disponibles

    Nombre

    Fabrica

    Versiones

    Detalles

    Tipo de 
    Clientes

    Donde se
    consigue

    Sistema operativo

    Suse Linux

     

    Novell.

     

    Suse 9.1 Personal; Suse 9.1 Professional; Suse
    Enterprise Server 8; Suse Standard Server 8; Suse Lin ux
    Desktop.

     

    Compite con Windows de Microsoft. Es un sistema operativo
    completo, gráfico, que incluye programas de
    oficina, de correo
    electrónico, de Internet y multimedia. Las versiones para servidor
    (empresas) traen programas para manejo de archivos,
    sistemas de seguridad, de manejo masivo de correo
    electrónico, herramientas de autenticación
    (contraseñas en red), etc.

     

    les sirve a empresas de cualquier tamaño.
    Es compatible con redes Windows o Unix, por lo que
    podrá usarlo sin necesidad de cambiar muchas
    cosas.

     

    Novell de Colombia (www.novell.com/es-es).

     

    Base de Datos MySQL

     

    MySQL AB (http://www.mysql.com/

    MySQL Pro; MySQL
    Database Server y Max DB

    es la base de datos relacional de código
    libre más usada en el mundo. La versión
    gratuita es el referente para personas y empresas que
    crean páginas web. En la parte
    empresarial ofrece versiones con capacidades similares a
    las de costosas marcas
    como IBM, Informix, Oracle y Microsoft. Hewlett-Packard
    ofrece soporte y garantía para esta base de datos
    instalada en sus servidores Proliant. La versión
    Max DB es certificada para sistemas SAP.

     

    Tipo de cliente: empresas que necesitan aumentar
    la capacidad y estabilidad de su base de datos. Se puede
    conectar a sistemas Windows o Unix.

     

    – Detalles: – – Dónde se consigue: Pulxar
    (http://www.pulxar.com.co/);
    HP Colombia (www.hp.com/co).

     

    Sistema de Red –
    Samba

    Samba Team (http://www.samba.org/

    Samba 2.2 y Samba 3.0.

     

    Es un sistema de red que permite a varios
    computadores compartir recursos (como impresión,
    acceso a archivos y datos). Tiene la capacidad de manejar
    varios PC sin importar el sistema operativo que usen
    (puede combinar computadores con Windows y
    Linux).

    Empresas que no tienen cómo pagar una
    actualización de sistemas de red viejos, como
    Windows
    NT. Ofrece capacidades robustas de
    configuración de directorios y grupos
    de red, entre otras, que en versiones de software pagado
    serían muy costosas.

     

    (http://www.pulxar.com.co/

    Servidor Web- Apache

    Apache Software Foundation (http://www.apache.org/).

    2.0.

     

    programa que administra servidores para alojar
    sitios web. Según el fabricante, alrededor del 50
    por ciento de los sitios de Internet está
    almacenado en servidores Apache. Es estable, seguro
    y eficiente

    compañías que administran uno o
    varios sitios web, y que necesitan una opción
    económica, fácil de configurar y de
    administrar.

     

    apache.uniandes.edu.co.

           

     

    [2]

    6.2.6.                   
    Licenciamiento de software

    La licencia de software es una especie de contrato, en
    donde se especifican todas las normas y
    cláusulas que rigen el uso de un determinado programa,
    principalmente se estipulan los alcances de uso,
    instalación, reproducción y copia de estos
    productos,  en el momento en que usted decide descargar,
    instalar, copiar o utilizar un determinado Software,  
    implica que usted acepta las condiciones que se estipulan en el
    licenciamiento de cada programa especifico.

     

    6.2.7.                   
    Tipos de licencias de software libre

    Se considera  como,    libre y
    gratis. Cuando hablamos de  software libre,  se tiene
    la   tendencia  a creer que se trata solamente de
    programas que el usuario puede utilizar sin pagar un peso y que
    normalmente se encuentran gratis en Internet. Pero  es mucho
    más que esto.  No tiene nada que ver con el precio,
    tiene que ver con libertad" (El Proyecto GNU es una
    campaña para difundir el Software libre. Fue iniciada por
    Richard Stallman en 1984 y pretende implantar la tendencia hacia
    el desarrollo de software sin limitantes de derechos de
    autor y bajo precio).

    6.2.7.1.                           
    Open Source

    Open Source y Software libre,    son
    esencialmente lo mismo, la diferencia radica en que los
    defensores del Free Software no están ciento por ciento de
    acuerdo con que las empresas disfruten y distribuyan Free
    Software ya que, según ellos, el mercado corporativo
    antepone la utilidad a la
    libertad, a la comunidad y a los principios y por
    ende no va de la mano con la filosofía pura detrás
    del  Software libre, por otra parte, los seguidores del
    software Open Source sostienen que el proceso normal
    de crecimiento de la tendencia debe llegar al mercado corporativo
    y no seguir escondida bajo el manto de la oposición, sino
    que, por el contrario, están en el deber de lanzar
    software potente y de excelente calidad.

    Para lograrlo, creen en la necesidad de un software Open
    Source más confiable que el software propietario ya que
    son más las personas que trabajan en el al mismo tiempo y
    mayor la cantidad de 'ojos' que pueden detectar errores y
    corregirlos,  es pues, el software que puede ser compartido
    abiertamente entre desarrolladores y usuarios finales de tal
    forma que todos aprendan de todos.

    6.2.7.2.                           
    Licencia GPL (General Public License)

    La licencia GPL se aplica al software de la FSF (Free
    Software Foundation) y el proyecto GNU y otorga al usuario la
    libertad de compartir el software y realizar cambios en
    él. Dicho de otra forma, el usuario tiene derecho a usar
    el programa, modificarlo y distribuir las versiones modificadas
    pero no tiene permiso de realizar restricciones propias con
    respecto a la utilización de ese programa modificado.
    La licencia GPL,   fue creada para mantener la libertad
    del software y evitar que alguien quisiera apropiarse de la
    autoría intelectual de un determinado programa. La
    licencia advierte que el software debe ser gratuito y que el
    paquete final,  también debe ser gratuito.

    6.2.8.                   
    El negocio basado en software libre

    Gran parte del Software Libre existente en la actualidad
    ha sido desarrollado por programadores durante su tiempo libre, o
    como parte de sus actividades académicas.

    Antecedentes:

    Grupos de desarrollo inicialmente informales y poco
    organizados, se han constituido en empresas debido al éxito
    de sus productos libres.

    Algunas empresas productoras o comercializadoras de
    software han comenzado a cambiar sus políticas  de desarrollo y
    distribución, utilizando licencias libres para sus
    productos.

    Otras empresas han tomado desarrollos libres (producidos
    por programadores independientes) para utilizarlos como base de
    sus soluciones, invirtiendo en su mejoramiento y brindando
    soporte a sus usuarios.

    6.2.9.                   
    Por qué elegir el modelo de software
    Libre?

    Básicamente son tres razones principales por las
    cuales una empresa
    podría inclinarse por este modelo:

    Al optar por el modelo de desarrollo y
    distribución libre, la empresa queda
    habilitada a utilizar la gran cantidad de herramientas libres
    disponibles en la actualidad. Esto no sólo implica la
    ejecución de dichas herramientas, sino también la
    modificación de las mismas para adaptarlas a casos
    particulares y la exploración de sus mecanismos de
    funcionamiento para luego reutilizarlos en futuros desarrollos.
    De esta forma se obtiene una ventaja significativa respecto de
    aquellas empresas que basan su negocio

    en el modelo propietario o cerrado, que no pueden
    utilizar esta base de
                         

    herramientas y conocimiento.

    El liberar un programa facilita enormemente su
    distribución y publicidad. De
    esta manera no es necesario invertir enormes sumas de dinero en
    campañas publicitarias y en marketing para
    poder competir
    con productos establecidos en el mercado.

    Si el producto en cuestión tiene suficientes
    méritos técnicos, con seguridad despertará
    el interés
    de un gran número de desarrolladores, usuarios y otras
    empresas en todo el mundo, lo cuales comenzarán a
    contribuir en su desarrollo, extensión y
    depuración. Muchos son los casos en que pequeños
    emprendimientos han engendrado productos de gran nivel
    técnico y de una envergadura impensada.

    6.2.10.                
    El Software Libre y la propiedad
    intelectual

    Muchos objetan, en contra del modelo de
    distribución libre, que el hecho de proveer el
    código fuente de los programas, autorizando su uso y
    redistribución, implica la pérdida de la propiedad
    intelectual. Esto posibilitaría a una empresa de mayor
    envergadura el tomar como propio dicho desarrollo, relegando a
    sus autores originales. A través de los treinta
    años de existencia de Software Libre, nunca se ha dado una
    situación como esta. Por el contrario, este tipo de
    problemas se ha planteado en innumerables oportunidades (muchas
    de las cuales han llegado a la justicia) en el mundo del Software
    Propietario. La razón por la cual los desarrolladores de
    un programa libre no pierden el control del mismo
    es muy simple: a sus usuarios y al resto de los programadores que
    contribuyen con el mismo no les conviene. Los autores originales
    son el factor aglutinante del proyecto.

    Ellos son quienes dirigen el rumbo del desarrollo,
    quienes recopilan los reportes de errores y los requerimientos de
    los usuarios, ellos reúnen los aportes y contribuciones de
    los demás desarrolladores. De esta forma, si la actitud de los
    líderes del proyecto es la adecuada, sus usuarios y
    colaboradores seguirán manteniéndolos como
    referentes. En virtud de esto, a una empresa que le interese
    incorporar dicho programa dentro de su oferta
    de

    productos le convendrá colaborar con el grupo de
    desarrollo existente (liderado por sus autores originales), antes
    que iniciar un proyecto paralelo.

    Por el contrario, si los desarrolladores iniciales por
    algún motivo pierden interés en el producto, la
    disponibilidad del código fuente y de la
    documentación del mismo posibilitará la
    creación de nuevos grupos

    6.3.            
    SOFTWARE  PROPIETARIO

    6.3.1.                   
    Modelo tradicional de desarrollo y
    distribución

    Cuando una empresa productora de software distribuye un
    producto de este tipo, solamente entrega al comprador una copia
    del programa ejecutable, junto con la autorización de
    ejecutar dicho programa en un número determinado de
    computadoras.

    En el contrato que suscriben ambas partes,
    comúnmente denominado "licencia" del producto,
    queda expresado claramente que lo que el cliente adquiere es
    simplemente la facultad de utilizar dicho programa en determinada
    cantidad de computadoras (dependiendo del monto que haya
    abonado). En este sentido, la licencia deja en claro que el
    programa sigue siendo propiedad de la empresa productora del
    mismo y que el usuario no está facultado a realizar
    ningún cambio en él.

    6.3.2.                   
    Dependencia de un proveedor

    Como  se dijo anteriormente, la corrección
    de errores o el agregado de nuevas funciones en un
    programa solamente puede hacerse si se dispone del código
    fuente. Es claro que, al ser la empresa proveedora la
    única que dispone de dicho código, sólo esta
    puede atender a los requerimientos de un cliente insatisfecho con
    el producto del cual ha adquirido una licencia de uso. Esto pone
    al usuario en una clara situación de dependencia del
    proveedor. Si el programa presenta algún defecto,
    éste debe aceptar las condiciones de la empresa productora
    del programa (en el supuesto caso de que dicha empresa reconozca
    el error y acceda a repararlo).

    6.3.3.                   
    Soporte

    En la mayoría de los casos, los programas
    propietarios de amplia difusión son producidos por
    empresas transnacionales, que cuentan con representantes o
    distribuidores en nuestro país. Uno de los argumentos
    más fuertes esgrimidos por dichas empresas a la hora de
    justificar el alto costo de las licencias, es la disponibilidad
    de soporte técnico especializado.

    Dicho servicio
    supondría un respaldo hacia el usuario, de cara a la
    solución de posibles problemas que pudieran presentarse en
    el uso del producto adquirido por este último. La realidad
    nos muestra que en la
    mayoría de los casos, todo lo que el usuario puede esperar
    del servicio de soporte técnico son instrucciones de
    instalación, configuración y uso.

     La reparación de errores detectados en el
    programa por lo general no está al alcance de quien brinda
    el soporte: una subsidiaria o un asociado a la empresa productora
    del software, que no dispone del código fuente del
    programa. Aún en el caso de poder reportar el fallo a los
    encargados del desarrollo del producto.

    6.4.            
    GENERALIDADES DE LAS BASES DE DATOS

    Este trabajo esta orientado al tema de base de datos, se
    da a conocer en el siguiente párrafo
    la  definición que mas  se ajusta de acuerdo a
    nuestro criterio.

    "Colección o depósito de datos integrados
    con redundancia controlada y con una estructura que
    refleje las interrelaciones y restricciones existentes en el
    mundo real; los datos, que han de ser compartidos por diferentes
    usuarios y aplicaciones, deben mantenerse independientes de
    éstas, y su definición y descripción,
    únicas para cada tipo de datos, han de estar almacenadas
    junto con los mismos. Los procedimientos de actualización
    y recuperación comunes y bien determinados, habrán
    de ser capaces de conservar la integridad   del
    conjunto de los datos"

    Entre las  muchas ventajas que existen, a
    continuación mencionamos algunas de ellas:

    • Disponibilidad

    Cuando se aplica la metodología de bases de
    datos, cada usuario ya no es propietario de los datos, puesto que
    éstos se comparten entre el conjunto de aplicaciones,
    existiendo una mejor disponibilidad de los datos para todos los
    que tienen necesidad de ellos, siempre que estén
    autorizados para su acceso. Una de las ventajas que ofrece 
    hoy en día las nuevas tecnologías de desarrollo es
    poder desarrollar aplicaciones cuyo objetivo es acceder a dicha
    información desde cualquier parte del mundo utilizando una
    red como Internet.

    • Facilidad de Uso

    Existen diferentes maneras de extraer la
    información almacenada en una base de datos, por ejemplo,
    un ingeniero lo puede realizar por medio de instrucciones
    SQL,  los  usuarios lo pueden realizar por medio de
    aplicaciones desarrolladas dentro de una organización o
    pueden extraer la información con herramientas que existen
    en el mercado, todo esto con dos valores
    agregados, Velocidad y precisión.

    • Coherencia  de los Resultados

    Debido a que la información de la base de datos
    se recoge y almacena una sola vez. En todos los programas se
    utilizan los mismos datos, por lo que los resultados de todos
    ellos son coherentes y perfectamente comparables.

    Además, al no existir (o al menos disminuir en
    gran medida) la redundancia en los datos, desaparece el
    inconveniente de las divergencias en los resultados debidos a
    actualizaciones no simultáneas en todos los
    ficheros.

    • d) Confidencialidad En El Manejo De Los
      Datos

    Toda la información puede estar centralizada en
    un solo punto y debidamente clasificada pudiendo acceder a ella
    dependiendo del  perfil con que se ingresa al
    sistema

    • Globalización de la
      información:

    Permite a los diferentes usuarios considerar la
    información como un recurso corporativo que carece de
    dueños específicos.

    De la misma forma como se habla de ventajas
    también existen desventajas  o inconvenientes cuando
    se trata de  bases de datos, mencionaremos algunas de
    estas:

    a)    Instalación
    costosa

     La implantación de un sistema de bases de
    datos puede llevar consigo un costo elevado, tanto en equipo
    físico (nuevas instalaciones o ampliaciones), como en el
    lógico (sistemas operativos, programas, compiladores,
    etc… necesarios para su uso). Sin embargo, existen soluciones
    para reducir significativamente los costos.

     b)    Personal
    especializado

    Los conocimientos, que resultan imprescindibles para una
    utilización correcta y eficaz y sobre todo para la
    administración de las bases de datos, implican una
    necesidad de personal especializado que resulta difícil de
    encontrar, y de formar. El problema de la contratación y
    formación de este tipo de personal es clave a la hora de
    crear un sistema de base de datos.

    La implantación de un sistema de bases de datos,
    tanto por su costo en personal y en equipos como por el tiempo
    que tarda en  operar,  no resulta rentable a corto
    plazo. Puede calcularse que para un sistema de dimensiones
    medias,  la rentabilidad sólo puede empezar a
    apreciarse después de bastantes meses de la
    iniciación de los trabajos; en instalaciones grandes o muy
    grandes el plazo puede llegar a ser de años.

    Durante el trabajo
    vamos a encontrar  un termino que se mencionara en varios
    apartes, y es el sistema de gestión de bases de
    datos  (SGBD o DBMS),  es conjunto de programas que se
    encargan de manejar la creación y todos los accesos a las
    bases de datos. Se compone de un lenguaje de definición de
    datos, de un lenguaje de manipulación de datos y de un
    lenguaje de consulta.

    Las funciones  de un SGBD son:

    • Un SGBD debe proporcionar a los usuarios la capacidad
      de almacenar datos en la base de datos, acceder a ellos y
      actualizarlos. Esta es la función
      fundamental de un SGBD.
    • Un SGBD debe proporcionar un catálogo en el
      que se almacenan las descripciones de los datos y que sea
      accesible por los usuarios. Este catálogo es lo que se
      denomina diccionario de
      datos y contiene información que describe los datos
      de la base de datos (meta datos). Normalmente, un diccionario
      de datos almacena:

    ·        
    Nombre, tipo y tamaño de los datos.

    ·        
    Nombre de las relaciones entre los datos.

    ·        
    Restricciones de integridad sobre los datos.

    ·        
    Nombre de los usuarios autorizados a acceder a la base de
    datos.

    ·        
    Esquemas externos, conceptuales e internos, y correspondencia
    entre los esquemas.

    ·        
    Estadísticas de utilización, tales como la
    frecuencia de las transacciones y el número de accesos
    realizados a los objetos de la base de datos.

    Algunos de los beneficios que reporta el diccionario
    de datos son los siguientes:

    ·        
    La información sobre los datos se puede almacenar de
    un modo centralizado. Esto ayuda a mantener el control sobre
    los datos, como un recurso que son.

    ·        
    El significado de los datos se puede definir, lo que
    ayudará a los usuarios a entender el propósito
    de los mismos.

    ·        
    La
    comunicación se simplifica ya que se almacena el
    significado exacto. El diccionario de datos también
    puede identificar al usuario o usuarios que poseen los datos
    o que los acceden.

    ·        
    Las redundancias y las inconsistencias se pueden identificar
    más fácilmente ya que los datos están
    centralizados.

    ·        
    Se puede tener un historial de los cambios realizados sobre
    la base de datos.

    ·        
    El impacto que puede producir un cambio se puede determinar
    antes de que sea implementado, ya que el diccionario de datos
    mantiene información sobre cada tipo de dato, todas
    sus relaciones y todos sus usuarios.

    ·        
    Se puede hacer respetar la seguridad.

    ·        
    Se puede garantizar la integridad.

    ·        
    Se puede proporcionar información para auditorias.

    • Un SGBD debe proporcionar un mecanismo que garantice
      que todas las actualizaciones correspondientes a una
      determinada transacción se realicen, o que no se realice
      ninguna. Una transacción es un conjunto de acciones que
      cambian el contenido de la base de datos.
    • Un SGBD debe proporcionar un mecanismo que asegure
      que la base de datos se actualice correctamente cuando varios
      usuarios la están actualizando concurrentemente. Uno de
      los principales objetivos de los SGBD es el permitir que varios
      usuarios tengan acceso concurrente a los datos que comparten.
      El acceso concurrente es relativamente fácil de
      gestionar si todos los usuarios se dedican a leer datos, ya que
      no pueden interferir unos con otros. Sin embargo, cuando dos o
      más usuarios están accediendo a la base de datos
      y al menos uno de ellos está actualizando datos, pueden
      interferir de modo que se produzcan inconsistencias en la base
      de datos. El SGBD se debe encargar de que estas interferencias
      no se produzcan en el acceso simultáneo.
    • Un SGBD debe proporcionar un mecanismo capaz de
      recuperar la base de datos en caso de que ocurra algún
      suceso que la dañe llevándola a un estado
      consistente.
    • Un SGBD debe proporcionar un mecanismo que garantice
      que sólo los usuarios autorizados pueden acceder a la
      base de datos. La protección debe ser contra accesos no
      autorizados, tanto intencionados como accidentales.
    • Un SGBD debe ser capaz de integrarse con algún
      software de comunicación. Muchos usuarios acceden a la
      base de datos desde terminales. En ocasiones estos terminales
      se encuentran conectados directamente a la máquina sobre
      la que funciona el SGBD. En otras ocasiones los terminales
      están en lugares remotos, por lo que la
      comunicación con la máquina que alberga al SGBD
      se debe hacer a través de una red. En cualquiera de los
      dos casos, el SGBD recibe peticiones en forma de mensajes y
      responde de modo similar. Todas estas transmisiones de mensajes
      las maneja el gestor de comunicaciones de datos. Aunque este gestor no
      forma parte del SGBD, es necesario que el SGBD se pueda
      integrar con él para que el sistema sea comercialmente
      viable.
    • Un SGBD debe proporcionar los medios
      necesarios para garantizar que tanto los datos de la base de
      datos, como los cambios que se realizan sobre estos datos,
      sigan ciertas reglas. La integridad de la base de datos
      requiere la validez y consistencia de los datos almacenados. Se
      puede considerar como otro modo de proteger la base de datos,
      pero además de tener que ver con la seguridad, tiene
      otras implicaciones. La integridad se ocupa de la calidad de
      los datos. Normalmente se expresa mediante restricciones, que
      son una serie de reglas que la base de datos no puede
      violar.
    • Un SGBD debe proporcionar una serie de herramientas
      que permitan administrar la base de datos de modo
      efectivo.  Dichas herramientas deben
      proporcionar.

    ·   Herramienta administración
    de usuarios

    ·   Analizador de logs

    ·   Administrador de
    procesos

    ·   Herramientas para importar y
    exportar datos.

    ·   Herramientas para monitorizar el
    uso y el funcionamiento de la base de datos.

    ·   Programas de análisis
    estadístico para examinar las prestaciones o
    las estadísticas de utilización.

    ·   Herramientas para
    reorganización de índices.

    6.5.            
    DIFERENTES SISTEMAS  DE GESTIÓN DE BASES DE
    DATOS 

    Rapidez,  efectividad en los procesos y los
    grandes flujos de información están como 
    primera  necesidad  la hora de optimizar servicios y
    productos. Ante esta notable demanda de soluciones
    informáticas han surgido multitud de gestores de bases de
    datos, siendo estos  programas que permiten manejar la
    información de modo sencillo y que prestan servicios para
    el desarrollo y el manejo de bases de datos.

    Con la salida al mercado de múltiples entornos de
    desarrollo la preocupación están  en 
    conocer las características, ventajas y desventajas de
    cada herramienta que ofrece el mercado, y para el caso especifico
    del desarrollo de este  trabajo  damos a conocer
    características  generales de  los productos que
    más se destacan  como son Oracle, Microsoft SQL Server y
    Borland Interbase que comercialmente son los más fuertes,
    sin embargo en el mundo del software libre,  se aprecian
    opciones tan completas como MySQL,  y postgreSQ, 
    para  el  desarrollo del presente trabajo se
    mencionaran algunas de las características de los
    diferentes manejadores de base de datos antes mencionados, 
    haciendo mayor énfasis en SQL SERVER Y My SQL 
    SERVER,    las  razones están
    mencionadas  en el numeral 7.

    6.5.1.                   
     Software bajo
    licenciamiento  libre  

    6.5.1.1.                           
    Postgresql  

    PostgreSQL se diseño como una base de datos
    orientada a objetos, es decir, una ORDBMS. Esto significa, que
    las tablas no son tablas, sino objetos, y las tuplas son
    instancias de ese objeto. Puedes crear nuevos tipos de datos,
    hacer herencias entre objetos, PostgreSQL tiene 
    transacciones, integridad referencial, vistas, y multitud de
    funcionalidades, pero es lento y pesado.

    Han incorporado la llamada MVCC (multiversion
    concurrency control) con lo que los bloqueos de escritura
    actúan sólo en la sesión del cliente, no en
    las de los demás clientes. También tiene soporte de
    Full-Text-indexing a través de un trigger incluido en la
    distribución, han arreglado el límite de 8k por
    fila. Por fin es de 32k, Postgres usa un modelo cliente-servidor
    conocido como proceso por usuario una sesión de postgres
    consiste en los siguientes procesos cooperativos de Unix
    (programas):

    ·        
    Un proceso demonio supervisor (postmaster)

    ·        
    La aplicación sobre la que trabaja el usuario (frontend,
    Ej.: psl)

    ·        
    Uno o más servidores de base de datos en segundo
    plano(el mismo progreso postgres)

    Un Único postmaster controla una colección
    de bases de datos dadas en un Único host, debido a esto
    una colección de base de datos se suele llamar una
    instalación o un sitio,  las aplicaciones de frontend
    que quieren acceder a una determinada base de datos de una
    instalación hacen llamadas a la librería. La
    librería envía peticiones de usuario a
    través del postmaster (como se establece una
    conexión), el cual en respuesta inicia un nuevo proceso en
    el servidor (backend) y conecta el proceso de frontend al nuevo
    servidor. A partir de este punto, el proceso de frontend y el
    servidor en backend se comunican sin la intervención del
    postmaster. Aunque, el postmaster siempre se esta ejecutando,
    esperando peticiones, tanto de frontend como los de backend
    vienen y se van.

    La librería libpq permite a un Único
    proceso en frontend realizar múltiples conexiones a
    procesos en backend. Aunque, la aplicación frontend
    todavía es un proceso en un Único thread.
    Conexiones multithread entre el frontend y el backend no
    están soportadas de momento en libpq. Una
    implicación de esta arquitectura es que el postmaster y el
    backend siempre se ejecutan en la misma maquina (el servidor de
    base de datos), mientras que la aplicación en frontend
    puede aplicarse desde cualquier sitio.

    Al configurar un apache con PHP4 con soporte para
    PostgreSQL obtenemos algunos resultados importantes: Apache crea
    nuevas instancias cada vez que recibe nuevos clientes. Cada
    instancia de apache puede soportar varios clientes http (150 por
    defecto).

    Pero el apache, para cada cliente que pide una
    página dinámica, que requiere un acceso a la base
    de datos, tiene que abrir conexión con el PostgreSQL. Al
    no ser Multithreading, el PostgreSQL crea una nueva
    instancia,  siendo  las consultas lentas y se acumulan
    rápidamente las instancias del postmaster. Llegando
    rápidamente al límite de procesos (32 por defecto)
    produciéndose un error en la página generada,
    podemos subir el límite de instancias de PostgreSQL a
    1024.

    Pero entonces nos falla el límite de los files
    handles abiertos (los threads comparten los files handles dentro
    un proceso, pero los procesos no), el límite de handles
    por usuario (el daemon del PostgreSQL, corre bajo el usuario
    postgres esta limitado en el kernel, con lo que tienes que
    recompilar el kernel.

    Después te encuentras que falla el límite
    de semáforos del PostgreSQL, teniendo que recompilar el
    PostgreSQL. Además tienes que controlar los ficheros de
    configuración del apache para bajar el número de
    clientes atendidos por instancia y así controlar el
    número de instancias de PostgreSQL que se puedan generar
    debido a la gran cantidad de recursos que ocupan.

    6.5.1.2.                           
     Mysql
    Server

    MySQL  Server es la base de datos de código
    fuente abierto más usada del mundo desarrollado y
    proporcionado por MySQL AB.  MySQL AB es una empresa cuyo
    negocio consiste en proporcionar servicios en torno al servidor
    de bases de datos MySQL.

    Su origen se debió a la búsqueda por parte
    de los fundadores de crear un manejador de bases de datos que
    fuera "rápido", todavía más rápido
    que mSQL. Así surgió MySQL, primero como un
    producto de la empresa y después como software de dominio
    público.

    El servidor MySQL fue desarrollado originalmente para
    manejar grandes bases de datos mucho más rápido que
    las soluciones existentes y ha estado siendo usado exitosamente
    en ambientes de producción sumamente exigentes por varios
    años. Aunque se encuentra en desarrollo constante, el
    servidor MySQL ofrece hoy un conjunto rico y útil de
    funciones. Su conectividad, velocidad, y seguridad hacen de MySQL
    un servidor bastante apropiado para acceder a bases de datos en
    Internet.

    6.5.1.2.1 Características
    Principales de Mysql

    A continuación  se mencionan algunas de las
    más importantes características del
    SGBD:

    ·        
    Escrito en  C y C++

    ·        
    Trabaja bajo diferentes plataformas:  AIX 4x 5x, Amiga,
    BSDI,  Digital Unix 4x, FreeBSD 2x 3x 4x, HP-UX 10.20 11x,
    Linux 2x, Mac OS,  NetBSD, Novell
    NetWare 6.0 , OpenBSD 2.5, OS/2, SCO OpenServer, SCO UnixWare
    7.1.x, SGI Irix 6.x, Solaris 2.5, SunOS 4.x, Tru64 Unix y
    Windows 9x, Me, NT, 2000, XP, 2003

    ·        
    Desarrollo de APIs  para C, C++, Eiffel, Java, Perl,
    PHP, Python,
    Ruby, y Tcl

    ·        
    Procesos MultiHilo. Capacidad de trabajar servidores con varios
    procesadores

    ·        
    Provee sistema transaccional con la tabla Innodb

    ·        
    Velocidad cuando se manipula datos con el tipo de tabla
    Myisam

    ·        
    Velocidad en la utilización de joins y procesos de
    optimización

    ·        
    Soporta muchos tipos de columnas para las tablas: FLOAT,
    DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME,
    TIMESTAMP, YEAR, SET, ENUM y  OpenGIS (Modelo
    Geométrico)

    ·        
    Manejo de la memoria a
    través de  manejo del buffer y cache

     

    6.5.1.2.2 Tipos de Tablas en
    Mysql Server

    Mysql Server, cuenta con una variedad de tipos de tablas
    para el almacenamiento de la información, dependiendo de
    las necesidades y cantidades de información que una
    organización puede tener, se elige el tipo de tabla con la
    que más se acople.  En una  sola base de datos
    es posible tener diferentes tipos de tablas. Con MySQL existe la
    posibilidad de  variar el tipo de tabla después 
    de ser creada.  La estructura de la tabla que se crea, 
    es guardada en un archivo  con
    el nombre de la tabla y extensión  frm.  El
    archivo de indixes tiene la extensión .MYI

    Actualmente existen 16 tipos de tablas, a
    continuación se mencionan las más
    representativas.

    MYISAM.- Es el tipo de tabla por defecto en MySQL desde
    la versión 3.23.  y hasta la versión 4.
    Optimizada para sistemas operativos de 64 bits, Además los
    datos se almacenan en un formato independiente, con lo que se
    pueden copiar tablas de una máquina a otra de distinta
    plataforma. Posibilidad de indexar campos BLOB y TEXT. Su mayor
    característica es la velocidad. La información de
    esta tabla queda almacenada en un archivo con la extensión
    MYD

    INNODB.-  Es el tiplo de tabla por defecto
    después de la versión 4 Este tipo de tabla 
    maneja  transacciones seguras  con posibilidad de
    commit, rollback, recuperación de errores y bloqueo a
    nivel de fila.  son menos rápidas y ocupan más
    memoria, pero
    a cambio ofrecen mayor seguridad frente a fallos durante la
    consulta. La información de esta tabla queda almacenada en
    un archivo con la extensión IDB

    ·        
    MEMORY – La estructura  de estas tablas son
    almacenadas en disco en un archivo con extensión
    .frm  usando por defecto  indexación hash
    Estas tablas pueden ser muy rápido y muy
    utilizadas  como tablas temporales. Sin embargo, cuando el
    servidor Mysql Server es reiniciado, toda la información
    de las tablas se pierde quedando solamente la estructura. Este
    tipo de tablas no soportan columnas tipo blob o Text. Antes de
    la versión 4.1.0. no soportan auto_increment. Si se
    desea liberar memoria con este tipo de tablas solo se debe
    eliminar la información de la tabla con un delete o
    truncate  o un drop tabla

    ·        
    HEAP.- Crea tablas en memoria. Son temporales y desaparecen
    cuando el servidor se cierra; a diferencia de una tabla
    TEMPORARY, que solo puede ser accedida por el usuario que la
    crea, una tabla HEAP puede ser utilizada por diversos
    usuarios.

    ·        
    MERGE- también conocida como MRG_ISAM,  más
    que un tipo de tabla es la posibilidad de dividir tablas MYISAM
    de gran tamaño (solo útil si son verdaderamente
    de GRAN tamaño) y hacer consultas sobre todas ellas con
    mayor rapidez. Las tablas deben ser MyIsam e idénticas
    en su estructura.  Luego de esto se crea la tabla tipo
    MERGE haciendo relación a las tablas creadas con la
    misma estructura La información de esta tabla queda
    almacenada en un archivo con la extensión MRG

    ·        
    NDBCLUSTER -  Este tipo de tabla es para el manejo de
    cluster en Mysql Server  , en este momento es soportado
    por sistemas operativos como  Linux, Mac OS X, y Solaris.
    Están trabajando para que quede habilitado en todos los
    sistemas operativos, incluyendo Windows. Este tipo de tabla es
    soportado desde Mysql 4.1.2.

    ·        
    CSV -  Este tipo de tabla fue adicionada desde la
    versión 4.1.4, almacena la información en un
    archivo de texto separada por comas y encerrada en comillas
    dobles. Cuando se crea una tabla de tipo Csv, se crea dos
    archivos, uno con extensión .frm  donde almacena la
    estructura de la tabla y otro .csv donde reposa la
    información. Este tipo de tabla no soporta
    indexación. La información de esta tabla queda
    almacenada en un archivo con la extensión CSV

    ·        
    ARCHIVE -  Este tipo de tabla fue adicionada a partir de
    la versión 4.1.3 y es usada para almacenar 
    información  sin ningún tipo de
    indexación, cuando se crea una tabla de este tipo, Mysql
    Server crea un archivo con la extensión .frm donde
    almacena la estructura de la tabla  y otros archivos con
    la extensión .arz, .arm ,  y .arn.   Este
    tipo de tabla soporta únicamente  insert y select
    .

    Con tablas tipo Myisam  se puede trabajar
    hasta  8   terabytes, mientas que con tablas tipo
    Innodb la capacidad máxima de almacenamiento es de 64
    terabytes, cuando  se trabaja  con altos
    volúmenes de información es importante tener
    presente el limite en tamaño para un archivo que soporta
    el sistema operativo.

     En la siguiente tabla se muestra el límite
    de tamaño  que soporta un archivo para algunos
    sistemas operativos

     

     

    Partes: 1, 2, 3

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter