Pull to refresh
6
0

User

Send message

Анатомия системы НСИ

Reading time46 min
Views14K
Данная статья основана на реальных событиях,
и все проблемы в ней не вымышленные. (С)


В начале хотелось бы отметить, что статья не призвана показать изобретение велосипеда, потому как многие приёмы уже давно существуют в культуре разработки баз данных. Однако обобщить, проанализировать проблемы, которые они могут решить и показать, как с ними можно работать. А проблем хватает несмотря на то, что нормативно-справочная информация (НСИ) не относится к бизнес-логике, а скорее находится в обслуживании у неё. Стандартный процесс по рисованию очередной таблички для хранения справочника очень скоро начинает обрастать костылями или трудоёмкими переделками.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments24

DBA: когда пасует VACUUM — чистим таблицу вручную

Reading time7 min
Views28K
VACUUM может «зачистить» из таблицы в PostgreSQL только то, что никто не может увидеть — то есть нет ни одного активного запроса, стартовавшего раньше, чем эти записи были изменены.

А если такой неприятный тип (продолжительная OLAP-нагрузка на OLTP-базе) все же есть? Как почистить активно меняющуюся таблицу в окружении длинных запросов и не наступить на грабли?


Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments20

Как выжить SQL-базе в 21 веке: облака, Kubernetes и PostgreSQL multimaster

Reading time8 min
Views7.4K
Привет, хабровчане. Сегодня стартуют занятия в первой группе курса «PostgreSQL». В связи с этим, хотим рассказать вам о том, как проходил открытый вебинар по данному курсу.




В очередном открытом уроке поговорили о том, с какими вызовами столкнулись SQL-базы в эру облаков и Kubernetes. А заодно рассмотрели, как базы данных SQL приспосабливаются и мутируют под воздействием этих вызовов.

Вебинар провёл Валерий Безруков, Google Cloud Practice Delivery Manager в EPAM Systems.
Читать дальше →
Total votes 10: ↑7 and ↓3+7
Comments6

Программист-фанатик. Конспект часть 1. Почему нужно быть худшим и не слушать советы родителей

Reading time4 min
Views48K
Дошли руки до книги Чеда Фаулера «Программист-фанатик».

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

Читать дальше →
Total votes 42: ↑41 and ↓1+54
Comments56

Шесть рецептов для начинающего тимлида: как всё успевать и развивать команду

Reading time14 min
Views54K


Привет! Меня зовут Дмитрий Ли, я тимлид одной из команд разработки бэкенда в Badoo.

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

Мне пришлось не раз и не два наступить на одни и те же грабли, прежде чем я разобрался, что мешает наладить и улучшить мою работу. Поэтому для выступления на Saint TeamLead Conf я решил собрать из своего нынешнего опыта советы, которых мне не хватало на старте моей карьеры управленца. Эти вещи сильно упростили бы мне жизнь, если бы я знал о них раньше. 

Рецепты, которыми я хочу поделиться, в большей степени пригодятся начинающим тимлидам: я записал их как своеобразное наставление себе самому несколько лет назад. Эта статья написана по мотивам моего доклада на TeamLeads Conf.
Total votes 68: ↑62 and ↓6+76
Comments16

PostgreSQL Antipatterns: вредные JOIN и OR

Reading time4 min
Views19K
Бойтесь операций, buffers приносящих…
На примере небольшого запроса рассмотрим некоторые универсальные подходы к оптимизации запросов на PostgreSQL. Пользоваться ими или нет — выбирать вам, но знать о них стоит.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments22

Сравнение производительности инструментов обхода блокировок\VPN

Reading time8 min
Views59K
По мере того, как нам все активнее закрывают доступ к различным ресурсам в сети, все актуальнее становится вопрос обхода блокировок, а значит все актуальнее становится вопрос «А как же быстрее обходить блокировки?».

Оставим тему эффективности, с точки зрения обхода DPI\вайтлистов\блеклистов для другого случая, и просто сравним производительность популярных инструментов обхода блокировок.

Внимание: В статье под спойлерами будет много картинок.
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments59

Service mesh для микросервисов. Часть III. Более глубокий взгляд на Istio

Reading time10 min
Views11K
Перевод статьи подготовлен специально для студентов курса «Инфраструктурная платформа на основе Kubernetes».




Это третья статья из серии публикаций, посвященных  Kubernetes и технологии service mesh (также известной как «сеть микросервисов» и «mesh-сеть микросервисов»). В предыдущей статье мы изучили основы работы с Istio и выяснили, как этот инструмент помогает настраивать и администрировать сложные облачные архитектуры. Так, с его помощью можно сконфигурировать mesh-сеть микросервисов и получить некоторые возможности централизации в распределенной микросервисной среде. Сегодня мы более подробно изучим функции Istio, чтобы по достоинству оценить преимущества технологии service mesh.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments0

Лучшая архитектура для MVP: монолит, SOA, микросервисы или бессерверная?.. Часть 2

Reading time6 min
Views27K
В ноябре OTUS запускает новую образовательную программу «Архитектор ПО», в связи с этим продолжаем серию публикаций для будущих студентов курса и читателей нашего блога.

Читать первую часть


Микросервисная архитектура


Микросервисы — это тип сервисно-ориентированной архитектуры программного обеспечения, ориентированный на создание ряда автономных компонентов, составляющих приложение. В отличие от монолитных приложений, созданных как единое целое, микросервисные приложения состоят из нескольких независимых компонентов, которые склеены вместе посредством API.


Структура микросервисов и монолитная архитектура в сравнении

