martes, 19 de abril de 2016

Terminología a Utilizar

Durante el desarrollo de esta investigación, se emplearán términos como los siguientes:


ACCESIBILIDAD: Se refiere a qué tan accesible es el sitio para personas con discapacidades que también utilizan la Web, como personas ciegas, con problemas de artritis, o que no ven bien los colores.

AJAX: Es una técnica de desarrollo web para crear aplicaciones interactivas. Siendo posible
realizar cambios sobre las páginas sin necesidad de recargarlas, mejorando la interactividad, velocidad y usabilidad en las aplicaciones.

AMBARI: Es una interfaz web que permite implementar y administrar clústers de Apache Hadoop. Su desarrollo está siendo dirigido por ingenieros de Hortonworoks, que incluyen en su plataforma de datos “Ambari Hortonworks”.

APACHE KAFKA: (Desarrollado por LinkedIn). Es un sistema distribuido de publicación-suscripción de mensajería que ofrece una solución capaz de manejar toda la actividad del flujo de datos y procesar estos datos en un sitio web de gran consumo. Este tipo de datos (páginas vistas, búsquedas y otras acciones del usuario) son un ingrediente clave en la web social actual.

AVRO: Es un sistema de serialización de datos optimizado para Hadoop/MapReduce. Tiene la ventaja de ser compacto, flexible y admitir varios lenguajes de programación, lo cual lo posiciona como una alternativa muy buena a los SequenceFiles (de Hadoop) o ProtoBuf (de Google).

BASE DE DATOS: es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.

BIGTOP: Es un esfuerzo para crear un proceso más formal o marco de referencia para las pruebas de paquetización e interoperabilidad de sub-proyectos Hadoop y sus componentes relacionados, con el objetivo de mejorar la plataforma Hadoop en su conjunto.

CASSANDRA: Es una base de datos distribuida desarrollada inicialmente por Facebook. Diseñada para manejar grandes cantidades de datos distribuidos a través de servidores commodity, tiene como características un arquitectura de tipo "key/value", el no tener ningún punto único de fallo (SPOF), un método de replicación de información basado en "gossip protocol" y la problemática "eventual consistency".

CHUKWA: Es un subproyecto dedicado a la carga masiva de varios ficheros texto dentro de un clúster Hadoop (ETL). Chukwa se construye bajo el sistema de archivos distribuido (HDFS) y el marco MapReduce y hereda la escalabilidad y robustez de Hadoop. También incluye un conjunto de herramientas flexible y potente para la visualización y análisis de los resultados.

DREMEL: Es un sistema de consultas interactivo para el análisis de datos anidados de sólo-lectura. Es una solución ad-hoc escalable, que mediante la combinación de niveles de múltiples árboles de ejecución y el diseño de columnas de datos, es capaz de ejecutar consultas sobre tablas de agregación de un billón de filas en segundos. El sistema escala a miles de CPUs y petabytes de datos, y cuenta con miles de usuarios en Google.

CLUSTER: Conjunto de servidores (o nodos) que permiten garantizar la continuidad del servicio y distribuir la carga de procesamiento/red.

ESTÁNDARES: Se refiere a qué tan cercano se acerca su sitio a las reglas impuestas por la W3C y qué tanto se aproxima a los estándares correctos.

FLUME: Es un marco para aportar datos a Hadoop. Los agentes están poblados de toda la infraestructura de TI - dentro de los servidores web, servidores de aplicaciones y dispositivos móviles, para recoger esos datos e integrarlos en Hadoop.

HAMA: Es una plataforma de computación distribuida basada en técnicas de computación paralelas masivas para, por ejemplo, cálculos científicos, matriz, gráfico y algoritmos de redes.

HBASE: Es una BBDD NoSQL de baja latencia. Se trata de la versión java opensource de Hadoop de la famosa BBDD NoSQL de Google: BigTable. Como principales características podemos destacar: datos almacenados en columnas, sistema de versioning de los datos, consistencia de las escrituras y lecturas y recuperación automática en caso de fallos. Ha sido elegido por Facebook, entre otras cosas, para almacenar todos los correos de los usuarios de la misma plataforma.

HCATALOG: Ofrece una capa de abstracción de acceso a los datos. Permite a los usuarios de Hive, Pig o MapReduce acceder facilmente a cualquier fichero en HDFS sin preocuparse del formato que puede tener este fichero (sea CSV, SequenceFile, JSON etc). Se trata de un proyecto inicialmente desarrollado por Hortonworks.

HDFS: (Hadoop Distributed File System), la capa de almacenamiento de Hadoop, es un sistema de fichero distribuido escrito en java, escalable, tolerante a fallos. Aunque Hadoop pueda funcionar con varios sistemas de ficheros (sistema de ficheros locales de Linux, GlusterFS, S3 de Amazon...) HDFS se desmarca de ellos por ser totalmente compatible con MapReduce y ofrecer la optimización de "localidad de los datos", lo cual lo convierte en la solución "natural" de Hadoop.

HTML5: es la última evolución de la norma que define HTML. El término representa dos conceptos diferentes: Se trata de una nueva versión del lenguaje HTML, con nuevos elementos, atributos y comportamientos, y un conjunto más amplio de tecnologías que permite a los sitios Web y las aplicaciones más diversas y de gran alcance. Este conjunto se
le llama HTML5 y amigos y, a menudo reducido a sólo HTML5.

