Revista COECYS

Page 1

Congreso No. XI • Edicion No. xx • Guatemala 2011

Ejemplar Gratuito

XI De Ciencias y Sistemas

Congreso Estudiantil

Creando competitividad por medio de las TICS y la innovacion.

Incubadora Relación ting

Cloud Compu

Ideas CBO

Con el apoyo de


COECYS 2011

E

ntre el ruido de cientos de automóviles y ante la mirada de muchos estudiantes, en la entrada a la Universidad de San Carlos de Guatemala, se encuentra un monumento que cita las palabras del que fuese dos veces rector el Dr. Carlos Martínez Durán las cuales dicen: “Universitario, esta ciudad te pertenece. Edifica en ella tu presente, para que las generaciones futuras puedan aquí colmar su sed de sabiduría. Que tu vida académica sea sagrada, fecunda y hermosa. No entréis en esta ciudad del espíritu, sin bien probado amor a la verdad”. Bajo esta filosofía y este amor a nuestra universidad se forjó día a día el XI Congreso de Estudiantes de Ciencias y Sistemas, COECYS 2011, celebrando así 11 ediciones consecutivas, transmitiendo en cada una de ellas la experiencia, en campos de tecnología e innovación, de profesionales y expertos tanto nacionales como extranjeros, quienes sin egoísmo y en busca de transmitir el conocimiento adquirido en años de trabajo e investigación, nos han proporcionado su tiempo y sabiduría a todos los que hemos tenido la satisfacción de escucharlos.

2

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

En estos momentos el COECYS 2011 ya es una realidad, todo el trabajo y tiempo invertido se han hecho notar en cada una de las actividades realizadas, y abrimos nuevas brechas para que el proyecto siga creciendo y el próximo año crezca no solo en número, sino en calidad e innovación, siguiendo la visión de ser el más grande evento tecnológico en el país. Luego de estas palabras no me queda más que darle gracias a todas aquellas personas que hicieron posible este evento, a todos lo que nos acompañaron desde el inicio, a los que se unieron en el camino y a todos aquellos que no pudieron culminar con nosotros este sueño. Así mismo agradecemos el apoyo de las empresas e instituciones que confiaron e invirtieron en nosotros, instituciones como el CONCYT, ESET, ACS, E-solutions y el apoyo brindado por nuestras autoridades, por el Decano de la Facultad de Ingeniería, Ing. Murphy Paiz y el Rector de nuestra querida Universidad de San Carlos. Lic. Estuardo Gálvez, a quienes nuevamente le damos gracias y confiamos en que seguirán apoyando este proyecto. Ruben Antonio Quintana Tepaz Presidente COECYS 2011 ruben.usac@gmail.com


Incubadoras de Negocios

Una oportunidad para despegar

...Por Maria Zaghi

Las incubadoras de empresas aceleran el desarrollo exitoso de iniciativas de emprendimiento a través de una combinación de apoyo en recursos y servicios empresariales coordinados por la administración de la incubadora y a través de su red de contactos. El objetivo es formar empresas exitosas que salgan de la Incubadora siendo financieramente viables e independientes

Estas

iniciativas tienen la capacidad de generar trabajo y riqueza, revitalizar comunidades, comercializar nuevas tecnologías y fortalecer las economías locales y nacionales. Una incubadora debe de proveer asesoría administrativa, asistencia técnica, y servicios de consultoría a empresas emergentes. También pueden proveer espacios de oficina con rentas flexibles, equipo compartido, soporte tecnológico, y asistencia buscando financiamiento para crecer las empresas.

“Acelera el proceso de creación, crecimiento y consolidación de empresas y proyectos innovadores”

La incubadora de Negocios del Campus Tecnológico es una incubadora de empresas que tiene como objetivo principal acelerar el lanzamiento y crecimiento de nuevas iniciativas de alta tecnología en el parque tecnológico, a través de una plataforma que ofrece las herramientas y recursos necesarios para llevar un producto o servicio al mercado. Se encuentra localizada dentro del Campus Tecnológico, que es un espacio físico en la Ciudad de Guatemala, donde la innovación y la tecnología puedan tener una sede para florecer a niveles de competitividad mundial.

