AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO FABIO ROZO ROZO
Introducción. Hemo Hemoss eleg legido ido el SMBD SMBD de Postg ostgre resq sql, l, gesto estorr de códig digo libr libre e con con características de control de concurrencias multi versión MVCC, este mtodo agrega una imagen del estado de la base de datos a cada transacción, esto !ermite reali"ar transacciones eventualmente consistentes , o#reciendo grandes venta$as de rendimiento, !or e$em!lo no se requiere usar bloqueos de lectura al reali" reali"ar ar trans transacc accion iones, es, otra otra caract caracterí erísti stica ca es el Hot%Sta Hot%Standb ndb&& que !ermit !ermite e generar consultas mientras un servidor est' en modo recu!eración o es!era, el bene#icio que a!orta este gestor de datos es reali"ar varias o!eraciones sin truncar el motor en estados de mantenimiento o recu!eración del sistema, cosa que no o#rece algunos motores como MSS(). )a *erramienta !g+dmin !ermite administrar las bases de datos en PostgreSql, a travs de esta *erramienta nos !ro!orciona gestionar el diseo de la base de datos, gestionar & administrar consultas, recursos #ísicos & lógicos. Com!onentes del SMBD PostgreSql PostgreSql est' #ormado !or numerosos numerosos com!onentes com!onentes & todos & cada cada uno de estos com!onentes in#lu&en en ma&or ó en menor medida en el rendimiento de nuestr nuestro o sistem sistema. a. -n el el siguie siguiente nte gr'#ic gr'#ico o ilustr ilustra a los !osi !osible bless di#ere di#erente ntess com!onentes de nuestro sistema de #orma $er'rquica.
eneralmente, cuando tengamos un !roblema de rendimiento em!e"aremos la b/sq b/sque ueda da de la caus causa a en la ca!a ca!a in#e in#erio riorr 0*ar 0*ard1 d1ar are2 e2 e irem iremos os subi subien endo do !rogresivamente a la siguiente ca!a su!erior *asta locali"ar el !roblema.
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
3i!os de a!licaciones Desde el !unto de vista de un administrador de bases de datos, e4isten a grandes rasgos tres ti!os de a!licaciones5 6
+!licaciones 1eb 07eb2
6
+!licaciones de !rocesamiento de transacciones en línea 08)3P2
6
+lmacenes de datos 0data 1are*ouse % D72
+ continuación se muestra las características generales di#erenciadoras m's im!ortantes de estos ti!os de a!licaciones5 +!licaciones 1eb 07eb2 6
Base de datos m's !equea que el total de 9+M
6
-l :;< ó m's de las consultas, son consultas sim!les
6
)imitada !or la CP=
6 )os !roblemas tí!icos que se suelen dar son5 cac*e, !ooling, tiem!os de cone4ión. +!licaciones de !rocesamiento de transacciones en línea 08)3P2 6
Base de datos ligeramente m's grande que el total de 9+M & *asta > 3B
6 -l ?;<%@;< de las consultas son !equeas consultas que actuali"an datos 6
=nas !ocas transacciones grandes & consultas de datos com!le$as
6
)imitada !or CP= ó IA8
6
)os !roblemas tí!icos son5 bloqueos 0locs2, cac*e, transacciones,
velocidad de escritura, registros 0logs2 +lmacenes de datos 0data 1are*ouse % D72 6
Base de datos mu& grande 0de >;;B a >;;3B2
6
Consultas grandes & com!licadas !ara generar in#ormes
6
+ctuali"ación de datos en grandes bloques 0bul load2
6
)imitada !or IA8 ó 9+M
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
6 )os !roblemas tí!icos son5 escaneos secuenciales 0seq scans2, recursos, consultas ine#ectivas, actuali"aciones masivas 0bul load2 3cnicas & !rocedimientos =na ve" que *emos visto los !osibles com!onentes que !ueden #ormar !arte de nuestro sistema & los di#erentes ti!os de a!licaciones con los que nos !odemos encontrar, vamos a !asar a ver !rocedimientos & tcnicas que !odemos utili"ar !ara identi#icar & arreglar !roblemas de rendimiento en nuestro sistema. + continuación se evidencia la estrategia a seguir !ara locali"ar !roblemas5 >.
9ecolección de in#ormación5
-sta es una de las #ases m's im!ortantes & cruciales, en ella tenemos que intentar entender que est' *aciendo el sistema que vamos a arreglar, que com!onentes se est'n utili"ando & como estos com!onentes #uncionan e interact/an entre sí. 3endremos que identi#icar de qu ti!o de a!licación se trata, que intenta *acer la a!licación, como utili"a la base de datos, que ti!o de !roblemas est'n teniendo los usuarios, etc. -n de#initiva, obtener una visión general de como el sistema *ace las cosas e intentar identi#icar !osibles 'reas !roblem'ticas del mismo. ?.
Com!robación general de la con#iguración b'sica del sistema5
-n esta #ase se reali"a un recorrido general sobre la con#iguración del sistema !ara com!robar en qu estado se encuentra. Com!robaremos la con#iguración del *ard1are & el sistema o!erativo, de PostgreS(), middle1are, si e4iste, & de la a!licaciones usando el sistema. .
Identi#icación de !osibles !roblemas5
-n esta #ase se reali"a un an'lisis de los di#erentes com!onentes del sistema !ara tratar de identi#icar !osibles !roblemas que a#ecten al rendimiento. Probablemente &a *a&amos identi#icado varios !roblemas durante el item> & ?. @.
+rreglo del ma&or !roblema identi#icado5
=na ve" identi#icado el ma&or !roblema, tendremos que buscar la solución del mismo. .
9e!etición5
Cuando el !rimer !roblema m's im!ortante est arreglado volver a re!etir los ítems & @ *asta que estemos seguros con el resultado.
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
Vamos a ver qu ti!o de in#ormación deberíamos de recolectar & que deberíamos com!robar en los di#erentes com!onentes del sistema que tengan !roblemas. Como &a *emos dic*o, generalmente em!e"aremos con el *ard1are e iremos subiendo !rogresivamente a las ca!as su!eriores, aunque esto de!ender' del sistema & algunas veces cambiaremos el orden. + continuación relacionamos la in#ormación sobre los com!onentes & los !untos m's comunes que se deberían com!robar5 Hard1are 6 6 6
Servidores Modelo de CP=, velocidad de la CP=, numero de CP=s dis!onibles, arquitectura, uso de las mismas Cantidad de 9+M, velocidad de la 9+M, con#iguración de la misma
6 6 6 6 6 6 6
+lmacenamiento 3i!os de inter#aces 0controladores, 9+ID2 3i!os de discos, tamao & velocidad de los mismos Con#iguración del +rra&AS+E 9ed 3i!o de red & ca!acidad de la misma 3ar$etas de red usadas, modelos
6 6 6 6
Sistema o!erativo Sistema o!erativo 3i!o de S8, versión, !arc*es a!licados, modi#icaciones locales In#ormación sobre los controladores de *ard1are usados
6 6 6 6
Sistema de #ic*eros 3i!o de sistema de #ic*eros que estamos utili"ando )ocali"ación de los #ic*eros del sistema o!erativo, PostgreS() & otras a!licaciones Con#iguración del sistema de #ic*ero utili"ado
6
PostgreS()
6 6 6 6 6
Sc*ema Diseo, modelo de datos 3amao de los datos Particionado de los datos, tables!aces Fndices usados
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
6
Procedimientos almacenados en uso
6 6 6 6
Con#iguración G(u cambios se *an reali"ado en la con#iguración est'ndar GSe e$ecutan traba$os de mantenimiento 0V+C==MA+E+)J-2 GCon que #recuencia & con#iguración se e$ecutan los traba$os de mantenimiento Com!robar los !ar'metros m's im!ortantes, unos valores orientativos que se !odrían usar serian 5
6
6 6 6 6 6 6
Middel1are Controladores, Cone4iones & Cac*e 3i!o & versión usada de los controladores DB Mtodo de cone4ión usada, !ooling usado, con#iguración del !ooling Mtodo de cac*e usado, *erramientas usadas !ara administrarlo, versión & con#iguración So#t1are 89M utili"ado & versión
6 6 6 6 6 6
+!licación Consultas S(),3ransacciones 3i!o de a!licación Modelo & ti!o de transacciones 3i!os & n/meros de consultas Herramientas
-4isten numerosas *erramientas que se !ueden utili"ar !ara intentar locali"ar di#erentes !roblemas en nuestro sistema. De!endiendo de la !arte del sistema que estemos anali"ando usaremos unas u otras. Hard1are & sistema o!erativo Herramientas del sistema o!erativo -stas *erramientas suelen ser mu& #'ciles de usar, no suelen a#ectar al resto del sistema mientras que las utili"amos & nos !ueden a&udar a monitori"ar & obtener estadísticas de cómo est' #uncionando el *ard1are & nuestro sistema en general. !s5 Eos !ermite ver los !rocesos !ostgreS() que se est'n e$ecutando en nuestro servidor. Eos da una idea de la cantidad de !rocesos concurrentes & el uso de CP= & memoria que tienen. 3ambin nos !ermite identi#icar consultas que se *an colgado, que est'n bloqueadas ó que llevan e$ecut'ndose muc*o tiem!o.
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
!gKto!5 -ste !rograma nos suministra muc*a de la in#ormación que !s nos da & otra relacionada e4clusivamente con !ostgreS(). m!stat5 Eos !ro!orciona in#ormación sobre el uso de todas las CP= de nuestro sistema. Podemos encontrar los recursos de CP= que se est'n usando, si estamos usando todas las CP= dis!onibles ó si tenemos !roblemas de Lcambio de conte4toL0conte4t%s1itc*2 vmstat, #ree5 Eos !ermite ver el uso que estamos *aciendo de la memoria. Podemos ver si la memoria est' saturada, si !odemos tener m's in#ormación en cac*e ó si estamos utili"ando el s1a! de nuestro sistema. iostat5 Para monitori"ar el uso de los dis!ositivos de almacenamiento de nuestro sistema. Podemos ver si el subsistema IA8 est' saturado, si alguno de los dis!ositivos est' causando un embotellamiento del resto de los dis!ositivos, ó si tenemos subidas !untuales del tr'#ico en los discos debido a los Lc*ec!ointL generados !or PostgreS(). sar5 Se !uede utili"ar !ara obtener in#ormación de la actividad del sistema durante un !eriodo de tiem!o de#inido. 3est de rendimientos )os test de rendimientos suelen ser mu& intrusivos & suelen a#ectar al resto del sistema mientras que se e$ecutan. Por esto, no siem!re se !ueden usar en sistemas en !roducción que est'n #uncionando con ciertos !roblemas !ero que tienen que seguir #uncionando aunque su rendimiento no sea el ó!timo. Permiten com!arar resultados entre sistemas con mismo *ard1are & sistema o!erativo. dd5 )ee & escribe datos de manera secuencial bonnie5 Para com!robar el rendimiento & !osibles !roblemas con IA8. Com!rueba entre otras cosas, la velocidad de b/squeda 0see2 & escritura aleatoria del sistema. I8"one5 Com!rueba las velocidades de di#erentes o!eraciones. PostgreS() Vie1s & #unciones de sistema Mu& #'ciles de usar, su uso no a#ecta al rendimiento de nuestro sistema. Eos !ro!orcionan in#ormación sobre lo que est' ocurriendo internamente en nuestra base de datos & nos !ueden a&udar a identi#icar !roblemas relacionados con el diseoAmodelo de datos, consultas, !rocedimientos almacenados & bloqueos. !gKstatKdatabase, !gKdatabaseKsi"e025 Para conseguir estadísticas de tr'#ico generales, n/meros de cone4iones, n/mero de transacciones v'lidas 0commits2 & abortadas 0rollbac2, !ro!orción de aciertos de datos en cac*e, tamao de la base de datos.
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
!gKtables, !gKrelationKsi"e025 Para obtener in#ormación sobre las tablas de nuestra base de datos, cuantas e4isten, si tienen dis!aradores, índices ó reglas asociadas, & el tamao de las tablas e índices de la base de datos !gKstatKactivit&5 Para com!robar la actividad actual en la base de datos, consultas en e$ecución, bloquedas, cone4iones concurrentes, ociosas 0idle2, etc !gKlocs5 Para descubrir & com!robar con#lictos con bloqueos. !gKstatNioOKuserKtables, !gKstatNioOKuserKinde4es5 Para com!robar la actividad relacionada con las tablas & los índices de nuestra base de datos, in#ormacion sobre Lseq scansL, IA8, etc !gKstatKbg1riter5 Para com!robar estadísticas relacionadas con el !roceso Lbacground 1riterL encargado de los #ic*eros 7+). !gKstatKuserK#unctions 0.@25 Para obtener los tiem!os de e$ecución de nuestras #unciones, di#erenciando entre tiem!os de llamada & e$ecución del código. !gKstatKstatements 0contrib .@25 -ste módulo LcontribL se !uede utili"ar !ara obtener una relación de consultas en e$ecución $unto con in#ormación sobre las m's #recuentes & las m's lentas PostgreS() logs, !g#ouine & auto%e4!lain Eo *a& nada como un buen #ic*ero log !ara obtener in#ormación sobre lo que *a ocurrido en nuestro sistema. !gKlog5 -4isten multitud de o!ciones en el #ic*ero de con#iguración !ostgresql.con# !ara activarAdesactivar los datos que nos interese registrar. )a in#ormación obtenida mediante el log de !ostgreS() se !odr' anali"ar !ara obtener in#ormación en el caso de tener !roblemas. !g#ouine5 Se !uede utili"ar !ara calcular estadísticas generales de las consultas enviadas a la base de datos. )as consultas m's #recuentes & m's lentas no ser'n un misterio des!us de utili"ar este !roducto. auto%e4!lain 0.@25 9egistra en el #ic*ero log de !ostgreS() la in#ormación sobre Le4!lain !lansL de las consultas que queramos. Se !uede activarAdesactivar din'micamente. -4!lain anal&"e -l comando S() Le4!lain anal&"e Nconsulta S()OL se !uede utili"ar con consultas lentas !ara obtener in#ormación sobre las causas de la #alta de velocidad. Muc*as veces !odremos arreglar la causa r'!idamente & otras nos dar'n in#ormación sobre !osibles causas a investigar. -l resultado de este comando es un 'rbol invertido de nodos el cual deberíamos de em!e"ar a leer de aba$o *acia arriba. Habría que em!e"ar a buscar el nodo m's ba$o con !roblemas e intentar inter!retar el resultado de
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
manera integralAglobal, &a que algunos nodos se !ueden e$ecutar en !aralelo e in#luenciarse mutuamente. +lgunas de las cosas que se deberían de com!robar & buscar en el resultado del comando L-4!lain anal&"eL son5 6 6 6
-stimaciones erróneas del n/mero de #ilas en una tabla LInde4 scansL & Lseq scansL lentos 8rdenación de datos en disco en ve" de en memoria
3est de rendimientos 6!gbenc*5 3est de rendimiento mu& sim!le con el que se !uede com!robar el subsistema IA8 & la velocidad a la que se !rocesan las cone4iones. Eo com!rueba bloqueos, com!utación de datos ó Lquer& !lanningL. =til !ara demostrar !roblemas im!ortantes de *ard1are ó en el sistema o!erativo. 6 6 6
DB3?5 3est mu& com!leto & costoso de e$ecutar. Basado en 3PCC es un com!leto test de rendimiento !ara sistemas 8)3P. DB35 Euevo test 8)3P D7 8tros5 !g=nit3est, -+stress, Benc*marS()
Middel1are A a!licación -4isten tambin una serie de *erramientas que se !ueden utili"ar a nivel del middel1areAa!licación que nos !ueden a&udar a obtener in#ormación valiosa que nos a&ude a locali"ar nuestro !roblema. -numeramos solo algunas de las m's im!ortantes5 6 6 6
Herramientas !ara servidores de a!licaciones5 Se !ueden usar !ara anali"ar los tiem!os de res!uesta, monitori"ación de la actividad de la base de datos, & monitori"ación del uso del cac*e. Simulación de cargas5 Herramientas como l1! & re!roductores de in#ormación contenida en #ic*eros log. Herramientas !ara detectar bugs5 Valgrind, MDB, DB
Problemas de rendimiento tí!icos Problemas de rendimiento m's comunes. Problemas con el subsistema IA8 Cuando tenemos !roblemas con el subsistema IA8, lo m's normal es que las CP=s estn subutili"adas, tengamos memoria dis!onible & al menos un dis!ositivo de almacenamiento con el IA8 saturado. -stos !roblemas suelen darse en sistemas del ti!o 83)P & D7 0data 1are*ouse2, bases de datos mu& grandes ó bases de datos con un ratio de escritura mu& alto. )as causas comunes de este ti!o de !roblemas son5
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
6 6 6 6 6
Problemas con el *ard1areAso#t1are encargado del subsistema IA8 Mala con#iguración del subsistema IA8 Eo su#iciente memoria Demasiados datos demandados !or la a!licación Sc*ema no ó!tima, #alta de índices ó !articionamiento de datos
Problemas con CP= Cuando tenemos !roblemas con el uso de la CP=, lo m's normal es que estemos usando el :;< ó m's de la ca!acidad de CP= dis!onible, tengamos memoria dis!onible & el subsistema IA8 noe est saturado. -stos !roblemas suelen darse en sistemas del ti!o 7eb & 83)P, bases de datos con una gran cantidad de consultas de lectura ó consultas en las que se reali"an c'lculos com!le$os. )as causas comunes de este ti!o de !roblemas son5 6 6 6 6 6
Demasiadas consultas Insu#iciente cac*eA!ooling Demasiados datos demandados !or la a!licación Consultas mal construidas Sc*ema no ó!tima, #alta de índices
Problemas de bloqueos Cuando tenemos este ti!o de !roblema, lo m's normal es que ni la base de datos, ni la a!licación estn traba$ando al m'4imo, !ero tengamos muc*as consultas con grandes !eriodos de es!era, un alto índice de Lcambio de conte4toL 0conte4t s1itc*ing2, & !gKlocs mostrando consultas bloqueadas. -stos !roblemas suelen darse en sistemas del ti!o 83)P & D7 0data 1are*ouse2, ó traba$os que usen bloqueos !esimistas ó !rocedimientos almacenados. )as causas comunes de este ti!o de !roblemas son5 6 6 6 6 6 6
-$ecuciones de larga duración de transacciones ó !rocedimientos almacenados Cursores mantenidos durante muc*o tiem!o Bloqueos !esimistas en ve" de o!timistas ó bloqueos de#inidos !or los usuarios estión mala de transacciones Varias con#iguraciones de bu##ers en !ostgresql.con# con valores mu& ba$os )ímites en la escalabilidad de PostgreS() en sistemas SMP
Problemas con la a!licación Cuando tenemos este ti!o de !roblema, lo m's normal es que la base de datos no est traba$ando al m'4imo, !ero el uso de la memoria &Ao la CP= en el servidor de a!licación estn al m'4imo.
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
-stos !roblemas suelen darse en sistemas Q?-)as causas comunes de este ti!o de !roblemas son5 6 6 6 6
Eo tenemos su#icientes servidores de a!licaciones Demasiados datosAconsultas demandados !or la a!licación Mala con#iguración del cac*eA!ooling Problemas con los controladores DB Con#iguración en !ostgresql.con#
Para cargar #'cilmente grandes cantidades de datos a una base de datos de PostgreS(), es !osible que deba aumentar los valores de s*aredKbu##ers & ma4KlocsK!erKtransaction en el arc*ivo !ostgresql.con#. s*aredKbu##ers -l !ar'metro s*aredKbu##ers designa la cantidad de memoria que se utili"a !ara los b/#ers de memoria com!artida. )a documentación de PostgreS() indica que, !or ra"ones de rendimiento, es !robable que deba utili"ar una con#iguración ma&or al valor mínimo de >? RB o > RB multi!licado !or el n/mero que se con#iguró como el valor de ma4Kconnections. Se recomienda con#igurar s*aredKbu##ers !ara utili"ar varias decenas de megab&tes en las instalaciones de !roducción. Cuando carga grandes cantidades de datos, es mu& !robable que necesite una ma&or con#iguración de s*aredKbu##ers que el valor !redeterminado de ? MB. Des!us de cambiar este !ar'metro en el arc*ivo !ostgresql.con#, deber' reiniciar el cluster de base de datos. ma4KlocsK!erKtransaction -l valor de ma4KlocsK!erKtransaction indica la cantidad de ob$etos de base de datos que se !ueden bloquear de manera simult'nea. -n la ma&oría de los casos, el valor !redeterminado de @ es su#iciente. Sin embargo, cuando se carga una gran cantidad de datasets 0!or e$em!lo, varios miles2 a la ve", la cantidad de bloqueos de ob$eto concurrentes !ara la transacción !uede e4ceder @. Eo *a& una relación de uno a uno entre bloqueos concurrentes & la cantidad de datasetsT en otras !alabras, si carga .;;; datasets, no debe aumentar el valor de ma4KlocsK!erKtransaction a .;;;. Primero aumente el valor a >;; antes de aumentar las cargas. Cuando cambia el valor del !ar'metro ma4KlocsK!erKtransaction, debe reiniciar el servidor. -l aumento del valor de alguno de estos !ar'metros !uede !roducir que la base de datos solicite m's memoria com!artida que la que el sistema o!erativo 0S82 =EIU tiene dis!onible. Para obtener m's in#ormación sobre cómo !uede
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
aumentar la con#iguración de la memoria com!artida !ara el S8, consulte +dministrar recursos de ernel en la documentación de PostgreS(). Me$orar el rendimiento de la consulta es!acial de S() Cuando e$ecuta consultas de S() que devuelven columnas es!aciales de S3Keometr& desde una tabla de negocios, !uede aumentar el rendimiento de la consulta si con#igura una variable de entorno del sistema, S3K-8M-39K8=3P=3KW89M+3, con salida *acia el ti!o S3Keometr& en ve" de la re!resentación de te4to conocido e4tendido 07R32. Por de#ecto, la variable S3K-8M-39K8=3P=3KW89M+3 se con#igura como 3P-, que signi#ica que se devuelve una re!resentación *e4abinaria. -s necesario !ara crear una co!ia de seguridad /til de la geodatabase. Xnicamente debe cambiar esta variable a S3K-8M-39 si desea me$orar el rendimiento de la consulta S(). Si con#igura esta variable !orque !lanea *acer varias consultas es!aciales de S(), aseg/rese de quitarla des!us de terminar las consultas, a continuación reinicie el cluster de base de datos de PostgreS(). 6 6 6 6 6 6 6 6 6
)a variable se debe con#igurar en el equi!o donde se e$ecuta PostgreS(). Para un S8 )inu4, con#igure la variable !ara el s*ell desde donde emite las consultas S(). Para el s*ell bas*, la sinta4is es la siguiente5 S3K-8M-39K8=3P=3KW89M+3YS3K-8M-39 Para un s*ell cs*, la sinta4is es setenv S3K-8M-39K8=3P=3KW89M+3 S3K-8M-39 -n 7indo1s, cree una variable de entorno del sistema en las !ro!iedades del sistema. Eombre de la variable5 S3K-8M-39K8=3P=3KW89M+3 Valor de la variable5 S3K-8M-39 Des!us de con#igurar la variable, debe reiniciar el cluster de base de datos de PostgreS().
789RKM-M -ste !ar'metro con#igura el es!acio de memoria que !ostgres utili"a !ara reali"ar ordenaciones de tablas o de resultados !arciales de consultas, sobre todo en cl'usulas 89D-9 B, C9-+3- IED-U o M-9- Q8IE. -ste valor es m's di#icil de con#igurar !orque de!ende, !or un lado, de lo grande que sean las tablas o resultados que *a& que ordenar, & !or otro, del n/mero de !eticiones simult'neas !ara esa misma consulta 0!ara cada una se em!lear' la misma cantidad de memoria2. =n buen comien"o es asignar entre un ?< & un @< del total de la memoria si !revemos !ocos accesos simult'neos a grandes sesiones de ordenación & muc*o menor, si es!eramos muc*os accesos simult'neos a sesiones de ordenación !equeas. Como antes, lo me$or es ir !robando distintos valores &
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
ver en qu !ueden a#ectar a la !aginación adversa 0s1a! !agein2. -l valor *a& que e4!resarlo en RB. -n nuestro e$em!lo, *emos o!tado !or usar un @< de la memoria5 -l @< de > B5 @>:@ RB 0>;@Z RB[@2A>;; 1orKmen Y @>:@ PostgreS() utili"a roles !ara iniciar la sesión en el cluster de bases de datos & en las bases de datos. Se !ueden agregar roles al cluster de bases de datos PostgreS(). )os usuarios de bases de datos individuales se llaman roles de inicio de sesión. Para todos los roles de inicio de sesión que ser'n !ro!ietarios de ob$etos en la geodatabase, tambin debe crear un esquema en esa base de datos. -l esquema debe tener el mismo nombre & ser !ro!iedad del rol de inicio de sesión. 3ambin !uede crear gru!os de roles a los que se !ueden agregar roles de inicio de sesión. + continuación, !uede es!eci#icar !ermisos !ara el gru!o que se a!licar'n a todos los roles de inicio de sesión asociados. +lmacenamiento Se !uede crear una base de datos en una locali"ación di#erente a la establecida !or de#ecto durante la instalación. 9ecuerde que todos los accesos a base de datos ocurren realmente a traves del !roceso en segundo !lano, así que ste debe !oder acceder acualquier es!eci#icación. Se crean locali"aciónes alternativas & re#erencias mediante una variable de entorno queda el !at* absoluto *asta la situación de almacenamiento deseada. -sta variable deentorno debe estar de#inida antes de que el !roceso en segundo !lano sea arrancado & debe ser modi#icable mediante la cuenta del administrador de !ostgres. Cualquier variable de entorno !uede ser utili"ada !ara re#erirse a una locali"ación alternativa, si bien se recomienda la utili"ación de un nombre de variable con !re#i$o PD+3+ !ara evitar con#usión & con#licto con otras variables. Eo olvidar que -n versiones !revias de Postgres, tambin estaba !ermitido utili"ar un nombre de !at* absoluto !ara es!eci#icar una locali"ación de almacenamiento alternativa. Se !re#iere el mtodo de es!eci#icación de variables de entorno, !uesto que concede al administrador del sistema m's #le4ibilidad en la gestión del almacenamiento en disco. Si !re#iere utili"ar !at*s absolutos, !uede *acerlo de#iniendo +))87K+BS8)=3-KDBP+3HS & recom!ilando Postgresql
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO
Sistema de recu!eración de desastres & co!ias de seguridad -l !roceso de creación de Bacu! en PostgreS() se reali"a !or medio de !gKdum!, & la automati"ación !ara su e$ecución se !uede lograr !or medio de *erramientas como las que se inclu&e en P+DMIE *aciendo uso de los Qob, ste!s & sc*edules o mediante el sistema o!erativo, que en esta caso serna 7indo1s & )inu4. + travs de #oros se !udo observar distintas #ormas de *acer Bacu!, !ero la me$or sería si es +utom'tico, &a que así el DB+ no tendr' la necesidad de estar !resente cuando deba res!aldar la Base de Datos. Desde la P'gina de PostgreS() se !uede constatar que, es una Base de Datos 9obusta, adem's de ser 8!ensource llega a ver los 9es!aldos de manera )ineal !ara el negocio transaccional, es así que adem's de 9es!aldos PostgreS() se !ueda noti#icar al DB+ de los sucesos ocurridos en dic*o 9es!aldo. )as encuestas que se reali"aron a los DB+ tuvieron sus Positivismo & Eegativismo en la Pro!uesta de +utomati"ación de 9es!aldos PostgreS()T la ma&oría de los +dministradores acogieron & ace!taron que +utomati"ar los 9es!aldos de una Base 9es!aldos PostgreS() +utom'ticos & Eoti#icaciones Vía Mail de Datos seria a*orrar tiem!o adem's de que el !roceso garanti"a la Integridad de los Datos, que es de suma im!ortancia al momento de restaura o recu!erar una Base de Datos, mu& !oco #ue la negatividad de los DB+ sobre la +utomati"ación &a que la ven como un !roceso no seguro que no resguardara la in#ormación de manera correcta , que adem's no garanti"a la integridad de la in#ormación, !ero sobre todo eso la gran !arte de DB+ ace!ta el cambio +utom'tico como una Herramienta /til en su +dministración Diaria. -l !roceso de 9es!aldos +utom'ticos consiste en lo siguiente5 Se reali"an los 9es!aldos +utom'ticos a travs de 3areas Programadas en 7indo1s & Cron en )inu4. enera )8 de sucesos de los 9es!aldos de la Base de Datos. -nvía dic*o )8 !or mail al DB+ !ara que revise el suceso si *ubo o no error en los 9es!aldos. Por /ltimo es im!ortante crear tareas !rogramadas con el sistema o!erativo con el !ro!ósito de e4!ortar la data a otros sistemas de almacenamiento !ara tener a mano la in#ormación en casos e4tremos o de urgencia !ara restaurar el sistema de in#ormación.
AA2-EV4 PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE DESASTRES PARA SMBD ANA DILIA SEPULVEDA ARENA JOSE FABIO ROZO ROZO