Postgres vs Mongo / Олег Бартунов (Postgres Professional)


РИТ 2017, Backend Conf

Тезисы:
backendconf.ru/2017/abstracts/2781.html

Я хочу немного порушить стереотипы, что Postgres — это чисто реляционная СУБД из прошлого века, плохо приспособленная под реалии современных проектов. Недавно мы прогнали YCSB для последних версий Postgres и Mongodb и увидели их плюсы и минусы на разных типах нагрузки, о которых я буду рассказывать.

Вторая нормальная форма. Правила нормализации БД


Второе видео из серии о нормализации отношений баз данных. На примере понятно и доступно рассказывается о том, как спроектировать таблицу базы данных, чтобы она соответствовала условиям второй нормальной форме.

I НФ (первая нормальная форма): youtu.be/nsXV4PGMmrk
III НФ (третья нормальная форма): youtu.be/iJV8O4Vh7Vw
Первая, вторая, третья нормальные формы на практике: youtu.be/nW6k5ojUAAU

Нормальная форма Бойса-Кодда (BCNF): youtu.be/4Q1rXfVUaY8
Четвертая нормальная форма, правила нормализации отношений: youtu.be/xSPd6atE40o

Присоединяйтесь к нам!
Наша группа в контакте: vk.com/excellentprogrammer

Желаю вам успехов обучении!

Денис Колесников. Кровь, пот, микрофронтенды и монолит


Очевидно, что обновлять технологический стек в проекте с долгой историей — это как перебирать двигатель самолета на лету. Подобная ситуация и у нас в Авито. В докладе я расскажу как итеративно, поступательно мы меняем фронтенд в Авито, внедрили серверный рендеринг, менеджмент зависимостей микрофронтендов, а так же какие грабли встретили и какие выводы из всего этого сделали.

Этот доклад для разработчиков middle и senior уровня, работающих с большой централизованной кодовой базой (и желающих эту кодовую базу распилить).

Григорий Петров. Общение микросервисов: REST, JSON, GraphQL или gRPC?


Большинство backend программ начинает свое сетевое общение с REST. По мере развития разработчику приходится отвечать на мелкие, но важные вопросы: как передавать дату и время, большие объемы данных, обеспечивать авторизацию и так далее.

Сетевые коммуникации в современном бэкенде — это множество конкурирующих протоколов, стандартов и подходов. У нас есть «REST», который каждый разработчик реализует по-своему, есть пересекающиеся JSON Schema и Open API, есть JSON API, GraphQL, gRPC, из-за угла выглядывает RAML.

В докладе Григорий рассказывает про современные подходы коммуникаций backend друг с другом и фронтендом, с какими сложностями мы боремся и что хорошего есть в нашем арсенале решений.

Никита Соболев. Инструменты и практики хорошего код-ревью (с автоматикой!)


Чтобы делать хороший код-ревью мало просто смотреть на код и писать свое мнение о нем

Необходимо определиться с целью: зачем мы вообще ревьим код? Каждый вкладывает в процесс что-то свое: от обучения до дизайн-ревью
Нужно подготовить кучу всего: размер кода, размер задачи и ее постановку, описание проблемы и ее решения

Затем очистить код от примесей и ошибок, которые не должен проверять человек: от архитектурных до пропущенных пробелов

Проверить оформление и следование регламенту: конечно, автоматически

Правильно выбрать ревьюера: конечно, автоматически

Затем совершить сам акт общения и ревью: по делу, жестко, но без агрессии

Собрать обратную связь: ощущения и факты

И последний шаг: проревьюить ревью!

Тимофей Кулин. Анализ логов с помощью баз данных" на примере логов активности github.com


Краткий обзор принципов работы строковых и колоночных баз данных

Краткий обзор реализаций: postgres, postgres-ctore, clickhouse, memsql
Место, занимаемое логами

Сравнение скорости работы строчной и колоночных баз данных для задачи анализа логов.

Григорий Кошелев. Нельзя просто так взять и отправить все логи в Elastic


Рассмотрим особенности использования REST API Elastic:

Как повысить утилизацию ресурсов кластера Elastic, что и как влияет на производительность
Особенности хранения логов в Elastic

Детальный разбор высоконагруженного пайплайна с логами поможет лучше понять, как устроен кластер Elastic. А практические советы по индексации больших объёмов данных — не наступать на грабли.

Алексей Колесников. Нет сервера, нет проблем. Как мы делали DataScience на AWS Lambda


AWS Lambda от Amazon достаточно новая, но интересная и перспективная технология, впервые увидевшая свет чуть менее 5 лет назад. В своем докладе я расскажу как мы разрабатывали с нуля и докатили до прода в достаточно короткие сроки систему на базе AWS Lambda.

Основная задача системы — запуск ML моделей для генерации предсказаний по заданным гипотезам. Однако архитектура получилась достаточно гибкая и позволяет расширять набор моделей практически «на лету».
Я расскажу о некоторых особенностях работы с AWS Lambda, а также немного ближе познакомлю с облачными сервисами Amazon (SQS, SNS, EC2, S3, etc.)

Виктор Еремченко. Отказоустойчивый кластер PostgreSQL Patroni


Я расскажу, как мы комплексно подошли к проблеме отказоустойчивости PostgreSQL, какие варианты мы рассматривали и как остановились на Patroni.

Доклад содержит этапы тестирования этого решения, как мы обеспечили быстрое внедрение на production и с какими проблемами мы столкнулись и как их решали.

Алексей Плетнев. Инструменты для управления рисками при использовании open source в своих проектах


В современном мире разработки ПО сложно представить проект, в состав которого не входили бы компоненты с открытым исходным кодом или open source.

К сожалению, используя их, разработчики мало задумываются о том, что вместе с полезным функционалом они привносят в свой проект все риски и уязвимости, которыми наделены эти компоненты.

Между тем, существует класс инструментов, позволяющих осуществлять управление рисками при использовании компонентов с открытым исходным кодом. С этими инструментами Алексей и хотел бы познакомить слушателей