Size: a a a

Django [ru] #STAY HOME

2020 August 17

VS

Viktor Sh in Django [ru] #STAY HOME
Бд Postgress
источник

N

Nire in Django [ru] #STAY HOME
Viktor Sh
Всем привет! Направьте пожалуйста начинающего:
Задача в том, что бы обращаться к таблицам с разными названиями, но одинаковой структурой. Например, есть один клиент, у него список рекламных кампаний, ключевых слов и так далее, но только для этого клиента, для этого в название каждой такой таблицы добавляется суффикс с ID этого клиента...
джанго 3 интересует, умеет ли стандартными методами так работать?

Спасибо!
JsonField заюзать, не?
источник

VS

Viktor Sh in Django [ru] #STAY HOME
Пока 4000 клиентов и суммарно 90 000 000 ключевиков по всем клиентам
источник

N

Nire in Django [ru] #STAY HOME
В случае какой-то не структурной фигни в таблице, всегда пихаю в жсон
источник

N

Nire in Django [ru] #STAY HOME
Например теги, и их подтеги
источник

DB

Dima Boger in Django [ru] #STAY HOME
Nire
В случае какой-то не структурной фигни в таблице, всегда пихаю в жсон
Так она структурная
источник

N

Nire in Django [ru] #STAY HOME
Dima Boger
Так она структурная
Ну я не знаю изначально уровень вложенности
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Viktor Sh
Для безопасности, и для избежания коллизий, для дальнейшего распределения по серверам (типа партиция)
а чего не следалить партиции средствами бд? а не самим
источник

VS

Viktor Sh in Django [ru] #STAY HOME
Да, там структура уже выверенная. Просто если всё в одной таблице, пользователи мешают друг другу, там коллизии возникают
источник

N

Nire in Django [ru] #STAY HOME
Viktor Sh
Да, там структура уже выверенная. Просто если всё в одной таблице, пользователи мешают друг другу, там коллизии возникают
Как эта? Пример
источник

DB

Dima Boger in Django [ru] #STAY HOME
Какие коллизии?
источник

DB

Dima Boger in Django [ru] #STAY HOME
Если что — есть вот такой грязный хак https://stackoverflow.com/a/29410957

Но он отстрелит ногу на всём, что касается интраспекции джанго — т.е. может выстрелить буквально где угодно
источник

DB

Dima Boger in Django [ru] #STAY HOME
Я голосую за решение без хака, партиции решаются на уровне баз, коллизии — более сложными констрейнтами
источник

VS

Viktor Sh in Django [ru] #STAY HOME
Nire
Как эта? Пример
Когда кто-то массово перезаливает ключевики, или новый клиент синхронизирует данные, некоторые другие клиенты не могут создавать свои ключевики так как таблица вся занята
источник

N

Nire in Django [ru] #STAY HOME
Viktor Sh
Когда кто-то массово перезаливает ключевики, или новый клиент синхронизирует данные, некоторые другие клиенты не могут создавать свои ключевики так как таблица вся занята
Через очередь не решается?
источник

N

Nire in Django [ru] #STAY HOME
Если операция долгая, то лучше отдельно её мутить, имхо
источник

VS

Viktor Sh in Django [ru] #STAY HOME
Ну вот приходится постоянно это мониторить, из-за этого скорость работы падает
источник

SR

Sergey Rudnitsky in Django [ru] #STAY HOME
Dan Tyan
setup

должен быть до импорта моделей
Он до импорта моделей.  setup() выходит с ошибкой ModuleNotFoundError: No module named '"medical'  medical - это наименование проекта, в этом каталоге лежат settings, urls и wsgi (это сервер разработки под windows, затем я хочу перенести программу на python, которая лежит здесь же и запускается, на продуктовый сервер). Какую-то мелочь я не допонимаю
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Viktor Sh
Когда кто-то массово перезаливает ключевики, или новый клиент синхронизирует данные, некоторые другие клиенты не могут создавать свои ключевики так как таблица вся занята
так это значит у вас ключ партиционирования не ок)

ибо партиции = разные таблицы
источник

VS

Viktor Sh in Django [ru] #STAY HOME
Nire
Через очередь не решается?
А сейчас и нет партиций :) собственно вместо этого решили изолировать жестко каждого клиента своим пространством таблиц
источник