SlideShare una empresa de Scribd logo
Requerimientos para el uso de
                 PostgreSQL




Carlos Gustavo Ruiz
@carlosgr_arahat
Contenido
●
    Previo                         ●
                                       Gran Volumen
●
    Necesidades y
                                   ●
                                       Alta concurrencia
    Requerimientos                 ●
                                       Todo Junto
●
    Conozca su Proceso         ●
                                   Manejo de la
●
    Parámetros que debe            incertidumbre
    conocer                    ●
                                   Notas
●
    Escenarios                 ●
                                   Algo más?
    ●
        Instalación Básica
    ●
        Transacciones Largas
Pero antes..
..un anuncio.
Requerimientos de PostgreSQL
En Venezuela si hay gente
Comprometida con el País
Requerimientos de PostgreSQL
Que sólo necesita una oportunidad
    para dar, para compartir y
  para multiplicar sus talentos
Requerimientos de PostgreSQL
Que demuestra con hechos..
 ..lo que dicen sus palabras
Gracias por la oportunidad




     Muchas Gracias
... dicho esto,
regresamos a la ponencia.
Previo
   Un día Juan
   Castalio va al
   nuevo
   automercado de su
   ciudad.
Previo
   Un día Juan
   Castalio va al
   nuevo
   automercado de su
   ciudad.
   Entra al local,
Previo
   Busca a una cajera
   muy atenta y le
   dice:
Previo
   - Señorita, ¿el
   mercado que voy a
   hacer será
   suficiente para mi
   familia? ¿Y dígame,
   entrará en mi
   nevera o necesitaré
   otra?
Previo
Si la pego de acá
Previo   me voy a dar los
         horóscopos en
              la tele..
Previo



¿Le parece familiar?
Necesidades y Requerimientos
●
    Necesito                ●
                                Requiero
    ●
        Registrar               ●
                                    Procesador
    ●
        Actualizar              ●
                                    RAM
    ●
        Inventariar             ●
                                    Disco
    ●
        Reportar                ●
                                    Ancho de Banda
    ●
        Analizar                ●
                                    Redundancia de
    ●
        Desplegar                   Servicios
    ●
        Monitorear
                                ●
                                    Configuraciones
    ●
        Seguir un Proceso       ●
                                    Satisfacer
                                    Necesidades
Conozca su Proceso
●
    ¿Conoce usted el proceso que va a ser guardado
    en la base de datos?
●
    ¿Tiene métricas que describan su base de datos
    en términos de volumen, longitud de
    transacciones, concurrencia de usuarios, etc?


●
    Si su gestor de base de datos fuese un vehículo
    ¿Cual es el mejor vehículo para su proceso?
Conozca su Proceso
¿Cual es el mejor
 vehículo?
Conozca su Proceso
¿Cual es el mejor
vehículo?
Conozca su Proceso
¿Cual es el mejor
vehículo?
Conozca su Proceso
¿Cual es el mejor
vehículo?
Conozca su Proceso
¿Cual es el mejor vehículo?
Conozca su Proceso
¿Cual es el mejor vehículo?
Conozca su Proceso
¿Cual es el mejor vehículo?
Conozca su Proceso
El desconocimiento de su proceso lo puede llevar a
tomar decisiones erradas, la cultura del no se si me
aprueben más presupuesto o por si me piden que le
ponga algo más, es perniciosa.


  “Vele que su requerimiento de hoy no sea
            hambre para mañana”
Vele que su requerimiento no esté sobredimension, no sea
       que no sea tomado en serio la próxima vez
 Vele que su requerimiento no esté subdimensionado y su
          proceso no quepa en su configuración
Parámetros que debe conocer
Para   determinar    los   Requerimientos    de
PostgreSQL para su proceso deberá conocer
cómo hacer los calculos básicos de entonación.
Sólo comprendiendo el funcionamiento del
gestor de bases de datos es posible dar un
estimado cercano a la realidad.
PostgreSQL es muy transparente en cuanto a su
funcionamiento, ello facilita la tarea de calcular
acertadamente los requerimientos de equipos,
disco, etc.
Parámetros que debe conocer



   Debe saber que PostgreSQL tiene
alrededor de 200 opciones y switches.
Parámetros que debe conocer




 Luce complejo dicho de esta manera,
              cierto?
Parámetros que debe conocer




Claro, que son menos que la cantidad de
     memes que usas en tus redes
             sociales, no?
Parámetros que debes conocer
●
    Los parámetros podemos separarlos en
    ●
        8 tipos de parámetos
    ●
        6 contextos
    ●
        5 lugares
Parámetros que debes conocer
●
    Tipos de Parámetros
    ●
        Booleanos
    ●
        Enteros
    ●
        Flotantes
    ●
        Memoria / Disco
    ●
        Tiempo
    ●
        Cadena de Caracteres
    ●
        Enumeraciones
    ●
        Listas
Parámetros que debes conocer
Contextos de Configur aciones
      ●
          Usuario   ●
                        Postmaster
 ●
     SuperUsuario       ●
                            Backend
      ●
          Sighup        ●
                            Internal
Parámetros que debes conocer
●
    Lugares para configurar
    ●
        Archivo postgresql.conf
    ●
        Instrucción SET
    ●
        pg_settings
    ●
        ALTER a objetos
    ●
        Línea de comandos
        y pgoptions
Escenario (Instalación Básica)
●
    Sistema Operativo: GNU/Linux (*)
●
    Fuente: Paquetería
●
    Memoria: Anda a partir de 512 MB RAM
    pero de 2GB en adelante será funcional
●
    Usuarios: Nominalmente 100
●
    Usos Frecuentes: bases de datos
    iniciales, proyectos medianos, páginas
    web, sitio para desarrollo, otros.
Escenario (Instalación Básica)

El problema de esta instalación es que
resultan como la ropa talla única. A
todo el mundo le sirve pero a nadie le
queda bien. Sin embargo es eficaz,
funciona y lo hace bien.
Escenarios
Recomendaciones Generales:
●
    Si usa paquetería no tendrá control
    sobre algunos contextos de
    PostgreSQL, prefiera compilar los
    fuentes
●
    Es conveniente ajustar
    simultaneamente los parámetros de
    PostgreSQL con el manejo de memoria
    del Kernel
Escenarios
●
    Recuerde que de la calidad de su
    hardware dependerá el desempeño
    de su servidor.
●
    Prefiera el uso de sistemas 64 bits,
    realmente lo vale.
●
    PostgreSQL es multiproceso, si tiene
    más CPUs este se encargará de
    aprovechar los recursos disponibles.
Escenarios
●
    Prefiera discos duros rápidos y con
    mecanismos de caché
●
    Tome en cuenta los tamaños del
    RAM y Disco Duro, haga uso de la
    calculadora.
●
    Si no cabe en la RAM recuerde que
    va al swap, ¿hace falta decir más?
Escenarios
●
    Es buena idea manejar varios discos,
    el movimiento del cabezal de disco
    es un tiempo adicional a vencer.
●
    ¿SCSI o IDE?
●
    Filesystem: Todo menos NFS
●
    TOAST: lo mejor después del pan
    rebanado.
Escenarios

     Y ahora las
     Pastillitas
Escenario (Transacciones Largas)

Palabras Claves:
●
    Las transacciones largas deben estar
    bien programadas, implementadas y
    probadas
●
    Los modos de aislamiento
    determinarán cómo será el acceso.
●
    Use locks explícitos si va a escribir.
●
    Ojo con el VACUUM
Escenario (Gran Volumen)
Palabras Claves:
●
    Cuidado con el AutoVacuum
●
    Verifique sus configuraciones de
    accesos a disco
●
    Verifique el tamaño de los Timeout
    para sus Checkpoints
Escenario (Gran Concurrencia)

Palabras Claves:
●
    Replicación
●
    Pool de conexiones
●
    Si es el caso de muchas UPDATE o
    INSERT de datos vea tambien el caso
    de Transacciones
Escenario (Todo Junto)
Palabras Clave:
●
    Mantener control sobre:
    ●
        CPU
    ●
        Memoria
    ●
        Disco
●
    Entonación Fina de Kernel y
    PostgreSQL
Manejo de Incertidumbre
Manejo de Incertidumbre
La incertidumbre o asumir la respuesta son el
quebradero que lleva a errar. Para evitarla use
herramientas para mejorar la comunicación,
como:
●
    No tema a preguntar en caso de dudas, recuerde
    que todos (usuario, programador y DBA)
    pertenecen al mismo equipo.
●
    Convertir las necesidades en métricas tangibles
    para establecer acuerdos medibles.
●
    Lea sobre PNL   (es en serio, le permitirá comunicarse mejor)
Notas
●
    Identifique sus posibles
    cuellos de botella con
    antelación.
●
    Diseñe esquemas
    inteligentes.
●
    Examine las
    capacidades reales de
    su plataforma.
●
    Evite la tentación de
    adivinar, calcule sus
    requerimientos.
Notas
   ●
       Si su proceso
       cambia, revise y
       actualice sus
       requerimientos.
   ●
       Cuando un usuario o
       proveedor le pida 10
       TB, 16 procesadores y
       60 GB en RAM busque
       el logo de la NASA.
¿Algo más?
Requerimientos de PostgreSQL
Twitter: @tu_bd_libre
Portal para el intercambio de
 información, experiencias,
 vivencias y conocimientos
  en Bases de Datos Libres
Twitter: @tu_bd_libre
Artículos,
    Listas de Correos,
           Wiki,
Documentos para el Novato,
 Documentos para el DBA,
 Tips para el Programador.
Twitter: @tu_bd_libre
Lanzamiento el próximo
  01 de Junio de 2012
Síguenos por Twitter,
comenta cual es tu base de datos
 libre favorita y concursa por una
 de las 5 franelas promocionales
Twitter: @tu_bd_libre

Más contenido relacionado

PDF
Metricas del proyecto de Software - introduccion
PDF
Introducción de pruebas de software
DOCX
Requerimientos de instalacion
PPT
Microprocesadores: Registros Internos
PPT
Prototipado del software
PPTX
Modelamiento de software
PPT
4ta Generacion
Metricas del proyecto de Software - introduccion
Introducción de pruebas de software
Requerimientos de instalacion
Microprocesadores: Registros Internos
Prototipado del software
Modelamiento de software
4ta Generacion

La actualidad más candente (20)

DOC
Formato ieee830(srs lleno)
PPSX
Ieee 830
PPTX
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS
PDF
Especificaciones de Requerimientos SRS
DOCX
Formato de documentacion ieee 830
DOCX
25 Estandares - IEEE Calidad de Software
PDF
Introducción al Diseño de Interacción Humano-Computadora
PPTX
Introducción Procesador Consultas SQL Server - Query Processor
PPTX
Integridad, robustez y estabilidad.
PDF
Proceso unificado
PDF
Requisitos funcionales y no funcionales
DOC
Requerimientos norma ieee830
PPTX
DIRECTORIO ACTIVO
PPSX
Conceptos basicos calidad software
PPT
Evaluacion de arquitecturas
PDF
Herramientas CASE
 
PPT
Gestion de redes
DOC
Ejemplo plan de_pruebas
PDF
Copia de seguridad o backup
PPTX
Sistemas distribuidos
Formato ieee830(srs lleno)
Ieee 830
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS
Especificaciones de Requerimientos SRS
Formato de documentacion ieee 830
25 Estandares - IEEE Calidad de Software
Introducción al Diseño de Interacción Humano-Computadora
Introducción Procesador Consultas SQL Server - Query Processor
Integridad, robustez y estabilidad.
Proceso unificado
Requisitos funcionales y no funcionales
Requerimientos norma ieee830
DIRECTORIO ACTIVO
Conceptos basicos calidad software
Evaluacion de arquitecturas
Herramientas CASE
 