La misión de la iniciativa es la de crear un parque tecnológico en 4°Norte, que reúna los elementos principales que hicieron posible la revolución tecnológica como la del Silicón Valley en Guatemala y su visión es la de convertir a Guatemala en un líder tecnológico de la región y hacerla competitiva mundialmente para el año 2020. Esta iniciativa inicio en el 2006 y cuenta ya con la infraestructura que alberga a mas de 70 empresas de alta tecnología para el sector de Tecnologías de la Información y la Comunicación (TICs) que incluyen especialidades en: electrónica, telecomunicaciones, informática y lo audiovisual. La incubadora, entonces, es la organización localizada dentro del Campus Tecnológico que acelera el proceso de creación, crecimiento y consolidación de empresas y proyectos innovadores, así como la capacidad emprendedora de personas, dispone de recursos técnicos, económicos, infraestructura y de una red de contactos para guiar a las empresas y los emprendedores para su desarrollo competitivo y finalmente, presta servicios a las empresas y emprendedores del parque tecnológico. Sus principales productos y servicios incluyen: • Comercialización de los productos/servicios y búsqueda de oportunidades de negocio de los miembros del Campus Tecnológico • Desarrollo de eventos, talleres, ruedas de negocio y capacitaciones • Asesoramiento y capacitación • Servicios de gestión de proyectos, mercadeo, asesoría legal, recurso humano y otros con red de mentoría • Pre-Incubación, incubación y aceleración • Búsqueda de Financiamiento y • Redes de contactos locales e internacionales Siempre dentro de las áreas de interés en el sector TICs (Tecnologías de Información y Comunicaciones) que apoya la incubadora de negocios que son: Software, hardware , efectos especiales, juegos , aplicaciones para móviles y otras del sector de telecomunicaciones, business Process Outsourcing (BPOs) – Call centers y otros servicios de alta tecnología Si usted esta interesado en presentar proyectos a la incubadora de negocios dentro de los ejes de inversión de interés tales como Emprendimientos Tecnológicos (Tech Startups), Empresas en procesos de aceleración, Emprendimientos Sociales (Social Entrepreneurship) o Productos nuevos a patentar y comercializar, los datos de contacto son los siguientes: Desarrollo de Negocios Incubadora del Campus Tecnológico E-mail: incubadora@tec.com.gt • www.tec.com.gt Ruta 2 3-63, Zona 4, 4°Norte • Teléfono: (502) 2334-4492 Guatemala 01004, Centro América

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

3


Porque se les llama relacionales a las Bases de datos Relacionales

Resumen: Existe mucha confusión sobre el porqué a la teoría relacional y las bases de datos relacionales se les llama relacionales. Se ha creado la idea errónea de que el nombre relacional viene de las “conexiones”, “interconexiones” o “relaciones” que existen entre los datos. El nombre relacional viene del concepto matemático de Relación. Una tabla es la implementación de la relación matemática. Abstract: there is confusion about why the relational theory and relational databases are called relational. There is a misconception that the relational name comes from the "connections", "interconnections" or "relationships" between the data. The name comes from the mathematical concept of relation. A table is the implementation of the mathematical relation.

4

Palabras claves: teoría relacional, bases de datos relacionales, tablas, producto cartesiano, relación.

2. ¿Qué es una relación?

1. Introducción

El concepto de relación viene de la teoría de conjuntos a partir del concepto de producto cartesiano. El producto cartesiano de dos conjuntos A, B se define como el conjunto formado por los pares ordenados (a, b) donde a є A y b є B. A x B = {(a, b) | a є A y b є B}[1]. Una relación matemática R de los

El fundamento de las bases de datos relacionales es el modelo relacional. Existe mucha confusión sobre el porqué a las bases de datos relacionales se les llama relacionales. Se ha creado la idea errónea de que el nombre relacional viene de las “conexiones”, “interconexiones” o “relaciones” que existen entre los datos. El nombre relacional se deriva de un concepto basado en la teoría de conjuntos. El concepto de relación matemática

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

2.1. Producto cartesiano y relación Matemática

producto cartesiano de A x B. Por ejemplo:

ESTUDIANTE={Carlos, María, José} SEXO={ M, F} Producto cartesiano: ESTUDIANTE x SEXO = { (Carlos, M), (Carlos, F), (María, M), (María, F), (José, M), (José, F)} La relación estudiante sexo se define como un subconjunto del producto cartesiano de ESTUDIANTExSEXO.


R={ (Carlos, M), (María, F), (José, M) }. Este subconjunto es tomado bajo la restricción del sexo. Cada persona tiene un sexo definido que puede ser masculino M o femenino F. Una relación Matemática es un concepto abstracto.

valores de cada atributo. Es decir ahora el conjunto B es: B={Carlos, María, José, M, F}. Ahora se puede definir una Relación de estos conjuntos de la siguiente forma: {(Persona, Carlos),(Persona, Maria), (Persona, José), (Sexo, M),(Sexo, F)}.

2.2. El concepto de Relación en la teoría Relacional La teoría relacional define que R es una relación si tiene un encabezado y un cuerpo. Tanto el encabezado como el cuerpo se definen a partir de una relación matemática. El encabezado está formado un conjunto de conjuntos. Para el ejemplo, A= {Persona, Sexo}.

3. Conclusiones • Una relación en teoría relacional es una representación abstracta del concepto de relación de la teoría de conjuntos. • La tabla es la implementación de la Relación definida en la teoría

Cada persona tiene un sexo definido que puede ser masculino M o femenino F.

La estructura más adecuada y La teoría relacional llama a estos como eficiente para representar esta los atributos de la relación. El otro con- Relación es una tabla. junto es también un conjunto de conjuntos. El conjunto de todos los dominios. Un dominio es el conjunto de PERSONA SEXO valores posibles que puede tener cada atributo. B = { D1, D2} donde D1 y D2 Carlos M son los dominios de Persona y Sexo. D1= {Carlos, María, José} María F D2= {M, F}. El producto Cartesiano de AxB queda como: AxB={(Persona, D1), José M (Persona, D2), (Sexo, D1), (Sexo, D2) }. De esta manera, todos los datos en La relación Encabezado como el una base de datos relacional son subconjunto de AxB. Encabezado = manejados por tablas. La tabla es la {(Persona, D1), (Sexo, D2)} implementación del concepto de Esto significa que para el atributo Relación. Una base de datos Persona los valores validos son Carlos, relacional se le llama relacional María y José y para Sexo los valores porque todos los datos son la implevalidos son M y F. De similar forma el mentación de relaciones (tablas). Cuerpo de la relación está formado por el subconjunto del producto cartesiano de los atributos pero ahora con los

relacional. • Una base de datos relacional es aquella que es percibida por el usuario por un conjunto de Relaciones. • El nombre relacional viene del concepto de Relación Matemática y no de Relaciones o interconexiones entre los datos.

Referencias bibliográficas [1] Teoria de conjuntos Francesc Tiñena UOC pg 10

Otto Amílcar Rodríguez Acosta

Sistemas administrativos de Bases de datos Ingeniería en ciencias y sistemas Universidad de San Carlos de Guatemala orodri@gmail.com Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

5


Cloud Computing Ing. Sergio José Rodríguez Méndez Facultad de Ingeniería Universidad de San Carlos de Guatemala srodriguez142857@gmail.com

Introducción La rápida evolución de los servicios y aplicaciones principalmente a través de Internet, ha permitido el auge de nuevos sistemas de información e iniciativas empresariales. Los modelos de negocio del software “como servicio”, están cambiando la forma de interactuar y medir los activos tecnológicos. A esta nueva tendencia y forma de trabajo con las TICs, se conoce como Cloud Computing. 6

Cloud Computing Cloud Computing es la entrega del entorno computacional como un servicio en vez de un producto, en donde recursos compartidos, software e información son proporcionados a computadoras y otros dispositivos como una utilidad (similar a una malla de electricidad) sobre una red (típicamente el Internet). Cloud Computing proporciona, mediante servicios especializados, la infraestructura requerida de computación (plataformas de información), aplicaciones de software, acceso a datos y almacenamiento.

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

Dichos servicios no requieren de un conocimiento detallado del usuario final acerca de la ubicación física y configuración del sistema que entregan los servicios. Este concepto se enfoca en suplir la necesidad perpetua de las TICs: una forma para incrementar la capacidad o añadir capacidades inmediatamente sin invertir en nueva infraestructura, capacitación técnica de recurso humano o licenciamiento de un nuevo software.