JAVASCRIPT: es un lenguaje de programación, se utiliza principalmente del lado del cliente (es decir, se ejecuta en nuestro ordenador, no en el servidor) permitiendo crear efectos
atractivos y dinámicos en las páginas web. Los navegadores modernos interpretan
el código JavaScript integrado en las páginas web.

JQUERY: Es una librería de JavaScript que simplifica el scripting en HTML y permite manipular el CSS directamente; actualmente el 30% de los 10,000 sitios más populares del mundo lo utilizan y dicho número va en aumento. Es sumamente dinámico, interactivo y fácil de implementar y existe un arsenal de tutorías u ejemplos por toda la Web.

MAPREDUCE: Patrón de arquitectura que permite realizar cálculos en paralelo y, por tanto, perfectamente adecuado para el tratamiento de bases de datos de gran tamaño.

MONGODB: Es un sistema de BBDD NoSQL orientado a documentos de código abierto. Por ser de tipo documentos, las estructuras de datos se guardan en documentos con un esquema dinámico, pero siguiendo la notación de JSON. Estas estructuras, que son denominadas por MongoDB como BSON, son dinámicas, lo que implica que no exista un esquema predefinido, pudiendo un documento no tener todos los campos definidos para este documento. Esto supone que la integración de los datos en ciertas aplicaciones sea más fácil y rápida.

NEO4J: Es una base de datos de gráficos, de código abierto soportada por Neo Technology. Neo4j almacena los datos en nodos conectados por relaciones dirigidas y tipificadas, con las propiedades de ambos, también conocidas como Gráfico de Propiedad (Property Graph).

OOZIE: Es un sistema de gestión de WorkFlows (flujos de trabajo) que permite a los usuarios definir una serie de trabajos escritos en varios lenguajes, como MapReduce, Pig y Hive, creando entre ellos un flujo de procesos (jobs) con lógica. Oozie permite a los usuarios especificar, por ejemplo, que una determinada consulta sólo debe iniciarse después de determinados trabajos previos en los que se basa para recoger datos que se han completado.

PIG: Es un lenguaje de programación de alto nivel desarrollado por Yahoo para facilitar la programación de MapReduce sobre hadoop. Es relativamente fácil de aprender (ya que es muy expresivo y legible) y es eficiente frente a grandes flujos de datos.

PHP: es un lenguaje de código abierto muy popular, adecuado para desarrollo web y que puede ser incrustado en HTML. Es popular porque un gran número de páginas y portales web
están creadas con PHP. Código abierto significa que es de uso libre y gratuito para todos los programadores que quieran usarlo. Incrustado en HTML significa que en un mismo archivo vamos a poder combinar código PHP con código HTML, siguiendo unas reglas.

R: Es un lenguaje y un entorno para computación y gráficos estadísticos. Es un proyecto GNU, que es similar al lenguaje S. R ofrece una gran variedad de estadísticas (modelos lineales y no lineales, tests estadísticos clásicos, análisis de series de tiempo, clasificación, clustering, ...) y las técnicas gráficas. Además es altamente extensible.

RIAK: IEs una BBDD NoSQL inspirada en Dynamo, de código abierto, distribuida y que cuenta con una versión comercial. BBDD clave-valor con algunos metadatos, sin esquema de almacenamiento, tipo de datos agnósticos, lenguaje agnóstico que soporta a través de una api REST y PBC31 varios tipos de lenguaje (Eralng, Javascript, Java, PHP, Python, Ruby...), masterless ya que todos los nodos son iguales, escalable, eventualmente consistente y utiliza map/reduce y “link”. Riak está diseñado para resolver una nueva clase de problemas de gestión de datos, específicamente los relacionados con la captura, almacenamiento y procesamiento de datos dentro de entornos TI distribuidos y modernos como la nube.

SQL/noSQL: El Structured Query Language es el lenguaje informático más utilizado para estructurar bases de datos y realizar consultas para extraer la información. Estos últimos años ha aparecido un nuevo sistema de bases de datos «noSQL», que se distingue por tener una mayor flexibilidad de las bases de datos y una arquitectura de cluster

SQOOP:
Es una herramienta de conectividad para mover datos de Hadoop, tales como bases de datos relacionales y almacenes de datos. Permite a los usuarios especificar la ubicación de destino dentro de Hadoop e instruir Sqoop para mover datos de Oracle, Teradata u otras bases de datos relacionales para cumplir el objetivo marcado.

STORM: Es un sistema de computación distribuida en tiempo real, libre y de código abierto, nacido en el seno de Twitter. Storm hace fácil procesar de manera fiable flujos no estructurados de datos, haciendo en el ámbito del procesamiento en tiempo real, lo que hizo Hadoop para el procesamiento por lotes.

VOLDEMORT: Es un sistema de almacenamiento distribuido basado en key-value. Se utiliza en LinkedIn para ciertos problemas de almacenamiento de alta escalabilidad donde la partición funcional simple no es suficiente.


ZOOKEEPER: Es un proyecto de software de la Apache Software Foundation, que provee un servicio de configuración centralizada y registro de nombres de código abierto para grandes sistemas distribuidos. ZooKeeper es un subproyecto de Hadoop.

No hay comentarios:

Publicar un comentario