Curso: Desarrollo de Aplicaciones Sobre PostgreSQL

BENEFICIOS
  • Presentar una visión integrada de un ambiente de trabajo con un servidor de Base de Datos PostgreSQL y herramientas de desarrollo.
  • Estudiar diferentes mecanismos de búsqueda, manipulación y extracción de datos y construcción de scripts.
  • Estudiar las diferentes alternativas de programación en las bases de datos y, en particular, estudiar el lenguaje PL/pgSQL.
  • Conocer métodos de diseño de BD y aplicaciones para obtener la máxima performance.
  • Aprender a reconocer y solucionar diferentes problemas de performance.
DIRIGIDO A
  • Desarrolladores de Aplicaciones sobre Bases de Datos 
CARGA HORARIA

30 horas

Contenido

Introducción al servidor PostgreSQL​  

  • Historia​ 
  • Principales características​ 

Arquitectura 

  • Estructura física de un clúster de PostgreSQL​ 
  • Estructuras de memoria​ 
  • Archivos de configuración​ 
  • Procesos del clúster​ 
  • Establecimiento de conexiones y sesiones.​ 
  • Mecanismos de logging​ 

Estructuras de la capa lógica​  

  • Objetos globales y objetos de un esquema​ 
  • Tablas y vistas​ 
  • Índices​ 
  • Secuencias ​ 
  • Funciones y triggers​ 
  • Elementos del diccionario de datos​ 

Seguridad

  • Usuarios y esquemas​ 
  • Privilegios y roles 

Utilización del Servidor para Consultas  

  • Soporte para Globalización 
  • Tipos de datos de columnas. Escalares y compuestos.  
  • Expresiones y operadores.  
  • Manipulación de datos en el servidor, inserción y actualización  
  • Uso de psql. 
  • Capacidades de extensión del servidor 

Concurrencia y consistencia  

  • Mecanismo MVCC  
  • Manejo de Transacciones y consistencia de lectura 
  • Concurrencia: Bloqueos y Deadlock 
  • Transacciones distribuidas usando dblinks 
  • Vacuum y vacuum full 

Lenguaje PL/PgSQL

  • Bloques, variables, constantes y parámetros 
  • Estructuras de Control y Transacciones 
  • Manejo de Excepciones 
  • Manejo de Cursores 
  • Funciones 
  • Estructuras de Datos 
  • Cargas masivas de datos 

Conceptos de Optimización de Aplicaciones

  • Tipos de aplicación 
  • Diferencias entre optimización de instancia y de aplicaciones  
  • Problemas típicos de performance y sugerencias generales  
  • Herramientas para Optimización 
  •    Vistas para Performance 
  •    PG_Log y PG_Budger 
  •    Registro de Aplicaciones usando Set Application Name. 

Optimización de Sentencias SQL  

  • Procesamiento de Sentencias SQL 
  • Obtención de Plan de Ejecución 
  • Recolección de Estadísticas 
  • Recomendaciones para Uso de índices 
  • Particionamiento de tablas 

Recomendaciones y buenas prácticas de uso de Servidores de Aplicaciones sobre PostgreSQL