Зачем чат-боту нужна база данных

«Развёртывание базы данных — 15 000 ₽», «настройка базы данных — 10 000 ₽», «поддержка базы — 3 000 ₽ в месяц». Такие строчки мы регулярно видим в сметах, которые клиентам присылали другие подрядчики. Расчёт простой: для заказчика база данных — что-то непонятное и пугающее, а за непонятное легко выставить счёт. Объясняем простыми словами, что такое база данных для чат-бота, когда она нужна, а когда нет, чем облачная база отличается от своей и сколько всё это должно стоить на самом деле.

Что такое база данных простыми словами

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

Пример. Клиент записался через бота и указал имя, фамилию, отчество и почту — эти данные легли в базу, в раздел «Клиенты». Он заказал три бутерброда — заказ сохранился в разделе «Заказы». Вы оформили документ на отгрузку — он тоже записался в базу. Со временем там накапливается вся история работы с клиентами: кто, что, когда и на какую сумму.

Сколько стоит база данных для чат-бота

Если у вас не сотни тысяч посещений в день, нормальный подрядчик отдельно за базу данных денег не возьмёт. База данных — такой же строительный кирпичик системы, как кнопки или меню бота. Она по умолчанию входит в разработку, будь то чат-бот, сайт или CRM.

Если в смете отдельной строкой стоит «развёртывание базы данных» или «настройка базы данных» — это повод задать вопрос. Скорее всего, вам пытаются продать то, что и так должно входить в работу.

О том, за что в разработке бота платить действительно приходится, мы подробно рассказали в статье «Что влияет на стоимость разработки чат-бота?».

Нужна ли база данных вашему боту

Не всегда. Простому боту-лид-магниту, который принимает заявку и сразу пересылает её вам в личные сообщения, база данных не нужна: он ничего не хранит, а просто передаёт.

База данных нужна, как только хоть что-то должно сохраняться:

Что делает ботНужна ли база данных
Принимает заявку и пересылает её менеджеруНет
Записывает клиентов на услуги, ведёт расписаниеДа
Принимает заказы и оплатыДа
Хранит переписку, письма, файлы, документыДа
Начисляет бонусы, ведёт историю покупокДа

Облачная база данных или своя на сервере

Сейчас появилось много простых баз данных для тех, кто мало работает с кодом и не хочет вникать в детали: облачные сервисы и базы, которые идут в комплекте с арендованным сервером. Есть и второй путь — разработчик сам разворачивает базу данных на вашем сервере. Разберём оба.

Облачная база данных

Её размещает у себя сторонняя компания: она берёт на себя хранение, администрирование и обслуживание, а вы просто пользуетесь. Это удобно и надёжно, если ни вы, ни ваш разработчик не хотите разбираться в базах данных. Но у облака есть обратная сторона:

  • Абонентская плата. За облачную базу вы платите каждый месяц, хотя своя база на сервере ничего не стоит.
  • Лимиты и тарифы. Когда пользователей станет больше — скажем, 10 000 в день, — вам, скорее всего, предложат перейти на более дорогой тариф.
  • Скорость и гибкость. При серьёзной нагрузке облачная база быстро упирается в свои ограничения.
  • Привязка к сервису. У таких баз часто свои способы обмена данными. Когда система разрастётся и придётся переезжать в полноценную базу, переезд будет долгим и болезненным.

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

При этом облачная база — нормальный выбор, если система небольшая, не будет сильно расти и не нужна вам на годы вперёд. А если база идёт в подарок к хостингу, это ещё и экономно. Перед подключением проверьте скрытые платежи и лимиты: не окажется ли, что через месяц за неё придётся платить 5 000 ₽.

Своя база данных на сервере

Разработчик разворачивает базу там же, где работает код бота или сайт. Подробнее о том, зачем боту сервер, — в статье «Зачем чат-боту нужен сервер».

Плюсы своей базы:

  • Полный контроль. Данные никуда не денутся, и никто не попросит перейти на тариф подороже на десятитысячном пользователе.
  • Никакой абонентской платы за саму базу.
  • Скорость, гибкость и управляемость — сейчас и когда система вырастет.

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

Облачная базаСвоя на сервере
Ежемесячная платаЕсть, растёт с нагрузкойНет
Кто отвечает за работуСервисВаш разработчик
Скорость под нагрузкойОграничена тарифомВысокая
Переезд в будущемСложныйНе нужен
ПодходитНебольшим системам без планов ростаСистемам, которые будут расти

Что важно для надёжной базы данных

Правильная архитектура

Базу данных мало просто создать — её нужно правильно спроектировать. Если поручить это нейросети или разработчику без опыта работы с базами, через месяц-другой система может начать тормозить и сбоить. Способов оптимизации много, они не очень сложные, но о них нужно знать — а искусственный интеллект их часто не учитывает.

Резервные копии

Резервное копирование базы данных (бэкап) обязательно. Делать копии достаточно раз в сутки. Сколько их хранить — решать вам: кому-то достаточно последних суток, кто-то держит копии за месяц.

Главное правило: копии нужно хранить не на том же сервере, где работает база, а в другом месте — на втором сервере, на вашем компьютере или хотя бы присылать их вам на почту. Тогда, что бы ни случилось — взлом, кража, поломка, — вы восстановите данные и не будете платить выкуп вымогателям.

Какую базу данных выбрать

Этот вопрос лучше оставить разработчику. Но ориентир дадим: сегодня самые стабильные и мощные варианты — PostgreSQL и MongoDB. На них работают почти все сколько-нибудь серьёзные компании.

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

Итого: зачем нужна база данных

База данных нужна боту, как только он должен что-то хранить: клиентов, заказы, записи, документы. Платить за неё отдельно не нужно — она входит в разработку. Для небольшой системы подойдёт и облачная база, если вы проверили лимиты и скрытые платежи. Для системы, которая будет расти, лучше своя база на сервере — с продуманной архитектурой и ежедневными резервными копиями в другом месте.

Хотите понять, нужна ли база данных вашему боту и сколько будет стоить разработка? Ответьте на несколько вопросов в калькуляторе стоимости или оставьте заявку — разберём вашу задачу.

Частые вопросы

Сколько стоит база данных для чат-бота?

Если у вас не сотни тысяч посещений в день, отдельно за базу данных платить не нужно: она входит в разработку бота. Ежемесячно платить придётся только за облачную базу — свою базу на сервере вы не оплачиваете.

Нужна ли база данных простому боту?

Если бот только принимает заявку и сразу пересылает её вам, база данных не нужна. Она понадобится, как только бот должен что-то хранить: клиентов, записи, заказы, документы, историю покупок.

Что лучше: облачная база данных или своя на сервере?

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

Как часто делать резервные копии базы данных?

Достаточно раз в сутки. Хранить копии нужно не на том же сервере, где работает база, а на другом сервере, компьютере или в почте — тогда данные можно восстановить после взлома или поломки.

Какую базу данных выбрать для чат-бота?

Выбор лучше оставить разработчику. Самые стабильные и мощные варианты сегодня — PostgreSQL и MongoDB. Если разработчик предлагает другое, стоит спросить, почему.

Записаться на консультациюВсе статьи

Чат-бот развязывает руки на сложном рынке

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

Удобнее написать самим?

Telegram @artforteam+7 (999) 820-30-49