TEMAS RELACIONADOS WEB2

39
BIENVENIDOS ACTUALIZACION DE BASES DE DATOS Y PROGRAMACION WEB 2.0 Ing. Juan Raúl Vergara Villadiego

Transcript of TEMAS RELACIONADOS WEB2

BIENVENIDOS

ACTUALIZACION DE BASES DE DATOS Y

PROGRAMACION WEB 2.0

Ing. Juan Raúl Vergara Villadiego

BASES DE DATOS

1. Introducción.

Las bases de datos, hoy en día, ocupan un lugar

determinante en cualquier área del quehacer humano,

comercial, y tecnológico. No sólo las personas involucradas

en el área de Informática, sino todas las personas

administrativas, técnicas y con mayor razón los profesionales

de cualquier carrera, deben de tener los conocimientos

necesarios para poder utilizar las bases de datos.

Los profesionales en ingeniería de sistemas y carreras a fines

deben de estar en la capacidad de administrar, implantar y

recomendar sistemas de gestión de bases de datos

dependiendo el entorno empresarial y el crecimiento proyectado

de las instituciones. Para realizar estas actividades debe

conocer las diferentes alternativas que hay en el mercado, sus

fortalezas y debilidades.

2. Consideraciones a tener en cuenta al momento de decidir que

bases de datos utilizar.

Numero de usuarios que se conectaran a la base de datos

(Dependencias o departamentos de la empresa)

Cuantos registros se estima que tendrá, por lo menos a 5 años.

Transacciones debe realizar la aplicación

Con que presupuesto se cuenta para realizar el proyecto.

Alternativas de soporte técnico.

En que plataforma funcionará el motor de base de datos.

Compatibilidad del motor de bases de datos, con las

herramientas de desarrollo.

Manejo de la seguridad en la base de datos.

Soporta consultas complejas, paquetes, procedimientos

almacenados etc.

Costo de las licencias.

3. Alternativas.

Las alternativas las podemos clasificar dependiendo el tamaño del

proyecto y el tipo de licencias de los diferentes sistemas de gestión

de bases de datos.

3.1 Según su tipo de licencia.

3.1.2 Licencias de software propietario.

ORACLE ( Oracle)

SQL SERVER (Microsoft)

INFORMIX(IBM)

MYSQL (Sun Microsystem)

3.1.2 De licencia Libre.

MYSQL (Proyecto mysql).

Postgre SQL (Proyecto postgre).

3.2 Según el tamaño del proyecto.

Este aspecto en los últimos años a perdido cierta importancia,

debido a que los grandes desarrolladores de base de datos como

ORACLE, MICROSOFT entre otros, han desarrollados deferentes

tipos de productos enfocados a diferentes sectores del mercado, no

solo poseen productos para grandes organizaciones. También

poseen productos para medianas y pequeñas empresas como las

versiones Express Edition.

Algunos desarrolladores de bases de datos como ORACLE Y

MICROSOFT otorgan licencias gratuitas para los productos XE,

con limitaciones de almacenamiento.

4. Evolución de los sistemas de bases de datos mas conocidos.

4.1 Evolución de versiones de SQL sever

4. Evolución de los sistemas de bases de datos mas conocidos.

4.2 Evolución de versiones de ORACLE

DATABASE

4. Evolución de los sistemas de bases de datos mas conocidos.

4.3 Evolución de versiones de Mysql

5.Análisis del posicionamiento de las bases de datos.

Microsoft y Oracle en los últimos tres años han sido los jefes butting

base de datos para obtener los usuarios de Windows Server en el

mercado, y Oracle ha reducido los precios y ofrecen un nivel de

entrada, la versión libre, Oracle Express, para luchar contra SQL

Server.

5.1 Algunas referencias de precios de licencias.

6. Comparación entre ORACLE 9i y SQL SERVER 2000.

A menudo, a los profesionales nos preguntamos acerca de la

