💬 НЕ УПУСТИТЕ ВОЗМОЖНОСТЬ ПОЛУЧИТЬ ДОСТУП В ИНТЕРЕСНЫЕ КАНАЛЫ:
🤩 Инвестиции в недвижимость S&P development - Инвестиции коммерческую в недвижимость 30% годовых. Создания ГАБ с пятерочкой. Записки девелопера.
📲 мы в MAX
🤩 "КДО" КВАРТИРЫ ДОМА ОФИСЫ — ваш гид в мире недвижимости!
🔵 Новости, законы, полезные советы, видеообзоры, как выгодно купить квартиры, дома, офисы.
Подписывайтесь на канал с полезным контентом
📲 Мы в MAX
🤩 Канал адвоката Артёма Сидорова. Юридические советы. Дела в арбитражных и других судах. Споры, связанные с недвижимостью. Долевое строительство. Признание права собственности на самовольные постройки. Защита прав владельцев апартаментов. Оспаривание сделок. Споры, связанные со строительным подрядом. Банкротство застройщиков. Защита от субсидиарной ответственности. Бесплатные краткие консультации подписчикам.
🤩 Премьер Недвижимость —
Расскажем честно о недвижимости Москвы и МО: как правильно выбрать недвижимость для инвестиций, как купить квартиру без первоначального взноса.
Подписывайтесь и получайте на нашем канале подборки выгодных предложений, которых нет в открытом
📲 Мы в MAX
🤩 Сергей Дятлов. Primetr - Новости, ошибки, кейсы, лайфхаки инвестиций в коммерческую недвижимость: аренда, продажи, управление, налоги, ЖКХ.
Авторский блог миссионера пассивного дохода в коммерческой недвижимости.
📲 Мы в MAX
В ПАПКЕ ЕЩЕ БОЛЬШЕ ПРОФЕССИОНАЛЬНЫХ КАНАЛОВ:
🖥 Забрать папку
Организаторы:🤩 Green.Papka
🔖 Про вещи, которые помогают в жизни и работе: идеи, кейсы, опыт и мысли, которые откликаются и
остаются.🔖 Лучшие эксперты в своей сфере, только суть, без всякой воды.🔖 В каналах самые актуальные новости и инсайды, не упускайте возможность получить доступ к эксклюзивной информации🔖 Экспертная оценка, мнение профессионалов и прогнозы на будущее, читайте в папке
Подписывайтесь на канал с полезным контентом
Расскажем честно о недвижимости Москвы и МО: как правильно выбрать недвижимость для инвестиций, как купить квартиру без первоначального взноса.
Подписывайтесь и получайте на нашем канале подборки выгодных предложений, которых нет в открытом
Авторский блог миссионера пассивного дохода в коммерческой недвижимости.
В ПАПКЕ ЕЩЕ БОЛЬШЕ ПРОФЕССИОНАЛЬНЫХ КАНАЛОВ:
📌
Эксперты по ИИ
📌
Специалисты с многолетним опытом делятся своими кейсами
📌
Уникальный шанс получить доступ к лучшим ИИ каналам
Организаторы:
Please open Telegram to view this post
VIEW IN TELEGRAM
🏗 Пост 1: OFFLINE-FIRST: КОГДА ИНТЕРНЕТ ПРОПАДАЕТ, А ПРИЛОЖЕНИЕ РАБОТАЕТ
Привет, коллеги! 👋 Представьте: курьер в отдалённом районе, связь ловится только у вышки. Он принимает заказ, но интернет обрывается. Приложение падает? Нет, если архитектура offline-first. Сегодня разберём реальный кейс и код. 🚀
📌 Кейс: «Доставка в глубинке»
Компания по доставке продуктов запустила приложение для курьеров в сёлах. Первая версия требовала постоянного соединения — при обрыве связи приложение вылетало, заказы терялись. Курьеры вернулись к блокнотам. 📝
Решение — offline-first:
Все данные (заказы, адреса) хранятся локально (SQLite).
Курьер работает с приложением даже без сети.
При появлении соединения изменения синхронизируются с сервером.
📌 Пример кода: локальное хранилище и синхронизация
Как это работает:
Курьер создаёт заказ — он сохраняется локально с флагом synced = false.
Фоновая задача при появлении сети вызывает sync().
Если сервер недоступен — заказ остаётся в очереди.
📌 Что должен сделать аналитик?
Зафиксировать требование: «Приложение должно работать без интернета не менее 8 часов, накапливать операции и синхронизировать их при восстановлении связи».
Указать сценарии конфликтов: например, один и тот же заказ меняли офлайн на двух устройствах — нужна стратегия разрешения (последнее изменение побеждает).
Определить объём локального хранилища: сколько заказов/фото может накопиться офлайн.
Результат: курьеры работают без сбоев, заказы не теряются, бизнес не терпит убытки. 💪
#ARCHITECTURE
Привет, коллеги! 👋 Представьте: курьер в отдалённом районе, связь ловится только у вышки. Он принимает заказ, но интернет обрывается. Приложение падает? Нет, если архитектура offline-first. Сегодня разберём реальный кейс и код. 🚀
📌 Кейс: «Доставка в глубинке»
Компания по доставке продуктов запустила приложение для курьеров в сёлах. Первая версия требовала постоянного соединения — при обрыве связи приложение вылетало, заказы терялись. Курьеры вернулись к блокнотам. 📝
Решение — offline-first:
Все данные (заказы, адреса) хранятся локально (SQLite).
Курьер работает с приложением даже без сети.
При появлении соединения изменения синхронизируются с сервером.
📌 Пример кода: локальное хранилище и синхронизация
// Room (Android) — локальное хранилище
@Entity(tableName = "orders")
data class Order(
@PrimaryKey val id: String,
val address: String,
val status: String,
val synced: Boolean = false
)
@Dao
interface OrderDao {
@Insert
suspend fun insert(order: Order)
@Query("SELECT * FROM orders WHERE synced = 0")
suspend fun getUnsyncedOrders(): List<Order>
@Update
suspend fun update(order: Order)
}
// Менеджер синхронизации
class SyncManager(private val dao: OrderDao, private val api: ApiService) {
suspend fun sync() {
val unsynced = dao.getUnsyncedOrders()
unsynced.forEach { order ->
try {
api.sendOrder(order)
dao.update(order.copy(synced = true))
} catch (e: Exception) {
// Оставляем synced = false для следующей попытки
}
}
}
}
Как это работает:
Курьер создаёт заказ — он сохраняется локально с флагом synced = false.
Фоновая задача при появлении сети вызывает sync().
Если сервер недоступен — заказ остаётся в очереди.
📌 Что должен сделать аналитик?
Зафиксировать требование: «Приложение должно работать без интернета не менее 8 часов, накапливать операции и синхронизировать их при восстановлении связи».
Указать сценарии конфликтов: например, один и тот же заказ меняли офлайн на двух устройствах — нужна стратегия разрешения (последнее изменение побеждает).
Определить объём локального хранилища: сколько заказов/фото может накопиться офлайн.
Результат: курьеры работают без сбоев, заказы не теряются, бизнес не терпит убытки. 💪
#ARCHITECTURE
❤1
Почему у одних ИТ‑проекты растут и приносят прибыль, а у других — бесконечные «созвоны о задачках»?
Разница почти всегда в системности — в умении выстраивать процессы, видеть взаимосвязи и считать не только сроки, но и логику бизнеса.
Мы собрали папку с экспертами и каналами, которые реально помогают расти в бизнес‑анализе, системном мышлении и управлении ИТ‑проектами. Это не теория, а люди, которых сами читаем, чтобы не терять темп и держать голову в фокусе.
Внутри — разборы подходов, кейсы, инструменты и даже свежие инсайты вроде ТОП‑5 рекламных площадок для привлечения клиентов в 2026‑м году.
📨 Для тех, кто работает в ИТ, управляет проектами или строит системный бизнес: сохранить подборку себе.
Разница почти всегда в системности — в умении выстраивать процессы, видеть взаимосвязи и считать не только сроки, но и логику бизнеса.
Мы собрали папку с экспертами и каналами, которые реально помогают расти в бизнес‑анализе, системном мышлении и управлении ИТ‑проектами. Это не теория, а люди, которых сами читаем, чтобы не терять темп и держать голову в фокусе.
Внутри — разборы подходов, кейсы, инструменты и даже свежие инсайты вроде ТОП‑5 рекламных площадок для привлечения клиентов в 2026‑м году.
📨 Для тех, кто работает в ИТ, управляет проектами или строит системный бизнес: сохранить подборку себе.
🏗 Пост: CIRCUIT BREAKER: КАК НЕ ДОВЕСТИ СИСТЕМУ ДО КОЛЛАПСА
Привет, коллеги! 👋 Знакомая ситуация: внешний API тормозит, запросы накапливаются, потоки приложения блокируются, и через 5 минут ложится вся система. Как этого избежать? Паттерн Circuit Breaker (предохранитель). Разберём реальный кейс и код. 🔌
📌 Кейс: «Платёжный шлюз завис»
Онлайн-кинотеатр принимал платежи через внешний шлюз. Однажды шлюз начал отвечать 30 секунд вместо 1. Запросы встали в очередь, потоки приложения исчерпались, и перестали работать даже страницы с расписанием. Сайт лёг полностью. 📉
Решение — Circuit Breaker:
Отслеживаем ошибки.
После 5 ошибок за 10 секунд «выбиваем пробку» — на 30 секунд все вызовы к шлюзу мгновенно возвращают fallback-ответ.
Через 30 секунд пробуем один реальный запрос. Если успех — восстанавливаем работу.
📌 Пример кода: реализация Circuit Breaker
📌 Что должен заложить аналитик в требования?
Порог ошибок: например, 5 ошибок за 10 секунд.
Время «отдыха» предохранителя: например, 30 секунд.
Fallback-стратегия: кэшированные данные, сообщение о временной недоступности, перевод в ручную обработку.
Логирование и метрики: количество срабатываний предохранителя, длительность открытого состояния.
Результат: при сбоях внешнего сервиса система остаётся живой, а пользователи получают понятный fallback вместо бесконечной загрузки. 🎯
#ARCHITECTURE
Привет, коллеги! 👋 Знакомая ситуация: внешний API тормозит, запросы накапливаются, потоки приложения блокируются, и через 5 минут ложится вся система. Как этого избежать? Паттерн Circuit Breaker (предохранитель). Разберём реальный кейс и код. 🔌
📌 Кейс: «Платёжный шлюз завис»
Онлайн-кинотеатр принимал платежи через внешний шлюз. Однажды шлюз начал отвечать 30 секунд вместо 1. Запросы встали в очередь, потоки приложения исчерпались, и перестали работать даже страницы с расписанием. Сайт лёг полностью. 📉
Решение — Circuit Breaker:
Отслеживаем ошибки.
После 5 ошибок за 10 секунд «выбиваем пробку» — на 30 секунд все вызовы к шлюзу мгновенно возвращают fallback-ответ.
Через 30 секунд пробуем один реальный запрос. Если успех — восстанавливаем работу.
📌 Пример кода: реализация Circuit Breaker
import time
from threading import Lock
class CircuitBreaker:
def __init__(self, failure_threshold=5, timeout=30):
self.failure_threshold = failure_threshold
self.timeout = timeout
self.failures = 0
self.last_failure_time = 0
self.state = "CLOSED" # CLOSED, OPEN, HALF_OPEN
self.lock = Lock()
def call(self, func, fallback):
with self.lock:
if self.state == "OPEN":
if time.time() - self.last_failure_time > self.timeout:
self.state = "HALF_OPEN"
else:
return fallback()
try:
result = func()
if self.state == "HALF_OPEN":
self.state = "CLOSED"
self.failures = 0
return result
except Exception:
with self.lock:
self.failures += 1
self.last_failure_time = time.time()
if self.failures >= self.failure_threshold:
self.state = "OPEN"
return fallback()
# Использование
cb = CircuitBreaker(failure_threshold=3, timeout=15)
def risky_payment():
# вызов внешнего API
response = requests.post("https://payment-gateway/pay", timeout=5)
response.raise_for_status()
return response.json()
def fallback_payment():
return {"status": "pending", "message": "Сервис временно недоступен, повторите позже"}
result = cb.call(risky_payment, fallback_payment)
📌 Что должен заложить аналитик в требования?
Порог ошибок: например, 5 ошибок за 10 секунд.
Время «отдыха» предохранителя: например, 30 секунд.
Fallback-стратегия: кэшированные данные, сообщение о временной недоступности, перевод в ручную обработку.
Логирование и метрики: количество срабатываний предохранителя, длительность открытого состояния.
Результат: при сбоях внешнего сервиса система остаётся живой, а пользователи получают понятный fallback вместо бесконечной загрузки. 🎯
#ARCHITECTURE
Media is too big
VIEW IN TELEGRAM
Когда создал заявку в рабочую тех поддержку (часть 2)
ПРОМТ, КОТОРЫЙ СОЗДАЁТ КРУТОЙ ОФФЕР В ЛЮБОЙ ИИ
⠀
А ещё …
⠀
- нормально сегментирует ЦА, а не пишет «женщины 30+»
- подскажет, как улучшить упаковку продукта
⠀
О том, какие каналы классического перформанс-маркетинга всё ещё хорошо работают в 2026 году, рассказали в свежем посте.
В одной ПАПКЕ с топовыми каналами по бизнесу, маркетингу и AI
⠀
▪️Юрист 2.0
▪️ Константин Сизов. Давайте об IT
▪️Как в IT повысить грейд, доход и удовлетворение от работы - Психолог с научным подходом Иван Ремизов
…. и ещё много полезных каналов, из которых вы получите
⠀
- нейросети, которые генерят контент за минуты, ведут переписки и приводят новых клиентов
- набор топовых инструментов для IT
- небанальные связки по привлечению трафика
⠀
Добавляйте ПАПКУ и забирайте
⠀
❗️через 3 дня удалю пост
⠀
ПОПАСТЬ В ПОДБОРКУ КАНАЛОВ
⠀
А ещё …
⠀
- нормально сегментирует ЦА, а не пишет «женщины 30+»
- подскажет, как улучшить упаковку продукта
⠀
О том, какие каналы классического перформанс-маркетинга всё ещё хорошо работают в 2026 году, рассказали в свежем посте.
В одной ПАПКЕ с топовыми каналами по бизнесу, маркетингу и AI
⠀
▪️Юрист 2.0
▪️ Константин Сизов. Давайте об IT
▪️Как в IT повысить грейд, доход и удовлетворение от работы - Психолог с научным подходом Иван Ремизов
…. и ещё много полезных каналов, из которых вы получите
⠀
- нейросети, которые генерят контент за минуты, ведут переписки и приводят новых клиентов
- набор топовых инструментов для IT
- небанальные связки по привлечению трафика
⠀
Добавляйте ПАПКУ и забирайте
⠀
❗️через 3 дня удалю пост
⠀
ПОПАСТЬ В ПОДБОРКУ КАНАЛОВ
🏗 Пост: CIRCUIT BREAKER: КАК НЕ ДОВЕСТИ СИСТЕМУ ДО КОЛЛАПСА
Привет, коллеги! 👋 Знакомая ситуация: внешний API тормозит, запросы накапливаются, потоки приложения блокируются, и через 5 минут ложится вся система. Как этого избежать? Паттерн Circuit Breaker (предохранитель). Разберём реальный кейс и код. 🔌
📌 Кейс: «Платёжный шлюз завис»
Онлайн-кинотеатр принимал платежи через внешний шлюз. Однажды шлюз начал отвечать 30 секунд вместо 1. Запросы встали в очередь, потоки приложения исчерпались, и перестали работать даже страницы с расписанием. Сайт лёг полностью. 📉
Решение — Circuit Breaker:
Отслеживаем ошибки.
После 5 ошибок за 10 секунд «выбиваем пробку» — на 30 секунд все вызовы к шлюзу мгновенно возвращают fallback-ответ.
Через 30 секунд пробуем один реальный запрос. Если успех — восстанавливаем работу.
📌 Пример кода: реализация Circuit Breaker
📌 Что должен заложить аналитик в требования?
Порог ошибок: например, 5 ошибок за 10 секунд.
Время «отдыха» предохранителя: например, 30 секунд.
Fallback-стратегия: кэшированные данные, сообщение о временной недоступности, перевод в ручную обработку.
Логирование и метрики: количество срабатываний предохранителя, длительность открытого состояния.
Результат: при сбоях внешнего сервиса система остаётся живой, а пользователи получают понятный fallback вместо бесконечной загрузки. 🎯
#ARCHITECTURE
Привет, коллеги! 👋 Знакомая ситуация: внешний API тормозит, запросы накапливаются, потоки приложения блокируются, и через 5 минут ложится вся система. Как этого избежать? Паттерн Circuit Breaker (предохранитель). Разберём реальный кейс и код. 🔌
📌 Кейс: «Платёжный шлюз завис»
Онлайн-кинотеатр принимал платежи через внешний шлюз. Однажды шлюз начал отвечать 30 секунд вместо 1. Запросы встали в очередь, потоки приложения исчерпались, и перестали работать даже страницы с расписанием. Сайт лёг полностью. 📉
Решение — Circuit Breaker:
Отслеживаем ошибки.
После 5 ошибок за 10 секунд «выбиваем пробку» — на 30 секунд все вызовы к шлюзу мгновенно возвращают fallback-ответ.
Через 30 секунд пробуем один реальный запрос. Если успех — восстанавливаем работу.
📌 Пример кода: реализация Circuit Breaker
import time
from threading import Lock
class CircuitBreaker:
def __init__(self, failure_threshold=5, timeout=30):
self.failure_threshold = failure_threshold
self.timeout = timeout
self.failures = 0
self.last_failure_time = 0
self.state = "CLOSED" # CLOSED, OPEN, HALF_OPEN
self.lock = Lock()
def call(self, func, fallback):
with self.lock:
if self.state == "OPEN":
if time.time() - self.last_failure_time > self.timeout:
self.state = "HALF_OPEN"
else:
return fallback()
try:
result = func()
if self.state == "HALF_OPEN":
self.state = "CLOSED"
self.failures = 0
return result
except Exception:
with self.lock:
self.failures += 1
self.last_failure_time = time.time()
if self.failures >= self.failure_threshold:
self.state = "OPEN"
return fallback()
# Использование
cb = CircuitBreaker(failure_threshold=3, timeout=15)
def risky_payment():
# вызов внешнего API
response = requests.post("https://payment-gateway/pay", timeout=5)
response.raise_for_status()
return response.json()
def fallback_payment():
return {"status": "pending", "message": "Сервис временно недоступен, повторите позже"}
result = cb.call(risky_payment, fallback_payment)
📌 Что должен заложить аналитик в требования?
Порог ошибок: например, 5 ошибок за 10 секунд.
Время «отдыха» предохранителя: например, 30 секунд.
Fallback-стратегия: кэшированные данные, сообщение о временной недоступности, перевод в ручную обработку.
Логирование и метрики: количество срабатываний предохранителя, длительность открытого состояния.
Результат: при сбоях внешнего сервиса система остаётся живой, а пользователи получают понятный fallback вместо бесконечной загрузки. 🎯
#ARCHITECTURE
📈 Маркетологи, которые делают результат, а не «красивые отчёты»
Сохрани папку, пока она открыта.
Здесь не про теорию.
Здесь — про реальные кейсы, цифры и рост.
📌 Как привлекать клиентов, а не просто «лить трафик»
📌 Что нужно, чтобы Telegram приносил реальные продажи
📌 Мощный курс по личному бренду
📌 Инструменты, которые экономят бюджет и время
Никакой магии — только стратегии, которые дают результат.
Если ты маркетолог, предприниматель или просто хочешь понимать, как продают в 2026 — тебе сюда.
Добавляй папку, чтобы не потерять👇
https://t.me/addlist/KJwPBSB44eg5NTli
Сохрани папку, пока она открыта.
Здесь не про теорию.
Здесь — про реальные кейсы, цифры и рост.
📌 Как привлекать клиентов, а не просто «лить трафик»
📌 Что нужно, чтобы Telegram приносил реальные продажи
📌 Мощный курс по личному бренду
📌 Инструменты, которые экономят бюджет и время
Никакой магии — только стратегии, которые дают результат.
Если ты маркетолог, предприниматель или просто хочешь понимать, как продают в 2026 — тебе сюда.
Добавляй папку, чтобы не потерять👇
https://t.me/addlist/KJwPBSB44eg5NTli
БОЛЬШИНСТВО AI & IT КАНАЛОВ, НА КОТОРЫЕ ТЫ ПОДПИСАН — МАЛО ПОЛЕЗНЫ …
Одни пересказывают новости — другие копируют посты друг у друга. Ты читаешь десятки каналов, но новых идей почти нет.
Сегодня главная ценность - не количество информации, а сильные и качественные источники. Люди, которые действительно работают с технологиями и делятся практикой, а не пересказами.
Эта ПОДБОРКА для тебя, где нет пересказчиков. Только те, кто реально работает с AI & IT сам - руками, а не перьями. Внутри авторы, которые разбирают новые AI-инструменты, технологии и продукты, стартапы, вайб-кодинг и реальные ИИ кейсы. Это экономит время - не нужно искать хорошие каналы по одному.
Делимся знаниями и аудиторией - растём вместе ⚡️ Забирай бесплатно ПАПКУ с Каналами от лучших авторов.
Твой доступ к подборке и бонусам:
⬆️ Просто добавь ПАПКУ - никаких смс или регистраций. Отписаться можно в любой момент. Остаться — тоже ✔️ * Ссылка - https://t.me/addlist/6jvq2ugAARVhNjc0
Одни пересказывают новости — другие копируют посты друг у друга. Ты читаешь десятки каналов, но новых идей почти нет.
Сегодня главная ценность - не количество информации, а сильные и качественные источники. Люди, которые действительно работают с технологиями и делятся практикой, а не пересказами.
Эта ПОДБОРКА для тебя, где нет пересказчиков. Только те, кто реально работает с AI & IT сам - руками, а не перьями. Внутри авторы, которые разбирают новые AI-инструменты, технологии и продукты, стартапы, вайб-кодинг и реальные ИИ кейсы. Это экономит время - не нужно искать хорошие каналы по одному.
Делимся знаниями и аудиторией - растём вместе ⚡️ Забирай бесплатно ПАПКУ с Каналами от лучших авторов.
Твой доступ к подборке и бонусам:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🗄 Пост 1: ПОЧЕМУ SELECT * МЕДЛЕННЫЙ? ИНДЕКСЫ СПАСАЮТ
Привет, коллеги! 👋 Знакомая ситуация: есть индекс на (user_id, created_at), а запрос «последние 10 действий пользователя» тормозит. Почему? Потому что индекс не покрывающий. Сегодня разберём реальный кейс и покажем, как код помогает аналитику требовать правильные индексы. 🚀
📌 Кейс: «Логи действий грузятся 5 секунд»
В системе мониторинга таблица user_actions выросла до 100 млн записей. Запрос на последние 10 действий конкретного пользователя выполнялся 5 секунд, хотя индекс (user_id, action_time) был.
Проблема: в индексе есть только user_id и action_time, а запрос — SELECT *. СУБД сначала находит в индексе 10 записей, потом для каждой делает случайное чтение (lookup) из основной таблицы, чтобы достать остальные поля (action_type, details). Если эти 10 строк разбросаны по всему диску — получаем 10 медленных I/O.
📌 Пример кода: покрывающий индекс
Было (медленно):
Стало (быстро):
Теперь СУБД может ответить на запрос, читая только индекс, не прикасаясь к основной таблице. Время падает с 5 секунд до 5 мс.
📌 Что должен сделать аналитик?
Определить самые частые запросы и поля, которые в них участвуют (не только в WHERE, но и в SELECT).
Заложить в требования создание покрывающих индексов для критических сценариев.
Следить, чтобы SELECT * использовался только в исследовательских целях, а в прод-коде перечислялись конкретные поля.
Проверять планы выполнения через EXPLAIN (должно быть Index Only Scan).
Результат: приложение летает, пользователи не жалуются, нагрузка на базу снижается.💪
#DBMS
Привет, коллеги! 👋 Знакомая ситуация: есть индекс на (user_id, created_at), а запрос «последние 10 действий пользователя» тормозит. Почему? Потому что индекс не покрывающий. Сегодня разберём реальный кейс и покажем, как код помогает аналитику требовать правильные индексы. 🚀
📌 Кейс: «Логи действий грузятся 5 секунд»
В системе мониторинга таблица user_actions выросла до 100 млн записей. Запрос на последние 10 действий конкретного пользователя выполнялся 5 секунд, хотя индекс (user_id, action_time) был.
Проблема: в индексе есть только user_id и action_time, а запрос — SELECT *. СУБД сначала находит в индексе 10 записей, потом для каждой делает случайное чтение (lookup) из основной таблицы, чтобы достать остальные поля (action_type, details). Если эти 10 строк разбросаны по всему диску — получаем 10 медленных I/O.
📌 Пример кода: покрывающий индекс
Было (медленно):
CREATE INDEX idx_user_time ON user_actions(user_id, action_time);
-- SELECT * FROM user_actions WHERE user_id = 123 ORDER BY action_time DESC LIMIT 10;
Стало (быстро):
-- Включаем в индекс все часто запрашиваемые поля
CREATE INDEX idx_user_time_covering ON user_actions(user_id, action_time, action_type, details);
Теперь СУБД может ответить на запрос, читая только индекс, не прикасаясь к основной таблице. Время падает с 5 секунд до 5 мс.
📌 Что должен сделать аналитик?
Определить самые частые запросы и поля, которые в них участвуют (не только в WHERE, но и в SELECT).
Заложить в требования создание покрывающих индексов для критических сценариев.
Следить, чтобы SELECT * использовался только в исследовательских целях, а в прод-коде перечислялись конкретные поля.
Проверять планы выполнения через EXPLAIN (должно быть Index Only Scan).
Результат: приложение летает, пользователи не жалуются, нагрузка на базу снижается.
#DBMS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
ИИ - УЖЕ НЕ «ПОТОМ». ОН ПРЯМО СЕЙЧАС ПЕРЕПИСЫВАЕТ ПРАВИЛА ...
Тексты, анализ, продажи, дизайн, экономия десятков часов в неделю — это не футурология. Это твой обычный вторник.
Вопрос давно не в том, заменит ли ИИ людей.
Вопрос в том, кто обгонит тебя, пока ты думаешь.
Хочешь быть среди первых, кто использует нейросети в полную силу?
ПОДБОРКА сильных экспертов по Нейросетям и ИИ — забирай, пока другие скролят новости:
Остаться или отписаться сможешь в любой момент ✔️ * Ссылка - https://t.me/addlist/6jvq2ugAARVhNjc0
Тексты, анализ, продажи, дизайн, экономия десятков часов в неделю — это не футурология. Это твой обычный вторник.
Вопрос давно не в том, заменит ли ИИ людей.
Вопрос в том, кто обгонит тебя, пока ты думаешь.
Хочешь быть среди первых, кто использует нейросети в полную силу?
ПОДБОРКА сильных экспертов по Нейросетям и ИИ — забирай, пока другие скролят новости:
Остаться или отписаться сможешь в любой момент ✔️ * Ссылка - https://t.me/addlist/6jvq2ugAARVhNjc0
👍2🔥1
Сейчас в IT ощущается переломная фаза: компании уже не просто «закрывают вакансию аналитика», а ищут людей, которые умеют говорить и на языке бизнеса, и на языке продукта, и на языке разработки, без лишней воды и формализма.
Собрали папку, в которую складываем именно то, что реально помогает вникнуть в бизнес‑анализ и IT‑среду, а не просто «заполнить ленту».
Тут: разборы задач, примеры документов, чек‑листы, ссылки на качественные каналы и инструменты, которые помогают разобраться в профессии и не тонуть в потоке.
Сохранить папку себе 📨
Это хороший знак: рынок перестаёт довольствоваться «человеком‑исполнителем» и всё больше ценит тех, кто понимает, зачем нужен каждый документ, схема и требование, и как всё это связано в одну систему.
Собрали папку, в которую складываем именно то, что реально помогает вникнуть в бизнес‑анализ и IT‑среду, а не просто «заполнить ленту».
Тут: разборы задач, примеры документов, чек‑листы, ссылки на качественные каналы и инструменты, которые помогают разобраться в профессии и не тонуть в потоке.
Сохранить папку себе 📨
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Как воспринимается конец рабочей недели
⏱️Папка скоро исчезнет. И это не кликбейт.
Если ты маркетолог и до сих пор откладываешь «посмотреть потом» — потом может не наступить.
Здесь не просто файлы.
Здесь то, что экономит часы работы, спасает от выгорания и даёт идеи, за которые обычно платят.
📌 Готовые решения, которые можно брать и внедрять;
📌 Формулировки, которые реально продают;
📌 Подходы, которые выделяют тебя среди остальных.
☝️Но есть нюанс.
Доступ к папке закрывается.
Без громких анонсов, без второго шанса и без «ещё пару дней подержим».
Если ты понимаешь, что тебе это нужно — забирай сейчас👇
https://t.me/addlist/KJwPBSB44eg5NTli
Потом останется только читать чужие результаты.
Если ты маркетолог и до сих пор откладываешь «посмотреть потом» — потом может не наступить.
Здесь не просто файлы.
Здесь то, что экономит часы работы, спасает от выгорания и даёт идеи, за которые обычно платят.
📌 Готовые решения, которые можно брать и внедрять;
📌 Формулировки, которые реально продают;
📌 Подходы, которые выделяют тебя среди остальных.
☝️Но есть нюанс.
Доступ к папке закрывается.
Без громких анонсов, без второго шанса и без «ещё пару дней подержим».
Если ты понимаешь, что тебе это нужно — забирай сейчас👇
https://t.me/addlist/KJwPBSB44eg5NTli
Потом останется только читать чужие результаты.
🗄 Пост: SQL ИЛИ NOSQL? КЕЙС КАТАЛОГА ТОВАРОВ
Привет, коллеги! 👋 Выбор между реляционной БД и документной — вечная боль. Сегодня разберём реальный кейс интернет-магазина, где SQL сначала победил, а потом проиграл. И покажем, как код помогает принять решение. 🧐
📌 Кейс: «Товары с разными свойствами»
Магазин электроники: у смартфонов — диагональ экрана, у ноутбуков — объём RAM, у пылесосов — мощность всасывания. В реляционной БД это вылилось в таблицу product_attributes с EAV-моделью (сущность-атрибут-значение):
При каждом показе товара — 10–20 джойнов. Каталог тормозил. Перешли на документную MongoDB:
Результат: выборка товара — один запрос без джойнов. Время ответа сократилось с 800 мс до 30 мс.
📌 Когда SQL, а когда NoSQL?
SQL (PostgreSQL, MySQL) — если:
Данные строго структурированы, связи сложные (многие-ко-многим).
Нужны транзакции ACID (финансы, заказы).
Требуются сложные отчёты с JOIN и агрегатами.
NoSQL (MongoDB, Cassandra) — если:
Схема данных гибкая (разные атрибуты у разных сущностей).
Нужна высокая горизонтальная масштабируемость.
Допустима конечная согласованность (eventual consistency).
📌 Что должен зафиксировать аналитик?
Профиль нагрузки: чтение или запись преобладает?
Структура данных: стабильная схема или часто меняется?
Требования к транзакциям: нужны ли ACID-гарантии?
Прогноз роста: объём данных через год, необходимость шардирования.
Вывод: Универсального ответа нет. Аналитик, понимающий сильные стороны разных типов БД, поможет команде выбрать инструмент под конкретную задачу. 🔧
#SQL
Привет, коллеги! 👋 Выбор между реляционной БД и документной — вечная боль. Сегодня разберём реальный кейс интернет-магазина, где SQL сначала победил, а потом проиграл. И покажем, как код помогает принять решение. 🧐
📌 Кейс: «Товары с разными свойствами»
Магазин электроники: у смартфонов — диагональ экрана, у ноутбуков — объём RAM, у пылесосов — мощность всасывания. В реляционной БД это вылилось в таблицу product_attributes с EAV-моделью (сущность-атрибут-значение):
CREATE TABLE product_attributes (
product_id INT,
attr_name VARCHAR(50),
attr_value VARCHAR(255)
);
При каждом показе товара — 10–20 джойнов. Каталог тормозил. Перешли на документную MongoDB:
// Документ товара
{
"_id": 123,
"name": "iPhone 15",
"price": 799,
"attributes": {
"screen": "6.1 inch",
"storage": "128 GB",
"camera": "48 MP"
}
}
Результат: выборка товара — один запрос без джойнов. Время ответа сократилось с 800 мс до 30 мс.
📌 Когда SQL, а когда NoSQL?
SQL (PostgreSQL, MySQL) — если:
Данные строго структурированы, связи сложные (многие-ко-многим).
Нужны транзакции ACID (финансы, заказы).
Требуются сложные отчёты с JOIN и агрегатами.
NoSQL (MongoDB, Cassandra) — если:
Схема данных гибкая (разные атрибуты у разных сущностей).
Нужна высокая горизонтальная масштабируемость.
Допустима конечная согласованность (eventual consistency).
📌 Что должен зафиксировать аналитик?
Профиль нагрузки: чтение или запись преобладает?
Структура данных: стабильная схема или часто меняется?
Требования к транзакциям: нужны ли ACID-гарантии?
Прогноз роста: объём данных через год, необходимость шардирования.
Вывод: Универсального ответа нет. Аналитик, понимающий сильные стороны разных типов БД, поможет команде выбрать инструмент под конкретную задачу. 🔧
#SQL
🗄 Пост: ПАРТИЦИОНИРОВАНИЕ: КАК НЕ УТОНУТЬ В ДАННЫХ
Привет, коллеги! 👋 Через год после запуска таблица events выросла до 500 млн записей. Удаление старых данных через DELETE занимало часы и блокировало таблицу. Как быть? Партиционирование. Разберём реальный кейс. 📊
📌 Кейс: «Система логов падает раз в месяц»
Система логирования хранила все события в одной таблице. Раз в месяц запускали DELETE FROM events WHERE created_at < NOW() - INTERVAL '30 days'. Этот запрос:
Выполнялся 4 часа
Блокировал запись новых событий
Фрагментировал индексы
Решение — партиционирование по дням (PostgreSQL):
-- Создаём партиции для каждого дня
CREATE TABLE events_2025_04_01 PARTITION OF events
FOR VALUES FROM ('2025-04-01') TO ('2025-04-02');
-- Автоматическое создание партиций через pg_partman
SELECT create_parent('public.events', 'event_time', 'daily', p_retention => '30 days');
Что дало партиционирование?
Удаление старых данных — мгновенное: DROP TABLE events_2025_03_01
Запросы по датам читают только нужные партиции (partition pruning)
VACUUM практически не нужен, фрагментация исчезла
📌 Пример кода: автоматическое удаление партиций
📌 Что должен зафиксировать аналитик?
Ключ партиционирования: чаще всего дата (для логов, событий).
Интервал: день, неделя, месяц — в зависимости от частоты запросов.
Политика хранения: сколько времени данные хранятся в горячей таблице, когда удаляются или архивируются.
Индексы: локальные индексы на партициях, а не глобальные.
Результат: система перестала «тормозить» при очистке данных, запросы ускорились. 🚀
#SQL
Привет, коллеги! 👋 Через год после запуска таблица events выросла до 500 млн записей. Удаление старых данных через DELETE занимало часы и блокировало таблицу. Как быть? Партиционирование. Разберём реальный кейс. 📊
📌 Кейс: «Система логов падает раз в месяц»
Система логирования хранила все события в одной таблице. Раз в месяц запускали DELETE FROM events WHERE created_at < NOW() - INTERVAL '30 days'. Этот запрос:
Выполнялся 4 часа
Блокировал запись новых событий
Фрагментировал индексы
Решение — партиционирование по дням (PostgreSQL):
-- Создаём партиционированную таблицу
CREATE TABLE events (
id SERIAL,
user_id INT,
event_time TIMESTAMP,
payload JSONB
) PARTITION BY RANGE (event_time);
-- Создаём партиции для каждого дня
CREATE TABLE events_2025_04_01 PARTITION OF events
FOR VALUES FROM ('2025-04-01') TO ('2025-04-02');
-- Автоматическое создание партиций через pg_partman
SELECT create_parent('public.events', 'event_time', 'daily', p_retention => '30 days');
Что дало партиционирование?
Удаление старых данных — мгновенное: DROP TABLE events_2025_03_01
Запросы по датам читают только нужные партиции (partition pruning)
VACUUM практически не нужен, фрагментация исчезла
📌 Пример кода: автоматическое удаление партиций
-- Удаление партиций старше 30 дней (процедура)
CREATE OR REPLACE FUNCTION drop_old_partitions()
RETURNS void AS $$
DECLARE
partition_name TEXT;
BEGIN
FOR partition_name IN
SELECT tablename FROM pg_tables
WHERE tablename LIKE 'events_%'
AND tablename < 'events_' || TO_CHAR(NOW() - INTERVAL '30 days', 'YYYY_MM_DD')
LOOP
EXECUTE 'DROP TABLE ' || partition_name;
END LOOP;
END;
$$ LANGUAGE plpgsql;
📌 Что должен зафиксировать аналитик?
Ключ партиционирования: чаще всего дата (для логов, событий).
Интервал: день, неделя, месяц — в зависимости от частоты запросов.
Политика хранения: сколько времени данные хранятся в горячей таблице, когда удаляются или архивируются.
Индексы: локальные индексы на партициях, а не глобальные.
Результат: система перестала «тормозить» при очистке данных, запросы ускорились. 🚀
#SQL
This media is not supported in your browser
VIEW IN TELEGRAM
Заработай за месяц от 50000₽ на входящих заявках
Ниже делюсь экспертами, которые помогают выстроить систему продаж. Вы получаете гарантированный результат без выгораний и стресса.
Добавляй папку экспертов к себе и начинай зарабатывать уже сегодня
Все методы работают 💯. Начни делать продажи и ты
Все уже готово за тебя. Просто бери и делай https://t.me/addlist/yWaHGpxI5ethOGYy
Добавляй себе всю папку https://t.me/addlist/yWaHGpxI5ethOGYy и
Записывайся в подборку🫶
Ниже делюсь экспертами, которые помогают выстроить систему продаж. Вы получаете гарантированный результат без выгораний и стресса.
Добавляй папку экспертов к себе и начинай зарабатывать уже сегодня
Все методы работают 💯. Начни делать продажи и ты
Все уже готово за тебя. Просто бери и делай https://t.me/addlist/yWaHGpxI5ethOGYy
Добавляй себе всю папку https://t.me/addlist/yWaHGpxI5ethOGYy и
Записывайся в подборку
Please open Telegram to view this post
VIEW IN TELEGRAM
Пока одни «присматриваются» к нейросетям— другие уже зарабатывают на этом 💵
И самое интересное — порог входа сейчас минимальный.
Не нужно быть программистом.
Нужно только одно:
понимать, как именно использовать ИИ под свои задачи.
Я тут собрал папку с экспертами в этой теме.
Можешь добавиться и посмотреть, как это делают другие 👇
https://t.me/addlist/A0vy8zWBM1gyNTky
Please open Telegram to view this post
VIEW IN TELEGRAM