Добре дошли в сайта на PostgreSQL  България.

Тук може да намерите полезна информация относно любимата СУБД и разбира се да споделите своя опит.

PGCONF 2019 ДЕН 2 ЧАСТ 1

Ден Втори започна рано сутринта с чаша кафе и позитивно настроение. Програмата започна още в 8 сутринта след закуска. Бързо се отправихме с колегите от хотела, в който бяхме настанени, към мястото на конференцията. Всички бяхме изпълнени с любопитство с какво ще ни изненадат този ден на конференцията.

Първата лекция започна в 9:30 и тя беше Postgres Partitioning: How Far We've Come. А лекторът беше Amit Langote. Той е разработчик на софтуер в NTT Open Source Software Center, където прекарва по-голямата си част от времето за хакване на PostgreSQL и комуникация с други програмисти, които участват в разработването на софтуера. Той е допринесъл за основните функции в последните издания на PostgreSQL като разделяне на таблици [1]. В своята лекция той говори за прилагане дялове на таблици в базите данни. Това не било много лесно, докато не се появил Postgres 10. Postgres 10 направи първите стъпки в специализирания синтаксис за внедряване разделянето на таблици и автоматизирането на различни важни задачи като tuple routing, partitioning constraints и други. За сметка на това пък Postgres 11 фиксира много от досадните ограничения като разделяне в Postgres 10, предлагайки разделени индекси, ограничени форми на уникални и чужди ключови ограничения, актуализиране на движението на редовете и по-бързо подрязване на дялове.  Интересното при тази лекция беше как той проследи напредъкът на този софтуер от версия 10 до сегашната версия 12, при която хората вече ще могат да използват до няколко хиляди дяла за общи случаи. Наред с различни подобрения на производителността, ще има и нови функции, които ще запълнят още повече проблемните функции. Самата лекция е advanced, но доста разбираема. Тя може да бъде открита на следния линк: https://www.postgresql.eu/events/pgconfeu2019/sessions/session/2685/slides/225/pgconf-eu-2019.pdf .

От развитието на PostgreSQL преминахме към Business Intelligence with Window Functions in PostgreSQL 11, която се проведе благодарение на Gianni Ciolli. Той работи в 2ndQuadrant като глобален ръководител на професионални услуги и като консултант на PostgreSQL и PostGIS. Преди това е работил в университета във Флоренция като изследовател по математика, използвайки безплатен софтуер от 1997 г. Бил е и член на борда на италианската PostgreSQL потребителска група (ITPUG). Помогнал е за организирането на първия Европейски PGDay в Прато, Италия (2008) и много издания на италианския PGDay. Той е и автор на последните четири издания на готварската книга за администрация PostgreSQL [2]. За мен лично беше доста впечатляващ лектор предвид големия му ентусиазъм, с който говореше. Определно успя да улови интереса ми да го слушам. В своята лекция той проследи какво могат да направят потребителите с Window Functions в днешно време и показа всяка конкретна функция с пример. Window Functions е много полезен инструмент. Използват се за различни случаи, при които простото агрегиране не е достатъчно гъвкаво: увеличаващи се суми, движещи се средни стойности и т.н. PostgreSQL 11 поддържа пълния стандарт SQL: 2011, с възможности като редове/диапазони, режим ГРУПИ и изключвания. За съжаление неговата лекция не е качена на сайта на конференцията и няма как да я споделя, но сайта на PostgreSQL има доста добър tutorial, който би могъл да е доста полезен за някои хора. Ето го и линка: https://www.postgresql.org/docs/9.1/tutorial-window.html.

След кратка кафе пауза и малко сладки изкушения се върнах за следващата лекция, а именно When It All Goes Wrong. Беше презентирана от Will Leinweber. Will е главен инженер в Citus Data и е част от екипа на бази данни в Citus Cloud, където се фокусира върху сигурността и мащабирането на Postgres. Преди Citus той е бил главен член на основния екип Heroku Postgres. Завършил е магистратура биоинженерството в Университета на Илинойс. Ето го и неговия личен сайт: www.bitfission.com [3]. Но какво всъщност разбрахме: Представете си, че се събуждате посред нощ от телефона си. Приложението ви е изключено и вие сте на повикване и трябва да го поправите. Евентуално го проследявате до „нещо с db“, но какво точно не е наред – не е ясно. Разбирате в последствие, че нищо не се е променило от скоро. Какво всъщност се опитваме да разберем: Да знаеш какво да поправиш и дори къде да започнеш да търсиш, е умение, което отнема много време. Postgres работи много усилено месеци наред върху различни подобрения. Понякога, когато това не се проследява, става проблем, когато се опитваме да решим даден казус, свързан с някоя новост. В лекцията той сподели не само по-често срещаните случаи на проблем и какво решение да се намери, но и общ подход за ефикасно изясняване на грешките. Тук може да бъде намерена неговата лекция: https://www.postgresql.eu/events/pgconfeu2019/sessions/session/2696/slides/234/2019-10-17%20when%20postgres%20goes%20wrong%20pgconfeu.pdf.

 

Следва продължение...

 

Източници:

[1] https://www.postgresql.eu/events/pgconfeu2019/schedule/speaker/654-amit-langote/

[2] https://www.postgresql.eu/events/pgconfeu2019/schedule/speaker/34-gianni-ciolli/

[3] https://www.postgresql.eu/events/pgconfeu2019/schedule/speaker/87-will-leinweber/

Публикувай коментар