comparación de algunos de Oracle y Microsoft SQL Server. A

continuación, comparamos SQL Server 2000 Base de datos con

Oracle 9i de precios, rendimiento, plataformas de apoyo, los dialectos

y de los productos SQL límites.

6.1 Plataforma (Sistema Operativo).

SQL Server 2000 sólo funciona en las plataformas basadas en

Windows, incluido Windows 9x, Windows NT, Windows 2000 y

Windows CE.

En comparación con SQL Server 2000, Base de datos Oracle 9i

soporta todas las plataformas, incluyendo las plataformas basadas

en Windows, los sistemas basados en AIX, Compaq Tru64 UNIX, HP

9000 Series HP-UX, Linux Intel, Sun Solaris y otros.

6.1 Hardware requerimientos

SQL server 2000.

Oracle 9i

6.2 Requerimientos de software.

SQL Server 2000 se presenta en seis ediciones: Enterprise, Standard,

Personal, Developer, Desktop Engine y SQL Server CE (una versión

compatible para Windows CE) y requiere el siguiente software:

6.2 Requerimientos de software.

Base de datos Oracle 9i se presenta en tres ediciones: Enterprise,

Standard y personales, y requiere el siguiente software:

6.3 Comparación de rendimiento

Es muy difícil hacer la comparación entre el rendimiento de SQL Server

2000 y bases de datos Oracle 9i. El rendimiento de sus bases de datos

no depende de la experiencia de los desarrolladores de la base de

datos y administrador de base de datos de la base de datos del

proveedor. Puede utilizar ambos RDBMS para construir un sistema

eficaz y estable.

6.4 Comparaciones de precios.

Comparacion de precios para SQL Server 2000 Standard Edición y

Standard Edition Oracle9i:

6.5 T-SQL vs PL/SQL

El dialecto de SQL compatible con Microsoft SQL Server 2000 se

denomina de Transact-SQL (T-SQL). El dialecto de SQL apoyo de la

base de datos Oracle 9i se llama PL / SQL. PL / SQL es más potente

lenguaje de T-SQL. Este es el breve comparación de PL / SQL y T-

SQL:

6.6 Conclusión.

No es cierto que SQL Server 2000 es mejor que Oracle 9i, o viceversa.

Ambos productos se pueden utilizar para construir un sistema eficaz y

estable y la estabilidad y la eficacia de sus aplicaciones y bases de

datos. Sin embargo, SQL Server 2000 tiene algunas ventajas en

comparación con Oracle 9i y viceversa.

•SQL Server 2000 es más barato que comprar la base de datos

Oracle 9i.

•SQL Server 2000 tiene la parte superior de rendimiento TPC-C y la

relación precio / rendimiento de los resultados.

•SQL Server 2000 es generalmente aceptado como más fácil de

instalar, utilizar y gestionar.

Posibles Ventajas de SQL

SERVER

•Base de datos Oracle 9i soporta todas las plataformas, no sólo a los

basados en plataformas Windows.

•PL / SQL es más potente lenguaje de T-SQL.

•Más de ajuste a la configuración que se puede hacer a través de la

puesta en marcha parámetros.

La base de datos Oracle 9i ventajas:

7. Tendencias.

Los sistemas de bases de datos utilizados para proporcionar fácil

acceso a disco a través de los datos residentes, eficiente

procesamiento de consultas, la indexación de las estructuras,

control de concurrencia, y la recuperación.

Tal punto de vista tradicional de los sistemas de bases de datos ha

cambiado recientemente debido a la aparición de gran variedad de

nuevas aplicaciones y tecnologías que incluyen las aplicaciones

web, redes de sensores, basados en la localización de servicios, la

comunicación inalámbrica, multimedia, datos científicos,

conocedores del contexto, los sistemas de grandes e inesperados

número de usuarios.

Debemos tener en cuenta conceptos como minería de datos que

también están contribuyendo con este cambio.

