@kiiii
Молодойучупитон

Какую базу данных использовать для телеграмм-бота?

Нужно хранилище данных для телеграмм-бота (БД для текстовых сообщений ). Подскажите пожалуйста, какую базу данных лучше использовать.
Будет круто, если кроме ответа на вопрос, оставите учебный материал по этой БД.
  • Вопрос задан
  • 3020 просмотров
Пригласить эксперта
Ответы на вопрос 2
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
Всё зависит от того, какие задачи будут у вашего бота, какая будет у него архитектура, насколько сложные модели данных, собираетесь ли использовать ORM и какой именно.
А может быть вам реляционная структура БД и вовсе не нужна и больше подойдёт NoSQL база данных.
там их великое множество с разными возможностями и ограничениями от простых хранилищ ключ-значение, до развесистых и навороченных.

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

С Монгой вы избежите необходимости возиться со схемой БД, можно избежать специфического процесса инициализации базы, создания ее структуры.
Если данные, которыми будет оперировать ваш бот разнообразны, то неплохая идея написать модели в виде обычных питоновских классов, сделать методы сериализации (сохранения) в БД и десериалиации (загрузки) и забыть о базе как о какой-то отдельной сущности. Можно сконцентрироваться на логике работы.

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

P.S.
Прошу прощения за капитанские ссылки в тексте, но каков вопрос, таков и ответ.

P.P.S.
Должен признать, что я довольно предвзят в пользу монги. Скорее всего вам подойдёт всё что угодно.
Меньше всего потребует настройки и знания, видимо, sqlite. Это embedded база данных, она заточена для простого использования. Однако если вам вдруг понадобится запускать несколько инстансов вашего бота, которые будут работать с одной БД, то посмотрите всё же в сторону MongoDB или Postgres. Mysql стал сдавать позиции и нет особых причин не использовать postgres, если вам нужна именно реляционная БД.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
28 мар. 2024, в 21:17
5000 руб./за проект
28 мар. 2024, в 20:46
150000 руб./за проект
28 мар. 2024, в 20:37
50000 руб./за проект