ФорумПрограммированиеОбщие вопросы программирования → Хранение "лайков"

Хранение "лайков"

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 12:35 д.п.

    Лаба диена блеядь.

    Кто что думает по поводу архитектуры для хранения такой обычной штуки в наше время как "лайки". Допустим исходные условия - есть миллион записей и их можно лайкнуть (от 0 до десятков-сотен тысяч людей).

    Никто не натыкался на статью где про такое рассказывают? Есть одна интересная идея, и архитектурно любопытная штука и для людей что-то новое (аля гугль сайклз).

    Сапожник без сапог
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 12:49 д.п., спустя 13 минут 13 секунд

    хранить в обычной реляционной базе попахивает пиздой, но всеж не знаю где лучше. Может понадобиться сверхбыстрое read/write/delete/list by story_id

    Сапожник без сапог
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 1:20 д.п., спустя 3 минуты 50 секунд

    @kostyl, гавно же полное. Такую хуйню и я могу тут написать. Я думал чо нить изысканое :)

    Спустя 51 сек.

    аля

    mongodb => "key_$type_$entry_id" => list [{who:$id, when:$id} ...]

    Спустя 34 сек.

    но думаю еще что-нить более изысканое нежели mongodb, сомневаюсь что монга хорошо пережует объект с допустим 50к записей объектов внутри

    Спустя 159 сек.

    типа такого

    Design Decisions for Scaling Your High Traffic Feeds - High Scalability - [highscalability.com]

    Спустя 8 сек.

    в общем профи обосрались как всегда, похуй на вас :)

    Спустя 85 сек.

    сами круги думал можно реализовать на Neo4J графах, оно как раз для такого + realtime вроде поддерживает неплохо. Подумаю еще :)

    Сапожник без сапог
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Янв. 29, 2016, 1:32 д.п., спустя 11 минут 14 секунд

    я тоже сперва подумал про монго, как насчет Cassandra или может HBase?
    графы конечно рулят
    TAO: The power of the graph [facebook.com]

    Спустя 104 сек.

    TAO: Facebook’s Distributed Data Store for the Social Graph | USENIX [usenix.org]

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 2:37 д.п., спустя 1 час 5 минут 10 секунд

    @kostyl, позже почитаю,

    Спустя 9 сек.

    дела надо доделать :(

    Сапожник без сапог
  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz Янв. 29, 2016, 4:02 д.п., спустя 1 час 24 минуты 45 секунд

    строковое liked_by у поста, в него записывать id лайкнувших, через запятую.
    опционально можно добавить liked_posts в свойство юзера, записывать так же через запятую. либо вести отдельную таблицу, куда записывать блоками по 100 лайков.

    все кейсы решаются. можно посмотреть кто лайкнул пост. можно посмотреть, какие посты лайкнул юзер.

    Спустя 47 сек.

    Такую хуйню и я могу тут написать.

    @phpdude, а нах усложнять

    не всё полезно, что в swap полезло
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 4:06 д.п., спустя 4 минуты 40 секунд

    @master, какое то совсем неверное решение. Денормализация это хорошо, но не всегда :) Послушаем что еще скажут наши гении местные :)

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 6:52 д.п., спустя 2 часа 46 минут 2 секунды

    То, что мастер описал хорошо для вывода списка постов, чтобы избежать джойнов в SQL или доп. запросов в key-value. Для вывода, блеать. Не для фильтрации.
    Это, в общем-то, неновая идея, стековерфлоу хранит так список тегов в темах. В дополнение к таблицам tags и post_tags.

    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 6:55 д.п., спустя 3 минуты 4 секунды

    @artoodetoo, да боян это. денормализация со всеми вытекающими.

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz Янв. 29, 2016, 7:51 д.п., спустя 55 минут 35 секунд

    главное быстрый и рабочий баян )))

    ιιlllιlllι унц-унц
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Янв. 30, 2016, 1:02 д.п., спустя 17 часов 11 минут 22 секунды

    @phpdude, ты хоть отпишись чё решил, ок? ))

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 30, 2016, 1:07 д.п., спустя 4 минуты 41 секунду

    @phpdude, ты хоть отпишись чё решил, ок? ))

    @kostyl, пока ничего, думаю еще + занят чутка

    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!