La importancia que han cobrado los datos no estructurados

(texto, páginas de Internet, etc.)

La necesidad de integrar los algoritmos y resultados obtenidos en

sistemas operacionales, portales de Internet, etc.

La exigencia de que los procesos funcionen prácticamente en línea

(por ejemplo, que frente a un fraude con una tarjeta de crédito).

Los tiempos de respuesta. El gran volumen de datos que hay que

procesar en muchos casos para obtener un modelo válido es un

inconveniente; esto implica grandes cantidades de tiempo de proceso y

hay problemas que requieren una respuesta en tiempo real.

7.1 Otros conceptos a tener en cuenta.

Nubes de datos.

Bodegas de datos

PROGRAMACION WEB

PROGRAMACION WEB

Introducción

En los últimos años, hemos visto como Internet ha cambiado la

forma de desarrollar aplicaciones , tal ha sido el impacto de esta

técnica, que los desarrolladores mas importantes de lenguajes de

programación de mundo como Borland y Microsoft entre otros, se

han visto obligados a incluir estas nuevas técnicas en sus nuevas

versiones.

Son tantos los beneficios de utilizar esta técnica que en pocos años

lenguajes como php, asp y jsp se convirtieron en las alternativas

preferidas tanto por las empresas, como por los profesionales en

este campo de la informática, para desarrollar aplicaciones.

A continuación mencionamos algunos portales y aplicaciones de

internet ,tanto de Colombia como de diferentes países de mundo,

que han logrado ser más competitivas implementado sistemas de

información, basados en esta técnica.

8. Casos de éxito.

EMPRESAS.

Líder mundial en venta de computadoras portátiles,

posee un portal implementado en aspx.

Red social mas famosa del mundo

accidental implementada con php.

En Colombia.

Toda la red de bancos posee herramientas de consulta,

transferencias y demás transacciones con jsp y php

Posee su portal desarrollado en aspx.

Y así como estos ejemplos, existen miles de empresa en Colombia

y en el mundo que tienen éxito y logran una ventaja competitiva con

estas tecnologías.

8.1 Evolución de lenguajes

Ejemplo de PHP.

8.2 Lenguajes mas usados para la implementación de aplicaciones

WEB

Sin duda los lenguajes con mayor aceptación al momento de

implementar una aplicación web en la red son:

PHP: Código Abierto (El lenguaje de scripting PHP dinámico se ha

vuelto enormemente popular para la ejecución de aplicaciones Web

ligeras, y se utiliza ampliamente como un servidor del lado del lenguaje

de script para servidores web.

JAVA: Sun Microsystem

ASP: Microsoft.

8.3 Lenguajes de programación Web y el enfoque OO.

Para cumplir con el enfoque orientado a objetos estos

lenguajes deben soportar lo siguientes conceptos:

Encapsulamiento

Polimorfismo

Herencia

Abstracción.

Según, algunas conclusiones de autores y profesionales que

desarrollan con estos lenguajes solo JAVA ,PHP (en su versión 5)

y las tecnólogas .NET de Microsoft, soportan todos los conceptos

expuestos anteriormente

8.4 Nuevas tendencias.

Luego de la aparición de los lenguajes mencionados anteriormente y

de su posterior evolución, existen nuevas alternativas, como:

AJAX

GWT

WEB 2

PROGRAMACION EN LA NUBE

8.5 AJAX

AJAX (la abreviatura de JavaScript y XML asíncronos), es un grupo

de desarrollo web entre sí, las técnicas utilizadas para crear

aplicaciones web interactivas ricas o aplicaciones de Internet. Con

Ajax, las aplicaciones web pueden recuperar datos de forma

asíncrona el servidor en segundo plano sin interferir con la pantalla y

el comportamiento de la actual página.

A pesar de que el término «AJAX» fuese creado en 2005, la historia

de las tecnologías que permiten AJAX se remonta a una década

antes con la iniciativa de Microsoft en el desarrollo de Scripting

Remoto.

8.5.1 Tecnologías incluidas en Ajax.

XHTML (o HTML) y hojas de estilos en cascada (CSS)

Document Object Model (DOM) accedido con un lenguaje de

scripting por parte del usuario, especialmente implementaciones

ECMAScript como JavaScript y JScript, para mostrar e interactuar

dinámicamente con la información presentada.

8.5 Continua AJAX.

El objeto XMLHttpRequest para intercambiar datos de forma

asíncrona con el servidor web

XML

9. GWT: Google Web Toolkit

Actualmente, la creación de aplicaciones web resulta un proceso

pesado y propenso a errores. Los desarrolladores pueden pasar

el 90% de su tiempo estudiando las peculiaridades de los

navegadores. Por otra parte, la creación, la reutilización y el

mantenimiento de una gran cantidad de componentes AJAX y

bases de código JavaScript pueden ser tareas complejas y

delicadas. Google Web Toolkit (GWT) facilita estas arduas tareas

al ofrecer a los desarrolladores la posibilidad de crear y mantener

rápidamente aplicaciones JavaScript con interfaces complejas,

pero de gran rendimiento, en el lenguaje de programación Java.

9.1 Funcionamiento de Google Web Toolkit

Google Web Toolkit (GWT) permite crear aplicaciones AJAX en el

lenguaje de programación Java que son compiladas posteriormente

por GWT en código JavaScript ejecutable optimizado que funciona

automáticamente en los principales navegadores. Durante el

desarrollo de una aplicación, puedes repetir rápidamente el mismo

ciclo "editar - actualizar - ver" típico de JavaScript y aprovechar la

ventaja añadida de poder depurar y recorrer una a una todas las

líneas de código Java.

9.1 Continua. GWT

Cuando estés listo para la implementación, GWT compilará el

código fuente Java en archivos JavaScript optimizados

independientes. Google Web Toolkit te permite crear fácilmente

tanto un artilugio para una página web como una aplicación

completa.

9.2 Crea aplicaciones AJAX en lenguaje Java y compílalas en

código JavaScript optimizado

A diferencia de los minimizadores de JavaScript, que sólo

funcionan con texto, el compilador de GWT realiza un análisis

estático completo de toda la base de código de GWT y,

frecuentemente, genera código JavaScript que se carga y ejecuta

con mayor rapidez que el código JavaScript equivalente creado de

forma manual. Por ejemplo, el compilador de GWT suprime de

forma segura todo el código no utilizable (mediante una exhaustiva

tarea de eliminación de clases, métodos, campos, e incluso

parámetros, que no se utilizan) para asegurarse de que el archivo

de secuencias de comandos compilado sea lo más pequeño

posible

9. Continua GWT.

9.3 Flujo de trabajo de desarrollo

Edita código Java y visualiza los cambios inmediatamente sin

tener que volver a compilarlo

Recorre todo el código AJAX utilizable con el depurador de

Java

Compila e implementa código JavaScript optimizado para varios

navegadores

Descarga disponible: http://code.google.com/intl/es-CO/webtoolkit/download.html

10. WEB 2.

La Web 2.0 es la representación de la evolución de las aplicaciones

tradicionales hacia aplicaciones web enfocadas al usuario final. El

Web 2.0 es una actitud y no precisamente una tecnología.

La Web 2.0 es la transición que se ha dado de aplicaciones

tradicionales hacia aplicaciones que funcionan a través del web

enfocadas al usuario final. Se trata de aplicaciones que generen

colaboración y de servicios que reemplacen las aplicaciones de

escritorio.En la charla inicial del Web Conference se habló de los principios

que tenían las aplicaciones Web 2.0:

La web es la plataforma

La información es lo que mueve al Internet

Efectos de la red movidos por una arquitectura de participación.

La innovación surge de características distribuidas por

desarrolladores independientes.

El fin del círculo de adopción de software pues tenemos servicios

en beta perpetuo

10. Continua Web 2.

Tecnologías que dan vida a un proyecto Web 2.0:

Transformar software de escritorio hacia la plataforma del web.

Respeto a los estándares como el XHTML.

Separación de contenido del diseño con uso de hojas de estilo.

Sindicación de contenidos. Ajax (javascript ascincrónico y XML).

Uso de Flash, Flex o Lazlo.

Uso de Ruby on Rails para programar páginas dinámicas.

Utilización de redes sociales al manejar usuarios y comunidades.

Dar control total a los usuarios en el manejo de su información.

Proveer APis o XML para que las aplicaciones puedan ser manipuladas

por otros.

Facilitar el posicionamiento con URL sencillos.

11. Programación la nube.

Para explicar el concepto Christophe Bisciglia de google en

entrevista realizó en siguiente análisis.

Un ingeniero en programación de 27 años, quería comprobar si

estos estudiantes estaban listos para pensar como googlers.

“Díganme”, decía, “¿qué harían si tuvieran una cantidad mil

veces mayor de información?”La mayor parte de este hardware no estaba en el campus de

Google. Se encontraba sencillamente allá afuera, en algún punto

de la tierra, zumbando en enormes y refrigerados centros de

información de datos. La gente en Google lo llamaba “la nube”. Y

uno de los desafíos de programación era hacer palanca en esa

nube –llevarla a aplastar a máquinas más pequeñas. Los nuevos

empleados de Google, dice Bisciglia, generalmente tardan unos

pocos meses en trabajar a esta escala. “Luego, un día alguien

sugiere un trabajo fuera de lo común, un trabajo que necesita 1000

máquinas distintas y uno dice „Sí, entiende todo‟”.

¿Qué es la “Google Cloud”, como se la llama? Es una cadena

conformada por cientos de miles –algunos estiman millones– de

servidores económicos, cada uno apenas más poderoso que las

computadoras que cualquiera posee en su hogar. Almacena

cantidades alternadas de información, que incluyen numerosas copias

de sitios de Internet. Esto agiliza la búsqueda, ayudando a descubrir

respuestas a millones de dudas en fracciones de segundos. Al

contrario de las tradicionales supercomputadoras, el sistema Google

no envejece. Cuando sus piezas individuales mueren, generalmente

luego de tres años, los ingenieros las desechan y las reemplazan con

nuevas y más rápidas piezas. Esto quiere decir que la nube se

regenera mientras crece, casi como un ser viviente.

11. Continua Programación en la Nube.

Este avance hacia “las nubes” señala un cambio fundamental en la

manera en que manejamos la información. Básicamente, la

informática es equivalente a la revolución que la electricidad provocó

un siglo atrás cuando los centros y los comercios cerraron sus

propios generadores y adquirieron el servicio de eficientes empresas

industriales. Hacía tiempo que los ejecutivos de Google habían

imaginado este cambio y se habían preparado para él.

Servicios en forma de nube, con su propia maquinaria como eje,

encajaba perfecto dentro de la gran visión de la compañía,

establecida una década atrás por sus fundadores Sergey Brin y

Larry Page: “para organizar el mundo de la información y hacerlo

universalmente accesible”. La idea de Bisciglia abrió un camino

hacia el futuro. “Quizá ya lo tenían en mente y no me lo habían

dicho”, dice Schmidt. “No me di cuenta de que Bisciglia iba a

tratar de cambiar el modo en que los científicos piensan acerca

de la informática. Esa es una ambición mucho mayor”.

11. Continua programación en la Nube..

¿ Que ventajas tiene la implementar aplicaciones

utilizando estas técnicas orientadas a la WEB?

Principales Fuentes.

www.microsoft.com

www.google.com

http://www.apertura.com/notas/135487-google-y-la-sabiduria-las-

nubes

www.oracle.com

es.wikipedia.org

GRACIAS¡¡¡