Подход на основе микросервисов ориентирован главным образом на бизнес-приоритеты и возможности, тогда как монолитный подход организован вокруг технологических уровней, пользовательских интерфейсов и баз данных. Микросервисный подход стал тенденцией в последние годы, так как все больше и больше предприятий становятся гибкими и переходят на DevOps.
Читать дальше →
Total votes 10: ↑7 and ↓3+6
Comments16

Быт и нравы фантазёров

Reading time13 min
Views6.3K
В конце статьи есть краткое содержание.

В работе с изменениями, чего бы конкретно они не касались – будь то стратегия развития компании, системы мотивации, орг.структура или правила оформления кода – всегда есть одно ключевое звено: идеи. Идеи отвечают на вопрос «а чего, собственно, менять-то будем?».

Идеи бывают сильно разными по качеству. Есть сферические кони в вакууме, которые, даже будучи реализованными, не приносят никакой хоть сколько-нибудь объяснимой пользы, а есть рычаги, нажатие на которые занимает секунды, а результат виден через час.

Однако, сегодня не об идеях – поговорим об их авторах. О фантазёрах.

Я постарался изготовить некую классификацию, основанную на личном опыте. Не претендую на полноту раскрытия вопроса, ибо сам еще юн и зелен.
Читать дальше →
Total votes 35: ↑18 and ↓17+8
Comments9

56 проектов на Python с открытым исходным кодом

Reading time13 min
Views101K
image

1. Flask


Это микро-фреймворк, написанный на Python. Он не имеет валидаций для форм и уровня абстракции базы данных, но позволяет вам использовать сторонние библиотеки для общих функций. И именно поэтому это микро-фреймворк. Flask предназначен для простого и быстрого создания приложений, а также является масштабируемым и легким. Он основан на проектах Werkzeug и Jinja2. Вы можете узнать больше о нем в последней статье DataFlair о Python Flask.

2. Keras


Keras — нейросетевая библиотека с открытым исходным кодом, написанная на Python. Она удобна для пользователя, модульная и расширяемая, а так же может работать поверх TensorFlow, Theano, PlaidML или Microsoft Cognitive Toolkit (CNTK). В Keras есть все: шаблоны, целевые и передаточные функции, оптимизаторы и многое другое. Он также поддерживает сверточные и рекуррентные нейронные сети.

Работа над последним проектом с открытым исходным кодом на основе Keras — Классификация рака молочной железы.
Читать дальше →
Total votes 37: ↑30 and ↓7+23
Comments21

Как сделать ваш HTML отзывчивым, добавив одну строку кода на CSS

Reading time4 min
Views64K
Привет, Хабр! представляю вашему вниманию перевод статьи «How to make your HTML responsive by adding a single line of CSS» автора Per Harald Borgen.



В этой статье я научу вас, как использовать CSS Grid для создания крутой сетки изображений, которая изменяет количество столбцов в зависимости от ширины экрана или окна браузера.

Самое крутое, что для добавления отзывчивости потребуется написать одну строчку кода на CSS
Читать дальше →
Total votes 79: ↑69 and ↓10+59
Comments38

10 способов защиты интеллектуальной собственности IT-стартапа

Reading time18 min
Views14K
image

Проблема защиты интеллектуальной собственности (далее — ИС) часто является одной из наиболее важных, с которой сталкивается любой технологический стартап. Это тесно связано с процессом разработки продукта, наймом квалифицированных сотрудников, привлечением капитала и многими другими вопросами развития проекта.

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

Однако, интеллектуальная собственность часто является наиболее ценным активом IT-стартапа. Поэтому защита интеллектуальной собственности имеет большое значение для получения венчурного финансирования или предотвращения несправедливой конкуренции, во время которой ваши решения будут просто копироваться.

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

Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments5

Основные виды поисковых запросов, которые используют пользователи интернет-магазинов, готов ли ваш сайт к ним? (Часть 1)

Reading time3 min
Views11K
В одной из статей мы уже рассматривали, каким должен быть поиск, но тогда мы касались этого вопроса с точки зрения дизайна и UX. В статье ниже мы рассмотрим основные типы запросов, которые используют пользователи.

Анализ текущей ситуации в большинстве интернет-магазинов показал, что, несмотря на очевидность важности тонкой настройки такого эффективного инструмента, как поле поиска, большинство сайтов не уделяют этому должного внимания. Чаще всего используются стандартные настройки, настроенные на неточное совпадение. Такой подход значительно сужает функционал сайта и становится ощутимым препятствием на пути превращения пользователя в покупателя.

Учитывая объем информации, было принято решение о разбивке статьи на несколько частей.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments4

Еще пара слов о потоковой репликации в postgres…

Reading time3 min
Views26K


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

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

А вот с вопросом восстановления мастера оказалась беда, поэтому делюсь с Вами собранным по кусочкам с просторов интернета руководством к действию, опробованным и протестеным мною на связках серверов Debian GNU/Linux и FreeBSD 8.2 с PostgreSQL 9.1

Инструкция
Total votes 18: ↑18 and ↓0+18
Comments26

Отказоустойчивый кластер Master-Slave на PostgreSQL

Reading time9 min
Views124K
Приветствую, хаброжители!
В этой статье я хочу поделиться опытом развертывания кластера Master-slave на СУБД PostgreSQL. Отказоустойчивость достигается с помощью возможностей pgpool-II (failover, online recovery).
pgpool — это прекрасное средство для масштабирования и распределения нагрузки между серверами и, думаю, немногие знают о возможностях автоматического создания failover на ведомом сервере при отказе ведущего и как добавить новые мощности в уже работающий кластер без отключения всего кластера.
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments18

Information

Rating
Does not participate
Location
Россия
Registered
Activity