VISITAS - buen trip

jueves, 8 de septiembre de 2011

CLOUD COMPUTING





Cloud Computing

La computación en la nube, la “Cloud Computing” lleva directamente a la idea de la computación como un servicio público provisto a contador, lo que en inglés se denomina “utility” y esta idea ya apareció allá en 1961 de la mano de John McCarthy, el científico que acuñó termino “inteligencia artificial”, que en una conferencia en el MIT sobre tiempo compartido (time sharing) explicó como éste podía llevar al poder de la computación y a que aplicaciones especificas pudieran comercializarse utilizando el modelo de las empresas de suministros deSegún las organizaciones experimentan la presión de una creciente demanda de disponibilidad, de rendimiento y de rapidez en la puesta en funcionamiento de nuevas aplicaciones, la idea de hacer más con menos prevalece. Uno de los temas más agudos, en la actualidad es el incremento de las necesidades de almacenamiento de datos e informaciones impulsado por los tipos de datos no estructurados tales como los archivos, registros y “récords” impresos, los correos electrónicos, las imágenes médicas y los documentos legales en diversos formatos. Estos nuevos tipos de datos están creciendo más rápidamente que cualquier otra categoría o tipo previo de datos como las bases de datos relacionales o las copias de respaldo para la continuidad del negocio.
Pero en la actual era de Internet, el énfasis está en la gestión de manera coste-efectividad en todos los ámbitos de la computación, lo cual está conduciendo a ubicar soluciones eficientes pero con los menores costes posibles, y tal vez la nube pueda ser una solución que satisfaga este condicionante básico.

Características que la nube debe facilitar:

• Habilidad para facilitar con rapidez la provisión o la supresión de un servicio.
• Un modelo de consumo en el que los usuarios pagan por lo que usan.
• Agilidad para alcanzar una flexibilidad en las escalas de provisión de servicios hacia arriba o hacia abajo sin una gran pre-planificación.
• Una conexión segura y directa con la nube sin necesidad de recodificar aplicaciones.
• Capacidad para que múltiples clientes utilicen de manera independiente y con sus datos debidamente protegidos, las mismas aplicaciones en los mismos servidores y al mismo tiempo (la denominada “multitenancy”).




Beneficios

  • Integración probada de servicios Red. Por su naturaleza, se puede integrar con mucha mayor facilidad y rapidez con el resto de sus aplicaciones empresariales (tanto software tradicional como Cloud Computing basado en infraestructuras), ya sean desarrolladas de manera interna o externa.
  • Prestación de servicios a nivel mundial. Las infraestructuras de "Cloud Computing" proporcionan mayor capacidad de adaptación, recuperación de desastres completa y reducción al mínimo de los tiempos de inactividad.
  • Una infraestructura 100% de "Cloud Computing" no necesita instalar ningún tipo de hardware. La belleza de la tecnología de "Cloud Computing" es su simplicidad… y el hecho de que requiera mucha menor inversión para empezar a trabajar.
  • Implementación más rápida y con menos riesgos. Podrá empezar a trabajar muy rápidamente gracias a una infraestructura de "Cloud Computing". No tendrá que volver a esperar meses o años e invertir grandes cantidades de dinero antes de que un usuario inicie sesión en su nueva solución. Actualizaciones automáticas que no afectan negativamente a los recursos de TI. Si actualizamos a la última versión de la aplicación, nos veremos obligados a dedicar tiempo y recursos (que no tenemos) a volver a crear nuestras personalizaciones e integraciones.
  • Contribuye al uso eficiente de la energía.



Desventajas

  • La centralización de las aplicaciones y el almacenamiento de los datos origina una interdependencia de los proveedores de servicios.
  • La disponibilidad de las aplicaciones están desatadas a la disponibilidad de acceso a Internet.
  • Los datos "sensibles" del negocio no residen en las instalaciones de las empresas por lo que podría generar un contexto de alta vulnerabilidad para la sustracción o robo de información.
  • La confiabilidad de los servicios depende de la "salud" tecnológica y financiera de los proveedores de servicios en nube. Empresas emergentes o alianzas entre empresas podrían crear un ambiente propicio para el monopolio y el crecimiento exagerado en los servicios.
  • La disponibilidad de servicios altamente especializados podría tardar meses o incluso años para que sean factibles de ser desplegados en la red.
  • La madurez funcional de las aplicaciones hace que continuamente estén modificando sus interfaces, por lo cual la curva de aprendizaje en empresas de orientación no tecnológica tenga unas pendientes significativas, así como su consumo automático por aplicaciones.
  • Seguridad. La información de la empresa debe recorrer diferentes nodos para llegar a su destino, cada uno de ellos (y sus canales) son un foco de inseguridad. Si se utilizan protocolos seguros, HTTPS por ejemplo, la velocidad total disminuye debido a la sobrecarga que estos requieren.


