Рубрика «базы данных»

Недавно мне дали тестовое задание на проектирование интеграции между 1С и Yandex 360. На первый взгляд задача выглядела достаточно прямолинейно: 1С формирует письмо, дальше его нужно передать в почтовую систему, отправить и получить информацию о результате. Но в исходном ТЗ не было отдельного сервиса на Go. Я добавил его сам. И в этой статье хочу разобрать не столько само тестовое задание, сколько процесс принятия архитектурного решения: зачем вообще добавлять ещё один компонент и в какой момент он действительно оправданЧитать полностью »

На шаге «Установка монопольного режима» мастер «Обновление конфигурации базы данных» крутит индикатор уже восемь минут, а в консоли кластера 1С:Предприятие 8.3 в списке сеансов информационной базы «СервисЗапчасти» (1С:Комплексная автоматизация 2.5, клиент‑сервер, SQL Server) пусто.

Хронология

  • 20:02 — согласовали окно: остановить обмен РИБ, уведомить склад и сервис, отключить регламентное задание «СинхронизацияОстатковWMS» на время cf.

  • 20:11 — администратор запустил конфигуратор от имени доменной учётки, принял cf из хранилища, открыл «Обновление конфигурации базы данных».

  • Читать полностью »

Зачем нужны векторные БД в эпоху LLM - 1

Не открою секрет, если скажу, что обычный поиск по ключевым словам уже не особо помогает. Чтобы нейросети могли отвечать точно, опираясь на ваши корпоративные базы знаний, им нужно «понимать» смысл текста. А это уже сложнее, чем просто искать точные совпадения букв. 

Читать полностью »

Перед сделкой с альткоином мне обычно нужно быстро ответить на два вопроса: есть ли у цены выраженное направление и происходит ли в монете что‑то заметное прямо сейчас. Смотреть для этого десяток страниц на разных биржах неудобно, поэтому я собрал небольшой сканер.

Пользователь отправляет тикер и получает три результата:

  • направление от -100 до 100;

  • активность от 0 до 100;

  • итоговый статус: FLAT, NEUTRAL, LONG, SHORT или усиленный вариант сигнала.

Читать полностью »

TL;DR. В распределённой СУБД YDB (читается вай‑ди‑би) векторный поиск по kmeans‑tree индексу раскрывался оптимизатором в цепочку из нескольких стадий StreamLookup. Это работало, но порождало большие планы запросов и существенно затрудняло оптимизации самого поиска. Я заменил эту цепочку одним специализированным read‑актором TKqpVectorSearchActor, который берёт всю логику обхода индекса под свой контроль, а не размазывает её по независимым стадиям.

Результат на стенде: 226.8 → 290.9 запросов/с (+28%), p50 42 → 33 мс, p99 66 → 53 мсЧитать полностью »

8 июля у PostgreSQL юбилей — ей исполняется 30 лет. В 1996 году Марк Фурнье из компании Networking Services предоставил первый внешний сервер для разработки опенсорсного проекта Postgres. До этого СУБД разрабатывали на мощностях Калифорнийского университета в Беркли .

В день рождения PostgreSQL мы публикуем перевод статьи, которая послужила основой этой СУБД. Кстати, у неё тоже юбилей — 40 лет с момента выхода.

Читать полностью »

Компании используют парсинг каждый день: мониторинг цен, сбор контактов, агрегация объявлений. При этом большинство не задумывается о правовых рисках, ссылаясь на то, что «интернет открытый». В статье разбираю, что говорит закон и чем закончились реальные споры.

Парсинг (скрапинг) — автоматизированный сбор данных с сайтов. Технически всё выглядит просто: задаёшь условия, программа проходится по сайту, сортирует данные, выдаёт отчёт. Однако юридически могут возникать определенные риски.

Когда парсер проходится по сайту, он потенциально затрагивает сразу несколько правовых режимов:

Когда сервис поднимается по 8-15 минут, команда почти всегда начинает крутить одни и те же ручки: увеличивает initialDelaySeconds, добавляет startupProbe, поднимает progressDeadlineSeconds, иногда переносит миграцию в initContainer и считает, что стало «по-кубернетесному». Обычно это не лечение. Это способ аккуратнее завернуть проблему в YAML. Если тяжёлая миграция живёт внутри старта приложения, вы связали жизненный цикл Pod, rollout Deployment и поведение базы в один общий узел. А такие узлы в проде рвутся не там, где их ждут.

Есть очень узнаваемая картина. Новый релиз выкатывается нормально на staging, а в production внезапно «висит». kubectl get podsЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js