Esta modalidad abarca cualquier servicio basado en suscripción o pago-por-uso que, en tiempo real sobre el Internet, extiende las capacidades existentes de la infraestructura de TICs de las organizaciones. Cloud Computing ofrece un cambio de paradigma para el manejo de activos tecnológicos. Bajo este contexto, los fundamentos de outsourcing como una solución, se aplican directamente:

Reducir costos:

se pueden reducir tanto los gastos de capital como los operativos debido a que los recursos únicamente son adquiridos cuando se necesitan y solamente son pagados cuando se usan.

• Refinamiento del uso del capital humano:

SOA y Cloud Computing.

Figura #1. Las capas de Cloud Computing incorporadas en los componentes "como servicio" (as a Service). [Wal2010].

Tecnologías centrales. • Aplicaciones Web y servicios. SaaS y PaaS no pueden existir sin aplicaciones Web y tecnologías de Servicios Web.

se logra la liberación de personal técnico especializado y valioso permitiendo enfocarse en entregar valor en vez de mantener operativos los activos de hardware y software. • Escalabilidad robusta: permite el escalar inmediatamente, ya sea arriba o abajo en cualquier momento sin compromisos a largo plazo.

SaaS se ofrece típicamente implementado como aplicaciones Web, mientras que PaaS proporciona desarrollo y entornos de ejecución para aplicaciones Web y servicios. Para los ofrecimientos de IaaS, los administradores típicamente implementan servicios asociados y APIs (Interfases Programáticas de Aplicación), tales como el acceso administrativo para clientes, usando tecnologías de Web.

Servicios/capas centrales.

• Infrastructure as a Service (IaaS):

Infraestructura de TICs como un servicio montado en Internet y accedido y administrado remotamente. Aquí se ubican servicios como: hosting, almacenamiento, virtualización, networking, etc.

• Platform (PaaS):

as

• Software (SaaS):

as

a

Service

Plataformas de desarrollo y gestión de aplicaciones de software como servicio.

a

Service

aplicaciones de software como un servicio, no producto.

Ofrecimientos de virtualización para IaaS.

Estas tecnologías tienen técnicas de virtualización en su esencia; debido a que PaaS y Saas son usualmente construidos encima de un conjunto de capas de IaaS, la importancia de virtualización también se extiende a estos modelos de servicios. • Criptografía. La mayoría de requerimientos de seguridad para Cloud Computing se resuelven únicamente a través del uso de técnicas criptográficas.

Los negocios exitosos con SOA (Arquitectura Orientada a Servicios) tienden a describir SOA de la siguiente forma : • SOA se trata de las interacciones y relaciones entre consumidores y productores. • El definir la granularidad apropiada para un servicio es frecuentemente la tarea más difícil y grande. • El servicio cumple una necesidad del negocio. Los negocios exitosos en adoptar Cloud Computing tienden a describir sus esfuerzos de la siguiente forma: • Se puede cumplir rápidamente con una necesidad de negocio sin la preocupación de adquirir un sistema/infraestructura similar administrado internamente. • Se paga únicamente por lo que se usa y únicamente se adquiere lo que se necesita. • El cambiare a una solución basada en la nube ahorra dinero. De forma interesante, estas perspectivas son dos caras de la misma moneda. El éxito de SOA es representativo de la perspectiva del proveedor de servicios con respecto a construir y entregar un servicio, mientras que el éxito de Cloud Computing es representativo de la perspectiva del consumidor, indicando que dicho éxito puede muy bien ser dependiente en conceptos como SOA para ofrecer la entrega de servicios de calidad. Así, la clave para practicantes SOA es el ofrecer servicios de negocios útiles y confiables con un enfoque que va más allá del desarrollo.

Conforme evolucione el desarrollo de Cloud Computing, la lista de tecnologías centrales ser irá expandiendo.

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

7


Ideas: el producto del futuro Resumen:

Las ideas jugarán un papel fundamental en el futuro. Estamos llegando a un punto de inflexión, en donde los productos empiezan a ser comodities, mientras que las ideas empiezan a ganar más valor. Para ser exitosos tendremos que sobrevivir a un cambio de paradigma, en donde el pensamiento crítico y la innovación serán las piedras angulares.

Abstract:

Ideas will be fundamental in the future. We are reaching an inflection point, in which products are becoming commodities, while ideas will be more valuable. To be successful we need to survive a paradigm shift, in which critical thinking and innovation will be the corner stones.

Palabras claves:

Cambio de paradigma, ideas, innovación, investigación, pensamiento crítico.

8

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

Introducción Vivimos en un mundo globalizado, gracias a las Tecnologías de la Información y la Comunicación. Por ellas, nunca antes había sido tan fácil el colaborar.Con esta facilidad las empresas se dispersaron en varios países, los equiposde trabajo con ellas, y ahora la competencia se mide globalmente. Actualmente, no competimos con nuestros vecinos, sino que lo hacemos contra otros países. Por otro lado, el avance tecnológico ha permitido que los productos (y en especial el software) se conviertan en commodities, lo que hace que su precio disminuya. El futuro no está en producir, sino en crear. Por ejemplo, durante la revolución industrial se competía por producir cierto producto con el menor costo posible; sin embargo ahora con la ayuda de los robots, que pueden trabajar 24/7, y con la automatización los precios de la producción han disminuido. En un futuro no muy lejano, cuando las impresoras 3Dsean comerciales, será más fácil imprimir objetos que ensamblarlos.


Ya no compraremos, sino que imprimiremos nuestras pertenencias. Entonces el mercado se desplazará, y estará con aquellos que visionen necesidades y diseñen nuevos aparatos. En concreto, el mercado estará donde estén las ideas. En este momento competimos contra el mundo; para mantenernos competitivos necesitaremos innovar, tendremos que explorar nuevos caminos y oportunidades, y crear nuevos mercados. La solución no está en seguir haciendo lo mismo, sino en buscar nuestro propio camino.

Neo educación

Los estudiantesseestán preparando para mercados que aún no existen, y competirán por satisfacer necesidades que aún no tenemos. El paradigma de la educación deberá cambiar para adaptarse a esta incertidumbre; a pesar que parece imposible o contradictorio, tendremos que educar sin saber para qué. En lugar de estudiar para aprender a hacer algo específico, como se suele aprender un oficio y dedicarse a eso toda la vida, deberemosaprender a pensar de manera crítica, a hacer las preguntas correctas (ahora que tenemos un exceso de información), a ver tendencias, y a innovar. La educación tendrá que evolucionar al punto en el que se prepare a los estudiantes para trabajos del futuro que aún no existen.

Investigación

La forma en que hemos avanzado, como sociedad, es gracias a la ciencia. Y ésta a su vez avanza a través de la investigación. La revolución en las ideas conlleva una revolución en la sociedad. Estamos en un punto de inflexión, en donde vemos como las ideas empiezan a tomar más valor sobre

los productos. Un claro ejemplo es el hardware, la capacidad de los dispositivos aumenta y el precio disminuye. Los servicios y las ideas adquieren más valor, vemos como nuevas empresas emergen con modelos de negocios basados en servicios, como Google. Para crear ideas más complejas, tenemos que usar conceptos e ideas ya establecidas. Para poder ver más lejos, tenemos que pararnos en los hombros de gigantes. La investigación permite el crear ideas, sobrepasando las restricciones que los productos comerciales no pueden obviar por tener que mantenerse competentes. Es gracias a la libertad en la investigación, que nuevos campos emergen y que permiten explorar áreas que de otra manera se mantendrían al margen. Asílainvestigación es la punta de lanza que abre camino para la humanidad. De esta manera, son los investigadores los que iluminan el camino, explorando nuevos caminos y nuevas fronteras antes que el resto de la humanidad.

Nuevos campos

La investigación abre nuevas áreas para poder explorar. Esas áreas traen consigo nuevos mercados inexplorados. Por ejemplo, si analizamos el descubrimiento de la radiofrecuencia y todos los mercadosque se crearon con ella (comola radio, las comunicaciones, las computadoras, las redes, el internet, etc.), concluiremos que eran inimaginables antes de dicho descubrimiento. Sin embargo, ese campo emergió, se estableció y creo muchos otros avances consigo. En estos días, ¿quién se imagina el vivir sin internet o sin celular? He ahí la magnitud de la revolución que producen las ideas.