Tipos de nubes

  •  Las nubes públicas se manejan por terceras partes, y los trabajos de muchos clientes diferentes pueden estar mezclados en los servidores, los sistemas de almacenamiento y otras infraestructuras de la nube. Los usuarios finales no conocen qué trabajos de otros clientes pueden estar corriendo en el mismo servidor, red, discos como los suyos propios.
  • Las nubes privadas son una buena opción para las compañías que necesitan alta protección de datos y ediciones a nivel de servicio. Las nubes privadas están en una infraestructura en-demanda manejada por un solo cliente que controla qué aplicaciones debe correr y dónde. Son propietarios del servidor, red, y disco y pueden decidir qué usuarios están autorizados a utilizar la infraestructura.
  •  Las nubes híbridas combinan los modelos de nubes públicas y privadas. Usted es propietario de unas partes y comparte otras, aunque de una manera controlada. Las nubes híbridas ofrecen la promesa del escalado aprovisionada externamente, en-demanda, pero añaden la complejidad de determinar cómo distribuir las aplicaciones a través de estos ambientes diferentes.




Controversia


La computación en nube ha sido criticada por limitar la libertad de los usuarios y hacerlos dependientes del proveedor de servicios.0Algunos críticos afirman que sólo es posible usar las aplicaciones y servicios que el proveedor esté dispuesto a ofrecer. Así, el London Times compara la computación en nube con los sistemas centralizados de los años 50 y 60, en los que los usuarios se conectaban a través de terminales "gregarios" con ordenadores centrales. Generalmente, los usuarios no tenían libertad para instalar nuevas aplicaciones, y necesitaban la aprobación de administradores para desempeñar determinadas tareas. En suma, se limitaba tanto la libertad como la creatividad. El Times argumenta que la computación en nube es un retorno a esa época y numerosos expertos respaldan la teoría.

martes, 6 de septiembre de 2011

Diccionario de datos de Oracle 10g

Oracle posee un diccionario de datos; es decir la manera de extraer el catálogo de objetos de una base de datos, nos refererimos a: tablas, usuarios, roles, vistas, columnas de las tablas, secuencias, constraints, sinónimos, índices, triggers, funciones etc.., esta información se encuentra contenida en tablas y vistas del sistema.

Dichas tablas en base a las cuales podemos obtener esta información aplicando sentencias sql.

A continuación enumeramos las tablas más importantes del diccionario de datos que nos permitirá obtener información de los objetos de la base de datos.

Notas:Los prefijos dba_ son exclusividad para los usuarios que tengan el rol dba que sería el administrador de la base de datos y mostraría información de accesos de los usuarios que tienen asignado dicho rol.
Los prefijos_user indican que mostrará información en el ámbito del usuario que se encuentre conectado; [esquema].[objeto].

Información sobre todos los objetos: tablas, vistas, funciones, procedimientos, índices, triggers, etc. : dba_objects, user_objects, all_objects

  • Código de funciones y procedimientos: dba_source, user_source, all_source
  • Usuarios: dba_users, user_users, all_users
  • Roles: dba_roles
  • Roles asignados a roles o usuarios: dba_role_privs, user_role_privs
  • Privilegios asignados a roles o usuarios: dba_sys_privs
  • Permisos sobre tablas asignados a roles o usuarios: dba_tab_privs
  • Límites de recursos: user_resource_limits
  • Perfiles y sus límites de recursos asociados: dba_profiles
  • Límites de recursos en cuanto a restricciones en claves: user_password_limits
  • Límites de recursos en cuanto a espacio máximo en tablespaces: dba_ts_quotas, user_ts_quotas
  • Tablespaces: dba_tablespaces, user_tablespaces
  • Ficheros que componen los datafiles: dba_data_files
  • Segmentos: dba_segments, user_segments, all_segments
  • Segmentos de Rollback: dba_rollback_segs
  • Extensiones que forman los segmentos: dba_extents, user_extents
  • Bloques libres: dba_free_space, user_free_space
  • Bloques libres que podrían unirse: dba_free_space_coalesced
  • Secuencias: dba_sequences, user_sequences, all_sequences
  • Tablas, vistas, sinónimos y secuencias: dba_catalog, user_catalog, all_catalog
  • Tablas : dba_tables, user_tables, all_tables
  • Campos de tablas: dba_cons_columns, user_cons_columns, all_cons_columns
  • Columnas de las tablas: dba_tab_columns, user_tab_columns, all_tab_columns
  • Vistas: dba_views, user_views, all_views
  • Sinónimos: dba_synonyms, user_synonyms, all_synonyms
  • Restricciones de clave primaria, externa, not null, integridad referencial: dba_constraints, user_constraints, all_constraints
  • Índices: dba_indexes, user_indexes, all_indexes
  • Columnas de los índices: dba_ind_columns, user_ind_columns, all_ind_columns