Народ подскажите, делаю базовую структуру бд для чата между пользователями,

вот такой вот вариант будет нормальным?

12 ответов

20 просмотров

зачем колонка id в chat_members? И в дальнейшем будет неудобно джойнить, если в chats есть колонка id и в chat_messages колонка id. Лучше их так и называть chat_id и message_id вместо обычного id

Ivanov
зачем колонка id в chat_members? И в дальнейшем бу...

В принципе в данной таблице можно обойтись без id. Только создать все необходимые индексы: https://sqlize.online/sql/mysql57/873617c2e8881a694c80512d983c05a0/

Turik- Автор вопроса
Ivanov
зачем колонка id в chat_members? И в дальнейшем бу...

То есть переименовать некоторые поля, убрать id из chat_members и можно оставлять?

Turik
То есть переименовать некоторые поля, убрать id из...

Для начала да. Остальное зависит от требований к чату. Какие задачи у чата? Где и кем он будет использоваться?

Turik- Автор вопроса
Ivanov
Для начала да. Остальное зависит от требований к ч...

Чат между двумя пользователями, диалог, с временем отправки сообщений, статусом прочитано и юзер онлайном (это уже есть). Как в вк

Turik
Чат между двумя пользователями, диалог, с временем...

В вк есть «ответ на сообщение», значит нужно добавить поле reply_to. Плюс разные типы сообщений (голосовое, текст). Значит поле message должно быть или json, или отдельная таблица с содержимым сообщения. В случае с json, необходима колонка int «версия структуры сообщения». Int чтобы можно было делать выборку больше/меньше.

Turik- Автор вопроса
Ivanov
В вк есть «ответ на сообщение», значит нужно добав...

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

Turik
Пока без всего этого :) Только примитивная перепис...

Если не секрет, какой стек технологий? Я тоже чат делаю (в свободное время). Изначально взял electron, erlang и postgresql, но в процессе заменил electron на flutter

Turik- Автор вопроса
Turik
У меня всё намного проще, php+mysql

Понял. Спасибо. MySQL изначально в вк был, потом почему-то они свой велосипед начали делать. К сожалению, не смог найти информации почему они отказались от общедоступных баз в пользу самописной

Turik- Автор вопроса
Ivanov
Понял. Спасибо. MySQL изначально в вк был, потом п...

Да у них там и пхп свой, видимо кодерам по вечерам скучно было

Turik
Да у них там и пхп свой, видимо кодерам по вечерам...

Похоже на самое правдивое объяснение 😂😂

Похожие вопросы

Обсуждают сегодня

1. https://www.kaggle.com/code/ahmadrezagholami2001/housing-estimation-linear-regression 2. https://www.kaggle.com/code/ahmadrezagholami2001/uncovering-quality-in-wines-logis...
Ahmadreza
1
Hi! Could you please upvote my new notebook? thanks a lot. https://www.kaggle.com/code/melissamonfared/anime-character-generation-dsgan-gan
məru
4
upvote plz https://www.kaggle.com/code/bassetkerouche/swapping-face?scriptVersionId=207300096
benkerrouche Statoinary
1
-- Привет всем. -- Есть csv, проблема в том что он содержит очень много повторов по столбцам и по строкам. -- Решил перекинуть это в базу данных, чтобы было проще. Но я не ша...
Oleg Ivanov
1
Как считаете - вопрос на собесе: «Как быстрее всего запустить ec2 машину в aws (в чистом аккаунте) и показать вывод от любой команды с нее» не очень ли сложный для условного м...
Sergey
50
Господа, у меня вопрос. Что вообще такое этот ваш data science и data scientists? А то гуглю, а мне какую-то расплывчатую фигню говорят.
Inkosta
44
Исходя из ваших комментариев, получается, что чтобы получить марты в CH из данных в PG, неправильно тянуть сырые данные в CH и там их обрабатывать, лепить справочники и джойни...
unhingedlunatic
42
Hi could you please help me with my two new projects? https://www.kaggle.com/code/hesankazemnia/rice-image-classification-cnn-pytorch https://www.kaggle.com/code/hesankazemnia...
Hesan
6
hi, Can you upvote? https://www.kaggle.com/code/durjoychandrapaul/rag-q-a-system-by-langchain-huggingface-for-pdf?scriptVersionId=204704280
A
1
Could you upvote and comment please? https://www.kaggle.com/code/tatianapetrushkevich/beginner-images https://www.kaggle.com/code/tatianapetrushkevich/python-for-beginners1 ...
Tazziyana
7
Карта сайта