Gestion de redes
Ejemplo plan de_pruebas
Copia de seguridad o backup
Sistemas distribuidos
Publicidad

Similar a Requerimientos de PostgreSQL (20)

PPTX
Ceph Meetup
PDF
PostgreSQL el core de OpenERP
PPTX
Los casos de uso para In-Memory OLTP
PDF
El arte de la ciencia de datos
ODP
Experiencia en el uso de software libre en administración de sistemas
PPTX
Programadores (hardware)
PDF
Construcción de Aplicaciones de Avanzada con Geo-Distribución
PDF
Clase 2 - Arquitectura de Postgres
ODP
dispositivos de almacenamiento interno y externo
PDF
Tabla y Manual de instalación de PostgreSQL 9.5
ODP
High Performance Computing con Software libre
PDF
Consejos de los expertos para actualizar el Stack ELK
PDF
Herramientas para la medicion de desempeño PHPConMX 2012
PPTX
Memoria virtual formato a
ODP
Screencast aprende python - parte 1
DOCX
DOCX
Laboratorio ccna
PPTX
Recuperación de desastres y soluciones de alta disponibilidad con SQL Server
PPTX
Introducción a la Computacion paralela
Ceph Meetup
PostgreSQL el core de OpenERP
Los casos de uso para In-Memory OLTP
El arte de la ciencia de datos
Experiencia en el uso de software libre en administración de sistemas
Programadores (hardware)
Construcción de Aplicaciones de Avanzada con Geo-Distribución
Clase 2 - Arquitectura de Postgres
dispositivos de almacenamiento interno y externo
Tabla y Manual de instalación de PostgreSQL 9.5
High Performance Computing con Software libre
Consejos de los expertos para actualizar el Stack ELK
Herramientas para la medicion de desempeño PHPConMX 2012
Memoria virtual formato a
Screencast aprende python - parte 1
Laboratorio ccna
Recuperación de desastres y soluciones de alta disponibilidad con SQL Server
Introducción a la Computacion paralela
Publicidad

Más de Carlos Gustavo Ruiz (13)

PDF
Vim python-mode
PDF
Bases de Datos Libres desde 40.000 pies de altura
PDF
Por qué hacemos persistencia de datos
PDF
Geomática Libre en Venezuela - Presentación a José Sosa (CNTI)
PDF
mini-taller de Base de Datos y PostgreSQL
PDF
Web Mapping con Django
PDF
Integrando mis librerías C++ con Python
PDF
Alta Disponibilidad con PostgreSQL
PDF
Guía de pgpool Paso a Paso
PDF
Mejores prácticas para migración de Bases de Datos
PDF
Mapa Colaborativo con OpenStreetMap
PDF
Python vs El Mundo
ODP
GeoEtiquetas (2das Jornadas Latinoamérica y Caribe gvSIG)
Vim python-mode
Bases de Datos Libres desde 40.000 pies de altura
Por qué hacemos persistencia de datos
Geomática Libre en Venezuela - Presentación a José Sosa (CNTI)
mini-taller de Base de Datos y PostgreSQL
Web Mapping con Django
Integrando mis librerías C++ con Python
Alta Disponibilidad con PostgreSQL
Guía de pgpool Paso a Paso
Mejores prácticas para migración de Bases de Datos
Mapa Colaborativo con OpenStreetMap
Python vs El Mundo
GeoEtiquetas (2das Jornadas Latinoamérica y Caribe gvSIG)

