<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Все статьи подряд / SQL / Хабр]]></title>
    <link>https://habr.com/ru/hubs/sql/articles/</link>
    <description><![CDATA[SQL – формальный непроцедурный язык программирования]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Wed, 06 May 2026 01:26:33 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      
        
    
    <item>
      <title><![CDATA[Использование Trino для построения ETL‑процессов]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/neoflex/articles/1031326/</guid>
      <link>https://habr.com/ru/companies/neoflex/articles/1031326/?utm_campaign=1031326&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/dc7/a50/71c/dc7a5071cb5ef601c9bbd88b67960e1b.jpg" /><p><strong>1. Введение. Trino: ключевые задачи и главные преимущества</strong></p><p>В&nbsp;современной архитектуре управления данными ETL‑процессы рассматриваются не&nbsp;как&nbsp;вспомогательный инструмент, а&nbsp;как&nbsp;базовый механизм интеграции, трансформации и подготовки данных, поступающих из&nbsp;множества гетерогенных источников. Ключевая цель этих процессов&nbsp;— избавиться от&nbsp;хаоса и разрозненности данных, которые почти всегда появляются в&nbsp;больших распределенных компаниях <a href="https://habr.com/ru/articles/248231/">[1]</a>.</p><p>В&nbsp;рамках ETL‑конвейера выполняется автоматизированное извлечение данных из&nbsp;различных источников, их очистка, нормализация и приведение к&nbsp;единой модели, после чего подготовленные данные загружаются в&nbsp;централизованное аналитическое хранилище. Это даёт три главных преимущества: обеспечивает высокое качество и согласованность данных, структурирует информацию под&nbsp;нужды бизнес‑отчетности, а&nbsp;также отделяет аналитическую нагрузку от&nbsp;операционных систем, повышая таким образом производительность системы в&nbsp;целом. </p><p>ETL возник как&nbsp;вынужденная мера, так как&nbsp;во&nbsp;время его появления (1970–1990-е) не&nbsp;было ни высокоскоростных сетей, ни мощных распределенных движков аналитики, ни концепции Data Lake. Единственным надёжным способом построить аналитическую отчетность&nbsp;было физически извлекать данные из&nbsp;операционных систем и копировать их в&nbsp;отдельную специализированную базу. Именно поэтому ETL закрепился как&nbsp;основной архитектурный паттерн аналитических систем на&nbsp;долгие десятилетия.</p><p>Увы, такой подход породил и массу проблем: это дублирование данных, долгие пайплайны, сложные зависимости, задержки обновления и огромные затраты на&nbsp;поддержку. Традиционным ETL‑процессам становится всё труднее справляться с&nbsp;постоянно растущим объемом поступающих данных. Более того, большие сложности возникают при&nbsp;работе с&nbsp;уже накопленной информацией, ведь её требуется хранить на&nbsp;протяжении многих лет, а&nbsp;значит&nbsp;— сохранять возможность глубокого анализа по&nbsp;всей доступной истории.</p> <a href="https://habr.com/ru/articles/1031326/?utm_campaign=1031326&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 04 May 2026 14:44:48 GMT</pubDate>
      <dc:creator><![CDATA[neoflex (Neoflex)]]></dc:creator>
      
      <category><![CDATA[Neoflex]]></category><category><![CDATA[Trino]]></category><category><![CDATA[ETL]]></category><category><![CDATA[ELT]]></category><category><![CDATA[Data Lake]]></category><category><![CDATA[Lake House]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[BI-движок на остатках ежемесячных Cursor токенов]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1030948/</guid>
      <link>https://habr.com/ru/articles/1030948/?utm_campaign=1030948&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/381/658/7c3/3816587c3956de7c9661e05e3efe8744.png" /><p>Привет, Хабр! Несмотря на то, что Cursor в начале «ИИ революции» условно был впереди, сейчас общепринятым ИИ инструментом во многом можно считать Claude, я также пользуюсь Claude как основным инструментом. Но годовая личная подписка Cursor осталась, и токены каждый месяц обновляются, нужно их потратить :) На остатки токенов за выходные решил заняться вайб-кодингом движка DAX на&nbsp;C#&nbsp;— простейший аналог VertiPaq, причем в режиме Auto в Cursor. В результате получился работоспособный движок DAX, естественно, поддерживающий только подмножество языка, а не весь DAX, но зато не привязанный к Windows&nbsp;— не требуется ни Tabular Server, ни Power BI Desktop, ни облачные сервисы, ни виртуальные машины с Windows&nbsp;— DAX движок работает на всех ОС. Интересующимся экспериментами с ИИ генерацией BI движков&nbsp;— добро пожаловать под кат :)</p> <a href="https://habr.com/ru/articles/1030948/?utm_campaign=1030948&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 04 May 2026 04:00:45 GMT</pubDate>
      <dc:creator><![CDATA[koanse]]></dc:creator>
      
      <category><![CDATA[DAX]]></category><category><![CDATA[Cursor]]></category><category><![CDATA[движок DAX]]></category><category><![CDATA[Mermaid]]></category><category><![CDATA[Markdown]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Пишем свой SQL query builder на Python: DSL, кеширование в Redis и защита от инъекций]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1029968/</guid>
      <link>https://habr.com/ru/articles/1029968/?utm_campaign=1029968&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/e75/d53/0fc/e75d530fc9d79a66a1ed9b0b157f351e.jpg" /><p>Объектный построитель SQL-запросов без ORM и моделей. Позволяет писать сложные SQL-запросы в виде цепочек Python-методов (table[‘person’].filter(…).join(…).get()) и получать результат в виде списка словарей. Под капотом — параметризованные запросы для защиты от инъекций, продуманная система кеширования с инвалидацией по таблицам (in-memory и Redis), поддержка синхронного и асинхронного кода из коробки. Для тех случаев, когда ORM избыточна, а сырой SQL небезопасен.</p> <a href="https://habr.com/ru/articles/1029968/?utm_campaign=1029968&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 30 Apr 2026 08:15:55 GMT</pubDate>
      <dc:creator><![CDATA[Antony_Glyzin]]></dc:creator>
      
      <category><![CDATA[python]]></category><category><![CDATA[sql]]></category><category><![CDATA[orm]]></category><category><![CDATA[dsl]]></category><category><![CDATA[caching]]></category><category><![CDATA[asyncio]]></category><category><![CDATA[sql-инъекция]]></category><category><![CDATA[query cache]]></category><category><![CDATA[django]]></category><category><![CDATA[redis]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Объектная модель Sigla Vision]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/gazprombank/articles/1028962/</guid>
      <link>https://habr.com/ru/companies/gazprombank/articles/1028962/?utm_campaign=1028962&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/1f6/eac/af6/1f6eacaf61c30a1a3ea9649f2b5849e0.png" /><p>Продолжаем серию публикаций «Адаптивное администрирование Sigla Vision». Часть наших подходов будет полезна и другим ИТ-специалистам, которые развивают или сопровождают аналитические системы — особенно те, что хранят метаданные во внешних СУБД.</p><p>В этой статье подробно разберем объектную модель BI-системы. Она помогает лучше понимать работу системы, следить за ее состоянием и контролировать изменения.</p><p>В<a href="https://habr.com/ru/companies/gazprombank/articles/1018690/"> предыдущей статье «Адаптивное администрирование Sigla Vision»</a> мы посмотрели на BI-систему «из коробки» глазами тех, кто ее сопровождает: объяснили, зачем нужны дополнительные данные о работе системы и для чего создавать объектную модель, привели примеры задач, где она используется.</p><p>Тема нынешней статьи — основа всего нашего дальнейшего опыта работы с Sigla Vision.&nbsp;</p> <a href="https://habr.com/ru/articles/1028962/?utm_campaign=1028962&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 30 Apr 2026 07:09:18 GMT</pubDate>
      <dc:creator><![CDATA[svusov (Газпромбанк)]]></dc:creator>
      
      <category><![CDATA[администрирование]]></category><category><![CDATA[Business Intelligence]]></category><category><![CDATA[BI]]></category><category><![CDATA[FineBI]]></category><category><![CDATA[Sigla Vision]]></category><category><![CDATA[дашборды]]></category><category><![CDATA[бизнес-аналитика]]></category><category><![CDATA[SQL]]></category><category><![CDATA[PostgreSQL]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Скрытая цена JSONB в PostgreSQL: что происходит при обновлении больших документов]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/ppr/articles/1029554/</guid>
      <link>https://habr.com/ru/companies/ppr/articles/1029554/?utm_campaign=1029554&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<p>jsonb легко полюбить. Он даёт гибкую схему, позволяет не плодить десятки мелких колонок, хорошо подходит для полуструктурированных данных и обычно очень удобен на старте проекта. Пока документы маленькие и меняются редко, кажется, что всё отлично.</p><p>Проблемы начинаются позже. Данные растут, в документ добавляются новые поля, часть из них начинает часто обновляться, а потом внезапно выясняется, что вроде бы безобидный UPDATE одного ключа внутри jsonb стоит заметно дороже, чем ожидалось.</p><p>В этой статье мы не собираемся доказывать, что jsonb плохой тип данных. Наоборот: jsonb – один из самых полезных инструментов PostgreSQL. Хотелось бы разобраться в более узком вопросе:</p><p>что именно происходит, когда мы обновляем один ключ внутри большого JSONB-документа, и чем это отличается от обновления обычной колонки рядом с таким же большим документом?</p> <a href="https://habr.com/ru/articles/1029554/?utm_campaign=1029554&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 29 Apr 2026 10:48:24 GMT</pubDate>
      <dc:creator><![CDATA[PPR (Программный Продукт)]]></dc:creator>
      
      <category><![CDATA[программный продукт]]></category><category><![CDATA[sql]]></category><category><![CDATA[postgresql]]></category><category><![CDATA[бд]]></category><category><![CDATA[jsonb]]></category><category><![CDATA[субд]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[SQL‑тренажер с автопроверкой и AI‑генерацией задач]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1029364/</guid>
      <link>https://habr.com/ru/articles/1029364/?utm_campaign=1029364&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/490/492/d43/490492d4300273c988aacb391275c495.png" /><p>У&nbsp;меня школа тестировщиков. SQL&nbsp;— обязательный блок, потому что&nbsp;без&nbsp;него на&nbsp;собеседовании в&nbsp;любую серьёзную компанию делать нечего, и в&nbsp;реальной работе тестировщику регулярно нужно залезать в&nbsp;базу. На&nbsp;рынке уже существуют (хоть и не&nbsp;так много) SQL‑тренажеры, но&nbsp;мне хотелось сделать удобнее и иметь возможность полностью управлять сервисом и адаптировать под&nbsp;наши нужды. Собственно, ниже, моя разработка. </p> <a href="https://habr.com/ru/articles/1029364/?utm_campaign=1029364&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 29 Apr 2026 07:08:47 GMT</pubDate>
      <dc:creator><![CDATA[OWIII]]></dc:creator>
      
      <category><![CDATA[sql]]></category><category><![CDATA[тренажер]]></category><category><![CDATA[тренировка sql]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Книга: «Антипаттерны PostgreSQL и как их избежать»]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/piter/articles/1028468/</guid>
      <link>https://habr.com/ru/companies/piter/articles/1028468/?utm_campaign=1028468&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/0fa/58f/0dd/0fa58f0dd1afb3ac084e6e9b911de60e.jpg" /><p>Привет, Хаброжители!  Исправление ошибок в базах данных PostgreSQL может быть трудоемким и рискованным процессом — особенно при внесении изменений в работающую систему в реальном времени. К счастью, можно учиться на ошибках, которые уже совершили другие! Автор подробно описывает, как выявлять и предотвращать самые распространенные, опасные и скрытые антипаттерны проектирования при работе с PostgreSQL. </p> <a href="https://habr.com/ru/articles/1028468/?utm_campaign=1028468&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 28 Apr 2026 09:30:50 GMT</pubDate>
      <dc:creator><![CDATA[ph_piter (Издательский дом «Питер»)]]></dc:creator>
      
      <category><![CDATA[postgresql]]></category><category><![CDATA[sql]]></category><category><![CDATA[антипаттерны]]></category><category><![CDATA[базы данных]]></category><category><![CDATA[книги по программированию]]></category><category><![CDATA[книга]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[At-least-once. Это не баг провайдера. Это ваша архитектурная проблема]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1028708/</guid>
      <link>https://habr.com/ru/articles/1028708/?utm_campaign=1028708&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/3d5/f5c/934/3d5f5c934f989ba5af8f0e5cd733ac1b.jpg" /><p>Думал, зайду в крипту и буду просто дёргать API блокчейна. Не вышло.</p><p>Захожу в проект. Стек: FastAPI, PostgreSQL, Redis как Celery broker, Celery workers, Docker, Web3. Стартап на хайпе, деньги реальные, архитектура собрана на коленке. Смотрю на архитектуру платёжного процессинга и первая мысль: ребята, вы серьёзно? Финансовые операции с реальными деньгами, без idempotency вообще, Redis как брокер без persistence, Web3.py синхронные вызовы внутри Celery тасков.</p><p>Разговор был короткий: задача такая, чини что есть. Сроки горели.</p> <a href="https://habr.com/ru/articles/1028708/?utm_campaign=1028708&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 27 Apr 2026 15:55:21 GMT</pubDate>
      <dc:creator><![CDATA[wicsion]]></dc:creator>
      
      <category><![CDATA[idempotency]]></category><category><![CDATA[PostgreSQL]]></category><category><![CDATA[Celery]]></category><category><![CDATA[FastAPI]]></category><category><![CDATA[Redis]]></category><category><![CDATA[at-least-once]]></category><category><![CDATA[webhook]]></category><category><![CDATA[distributed systems]]></category><category><![CDATA[финтех]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Реализация автоудаления блокирующих сессий в MS SQL]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/vk/articles/1027228/</guid>
      <link>https://habr.com/ru/companies/vk/articles/1027228/?utm_campaign=1027228&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/895/b0f/c32/895b0fc323e9edf730dc8f93639f344c.png" /><p>Привет, Хабр! Меня зовут Евгений Грибков, я ведущий разработчик в центре технологий VK.&nbsp;В этой статье я покажу решение, к которому мы с коллегами пришли при работе над одной из наших внутренних систем.</p><p>Достаточно часто бывает так, что нужно сохранить стабильность работы системы вне зависимости от того, какие запросы выполняются в СУБД. Достичь этого можно разными способами. Я покажу одно из специфических решений&nbsp;—&nbsp;реализацию автокиллера:  удаление сессий, которые достаточно долго блокируют запросы других сессий, исходящие от пользователей информационной системы.</p> <a href="https://habr.com/ru/articles/1027228/?utm_campaign=1027228&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Показать реализацию автокиллера</a>]]></description>
      
      <pubDate>Fri, 24 Apr 2026 11:40:28 GMT</pubDate>
      <dc:creator><![CDATA[jobgemws (VK)]]></dc:creator>
      
      <category><![CDATA[ms sql]]></category><category><![CDATA[ms sql server]]></category><category><![CDATA[sql]]></category><category><![CDATA[базы данных]]></category><category><![CDATA[database]]></category><category><![CDATA[программирование]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как объединить данные Яндекс Метрики и CRM: от загрузки данных до дашборда в DataLens]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1027178/</guid>
      <link>https://habr.com/ru/articles/1027178/?utm_campaign=1027178&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/aeb/475/3ee/aeb4753ee45a1e2bb8840fce8deda9f9.png" /><p>Всем привет!</p><p>На одном из проектов я настраивал дашборд в Yandex DataLens, который объединяет данные о трафике из Яндекс Метрики с данными о заказах из CRM и позволяет анализировать доход в разрезе источников трафика. </p><p>В этой статье расскажу, как был выстроен процесс обработки данных и к какому результату в итоге пришёл.</p> <a href="https://habr.com/ru/articles/1027178/?utm_campaign=1027178&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 23 Apr 2026 16:26:53 GMT</pubDate>
      <dc:creator><![CDATA[Analytiq]]></dc:creator>
      
      <category><![CDATA[datalens]]></category><category><![CDATA[bi аналитика]]></category><category><![CDATA[визуализация данных]]></category><category><![CDATA[сквозная аналитика]]></category><category><![CDATA[маркетинговая аналитика]]></category><category><![CDATA[data analytics]]></category><category><![CDATA[аналитика данных]]></category><category><![CDATA[витрина данных]]></category><category><![CDATA[дата инжиниринг]]></category><category><![CDATA[yandex datalens]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Black Box пентест: как один домен привёл к полной компрометации инфраструктуры. Часть 1]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1026860/</guid>
      <link>https://habr.com/ru/articles/1026860/?utm_campaign=1026860&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/90b/a07/412/90ba07412552cfe0cea3763915fa1bb4.png" /><p>Привет, Хабр! В этой статье я хочу поделиться опытом проведения внешнего black-box пентеста и разобрать методологию, которая позволяет находить критические уязвимости даже при минимальном входном скоупе. Статья будет разбита на две части, про внешний расскажу я, а про внутренний расскажет мой <a href="https://habr.com/ru/articles/1026862/" rel="noopener noreferrer nofollow">коллега</a>. </p><p>Black-box подразумевает, что у пентестера нет никакой внутренней информации: ни списков IP, ни учётных данных, ни описания архитектуры. Только доменное имя - и вперёд. Звучит как ограничение, но на практике это зачастую преимущество: вы смотрите на инфраструктуру глазами реального злоумышленника.</p><p>Целью данного пентеста является проверка возможности компрометации внутренней инфраструктуры через веб-приложения. </p> <a href="https://habr.com/ru/articles/1026860/?utm_campaign=1026860&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 23 Apr 2026 06:45:35 GMT</pubDate>
      <dc:creator><![CDATA[gg1ZmO]]></dc:creator>
      
      <category><![CDATA[Пентест]]></category><category><![CDATA[информационная безопасность]]></category><category><![CDATA[black box]]></category><category><![CDATA[sql injection]]></category><category><![CDATA[web pentest]]></category><category><![CDATA[white hat]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Эти три буквы никого не оставляют равнодушными]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1026546/</guid>
      <link>https://habr.com/ru/articles/1026546/?utm_campaign=1026546&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/f14/74d/fff/f1474dfff1c4959b987be51ad25bcfb0.jpeg" /><p>Разберем <strong>топ вопросов на знание SQL,</strong> которые чаще всего задают на собеседованиях. Я собрала в этот топ свой опыт и опыт коллег, которые недавно проходили собеседования. </p> <a href="https://habr.com/ru/articles/1026546/?utm_campaign=1026546&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 22 Apr 2026 10:47:21 GMT</pubDate>
      <dc:creator><![CDATA[natalia_ostapenko]]></dc:creator>
      
      <category><![CDATA[базы данных]]></category><category><![CDATA[собеседование]]></category><category><![CDATA[обучение]]></category><category><![CDATA[карьера в it]]></category><category><![CDATA[подготовка к собеседованиям]]></category><category><![CDATA[sql]]></category>
    </item>
  

  

  

	
  

  

  

    

  

  

	
  

  
    <item>
      <title><![CDATA[[Перевод] Как читать BUFFERS в EXPLAIN ANALYZE и находить I/O-узкие места в PostgreSQL]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/otus/articles/1024674/</guid>
      <link>https://habr.com/ru/companies/otus/articles/1024674/?utm_campaign=1024674&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/122/890/320/1228903208ec5692780d8e046494e837.jpg" /><p><code>EXPLAIN ANALYZE</code> часто воспринимается как инструмент, который показывает план выполнения запроса. Но если посмотреть внимательнее на блок BUFFERS, он начинает отвечать на более прикладной вопрос — где именно запрос упёрся в I/O и почему это произошло. В этой статье разберём, как читать эту статистику на уровне отдельных узлов плана, как интерпретировать hit/read в контексте нагрузки и почему сами числа почти ничего не значат без сравнения во времени.</p> <a href="https://habr.com/ru/articles/1024674/?utm_campaign=1024674&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 17 Apr 2026 15:05:32 GMT</pubDate>
      <dc:creator><![CDATA[kmoseenk (OTUS)]]></dc:creator>
      
      <category>EXPLAIN ANALYZE</category><category>postgres</category><category>sql</category><category>buffers</category><category>оптимизация запросов</category><category>производительность базы данных</category><category>work_mem</category><category>shared_buffers</category>
    </item>
  

  

    
    <item>
      <title><![CDATA[Метрики упали в лужу]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1024380/</guid>
      <link>https://habr.com/ru/articles/1024380/?utm_campaign=1024380&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/f98/a7d/c3d/f98a7dc3d747b4a640a8fbd9925e3a4a.png" /><p>Метрики могут «упасть» даже если вы ничего не меняли в модели.<br>Разбираемся, как распознать distribution shift и что с ним делать в продакшене.</p> <a href="https://habr.com/ru/articles/1024380/?utm_campaign=1024380&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 17 Apr 2026 11:04:14 GMT</pubDate>
      <dc:creator><![CDATA[natalia_ostapenko]]></dc:creator>
      
      <category><![CDATA[eda]]></category><category><![CDATA[анализ данных]]></category><category><![CDATA[мониторинг]]></category><category><![CDATA[статистика]]></category><category><![CDATA[предобработка данных]]></category><category><![CDATA[pandas]]></category><category><![CDATA[data science]]></category><category><![CDATA[machine learning]]></category><category><![CDATA[data analysis]]></category><category><![CDATA[production]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Фитнес план для PostgreSQL своими руками: как похудеть, когда нет доступа к pg_repack и pgcompacttable]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/avito/articles/1023610/</guid>
      <link>https://habr.com/ru/companies/avito/articles/1023610/?utm_campaign=1023610&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/5fb/01f/0eb/5fb01f0eb9d3214348d7de3ed81a91e5.jpg" /><p>Привет! В этой статье мы, <strong>Павел Лобанов</strong> — старший инженер в платформе отправлений и <strong>Дмитрий Сидоренко</strong> — старший инженер в логистической платформе доставки <a href="https://clc.to/LV3FBg">Авито</a>, расскажем, <strong>как решили проблему раздувания размера данных в хранилище без прерывания работы сервиса</strong>, сохранив лояльность пользователей и деньги компании.</p><p>Эта история о том, как мы придумали и реализовали свой собственный метод, когда никакие другие сторонние инструменты не позволяли сохранять работоспособность сервиса и гарантировать надёжность. Его можно применять во всём мире, где используются платформы на базе PostgreSQL.</p> <a href="https://habr.com/ru/articles/1023610/?utm_campaign=1023610&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 16 Apr 2026 17:20:17 GMT</pubDate>
      <dc:creator><![CDATA[grozauf (AvitoTech)]]></dc:creator>
      
      <category><![CDATA[postgresql]]></category><category><![CDATA[базы данных]]></category><category><![CDATA[sql]]></category><category><![CDATA[bloat]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Почему важно мониторить поисковую систему: Manticore → Prometheus → Grafana]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1023608/</guid>
      <link>https://habr.com/ru/articles/1023608/?utm_campaign=1023608&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/18e/74d/aa3/18e74daa37959bac3ba43381041886d6.jpg" /><p>Один из наших пользователей недавно пришёл к нам со знакомой проблемой: поиск внезапно стал заметно медленнее, хотя внешне ничего явно не ломалось.</p><p>Сервис работал, ошибок в логах не было, загрузка CPU выглядела нормально, но пользователи уже начали жаловаться, что поиск тормозит.</p><p>Так обычно и проявляются проблемы с поиском в продакшене. Не как драматичный сбой, а как медленное, ползучее ухудшение. Чуть больше трафика здесь, чуть больше индексации там, и прежде чем вы это заметите, производительность уже просела.</p><p>К тому моменту, когда пользователи это замечают, настоящая проблема нередко копится уже несколько часов. Без хорошей видимости остаётся только гадать: система перегружена? Одна таблица съедает ресурсы? Или незаметно что-то идёт не так?</p><p>Вот почему мониторинг важен. С ним расплывчатое «поиск стал медленным» превращается в проблему, которую можно диагностировать и исправить.</p> <a href="https://habr.com/ru/articles/1023608/?utm_campaign=1023608&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 16 Apr 2026 12:03:13 GMT</pubDate>
      <dc:creator><![CDATA[ManticoreSearch]]></dc:creator>
      
      <category><![CDATA[grafana-дашборд]]></category><category><![CDATA[prometheus]]></category><category><![CDATA[мониторинг]]></category><category><![CDATA[сбор метрик]]></category><category><![CDATA[визуализация метрик]]></category><category><![CDATA[высокая производительность]]></category><category><![CDATA[метрики производительности]]></category><category><![CDATA[оптимизация производительности]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Адаптивное администрирование Sigla Vision / FineBI]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/gazprombank/articles/1018690/</guid>
      <link>https://habr.com/ru/companies/gazprombank/articles/1018690/?utm_campaign=1018690&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/cec/cdd/378/ceccdd378fd93c9e77b5aea25cb2aa1b.jpg" /><p>Меня зовут Сергей Усов. В Газпромбанке я в составе небольшой команды занимаюсь развитием и сопровождением корпоративной BI-системы на базе решения<a href="https://habr.com/ru/companies/glowbyte/articles/953770/"> Sigla Vision</a> (российский форк FineBI).</p><p>Мы хотим поделиться практическими наработками с сообществом пользователей Sigla Vision / FineBI — сделать работу с системой удобнее и облегчить жизнь администраторам. При этом часть наших подходов может пригодиться и тем ИТ-специалистам (разработчикам, дата-инженерам, аналитикам), которые сопровождают работу технических систем, имеющих в своем составе БД с репозиториями метаданных. Описанные решения являются общеинженерными и могут быть применены не только к корпоративным аналитическим системам.</p><p>Это первая статья из цикла, посвященного нашему опыту администрирования Sigla Vision.</p> <a href="https://habr.com/ru/articles/1018690/?utm_campaign=1018690&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 16 Apr 2026 07:16:09 GMT</pubDate>
      <dc:creator><![CDATA[svusov (Газпромбанк)]]></dc:creator>
      
      <category><![CDATA[администрирование]]></category><category><![CDATA[Business Intelligence]]></category><category><![CDATA[BI]]></category><category><![CDATA[FineBI]]></category><category><![CDATA[Sigla Vision]]></category><category><![CDATA[дашборды]]></category><category><![CDATA[бизнес-аналитика]]></category><category><![CDATA[SQL]]></category><category><![CDATA[PostgreSQL]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Мониторинг Manticore Search в Grafana одной командой]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1023116/</guid>
      <link>https://habr.com/ru/articles/1023116/?utm_campaign=1023116&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/831/117/a35/831117a3593da7b192383dbc725373c8.jpg" /><p>Самый неприятный тип инцидента — когда база данных не падает полностью, а просто начинает работать медленнее.</p><p>Пользователи замечают это сразу. Жалобы начинают поступать. Технически всё по-прежнему работает, но явно что‑то не так.</p><p>И обычно самое сложное здесь не заметить проблему, а понять, что на самом деле происходит.</p> <a href="https://habr.com/ru/articles/1023116/?utm_campaign=1023116&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 15 Apr 2026 03:53:35 GMT</pubDate>
      <dc:creator><![CDATA[ManticoreSearch]]></dc:creator>
      
      <category><![CDATA[grafana]]></category><category><![CDATA[docker]]></category><category><![CDATA[мониторинг]]></category><category><![CDATA[дашборд]]></category><category><![CDATA[визуализация метрик]]></category><category><![CDATA[сбор метрик]]></category><category><![CDATA[контейнеризация]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Обмен авто на авто: как мы строим Tinder для автомобилей, архитектура Go-монолита за 3 месяца]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/paybeam/articles/1023278/</guid>
      <link>https://habr.com/ru/companies/paybeam/articles/1023278/?utm_campaign=1023278&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/13f/fba/77b/13ffba77bb539ff94b0d2b5a4b0e997a.png" /><p>Я Шевкопляс Дмитрий, технический руководитель проекта <strong><a href="https://swapno.ru/?utm_source=habr">Swapno</a></strong> — сервис для обмена автомобилями ключ-в-ключ, без дилеров. Механика — как в Tinder: свайпаешь чужие авто, если оба владельца лайкнули машины друг друга — Swap Match, начинается обмен. В этой статье расскажу, как мы спроектировали и написали бэкенд на Go за 3 месяца: от выбора архитектуры до matching engine, AI-модерации фото и observability в продакшене. С реальными ошибками, которые мы допустили, и тем, как их чинили.</p> <a href="https://habr.com/ru/articles/1023278/?utm_campaign=1023278&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 14 Apr 2026 11:29:31 GMT</pubDate>
      <dc:creator><![CDATA[dimacgka (Paybeam)]]></dc:creator>
      
      <category><![CDATA[Go]]></category><category><![CDATA[Golang]]></category><category><![CDATA[PostgreSQL]]></category><category><![CDATA[Redis]]></category><category><![CDATA[архитектура]]></category><category><![CDATA[монолит]]></category><category><![CDATA[стартап]]></category><category><![CDATA[observability]]></category><category><![CDATA[OpenTelemetry]]></category><category><![CDATA[Swapno]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[БАЗЫ ДАННЫХ db. SQL, REDIS, СУБД]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1023194/</guid>
      <link>https://habr.com/ru/articles/1023194/?utm_campaign=1023194&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/39c/ed0/ff3/39ced0ff35a0f1c62a417e3ad289d30c.jpeg" /><p>Если серьезно, то сегодня мы поговорим про БАЗЫ данных. Как-то один мой друг разработчик сказал, что программирование можно понимать как</p> <a href="https://habr.com/ru/articles/1023194/?utm_campaign=1023194&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 14 Apr 2026 08:31:28 GMT</pubDate>
      <dc:creator><![CDATA[KarimAbushaev]]></dc:creator>
      
      <category><![CDATA[redis]]></category><category><![CDATA[sql]]></category><category><![CDATA[sqlite]]></category><category><![CDATA[in memory]]></category><category><![CDATA[java]]></category><category><![CDATA[query]]></category><category><![CDATA[jdbc]]></category><category><![CDATA[jpa]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Параллельное слияние чанков в Manticore Search]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1022634/</guid>
      <link>https://habr.com/ru/articles/1022634/?utm_campaign=1022634&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/156/588/0f2/1565880f2184a2bf6fadd86e8debfd21.jpg" /><p>Начиная с&nbsp;<strong>Manticore Search 24.4.0</strong>, компактизация RT-таблиц использует более эффективную модель выполнения. Вместо последовательного слияния пар чанков оптимизация теперь поддерживает два важных улучшения:</p> <a href="https://habr.com/ru/articles/1022634/?utm_campaign=1022634&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 13 Apr 2026 11:18:50 GMT</pubDate>
      <dc:creator><![CDATA[ManticoreSearch]]></dc:creator>
      
      <category><![CDATA[чанки]]></category><category><![CDATA[полнотекстовый поиск]]></category><category><![CDATA[индексирование текста]]></category><category><![CDATA[индексирование данных]]></category><category><![CDATA[многопоточность]]></category><category><![CDATA[балансировка нагрузки]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[GIN‑индексы для JSONB в PostgreSQL: jsonb_ops vs jsonb_path_ops]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/otus/articles/1015518/</guid>
      <link>https://habr.com/ru/companies/otus/articles/1015518/?utm_campaign=1015518&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/922/582/035/9225820353551e7754175865873f8947.png" /><p>С <code>JSONB</code> в&nbsp;PostgreSQL есть одна довольно коварная ловушка: GIN‑индекс вроде&nbsp;бы поставили, запросы вроде&nbsp;бы работают, <code>EXPLAIN</code> не&nbsp;пугает&nbsp;— и на&nbsp;этом многие успокаиваются. Но&nbsp;как&nbsp;только данных становится действительно много, выясняется, что&nbsp;выбор между <code>jsonb_ops</code> и <code>jsonb_path_ops</code>&nbsp;— это не&nbsp;нюанс из&nbsp;документации, а&nbsp;вполне ощутимая разница в&nbsp;размере индекса, количестве&nbsp;лишних проверок и времени выполнения запросов. В&nbsp;этой статье разберём, как&nbsp;устроены оба оператор‑класса, почему один считается универсальным, а&nbsp;второй часто оказывается выгоднее на&nbsp;практике, и в&nbsp;каких случаях дефолтный выбор в&nbsp;PostgreSQL оказывается далеко не&nbsp;лучшим. </p> <a href="https://habr.com/ru/articles/1015518/?utm_campaign=1015518&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 13 Apr 2026 09:35:56 GMT</pubDate>
      <dc:creator><![CDATA[badcasedaily1 (OTUS)]]></dc:creator>
      
      <category><![CDATA[psql]]></category><category><![CDATA[GIN-индексы]]></category><category><![CDATA[JSONB]]></category><category><![CDATA[postgresql]]></category><category><![CDATA[jsonb_ops]]></category><category><![CDATA[jsonb_path_ops]]></category><category><![CDATA[индексация JSONB]]></category><category><![CDATA[оптимизация SQL-запросов]]></category><category><![CDATA[containment operator]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как мы строим OLTP-ядро: от API-контрактов до eBPF-проб]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1022506/</guid>
      <link>https://habr.com/ru/articles/1022506/?utm_campaign=1022506&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/47f/b75/e92/47fb75e92cd309061eee888240e9ff31.png" /><p>В статье показываем  контракты будущей OLTP-СУБД: как разделены слои ядра, зачем нужен per-tablespace page size, почему конфигурация уходит в adaptive tuning и как мы встраиваем USDT/eBPF-наблюдаемость прямо в бинарник.</p> <a href="https://habr.com/ru/articles/1022506/?utm_campaign=1022506&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Sun, 12 Apr 2026 12:09:07 GMT</pubDate>
      <dc:creator><![CDATA[anishukserg]]></dc:creator>
      
      <category><![CDATA[oltp]]></category><category><![CDATA[субд]]></category><category><![CDATA[базыданных]]></category><category><![CDATA[rust]]></category><category><![CDATA[ebpf]]></category><category><![CDATA[usdt]]></category><category><![CDATA[observability]]></category><category><![CDATA[postgresql compatibility]]></category><category><![CDATA[storage engine]]></category><category><![CDATA[adaptive tuning]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[JSON_TABLE в PostgreSQL: превращаем JSON в реляционные данные одним запросом]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/otus/articles/1015526/</guid>
      <link>https://habr.com/ru/companies/otus/articles/1015526/?utm_campaign=1015526&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/843/682/9c7/8436829c78b2fa9dddf81c93604949eb.png" /><p>JSON в PostgreSQL давно перестал быть экзотикой, но работать с ним по-реляционному до сих пор приходилось не самым изящным способом: <code>jsonb_array_elements</code>, <code>LATERAL</code>, ручные касты, обработка ошибок на честном слове. В PostgreSQL 17 появился <code>JSON_TABLE</code> — стандартный SQL/JSON-механизм, который превращает JSON-документ в табличное представление одним выражением. В статье разберём, как он работает, чем отличается от привычного подхода, где действительно упрощает запросы и какие ограничения по производительности и применению у него остаются.</p> <a href="https://habr.com/ru/articles/1015526/?utm_campaign=1015526&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 10 Apr 2026 10:40:57 GMT</pubDate>
      <dc:creator><![CDATA[badcasedaily1 (OTUS)]]></dc:creator>
      
      <category><![CDATA[postqresql]]></category><category><![CDATA[JSON_TABLE]]></category><category><![CDATA[jsonb]]></category><category><![CDATA[jsonpath]]></category><category><![CDATA[реляционные данные]]></category><category><![CDATA[обработка JSON]]></category><category><![CDATA[запросы PostgreSQL]]></category><category><![CDATA[типизация данных]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[S3 Streamable Backup: потоковые бэкапы напрямую в облако для Manticore Search]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1021608/</guid>
      <link>https://habr.com/ru/articles/1021608/?utm_campaign=1021608&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/c22/931/352/c2293135292b5366d12e422214eef340.png" /><p>С тех пор как мы представили&nbsp;<a href="https://manticoresearch.com/ru/blog/new-backup-and-recovery-approaches/" rel="noopener noreferrer nofollow">инструмент резервного копирования</a>&nbsp;в Manticore Search 6, создавать резервные копии данных стало заметно проще. Но мы постоянно слышали один и тот же вопрос:&nbsp;<em>"А как насчёт облачного хранилища?"</em>&nbsp;Сегодня мы рады объявить, что&nbsp;<strong>manticore-backup</strong>&nbsp;теперь поддерживает&nbsp;<strong>S3-совместимое хранилище</strong>&nbsp;с потоковой загрузкой — без промежуточных файлов, без проблем с местом на локальном диске, только бэкапы напрямую в облако.</p> <a href="https://habr.com/ru/articles/1021608/?utm_campaign=1021608&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 10 Apr 2026 06:46:50 GMT</pubDate>
      <dc:creator><![CDATA[ManticoreSearch]]></dc:creator>
      
      <category><![CDATA[backup]]></category><category><![CDATA[резервное копирование]]></category><category><![CDATA[s3]]></category><category><![CDATA[kubernetes]]></category><category><![CDATA[полнотекстовый поиск]]></category><category><![CDATA[бэкапы]]></category><category><![CDATA[облачные хранилища]]></category><category><![CDATA[потоковая загрузка]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Разработка BI-аналитики для застройщика в Apache Superset]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1021606/</guid>
      <link>https://habr.com/ru/articles/1021606/?utm_campaign=1021606&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/5e4/d4b/92b/5e4d4b92baa6bf2c3fa4be57f1601d9e.png" /><p>На старте у клиента уже были дашборды, но они не закрывали текущие задачи бизнеса. Данные находились в разных системах — 1С, Excel, Google Таблицы, XML-выгрузки и внутренняя система. </p><p>Клиент принял решение выстроить аналитику заново и выбрал Apache Superset как инструмент визуализации. Сначала собрали единый слой в PostgreSQL, настроили загрузку через Python, привели метрики к одной логике и зафиксировали правила расчётов.</p><p>После этого уже собрали дашборды под управленческие задачи клиента. Визуализация строилась так, чтобы быстро находить отклонения и принимать решения, а не просто смотреть отчёты.</p><p>В результате у клиента появилась система, где данные считаются одинаково для всех, автоматически обновляются и используются в работе без дополнительных проверок.</p> <a href="https://habr.com/ru/articles/1021606/?utm_campaign=1021606&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 10 Apr 2026 03:02:37 GMT</pubDate>
      <dc:creator><![CDATA[Nikita_Vasilevskiy]]></dc:creator>
      
      <category><![CDATA[Кейс]]></category><category><![CDATA[бизнес-аналитика]]></category><category><![CDATA[bi-аналитика]]></category><category><![CDATA[bi]]></category><category><![CDATA[дашборды]]></category><category><![CDATA[застройщики]]></category><category><![CDATA[apache superset]]></category><category><![CDATA[автоматизация аналитики]]></category><category><![CDATA[управленческие отчеты]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[RANK() vs DENSE_RANK(): ошибка, которая ломает топ-N в проде]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1021094/</guid>
      <link>https://habr.com/ru/articles/1021094/?utm_campaign=1021094&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/9da/196/0b3/9da1960b3fa9fe13db305da5240f9607.png" /><p>При работе с данными в SQL рано или поздно возникает задача ранжирования: топ-5 продуктов по продажам, рейтинг сотрудников по KPI, распределение клиентов по категориям.</p><p>На первый взгляд <code>RANK()</code> и <code>DENSE_RANK()</code> делают почти одно и то же. На тестовых данных разница может быть вообще незаметна. Но в проде именно здесь часто начинаются ошибки: — топ-3 внезапно возвращает 5 строк; — дашборд "врёт"; — backend-логика начинает вести себя не так, как ожидалось; — запрос, который вчера работал быстро, сегодня уходит в disk spill.</p><p>Две самые популярные функции для ранжирования — <code>RANK()</code> и <code>DENSE_RANK()</code>. Ниже разберём, чем они отличаются, где именно ошибаются разработчики и аналитики, и что важно понимать: не только <em>что</em> делает оконная функция, но и <em>сколько она стоит</em> на больших объёмах данных.</p> <a href="https://habr.com/ru/articles/1021094/?utm_campaign=1021094&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 09 Apr 2026 07:31:29 GMT</pubDate>
      <dc:creator><![CDATA[i_alakey]]></dc:creator>
      
      <category><![CDATA[sql]]></category><category><![CDATA[rank]]></category><category><![CDATA[dense_rank]]></category><category><![CDATA[window functions]]></category><category><![CDATA[postgresql]]></category><category><![CDATA[оптимизация]]></category><category><![CDATA[производительность]]></category><category><![CDATA[аналитика]]></category><category><![CDATA[базы данных]]></category><category><![CDATA[top-n]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Prepared statements в Manticore Search]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1021114/</guid>
      <link>https://habr.com/ru/articles/1021114/?utm_campaign=1021114&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/31b/3cc/aa9/31b3ccaa9280d037fdd7a1f624ffe6e8.jpg" /><p>Представьте, что вы создаёте мощное поисковое приложение. Пользователи вводят ключевые слова, а ваш бэкенд должен выполнять запрос к базе данных Manticore Search, чтобы найти подходящие результаты. Распространённый (и соблазнительный!) подход — напрямую вставлять ввод пользователя в SQL‑запросы. Например, вы можете фильтровать по числовому полю, такому как категория или идентификатор записи. Если пользователь передаёт обычное значение, например&nbsp;<code>5</code>, запрос будет&nbsp;<code>SELECT </code><em><code> FROM products WHERE id=5</code>. А что, если он передаст&nbsp;<code>1 OR 1=1</code>? Запрос станет&nbsp;<code>SELECT </code></em><code> FROM products WHERE id=1 OR 1=1</code>&nbsp;— условие всегда истинно, поэтому запрос вернёт все строки вместо одной. Это SQL‑инъекция.</p><p>К счастью, существует более безопасный и эффективный способ:&nbsp;<strong>prepared statements</strong>. По сути, prepared statements отделяют ваш SQL‑код от передаваемых данных. Вместо того чтобы каждый раз собирать всю строку запроса, вы один раз задаёте структуру запроса с маркерами параметров, а затем отдельно передаёте поисковые термины. Подробнее о концепции можно узнать на&nbsp;<a href="https://en.wikipedia.org/wiki/Prepared_statement" rel="noopener noreferrer nofollow">Wikipedia</a>&nbsp;.</p><p>Manticore Search поддерживает prepared statements через стандартный протокол MySQL, предоставляя мощный инструмент для создания безопасных поисковых приложений. Используя prepared statements, вы не только значительно снизите риск SQL‑инъекций, но и улучшите читаемость вашего кода.</p><p>prepared statements — это не просто функция; иногда они являются обязательными. Например, библиотека Rust&nbsp;<code>sqlx</code>&nbsp;работает с MySQL-эндпоинтом, используя исключительно prepared statements. Кроме того, некоторые OLE DB‑коннекторы, позволяющие MS SQL работать с сервером MySQL, тоже используют prepared statements внутри.</p> <a href="https://habr.com/ru/articles/1021114/?utm_campaign=1021114&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Thu, 09 Apr 2026 05:17:16 GMT</pubDate>
      <dc:creator><![CDATA[ManticoreSearch]]></dc:creator>
      
      <category><![CDATA[prepared statements]]></category><category><![CDATA[full text search]]></category><category><![CDATA[search engine]]></category><category><![CDATA[sql]]></category><category><![CDATA[безопасность баз данных]]></category><category><![CDATA[полнотекстовый поиск]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Как проектируют приложения и системы, которые не падают под нагрузкой на примере бега, медитации и чая]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1020634/</guid>
      <link>https://habr.com/ru/articles/1020634/?utm_campaign=1020634&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/2ce/8b0/04a/2ce8b004afb6f2c9831f62b1c6f68106.jpg" /><p>Хабровчане, приветствую! Меня зовут Михаил Казанцев, я ведущий системный аналитик в&nbsp;мобильном приложении Вайлдберриз. Работал и писал требования как&nbsp;в&nbsp;стартапах с&nbsp;монолитами, так и в&nbsp;банковском секторе с&nbsp;сотнями сервисов в&nbsp;одном контуре, рассказать есть что.</p><p>Я хочу рассказать о&nbsp;своём восприятии основной идеи книги Мартина Клепмана&nbsp;— Высоконагруженные приложения через призму своего ультрамарафонского опыта тренировок и соревнований и практики проведения чайных церемоний. Книга технически сложная, поэтому </p> <a href="https://habr.com/ru/articles/1020634/?utm_campaign=1020634&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 08 Apr 2026 05:16:08 GMT</pubDate>
      <dc:creator><![CDATA[kaz4nt1p]]></dc:creator>
      
      <category><![CDATA[Архитектура]]></category><category><![CDATA[Система]]></category><category><![CDATA[Бег]]></category><category><![CDATA[Нагрузка]]></category><category><![CDATA[Мониторинг]]></category><category><![CDATA[Поддержка]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Миграция базы данных в Legacy системах]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1020048/</guid>
      <link>https://habr.com/ru/articles/1020048/?utm_campaign=1020048&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/7dd/f8e/082/7ddf8e082394ef380c957a33dda56a41.png" /><p>Миграция базы данных в Legacy системах</p><p>Если ваша система не использует ORM</p><p>Если промышленное окружение вашей Системы находится не у Вас под контролем</p><p>Если нет возможности внедрить инструмент делающий “магию для миграций” - Liquibase / Flyway</p><p>И тем не менее, очень, очень и очень :) хочется контролировать как изменения в коде попадают в базу данных</p> <a href="https://habr.com/ru/articles/1020048/?utm_campaign=1020048&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 06 Apr 2026 18:24:31 GMT</pubDate>
      <dc:creator><![CDATA[andreylartsev]]></dc:creator>
      
      <category><![CDATA[postgresql]]></category><category><![CDATA[sql]]></category><category><![CDATA[миграция данных]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Монолит с отчётами на 30 секунд: как я переписал архитектуру и что из этого вышло]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1019516/</guid>
      <link>https://habr.com/ru/articles/1019516/?utm_campaign=1019516&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/fe4/f10/463/fe4f104634a119c439115da7c0c79431.jpg" /><p>Пришёл в проект, там легаси погоняет легаси. Спагетти такие что уже в рот лезут. Отчёты по филиалам открывались 30 секунд. Команда реально боялась нажать кнопку в рабочее время, а вдруг база ляжет.</p><p>Это была система управления розничной сетью: несколько филиалов, сотни тысяч записей о заказах, ежедневные отчёты по выручке и остаткам. На бумаге ничего страшного. На практике монолит на Django где бизнес-логика размазана по контроллерам так, что поменяй что-то одно и сломается три другого.</p><p>Первое, что я сделал: открыл EXPLAIN ANALYZE.</p> <a href="https://habr.com/ru/articles/1019516/?utm_campaign=1019516&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Как отчёты ускорились в 20 раз</a>]]></description>
      
      <pubDate>Sun, 05 Apr 2026 13:45:44 GMT</pubDate>
      <dc:creator><![CDATA[wicsion]]></dc:creator>
      
      <category><![CDATA[django]]></category><category><![CDATA[postgresql]]></category><category><![CDATA[ddd]]></category><category><![CDATA[python]]></category><category><![CDATA[highload]]></category><category><![CDATA[оптимизация]]></category><category><![CDATA[explain analyze]]></category><category><![CDATA[архитектура]]></category><category><![CDATA[n+1]]></category><category><![CDATA[backend]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Почему одна запись может изменить KPI: разложение агрегированных метрик на вклад отдельных событий]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1019170/</guid>
      <link>https://habr.com/ru/articles/1019170/?utm_campaign=1019170&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<p>Меня зовут Иван Васильев, я ведущий аналитик в Ви.Tech, IT-дочке ВсеИнструменты.ру. Хочу показать, как из на первый взгляд простой формулы KPI выросла инженерная задача: нам нужно было не просто посчитать интегральный показатель эффективности поставщика, а объяснить, какая именно закупка его ухудшила и почему. В статье разберу, почему для агрегированных метрик не работает наивный подход, как мы пришли к remove-one analysis и где пришлось отдельно фиксировать логику расчета, чтобы результат вообще можно было интерпретировать.</p><p>В одной из систем, над которой я работаю, мы рассчитываем интегральный показатель эффективности поставщика. Сначала задача казалась очень простой: несколько метрик, несколько весов, обычная агрегированная формула. Но однажды бизнес задал вопрос:<br><em>| Почему показатель поставщика снизился?</em></p><p>Ответить на него можно было бы общими словами. Но затем появился уточняющий вопрос:<br><em>| А какая именно закупка ухудшила показатель?</em></p><p>И в этот момент простая аналитическая задача внезапно превратилась в интересную инженерную проблему: с агрегированными метриками, нелинейными функциями и неожиданными эффектами, которые больше похожи на задачи из дискретной математики, чем на обычный backend.</p> <a href="https://habr.com/ru/articles/1019170/?utm_campaign=1019170&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Sat, 04 Apr 2026 06:16:05 GMT</pubDate>
      <dc:creator><![CDATA[accidental_analyst]]></dc:creator>
      
      <category><![CDATA[KPI]]></category><category><![CDATA[explainable KPI]]></category><category><![CDATA[агрегированные метрики]]></category><category><![CDATA[remove-one analysis]]></category><category><![CDATA[sensitivity analysis]]></category><category><![CDATA[вклад записи]]></category><category><![CDATA[explainability]]></category><category><![CDATA[backend]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Гибридный поиск в Manticore Search]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1018754/</guid>
      <link>https://habr.com/ru/articles/1018754/?utm_campaign=1018754&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/294/777/785/294777785f00bf1fe03b59cef7d54e21.png" /><p>Поиск редко сводится к одному универсальному сценарию. Пользователь, вводящий "cheap running shoes", хочет точных совпадений по ключевым словам, а пользователь, задающий "comfortable footwear for jogging", выражает то же намерение другими словами. Традиционный полнотекстовый поиск хорошо справляется с первым случаем. Векторный поиск решает второй. Гибридный поиск объединяет оба в одном запросе, так что вам не приходится выбирать.</p><p>В современных поисковых системах это часто описывается как комбинирование&nbsp;<strong>лексического (разреженного) поиска</strong>&nbsp;с&nbsp;<strong>семантическим (плотным) поиском</strong>. Разные термины, одна идея: точное совпадение плюс смысл.</p> <a href="https://habr.com/ru/articles/1018754/?utm_campaign=1018754&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 03 Apr 2026 04:58:05 GMT</pubDate>
      <dc:creator><![CDATA[ManticoreSearch]]></dc:creator>
      
      <category><![CDATA[гибридный поиск]]></category><category><![CDATA[полнотекстовый поиск]]></category><category><![CDATA[векторный поиск]]></category><category><![CDATA[full text search]]></category><category><![CDATA[knn-search]]></category><category><![CDATA[vector search]]></category><category><![CDATA[bm25]]></category><category><![CDATA[rag]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Гайд системного аналитика по корректировкам витрин]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/neoflex/articles/1017992/</guid>
      <link>https://habr.com/ru/companies/neoflex/articles/1017992/?utm_campaign=1017992&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/472/275/2c1/4722752c1dec96c233d451c39d0beded.jpg" /><p>Данный материал подходит для тех сотрудников, которые не имеют опыта работы или недавно пришли на проект, связанный с хранилищами данных.</p><p>Сегодня хотим рассказать вам о рабочих буднях аналитика DWH, точнее об одной из частей этих будней. Надеемся, данное знание пригодится вам для того, чтобы быстро и без нервов освоиться на том проекте, на котором вы будете работать.</p><p>Информацию описываем вам из нашей практики работы нашего аналитика хранилищ данных.</p><p>Работу аналитика хранилищ данных можно разделить на две части:</p><p>1. Организация интеграции данных от&nbsp;какого‑либо источника к&nbsp;какому‑либо приемнику;</p><p>2. Поиск и решение проблем, связанных с&nbsp;некорректными выходными данными на&nbsp;приемнике, возникающих, например, в&nbsp;результате каких‑либо технических сбоев или&nbsp;изменения требований к&nbsp;предоставляемым данным со стороны бизнеса.</p><p>В этой статье хотим с вами поговорить именно о второй части, так как, согласно практике, именно по ней отсутствует какая-либо документация по действиям для устранения каких-либо проблем.</p><p>В мире данных, где информация является ключевым активом, процессы ETL играют центральную роль в агрегации, очистке и подготовке данных для анализа и принятия решений. Однако одной из самых неприятных и критических проблем, с которой сталкиваются дата-инженеры и аналитики, является расхождение данных на приемнике (целевой системе) с данными в источнике. Как следствие, это может привести к некорректным отчетам, ошибочным бизнес-решениям и потере доверия к данным.</p><p>В статье речь пойдет об ETL-процессе, когда с источника данных «протянут» информационный поток со своей логикой преобразований, который «кладет» некорректные данные в приемник.</p> <a href="https://habr.com/ru/articles/1017992/?utm_campaign=1017992&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 01 Apr 2026 11:15:32 GMT</pubDate>
      <dc:creator><![CDATA[neoflex (Neoflex)]]></dc:creator>
      
      <category><![CDATA[Neoflex]]></category><category><![CDATA[системный анализ]]></category><category><![CDATA[системный аналитик]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Мониторинг SQL Server Always On в Zabbix]]></title>
      <guid isPermaLink="true">https://habr.com/ru/companies/cloud4y/articles/1017578/</guid>
      <link>https://habr.com/ru/companies/cloud4y/articles/1017578/?utm_campaign=1017578&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/1f1/b79/196/1f1b791967b0306a20b2a19c93e0f1ee.png" /><p>Если у вас стоит Always On Availability Groups, вы наверняка бывали в такой ситуации: в SSMS всё зелёное, дашборд показывает «Synchronized», а пользователи звонят с жалобами на тормоза. Смотришь на secondary — а там <code>redo_queue_size</code> 600 МБ, реплика отстаёт на полчаса. Ни одного алерта.</p><p>У нас это случилось на продуктивном кластере с 1С: secondary молча отвалился в SYNCHRONIZING, а мы узнали только при плановом переключении. Полтора часа redo queue. Стало понятно, что встроенный дашборд SSMS — это не мониторинг. Дальше — как мы это закрыли Zabbix'ом за вечер.</p> <a href="https://habr.com/ru/articles/1017578/?utm_campaign=1017578&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 01 Apr 2026 08:06:57 GMT</pubDate>
      <dc:creator><![CDATA[Cloud4Y (Cloud4Y)]]></dc:creator>
      
      <category><![CDATA[SQL Server]]></category><category><![CDATA[Always On]]></category><category><![CDATA[Zabbix]]></category><category><![CDATA[мониторинг]]></category><category><![CDATA[DMV]]></category><category><![CDATA[WSFC]]></category><category><![CDATA[кворум]]></category><category><![CDATA[failover]]></category><category><![CDATA[DBA]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Почему PostgreSQL не использует ваш индекс]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1011998/</guid>
      <link>https://habr.com/ru/articles/1011998/?utm_campaign=1011998&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<p>Вторая часть серии по PostgreSQL из моих внутренних докладов. В этот раз — индексы: откуда берётся <code>cost</code> в <code>EXPLAIN</code> и почему это «попугаи», а не миллисекунды. Почему PostgreSQL игнорирует ваш индекс при высоком покрытии таблицы. Как физическое расположение данных на диске влияет на скорость даже при наличии индекса. Плюс <code>GiST</code> для нечёткого поиска с триграммами, <code>GIN</code> для полнотекстового поиска и <code>EXCLUDE</code> constraints для задач типа бронирования. Всё на примере таблицы с 4 миллионами строк.</p> <a href="https://habr.com/ru/articles/1011998/?utm_campaign=1011998&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Wed, 01 Apr 2026 08:00:50 GMT</pubDate>
      <dc:creator><![CDATA[illusionist1nemo]]></dc:creator>
      
      <category><![CDATA[postgresql]]></category><category><![CDATA[sql]]></category><category><![CDATA[индексы]]></category><category><![CDATA[explain]]></category><category><![CDATA[производительность]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[От Telegram-бота к web-приложению: как я перестал бороться с Excel и начал строить систему]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1017450/</guid>
      <link>https://habr.com/ru/articles/1017450/?utm_campaign=1017450&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/109/a27/1be/109a271be305d9e21cbc224d501b5c93.png" /><p>Привет! Меня зовут Денис, я работаю аналитиком потерь на складе. В какой-то момент я устал от постоянной работы с Excel-выгрузками и решил это автоматизировать.</p><p>В итоге всё началось с простого Telegram-бота, а закончилось полноценным web-приложением с отдельным backend, интеграциями и нормальным интерфейсом.</p><p>Сегодня хочу рассказать про сам путь: как из “скрипта под задачу” постепенно вырастает система.</p> <a href="https://habr.com/ru/articles/1017450/?utm_campaign=1017450&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Tue, 31 Mar 2026 11:12:47 GMT</pubDate>
      <dc:creator><![CDATA[Anniegard]]></dc:creator>
      
      <category><![CDATA[telegram bot]]></category><category><![CDATA[python]]></category><category><![CDATA[web application]]></category><category><![CDATA[backend]]></category><category><![CDATA[автоматизация]]></category><category><![CDATA[excel automation]]></category><category><![CDATA[ai разработка]]></category><category><![CDATA[cursor ide]]></category><category><![CDATA[архитектура приложения]]></category><category><![CDATA[pet project]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[SQL квалии]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1016644/</guid>
      <link>https://habr.com/ru/articles/1016644/?utm_campaign=1016644&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<p>Есть мнение, что&nbsp;принципиальной точкой в&nbsp;развитии ИИ станет обретение им сознания. Что&nbsp;такое со‑знание, как&nbsp;оно появляется и «работает» (у Жизни, у&nbsp;нас, у&nbsp;ИИ) разговор отдельный. Но&nbsp;говоря о&nbsp;сознании нельзя пройти мимо темы так называемый «квалий», на&nbsp;использовании которых в&nbsp;качестве своеобразной базы данных как&nbsp;считается сознание и основывает свою работу. Конечно&nbsp;же есть множество&nbsp;литературы на&nbsp;эту тему, в&nbsp;т.ч. и Д. Чалмерс, однако к.м.к. всё&nbsp;же имеет смысл схематически показать что&nbsp;такое квалии, как&nbsp;они получаются и работают на&nbsp;краткой, простой и понятной модели с&nbsp;использованием ПК и языка SQL.</p> <a href="https://habr.com/ru/articles/1016644/?utm_campaign=1016644&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Создать квалию</a>]]></description>
      
      <pubDate>Mon, 30 Mar 2026 20:06:25 GMT</pubDate>
      <dc:creator><![CDATA[DJP]]></dc:creator>
      
      <category><![CDATA[Квалии]]></category><category><![CDATA[Сознание]]></category><category><![CDATA[SQL]]></category><category><![CDATA[искусственный интеллект]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Apache Superset — боремся с фильтрами по дате. Часть 2]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1016384/</guid>
      <link>https://habr.com/ru/articles/1016384/?utm_campaign=1016384&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/485/daa/fe0/485daafe0e31d6f20a423f6da9b4ba89.jpg" /><p>В этой статье продолжаем борьбу с фильтрами по дате в Apache Superset. Сегодня разберем, как реализовать подобие логики remove_filter в старых версиях (до 5), чтобы виртуальный датасет не оборачивался фильтрами.</p> <a href="https://habr.com/ru/articles/1016384/?utm_campaign=1016384&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Mon, 30 Mar 2026 06:44:45 GMT</pubDate>
      <dc:creator><![CDATA[select_zvezdo4ka_from]]></dc:creator>
      
      <category><![CDATA[apache superset]]></category><category><![CDATA[jinja]]></category><category><![CDATA[фильтр]]></category><category><![CDATA[дата]]></category><category><![CDATA[танцы с бубном]]></category><category><![CDATA[визуализация]]></category><category><![CDATA[большие данные]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Платежи в Telegram без регистраций и ИП: как я сделал бота на Stars и Mini App]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/1016010/</guid>
      <link>https://habr.com/ru/articles/1016010/?utm_campaign=1016010&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/getpro/habr/upload_files/891/bfe/31e/891bfe31e3c0dff51f00cfded20d5142.png" /><p><strong>Почему я решил сделать свой платёжный бот</strong></p><p>Я просто хотел принимать платежи и донаты в своём Telegram-канале. Ничего сложного: кинул ссылку — получил деньги. Но когда начал смотреть существующие сервисы (Трибьюн, BotPay и подобные), столкнулся с одним и тем же: регистрация, паспорт, ИП, привязка карт. Мне это было неприятно — как будто чужой дядька лезет в интимные места.</p><p>Я не хотел светить данные, не хотел оформлять юридическое лицо, не хотел возиться с налоговой. Хотел просто продавать мануалы и принимать донаты, используя встроенную валюту Telegram — Stars.</p><p>Так родилась идея сделать своего бота: анонимного, без регистраций, без паспортов. Чтобы любой человек, у которого есть Telegram, мог создать товар, кинуть ссылку и получить деньги.</p> <a href="https://habr.com/ru/articles/1016010/?utm_campaign=1016010&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать далее</a>]]></description>
      
      <pubDate>Fri, 27 Mar 2026 14:08:17 GMT</pubDate>
      <dc:creator><![CDATA[Web_5]]></dc:creator>
      
      <category><![CDATA[Python]]></category><category><![CDATA[aiogram]]></category><category><![CDATA[Mini App]]></category><category><![CDATA[Stars]]></category><category><![CDATA[платежи]]></category><category><![CDATA[донаты]]></category><category><![CDATA[Telegram Stars]]></category><category><![CDATA[Nginx]]></category><category><![CDATA[HTTPS]]></category><category><![CDATA[WebApp]]></category>
    </item>
  

  

  

	
  

  

  

      

      

      

    
  </channel>
</rss>