De igual forma podríamos pensar en que mañana una nueva idea revolucionara los conocimientos que tenemos, y con esa idea nuevos mercados emergerán, y con ellos nuevas oportunidades para todos los que estén dispuestos a aceptar el reto.

Conclusiones

El producto del futuro son las ideas. La educación y la forma de trabajo tendrán que enfrentarse a un cambio de paradigma, donde el valor estará en producir ideas. El inicio de ese cambio ya sucedió. Una de las profesiones mejor pagadas, a nivel mundial, es la del Ingeniero de Software, y ellos no crean productos, sino ideas. Las ideas no residen solamente en las universidades y centros de investigación. A pesar que es en estos lugares donde hay mayor concentración de personas dedicadas a pensar, cualquiera puede tener ideas. Todos podemos innovar e imaginar. Es por eso que las ideas nos harán realmente libres. En una economía basada en ideas, todos podremos competir justamente. Para poder estar en la vanguardia, necesitamos arriesgar y pensar fuera de lo común. Tendremos que ser los que estén probando y fallando, tomar los riesgos y pensar lo impensado. Es por esto que la investigación juega una parte importante en los avances de nuestra sociedad. La investigación nos permite ver al futuro, y con esa visión construirlo.

Adín Ramírez Rivera Universidad Kyung Hee adin@khu.ac.kr

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

9


Lo que es, lo que no es y lo que puede ser el optimizador de base de datos basado en costos Cuando se ejecuta una instrucción Select de SQL un software especializado se encarga de devolver los datos solicitados. Este software se llama optimizador. Esta tarea que a simple vista parece fácil envuelve la ejecución de operaciones complejas y software muy especializado. Existen diferentes tipos de optimizadores. El optimizador por costos asigna un costo de ejecución de cada operación que debe realizar y busca usar el de menor costo posible. Al proceso de encontrar el procedimiento más eficiente se le llama Estimación. A continuación se explica que es, como funciona, que no puede hacer y cómo se podría mejorar el optimizador por costos.

El optimizador

Es un componente del DBMS encargado de ejecutar de la mejor manera posible las instrucciones SQL. Una instrucción SQL puede ejecutarse de formas diferentes para obtener el resultado solicitado. El optimizador debe generar una serie de pasos (un algoritmo), que define como se debe acceder a los datos para resolver la consulta. Este algoritmo se le llama el plan de ejecución. El optimizador debe seleccionar el mejor plan posible.

Estimación

Es el proceso por el cual el optimizador encuentra el costo global de un determinado plan de ejecución. A partir de todos los costos de todos los planes de ejecución se selecciona el menor y se ejecuta. Se le llama estimación porque ese costo se calcula o estima sin realizar la operación. Para realizar esta estimación el optimizador basa

10

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas


sus cálculos en estadísticas de los objetos involucrados en la instrucción SQL.

El costo

Representa unidades de trabajo o de recursos utilizados. Es un valor de comparación y es relativa a los recursos utilizados. Los recursos utilizados pueden ser de diferentes tipos y definen diferentes costos. a) Costo de E/S: Es el costo de la transferencia de información desde el disco a memoria principal. Es el costo más importante y muchos DBMS comerciales solamente utilizan este costo. b) Costo de CPU:es el costo de realizar el procesamiento de la información como filtrar datos, ordenarlos compararlos etc. Se puede decir que el costo utilizado por el optimizador representa una estimación del número de I/Os, la cantidad de CPU y memoria usada en la realización de una operación. El costo de un plan de ejecución es el número de unidades de trabajo que se espera que vaya a efectuar cuando la consulta se ejecuta.

Transitividad

La estimación utiliza el proceso de transitividad que consiste en tomar el predicado de la instrucción SQL y buscar las diferentes vías de acceso a los datos, calculando cual es el costo de cada una de estas vías. La transitividad implica la generación de predicados adicionales sobre la base de predicados existentes.

Cardinalidad

