Cassandra (No SQL)

Associated Courses

$3.950

Curso online sincrónico

La duración del curso está estimada en 40 horas, con 19 días de 2 horas y 1 clase de 2 horas para redondear todos los conceptos adquiridos y analizar las respuestas de las evaluaciones. Se recomienda esta modalidad así el alumno asimila y robustece los temas visto del curso.

Docente Pablo Sabatino

Certificado UTN

Inscripción: 26 de julio de 2019

 

Categoría:

Descripción

El paradigma dominante entre los años 1980 y principios del 2000 para el almacenamiento de información era el modelo relacional y sus diferentes motores de las bases de datos relacionales (Oracle, db2, sqlserver, mysql, etc). Pero a fines del 2000 y principio del 2010 comenzó a predominar en la web otro nuevo paradigma (NoSQL) el cual manifiesta “No solamente SQL”. 

A pesar de todas las virtudes conocidas del paradigma relacional también se conocen las limitaciones de su arquitectura. Debido a estas restricciones diferentes empresas como Amazon y Google comenzaron a desarrollar un nuevo sistema de almacenamiento basado en utilización de clusters. 

Las bases de datos (NoSQL) no han surgido para reemplazar a los modelos relacionales, sino para complementarlos, brindando soluciones efectivas, en dónde el paradigma relacional no podía debido sus características inherentes.

  • Inserción en el nuevo paradigma de almacenamiento de información.
  • Lenguaje (NoSQL). Teoría y Práctica.

Metodología

NoSQL aparece con el surgimiento de la web 2.0, porque hasta ese momento sólo subían contenido a la red aquellas empresas con posesión de un portal. Pero con la llegada de aplicaciones como (Facebook, Twitter, Instagram o Youtube) cualquier usuario podía subir contenido, provocando así un crecimiento exponencial de los datos.     Inclusive con el avance del hardware, procesadores más rápidos, multiprocesamiento, redes más rápidas, etc. A pesar de estos avances tampoco los motores de bases de datos relacionales pudieron dar la respuesta esperaba a esta nueva necesidad de negocio, debido principalmente a los problemas de escalabilidad y rendimiento para la necesidad de abastecer  a miles de usuarios concurrentes y con millones de consultas diarias.

El alumno:

  • Internalizará ventajas que ofrecen las bases de datos (NoSQL).
  • Características de las bases de datos (NoSQL).
  • Construcción de base de datos (NoSQL) con el motor de base Cassandra.
  • Escalabilidad de un sistema de información en sus diferentes clasificaciones (vertical u horizontal).
  • Diferencias entre los motores de bases de datos (SQL) y los (NoSQL).
  • Clasificación de tipos de (NoSQL).
  • Modelo de distribución y consistencia de datos.

Carga horaria

  • Carga horaria de actividad: 40 horas.
  • El curso se dicta en modalidad taller viendo teoría y práctica simultáneamente. Apoyo de las mismas a través de la utilización de medios audiovisuales.
  • Desarrollo de casos prácticos a los efectos de poder concebir los conocimientos teóricos brindados con la realidad empresarial actual.

 Contenidos mínimos

Explicar y conceptualizar los conocimientos básicos y necesarios para desarrollar sistemas de bases de datos (NoSQL). Poder por medio de estos conceptos lograr comprender el manejo de la información distribuida. Tomar conocimiento sobre las convenciones estándares de acceso de una base de datos. Aprender la sintaxis necesaria de los comandos (NoSQL) para la recuperación y manipulación de datos en el lenguaje Cassandra.

Programa analítico

  • Sección 1: Introducción a Big Data / NoSQL
  • Visión general de NoSQL
  • Teorema CAP
  • Cuándo es NoSQL apropiado
  • Almacenamiento en columna
  • Ecosistema NoSQL
  • Sección 2: Conceptos básicos de Cassandra
  • Diseño y arquitectura
  • Nodos de Cassandra, clústeres, centros de datos
  • Teclas, tablas, filas y columnas
  • Partición, replicación, tokens
  • Niveles de consistencia y quórum
  • Labs: interactuando con cassandra usando CQLSH
  • Sección 3: Modelado de datos – parte 1
  • Introducción a CQL
  • CQL Datatypes
  • creando espacios de claves y tablas
  • Elegir columnas y tipos
  • Elegir llaves primarias
  • Diseño de datos para filas y columnas
  • Tiempo para vivir (TTL)
  • Consultando con CQL
  • Actualizaciones de CQL
  • Colecciones (lista / mapa / conjunto)
  • Labs: varios ejercicios de modelado de datos usando CQL; experimentando con consultas y tipos de datos compatibles
  • Sección 4: Modelado de datos – parte 2
  • Crear y usar índices secundarios
  • claves compuestas (claves de partición y claves de agrupamiento)
  • Datos de series de tiempo
  • Mejores prácticas para datos de series de tiempo
  • Contadores
  • Transacciones livianas (LWT)
  • Labs: creación y uso de índices; modelado de datos de series de tiempo
  • Sección 5: Cassandra Internals
  • Entender el diseño de Cassandra.
  • sstables, memtables, commit log.
  • Sección 6: Administración
  • Selección de hardware.
  • Distribuciones de Cassandra.
  • Nodos de Cassandra Comunicación.
  • Escribir y leer datos en / desde el motor de almacenamiento.
  • Directorios de datos.
  • Operaciones contra la entropía.
  • Compactación Cassandra.
  • Elegir e implementar estrategias de compactación
  • Mejores prácticas de Cassandra.
  • Creando una instancia de Cassandra de prueba con poca huella de memoria(low memory footprint).
  • herramientas de solución de problemas y consejos.
  • Laboratorio: los estudiantes instalan Cassandra, ejecutan los puntos de referencia.

Bibliografía

Instrumentos de participación

Se realizará una evaluación de cierre antes de la última clase virtual a cada alumno con el empleo de un múltiple choice y preguntas abiertas para realizar una finalización al curso y por medio de esta herramienta detectar cuales son los temas no asimilados por parte del alumno, y así poder acompañarlo con un asesoramiento adicional para fortalecer los conocimientos. Y en la última clase se finaliza redondeando todos los conceptos adquiridos y se analizan las respuestas de las evaluaciones.

La estructura del curso estará conformada por la teoría suministrada, las clases virtuales, trabajos de campos ejemplificativos para solidificar los saberes expuestos en cada unidad de la temática ofrecida, y una serie de ejercicios prácticos para ser realizados por los alumnos permitiendo afrontar problemáticas graduales y resolviendo distintos desafíos.

Como recurso de extensión se realizarán diferentes planteos de sucesos ocurridos o teorizados para que los alumnos puedan expresar sus experiencias y narraciones escritas según sus propias opiniones.

 Teniendo en cuenta al entorno expresado en los textos brindados por el curso se abordarán propuestas en actividades de integración planteado una serie de cuestionamientos por medio de preguntas a ser completadas por parte de los alumnos.

Se plantean para acompañar al curso autoevaluaciones para contribuir con la enseñanza del contenido ofreciendo posicionamiento de conocimientos adquirido durante su dictado.

Por último deseamos expresar la posibilidad de poder realizar virtualmente las consultas y debates puntuales acerca de cada una de estas actividades propuestas.  

Información

La duración del curso está estimada en 40 horas, con 19 días de 2 horas y 1 clase de 2 horas para redondear todos los conceptos adquiridos y analizar las respuestas de las evaluaciones. Se recomienda esta modalidad así el alumno asimila y robustece los temas visto del curso.