Está en la página 1de 3
Le Habana, Cuba. Del 19 al23demarzo Havana, Cuba, March 19%hto 23 fon that as FOR A SUSTAINABLE DEVELOPMENT || Informatica SRE O18I OPTIMIZACION DE BASES DE DATOS POSTGRESQL: BUENAS PRACTICAS PARA SU REALIZACION POSTGRESQL DATABASES OPTIMIZATION: BEST PRACTICES FOR ITS APPLICATION Yuelsney Vazquez Ortiz", Danay Betancourt Cartallo?, Arodys E. Dominguez Vaillant? 1 Universidad ce las Ciencias Informaticas, Cuba, yvazauezo@uci.cu, Carretera 2 San Anionio de los Eatios, km 1/2, Boyeros Le Habana 2 XETID, Cuba, dearballo@xetic.cu 3 Universidad de las Ciencias infermiticas, Cuba, adominguez@uci cu RESUMEN: Lee oases de dates relecionales actueles tienen el reto ce manipular grandes volimenes de datos, con alios niveles de concurrencia y con importantes requerimenios de velocidad, caracteristicas que, de ro sar tratadas adacuadamente, generan problemas que inccien en ia calitad de Is aplitacién y el servicio cirecide a los usuarios finales, haciéndose neceserio optimizaries para garantizer tiempos de respuesta eiicientes. El propésito de este articulo es definir un conjunto de buenes practicas para optimizar las bases de datos en el gestor PostgreSQL, tenienco en cuente ei hardware, el software y ef lenguaje SQL, elementos que Internenen en cualquier solucion de bases de datos. Se obtuvo una gula con 10 ouenas pracicas € aplicar en lun proceso de optinizacion a bases de datos FosigreSQL, sien efectiva su empleo siempre y cuando sean aplicadas en funcién del tipo de base de datos, el uso que se /e daré y 2! entomnoen que se utilizars Palabras. buenas précticas para la opiimizacién de bases de datos, PostoreSQL, optimzacién cel hardware, opimzacion del software, optimzacion SOL ABSTRACT: Tho actual solstional databases have the chafonge of handio huge data volumes, with highs concurrency levels and with important speed requirements, characterstics thet, if aren't treated edequatey, generate problems that infuence the application quality and the offered service to the finals users. oeing necessary fo optimze databases to guarantee efficient response mas. The paper oropose is 10 define 2 set of best practices for ootimize PostgreSQL datatases, looking hardware, software and SOL language. elements in any database solution. It was get @ guide with 10 best practices to apply In & FosigreS@L datavases ‘optimization process, Deing effective If uses vinen will be applied regarding tne database lype, the database use ‘and de environment in wil be use it. ‘KeyWords: best practices for databases optimization, PostgieSQL, hardware optimization, sofware ‘optimization, SQL optimization apicaciones informdticas; aplicaciones ceda vez 1. INTRODUCCION més exigentes en el slmacenamiento de grandes \eode su surgimiento, en Ia década del60 del siglo ‘volimenes' do datos, con altos nvelas do XG fas. bases de dalos so han conseidade _cONcUTencia y con importa requarimientos de Ganvitiencose en base. indisrencatie da. Tas —_velcldae, como es el caso de Tumblr (con mas de “Vv Toler ntemacans! de Tesnoagins co Softare Lite y Césige Abers™ \Vazques, V: Betancourt, D., Dominguez, A | “OFTMZACIONDE BASES DE OAT 45.2 milones de biogs), de Facebook (con mas de 1.230 millones ge usvari9s), d2 YouTube (con mas de 45Tb de videos), de Gcogle (con 100 millones do biicquedss diatiac), de Amazon (con mas de 42Tb de datos y un crecimiento anual del 20%), etc. a Estas caracteristicas, comunes en la mayoria de las bases de daios actuales, implican que, de no ser debidamente implementadas. se materialican un grupo de problemas en entornos de produccion, entre los que destacan © Los cuelios de botella, al no poder dar respuesta al ndimero de __peticiones. concurrentes teniéndose que denegar solcitudes. © El enlentecimiento de las consultes, al involucrer grandes volimenes d= datos consumigndose mucho tempo en dar respuesta ¢ las solictudes realizadas. © El colapso de los senvidores, ocesionande Ie dotoncién dol corvicie y, por endo, do la aplicacién. Problemas que inciden, irremedablemente, en le calidad de Ia aplicacion y al servicio otrecido a los usuarios finales Los gestores de bases de datos actuales tienen, ppor tanto, el reto de aprovachar al maximo las Capacidades fisicas y de software de los servidores ara no degradar su rendimiento, aun cuando se Incremente exponencialmerte el yolumen de datos y la concurrenca a las bases de datos que ellos ‘manipulan, siendo imprescindivle optimizatias La optimizacion, segin la Real Academia de is Lengua Espaficla es buscar la mejor forma de realizar une actvidad [2], en matemsticas, estadisiices, ciencias empiricas, cienciss de le computacidn o ciencias de la administracion. 9s lz seleccién del mejor elemento de un conjunto de elementos disponibles (3) Teniendo en cuenta que una base de daios es un Conjunto de datos persistentes utlizado por las aplicaciones [4) y que un sistema de gaston de bases de datos es un software de propésito general que facilia el proceso de detin, consiruir y manpuar bases de datos para dwersas aplicaciones, garantizando integridad, accesiblidad seguridad, indopondencia y concurrencia [5], la optimizacién de bases de datos tiene come finalidad que el gestor ofrezca tiempos de respuesta efcientes en la realizacion ce dichos procesos, La opiimzacin de bases de datos difere sensiblements en cada gestor y depende de varios factores, siendo un proceso engorroso que, cuando se realza de manera reactva (al ientiicarse un problema en una vase de datos en produccion), PosTaneSCL: BUENAS PRACTCAS PARA SUREALACION™ tiene un impacto importante en la aplicacion, por lo que deb evaluarse puntuaimente cada accion 2 realizarse. La presente investigacin tiene el oropésite de, en ar2s de faciliar ©l proceso de opiimizacion de bases de datos, defirir un conjunto de buenas précticas que permitan la optmizacion de bases de datos PostgreSQL, con el fin de que ofrezcan tiempos de respuesta eficentes. 2. OPTIMIZACION DE BASES DE DATOS POSTGRESQL Estudios previos aseveran que ante un problema de rendimiento se debe chequear cada componente del sistema comenzando por la capa interior (naraware), como muestra le Mgura siguiente, que es una simpificacion de los componentes que interactian en un sistema mnfermatico [6] Resultando primordial que cada componente funcione eficientemente, pues al rendimiento to‘al del sistema denenderd del que tenga el rendimiento mas deficiente; de ahi que la montonzacion de cada componente deba realzarse periodicamente con el fin de poder identiicar posibles problemas y corregiries antes de que el Impacto, en el sistema, sea mayer. ae nein Kae ee — Gr ~ Figura Is Componentes de un sistema informético fc) 24.PROBLEMAS DE RENDIMIENTO TiPicos Cuando hay problemas de rendimiento se cumplen las reglas siguientes: (6) © Elsistema tiene el rendimiento del peor de sus ‘componentes © La mayoria de los problemas da rendimiento ‘no suelen esiar en la base de datos. © Menos del 10% de los problemas son causantes de una reducci6n del rencimiento de aproximadamente 21 90% © Normaimente solo es posible identficar el problema de rendimiento que més esté Impactanco en el momento. “Vv Tater nteracanal de Tesnoagias do Sofare Lite y sige Abert” \Vazques, : Betancout,D., Dominguez, A. |“OFTIZACIONDE BASES DE GATOS POSTRESQL: BUENAS FRACTICAS FARA SUREALIZACION™ © Diterentes tipos de aplicaciones tienen diferentes problemas caracteristicos y mogos de arregiarios, En una base ce datos, los problemas de rendimiento mas comunes son los mostrados en le tabla siguiente; elementos que deben reviserse ara ir decantando opciones en el proceso de identificacion de! o los problemas existentes Tabla |: Problemas de rendimiento tigicos Problena Causas comunes Subsistemade B/S las _| - Frotlemas con el (CPUs estan subutizedas | hardvare/sofare habiendo memoria ‘encargaco del ispenibie; suclen darse | subsistema de E/S 0 su ensistemas OLTP y | confiquracién| OLAP, bases ce datos | _nlemoriaineutciente muy grandes o con un ratio de escitura muy ato) Domasindce dates demandados per le apicacion - Disefio no éptmo, fata de indices o patticonado de datos CPU (seuss e1 80% 0 sés del CPU, nay ~ Demasiaazs consultas y {dates demandados per la tremara pone yet | Spieacin Mibsstemaes noes | “recncente Ssturadesvelen garee | eo ce ensistemas ied | Conesionos OLD, bases do dos | CONEHONES ‘con gran cantidad de consultas de lectura o | M™plementacas céleuios compljos) - Disefio no éptmo, fata de indices Biogueds (nilabase de | - Ejecuciones ae lage datos nila splicacén | duracéndo estan trabajando al transecciones © ‘maximo, hay muchas | funciones, con mala Consultas con grandes | gestion Periodosdeespersy | - Cyrsores mantenidas a_lccks mostranéo | quane mucho llempe Consultas Blogueadas. | - eloquecs pesmistas en ‘vez de optimistas ¢ OLTP y OLAP o trabsjos Que uses bouuess bleausos detrifes por Pesimistae ofunciones) | IOS Usuarios ~ Configuracién de biferes en postgresql contcon valores bajoe Aplcacién (gbase de | - Insufcientes servdores Gatos no esta tabajando | de aplicaciones ‘maximo, peto eso d= | pemasiadce lamemariaylola CPU en | yatesiconeutas elsemidor de epicacion | Semanasdos per le etn al maximo) plicacion = Nala configuracién del ‘caché/agupamienio ce Problems con loo ‘confoladores de bases oe ales Las bases oe datos mas comunes

También podría gustarte