Consiste en el número esperado de filas que se leen en una consulta. No es el número de filas que da el resultado sino todas las que puede llegar a leer para obtener este resultado. Esto está directamente relacionado con el costo de E/S.

Selectividad

La selectividad consiste en la estimación del número de filas que cumplen con el criterio para cada columna de la tabla.

La selectividad define los factores utilizados en la cardinalidad. Es una medida de proporción y define la probabilidad de encontrar un determinado valor. Limitaciones del optimizador por costos. El optimizador basado en costos no es la panacea de la elaboración de consultas SQL. Aun no se pueden realizar determinadas tareas o sus resultados no son reales o calculan costos erróneos. Algunas de estas limitaciones son las siguientes: Estimación incorrecta de la cardinalidad en resultados intermedios Los datos estadísticos para el cálculo de la cardinalidad se obtienen de estadísticas sobre los datos completos de las tablas y sobre estas estadísticas se obtienen los valores deseados, pero en cálculos intermedios no se tienen estadísticas específicas y estas son inferidas. Los cálculos de estimación no son concurrentes. El optimizador funciona bajo la premisa de que cada consulta SQL es independiente e individual y calcula el costo independientemente de que en el sistema puedan haber más instrucciones ejecutándose al mismo tiempo. De esta manera el optimizador no puede saber el número de filas que ya se tienen en memoria principal porque se están generando al mismo tiempo lo que hace que los costos de E/S sean mayores pues asume que tiene que traer los datos de disco. Modelos estocásticos para mejorar la estimación: Un nuevo tipo de optimizador El objetivo de estos modelos es el de tener la capacidad de ajuste dinámico. Es decir el tener la capacidad de poder corregir la estimación dinámicamente a partir de modelos estadísticos no solo de estadísticas de los datos actuales de las tablas sino de datos históricos.

La idea fundamental es que el optimizador además de seguir sus algoritmos de estimación con datos actuales pueda usar resultados históricos. Por ejemplo, Estimar la probabilidad de encontrar un dato especifico en un valor de sexo=’M’ donde las posibilidades solamente pueden ser M o F permite para este caso aplicar una función Binomial aplicando un proceso estocástico de Bernoulli. De igual forma se pueden aplicar funciones normales o método de Montecarlo, por ejemplo. Los datos históricos para las estadísticas deben ser almacenados dentro de la misma base de datos mediante un modelo Multidimensional y aplicar estos conceptos para decidir cómo encontrar el costo de un determinado plan de ejecución. De esta manera se pueden manejar diferentes planes de ejecución dependiendo variables como el horario de ejecución, número de usuarios, relación entre diferentes datos comparados y no comparados en la consulta etc. Teniendo un plan de ejecución diferente para la misma instrucción SQL ejecutada en condiciones diferentes sobre la misma base de datos.

Otto Amílcar Rodríguez Acosta Universidad de San Carlos de Guatemala orodri@gmail.com

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

11


Copyright vrs Comunidad Entrevista Richard Stallman

Richard Stallman

En su conferencia Copyright versus Comunidad hizo un análisis sobre temas de propiedad intelectual, patentes y los fundamentos de un movimiento como el de software libre. En más de una ocasión hizo énfasis en los aspectos éticos y políticos de este movimiento donde más que algo técnico, se pretende privilegiar la libertad de los individuos.

12

¿Por qué dice que las patentes constituyen una amenaza? -Porque una patente –en cualquier campo– es un monopolio impuesto por el Estado a la práctica de alguna idea. La patente es un documento y describe una idea que nadie puede usar sin pedir permiso. Si un diez por ciento de las ideas en el campo son patentadas, esto significa que en este gran programa habrá cientos de ideas patentadas, en otras palabras, cientos de demandas potenciales al desarrollador del programa por el código que ha escrito. Es casi imposible desarrollar software en tal ambiente. .

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

¿Y cuál podría ser una alternativa para organizar? – No hace falta. Las patentes informáticas fingen ser la solución para un problema que no existe. Solo hacen mal. Cuando en Estados Unidos no había patentes informáticas, no se veía ningún problema que, para corregirse, necesitara de patentes informáticas. Una de las críticas que a veces se le hace al software libre en el entorno empresarial es que dependen de una comunidad, y a veces ésta es un poco anárquica…-Sí. Ese es el aspecto anárquico del software libre. Pero ¿por qué molesta eso?