Requerimientos de PostgreSQL

  • 1. Requerimientos para el uso de PostgreSQL Carlos Gustavo Ruiz @carlosgr_arahat
  • 2. Contenido ● Previo ● Gran Volumen ● Necesidades y ● Alta concurrencia Requerimientos ● Todo Junto ● Conozca su Proceso ● Manejo de la ● Parámetros que debe incertidumbre conocer ● Notas ● Escenarios ● Algo más? ● Instalación Básica ● Transacciones Largas
  • 6. En Venezuela si hay gente Comprometida con el País
  • 8. Que sólo necesita una oportunidad para dar, para compartir y para multiplicar sus talentos
  • 10. Que demuestra con hechos.. ..lo que dicen sus palabras
  • 11. Gracias por la oportunidad Muchas Gracias
  • 12. ... dicho esto, regresamos a la ponencia.
  • 13. Previo Un día Juan Castalio va al nuevo automercado de su ciudad.
  • 14. Previo Un día Juan Castalio va al nuevo automercado de su ciudad. Entra al local,
  • 15. Previo Busca a una cajera muy atenta y le dice:
  • 16. Previo - Señorita, ¿el mercado que voy a hacer será suficiente para mi familia? ¿Y dígame, entrará en mi nevera o necesitaré otra?
  • 18. Si la pego de acá Previo me voy a dar los horóscopos en la tele..
  • 20. Necesidades y Requerimientos ● Necesito ● Requiero ● Registrar ● Procesador ● Actualizar ● RAM ● Inventariar ● Disco ● Reportar ● Ancho de Banda ● Analizar ● Redundancia de ● Desplegar Servicios ● Monitorear ● Configuraciones ● Seguir un Proceso ● Satisfacer Necesidades
  • 21. Conozca su Proceso ● ¿Conoce usted el proceso que va a ser guardado en la base de datos? ● ¿Tiene métricas que describan su base de datos en términos de volumen, longitud de transacciones, concurrencia de usuarios, etc? ● Si su gestor de base de datos fuese un vehículo ¿Cual es el mejor vehículo para su proceso?
  • 22. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 23. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 24. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 25. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 26. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 27. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 28. Conozca su Proceso ¿Cual es el mejor vehículo?
  • 29. Conozca su Proceso El desconocimiento de su proceso lo puede llevar a tomar decisiones erradas, la cultura del no se si me aprueben más presupuesto o por si me piden que le ponga algo más, es perniciosa. “Vele que su requerimiento de hoy no sea hambre para mañana” Vele que su requerimiento no esté sobredimension, no sea que no sea tomado en serio la próxima vez Vele que su requerimiento no esté subdimensionado y su proceso no quepa en su configuración
  • 30. Parámetros que debe conocer Para determinar los Requerimientos de PostgreSQL para su proceso deberá conocer cómo hacer los calculos básicos de entonación. Sólo comprendiendo el funcionamiento del gestor de bases de datos es posible dar un estimado cercano a la realidad. PostgreSQL es muy transparente en cuanto a su funcionamiento, ello facilita la tarea de calcular acertadamente los requerimientos de equipos, disco, etc.
  • 31. Parámetros que debe conocer Debe saber que PostgreSQL tiene alrededor de 200 opciones y switches.
  • 32. Parámetros que debe conocer Luce complejo dicho de esta manera, cierto?
  • 33. Parámetros que debe conocer Claro, que son menos que la cantidad de memes que usas en tus redes sociales, no?
  • 34. Parámetros que debes conocer ● Los parámetros podemos separarlos en ● 8 tipos de parámetos ● 6 contextos ● 5 lugares
  • 35. Parámetros que debes conocer ● Tipos de Parámetros ● Booleanos ● Enteros ● Flotantes ● Memoria / Disco ● Tiempo ● Cadena de Caracteres ● Enumeraciones ● Listas
  • 36. Parámetros que debes conocer Contextos de Configur aciones ● Usuario ● Postmaster ● SuperUsuario ● Backend ● Sighup ● Internal
  • 37. Parámetros que debes conocer ● Lugares para configurar ● Archivo postgresql.conf ● Instrucción SET ● pg_settings ● ALTER a objetos ● Línea de comandos y pgoptions
  • 38. Escenario (Instalación Básica) ● Sistema Operativo: GNU/Linux (*) ● Fuente: Paquetería ● Memoria: Anda a partir de 512 MB RAM pero de 2GB en adelante será funcional ● Usuarios: Nominalmente 100 ● Usos Frecuentes: bases de datos iniciales, proyectos medianos, páginas web, sitio para desarrollo, otros.
  • 39. Escenario (Instalación Básica) El problema de esta instalación es que resultan como la ropa talla única. A todo el mundo le sirve pero a nadie le queda bien. Sin embargo es eficaz, funciona y lo hace bien.
  • 40. Escenarios Recomendaciones Generales: ● Si usa paquetería no tendrá control sobre algunos contextos de PostgreSQL, prefiera compilar los fuentes ● Es conveniente ajustar simultaneamente los parámetros de PostgreSQL con el manejo de memoria del Kernel
  • 41. Escenarios ● Recuerde que de la calidad de su hardware dependerá el desempeño de su servidor. ● Prefiera el uso de sistemas 64 bits, realmente lo vale. ● PostgreSQL es multiproceso, si tiene más CPUs este se encargará de aprovechar los recursos disponibles.
  • 42. Escenarios ● Prefiera discos duros rápidos y con mecanismos de caché ● Tome en cuenta los tamaños del RAM y Disco Duro, haga uso de la calculadora. ● Si no cabe en la RAM recuerde que va al swap, ¿hace falta decir más?
  • 43. Escenarios ● Es buena idea manejar varios discos, el movimiento del cabezal de disco es un tiempo adicional a vencer. ● ¿SCSI o IDE? ● Filesystem: Todo menos NFS ● TOAST: lo mejor después del pan rebanado.
  • 44. Escenarios Y ahora las Pastillitas
  • 45. Escenario (Transacciones Largas) Palabras Claves: ● Las transacciones largas deben estar bien programadas, implementadas y probadas ● Los modos de aislamiento determinarán cómo será el acceso. ● Use locks explícitos si va a escribir. ● Ojo con el VACUUM
  • 46. Escenario (Gran Volumen) Palabras Claves: ● Cuidado con el AutoVacuum ● Verifique sus configuraciones de accesos a disco ● Verifique el tamaño de los Timeout para sus Checkpoints
  • 47. Escenario (Gran Concurrencia) Palabras Claves: ● Replicación ● Pool de conexiones ● Si es el caso de muchas UPDATE o INSERT de datos vea tambien el caso de Transacciones
  • 48. Escenario (Todo Junto) Palabras Clave: ● Mantener control sobre: ● CPU ● Memoria ● Disco ● Entonación Fina de Kernel y PostgreSQL
  • 50. Manejo de Incertidumbre La incertidumbre o asumir la respuesta son el quebradero que lleva a errar. Para evitarla use herramientas para mejorar la comunicación, como: ● No tema a preguntar en caso de dudas, recuerde que todos (usuario, programador y DBA) pertenecen al mismo equipo. ● Convertir las necesidades en métricas tangibles para establecer acuerdos medibles. ● Lea sobre PNL (es en serio, le permitirá comunicarse mejor)
  • 51. Notas ● Identifique sus posibles cuellos de botella con antelación. ● Diseñe esquemas inteligentes. ● Examine las capacidades reales de su plataforma. ● Evite la tentación de adivinar, calcule sus requerimientos.
  • 52. Notas ● Si su proceso cambia, revise y actualice sus requerimientos. ● Cuando un usuario o proveedor le pida 10 TB, 16 procesadores y 60 GB en RAM busque el logo de la NASA.
  • 56. Portal para el intercambio de información, experiencias, vivencias y conocimientos en Bases de Datos Libres
  • 58. Artículos, Listas de Correos, Wiki, Documentos para el Novato, Documentos para el DBA, Tips para el Programador.
  • 60. Lanzamiento el próximo 01 de Junio de 2012
  • 61. Síguenos por Twitter, comenta cual es tu base de datos libre favorita y concursa por una de las 5 franelas promocionales