
Alexander
06.09.2017
18:08:32
Сейчас так и сделаю :)

Alexandr
06.09.2017
18:12:20
https://github.com/cockroachdb/cockroach
Я советую сюда посмотреть
У меня сомнения только по производительности

Google

Alexandr
06.09.2017
18:14:17
Но доменную область опишите

Alexander
06.09.2017
18:19:08
Необходимо хранить отношения закладок пользователей (кто кого добавил в закладки). Отношение имеет вид: initiator_id;target_id. Два пользователя могут добавить друг друга в закладки. Действия над данными: проверка существования отношения exists(initiator_id; target_id), добавление закладки: insert(initiator_id; target_id), загрузка списка закладок по инициатору и удаление закладки. Предполагается, что один пользователь может добавить от 0 до 20000 других пользователь в закладки. Чаще всего будут проверки exists и добавления. Отношений могут быть миллиарды, поэтому нужно быстро добавлять новые ноды с минимальной конфигурацией после добавления

Alexandr
06.09.2017
18:20:32
У вас что, сейчас миллионы пользователей?

Alexander
06.09.2017
18:20:51
Допустим, что да

Alexandr
06.09.2017
18:21:28
Тогда как вы самих пользователей храните?

Alexander
06.09.2017
18:22:08
Имя и id, который автоинкремент

Alexandr
06.09.2017
18:22:13
Если у вас реляционная модель, то в ней и работайте
И миллиард записей постгрес вытянет
Если уж вас приспичило на маштабуруемость, то думайте о дата локалити

Alexander
06.09.2017
18:24:03
Сейчас не очень, если честно

Alexandr
06.09.2017
18:24:20
Пользователь должен как можно ближе лежать к своим закладкам

Alexander
06.09.2017
18:24:26
Особенно когда происходим автовакуум

Alexandr
06.09.2017
18:25:08
Так делиты и апдейты частые?

Google

Darafei
06.09.2017
18:25:24
лучше хранить списками

Alexander
06.09.2017
18:25:35
Insert частые

Darafei
06.09.2017
18:26:10
я копию вконтакта храню так, без всяких массивов - запросы довольно больно делать

Alexander
06.09.2017
18:26:11
Но в текущей реализации есть и update, в новой не будет
Только индекс у этим данных занимает 16 гб
Сами данные ещё около 10

Alexandr
06.09.2017
18:28:04
Попробуйте cockrouchdb
А, кстати
Есть же citus
Туда же перетаскивайте пользователей и будет счастье

Alexander
06.09.2017
18:32:33

Alexandr
06.09.2017
18:32:33
Мы пробовали его использовать, но потом все же на кассандру перешли

Fike
06.09.2017
18:33:20

Alexander
06.09.2017
18:33:35

Fike
06.09.2017
18:33:53
Можно
тогда вопрос про транзакции должен сам сняться

Alexander
06.09.2017
18:36:22
Я тогда просто спросил для общего развития :)
Спасибо всем на советы и идеи

Artem
06.09.2017
19:07:26

Google

Alexander
06.09.2017
19:08:07

Alexandr
06.09.2017
19:16:00
Там нет апдейта

Dmitrii
06.09.2017
19:16:26
Так а разве это кто-кого доставил в закладки...
Очень похоже на друзьяшек
Может тогда посмотреть в сторону графовых БД?

Guardian
06.09.2017
19:20:33
Коллеги, добрый вечер. Где-то, помнится, была ссылка, пригодная для давания принимающим решение товарищам, с описанием преимуществ postgresql
В контексте импортозамещения и не только
Не подскажете? Не могу навскидку найти

Dmitrii
06.09.2017
19:22:36
Собрались замещать импортное на импорт?
</politic>

Guardian
06.09.2017
19:24:08
Хочется найти текст с рекомендациями приводящими к выбору pgsql. Postgres Advocacy, в общем

Dmitry
06.09.2017
19:28:57
преимущество - величина относительная, а не абсолютная

Mikhail
06.09.2017
19:31:01
Опять надо Сашу Короткова

Vadim
06.09.2017
19:32:17

Guardian
06.09.2017
19:32:43
Это не совсем то — это о технологии, а нужны правильные слова не для программера, а для директора

Mikhail
06.09.2017
19:33:02
@aekorotkov
Саша, нужен чек лист фичей
Для выбора postgres а
Против остального

Vadim
06.09.2017
19:33:59

Google

Guardian
06.09.2017
19:34:10
Коротковато. Не поймут-с ?

Mikhail
06.09.2017
19:34:56
Пока вот такое гляньте
https://www.postgresql.org/about/featurematrix/

Guardian
06.09.2017
19:35:06
Там нужно про сравнимость функциональности, но наличие сильной отечественной школы, коммерческой поддержки в РФ, сертифицированности, совместимости с Astra, etc, etc
Да, Михаил, спасибо, это хорошая инфа, но не совсем то ? Вы же, скажем, министру это не будете показывать? ?

Mikhail
06.09.2017
19:36:22
Я буду например
Это

Guardian
06.09.2017
19:36:37
Ок, но он не оценит, мне кажется.

Mikhail
06.09.2017
19:36:46
Ну в Росреестре есть postgrespro
Тогда надо внутри реестр бенчить

Аггей
06.09.2017
19:37:29

Dmitry
06.09.2017
19:37:31
Ну а пусть министр в чатик придет и спросит. Ему расскажем все. А что, решение по уровню бреда не сильно отличается от уже сказанного ранее тут.

Mikhail
06.09.2017
19:38:07
В реестре отечественного ПО
Я про это

Аггей
06.09.2017
19:38:24
Ааа
Просто в Росреестре - oracle )

Mikhail
06.09.2017
19:38:44
А министр приезжал кстати на тусовку postgres в Москве
Он в теме
Ну текущий министр
Не факт что он будущий

Google

Pavel
06.09.2017
19:39:42

Mikhail
06.09.2017
19:42:10
http://www.sql-workbench.net/dbms_comparison.html

Alexander
06.09.2017
19:42:15

Mikhail
06.09.2017
19:42:24
Но такие штуки грешат неточностями
@aggeisoft ^

Pavel
06.09.2017
19:43:07
Миллион так спокойно

Аггей
06.09.2017
19:46:17

Mikhail
06.09.2017
19:46:43
Саше Короткову написал

Darafei
06.09.2017
19:46:45
вконтакт свою базу написал, https://github.com/vk-com/kphp-kdb/blob/master/docs/ru/DBMS_Storage_Comparison.wiki

Mikhail
06.09.2017
19:46:51
Глянет скорее всего сюда
Я точно знаю что у них есть такое
Но мне уже самому лень щас искать/гуглить

Taras ?
06.09.2017
20:01:18
с самим kphp еще туда-сюда (хотя тоже не айс без доков), а с движками - вообще ... короч не для нубов типу меня
куча неочевидностей и все методом тыка находить..
к примеру булевые and/or там не поддерживаются, только &&/|| , только хардкор

Yura
06.09.2017
20:48:40

Pavel
06.09.2017
20:49:24
По времени выборок и вставок вкупе с оверхедом - значительно значительно лучше

Yura
06.09.2017
20:49:52
Оверхед на больших множествах в редисе - будь здоров.
Но, учитывая, что большинство множеств маленькие, наверное жить можно.

Pavel
06.09.2017
20:50:39
Ну 20000 элементов не так уж много

Yura
06.09.2017
20:52:00
Есть порог "маленького множества". Пока число элементов меньше порога, оверхед по памяти маленький. Как только переваливает за порог, оверхед становится огромным.