¿Eso no lo hace menos efectivo? – Puede ser, pero cada uno es libre. Usted habla de la libertad que puede brindar el conocer “el código” de un programa pero para el usuario final de cualquier software, esto suena bastante ajeno – No debería, porque puede ser igualmente la víctima de funcionalidades malévolas, y su única defensa es exigir que su software sea libre. El usuario no programador no sabe investigar el código fuente ni cambiarlo, entonces no será él quien detecte algo malévolo ni quien lo corrija. Pero los programadores en la comunidad, defendiéndose del malévolo defienden también a los demás usuarios. ¿Por qué el software libre podría ser más efectivo que el restrictivo? – No lo digo yo. Los de código abierto pueden decir eso. No yo. Lo que digo es que es un error juzgar programas solo según su utilidad práctica y no según su ética, no según su respeto o falta de respeto a su libertad. Es que el juzgar los programas así es no valorar la propia libertad, y el que no valora su propia libertad tiene gran probabilidad de perderla pronto. Un tema sensible respecto al desarrollo de software libre es cómo hacerlo rentable. ¿Cuál considera que sería una opción? – No necesitamos que sea rentable. Porque muchos comienzan en este punto a intentar convencernos de que aceptemos programas privativos. Pero esto implica que renunciemos a la libertad. Prefiero nada a un programa privativo. Es muy importante reconocer que financiar el desarrollo de software libre aunque es útil no es imprescindible, no es un requisito para vivir en libertad.

Han más o menos abandonado la investigación. Entonces, [preferiría] dar dinero a un periodista investigativo independiente. Y que muchos otros también lo hicieran. Pienso que es necesario. Pero entonces, no sé cuánto se aplica al periodismo. ¿Qué opina de la neutralidad de la red? – Es muy importante. Pero los que promueven y defienden la neutralidad de la red no lo hacen suficiente. Porque la red no debe aplicar leyes a sus usuarios técnicamente, porque esas leyes pueden ser injustas.

Porque la libertad a veces exige un sacrificio. A veces exige sacrificios grandes. Pero en el software, afortunadamente, solo exige pequeños sacrificios: aceptar soportar una incomodidad. Todo el mundo puede soportar eso. Entonces ¿cómo ganar dinero desarrollando programas libres? – Hay empresas grandes que financian el desarrollo de software libre y hay pequeñas empresas de desarrollo de software libre cuyo negocio puede basarse en desarrollar soluciones. Una solución para cada cliente. Entrega su solución como software libre, y en el proceso la mejora, la extiende y puede escribir código específico para un cliente. ¿Cree que es posible extrapolar o aplicar la filosofía del software libre a otras áreas como el periodismo? – No sé. Hay un sitio, Wikinews, que intenta hacerlo y parece hacerlo más o menos bien. Pero lo que no hace es investigación. Aunque hay que reconocer que la mayoría de los periódicos hoy en día tampoco hacen mucha investigación.

¿Y de movimientos como Anonymous? – Lo que Anonymous hace es protestar en las calles y las tiendas de la red, como otros hacen físicamente en las calles y las tiendas de la ciudad. A veces es incómodo tener protestas en la ciudad pero cuando juzgamos las protestas tenemos que considerar por qué se está protestando y Anonymous suele protestar contra cosas muy malas y dañinas a la libertad. ¿De qué otra manera cree que la filosofía del software libre puede transformar la sociedad? –No sé, porque directamente se aplica a un solo asunto: el asunto de uso de software en la sociedad, y no pretende transformar otros aspectos de la sociedad. Puede facilitar la protección de los derechos humanos generalmente, porque usamos software en muchos aspectos de la vida y si perdemos nuestros derechos humanos en el software sería más difícil defenderlos en otros aspectos. Pero no es transformar la vida sino evitar que se transforme para mal. Pero transformar la sociedad no es la meta, proteger la libertad es la meta.

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

13


14

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas


XI Congreso de Estudiantes de Ciencias y Sistemas

COECYS 2011

Guatemala

Guatemala / Octubre 2011 XI Congreso Estudiantil de Ciencias y Sistemas

15



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.