172 похожих чатов

А я правильно понимаю, что меня отговарили от системы 1

канал - 1 таблица, потому что СУБД автоматически сожмёт одинаковые ключи (id каналов)? Потому что я иначе вообще не вижу экономии места.

29 ответов

25 просмотров

1 канал чего?

создайте одну таблицу, сделайте партицирование по id/названию канала и не парьтесь. Создаваю кучу таблиц вы раздуваете системные каталоги, это не есть хорошо

central hardware
1 канал чего?

Сервиса. В нём много каналов. Раньше я делал структуру, когда таблицы каждого канала были как-то так: sql CREATE TABLE channels.users_<ID КАНАЛА> ( ... ) CREATE TABLE channels.messages_<ID КАНАЛА> ( ... ) И запросы делал через EXECUTE и форматы. Но мне сказали что это бредовая архитектура (из-за каких-то правил). Я сел её перерабатывать, когда ID каналов выносятся в отдельный столбец вместо названия таблицы. Ну послушал. Но не понял сути, разве что облегчения работы.

Kairat
создайте одну таблицу, сделайте партицирование по ...

А вы в курсе, что на каждую партицию такая же запись в системный каталог делается? И даже наверное больше.

Роман Жарков
А вы в курсе, что на каждую партицию такая же запи...

По-этому я и не понял экономии. Разве что мой ***изм с форматами больной перестал быть нужен.

Nickelodeona K
просто хочу напомнить про jsonb, вдруг поможет...

Тоже знаю, пытался применить, но не представляю, где он мне может пригодится именно в данном вопросе.

Роман Жарков
А вы в курсе, что на каждую партицию такая же запи...

Хмм, вы правы. Меня смутил момент, что не вижу партиции в списке таблиц через IDE, подумал, что партиции записываются только в часть системных каталогов, а это полноценные таблицы. Однако, партиции все же лучше, чем куча одинаковых таблиц с разным названием

> мне сказали что это бредовая архитектура Потому что это совершенно бредовая архитектура. > а (из-за каких-то правил) Я ещё Вам могу сказать, что архитектура, которая предполагает, что 10*10=17, бредовая. Из-за "правила", что 10*10=100. Понимаете, к чему я веду? ;) Так вот, реляционные БД тоже основаны на соответствующей теории (вообще, RDBMS созданы не ради какой-то идиотской экономии на битах). И в том числе существует формальная теория проектирования их схем, поэтому channels.users_<ID КАНАЛА> — это примерно так же "гениально", как 10*10=17. > Но не понял сути, Так почему бы Вам не почитать любой учебник по реляционным СУ(БД)? > разве что облегчения работы. Это одна из целей, да.

central hardware
На какой сотне тысяч таблиц пг скажет прощай ?

Define "прощай". ;) В соседнем (одном из английских) чате я как-то показывал, как "весело" будет при нескольких миллионах таблиц — можете поискать (я точно не помню, в каком и когда)...

Yaroslav Schekin
> мне сказали что это бредовая архитектура Потому...

1 > Я ничего не отрицаю. Я в этом не разбираюсь, поэтому и спрашивал 2 > Ещё раз повторюсь. Я этого не знал. Мне показалось логичным выносить ID канала в название таблицы, поскольку это статичное долгоиграющее значение.

Yaroslav Schekin
Define "прощай". ;) В соседнем (одном из английски...

ну опиши веселье в двух словах в этом чате)))

Nickelodeona K
ну опиши веселье в двух словах в этом чате)))

Кому надо — найдёт (и принесёт сюда ссылку). Мне не надо. ;)

Nickelodeona K
всмысле клиентский код?

Ну что у него там работает с базой

mister_svinia⸙ꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋ
Телеграмм на максималках.

бери сразу несколько инстансов бд и вручную распределяй нагрузку

mister_svinia⸙ꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋꠋ
Сервиса. В нём много каналов. Раньше я делал струк...

ALTER TABLE ATTACH PARTITION без блокировки появилось в 12 версии, так что с точки зрения highload до 12 версии ваше решение лучше чем партицирование встроенными средствами

S B
ALTER TABLE ATTACH PARTITION без блокировки появил...

Ну с учётом что половина моего результата это работа GPT.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта