
Yakov
29.04.2016
09:03:04

Ivan
29.04.2016
09:04:50

parikLS
29.04.2016
09:05:34

Aragaer
29.04.2016
09:06:17
пользователь может вставить новую строчку в любую позицию таймлайна

Google

Aragaer
29.04.2016
09:06:50
то есть слово "тайм" в "таймлайн" не означает сортировку по времени. Это именно тот порядок, в котором отдается пользователю
открыл для себя графовые базы данных, буду думать

Roman
29.04.2016
09:15:21

Ivan
29.04.2016
09:15:35
так же как и python 3, redis и postgres
нет, ну можно как рамблер рассказывать про asyncio, а на вопросы мяться и говороить что ну есть джанга, ну есть python 2

ultranoise ?
29.04.2016
09:23:17
а что не так с тем докладом про асинкио?
я не смотрел, но отложил
стоит того?

Ivan
29.04.2016
09:23:34
с докладом всё норм

Roman
29.04.2016
09:23:43

Ivan
29.04.2016
09:23:44
это просто коммент про ожидания и реальность

Google

ultranoise ?
29.04.2016
09:24:09
а, я про другой подумал
а это ваш RIAK очень популярен? это же надо эрланг еще знать наверное

bakatrouble
29.04.2016
09:24:37

Ivan
29.04.2016
09:25:00

Roman
29.04.2016
09:26:07
Во-первых, штатный event loop в asyncio медленный

Ivan
29.04.2016
09:28:05

Roman
29.04.2016
09:29:24

Deus
29.04.2016
09:29:29
фак
отошел на 5 минут, тут уже холивар

Ivan
29.04.2016
09:30:02

Roman
29.04.2016
09:30:34

Ivan
29.04.2016
09:30:47

Roman
29.04.2016
09:33:33
И nginx - не балансировщик

Deus
29.04.2016
09:35:01
из любопытство, в чем вы на go пишете?
атом какой-нибудь?

87776
29.04.2016
09:36:29
если кому интересны вакансии пишите в личку https://hh.ru/employer/1710349

Ivan
29.04.2016
09:36:57

Deus
29.04.2016
09:37:14
ага

Sergey
29.04.2016
09:37:15

Google

Ivan
29.04.2016
09:37:22
кто на чём

Deus
29.04.2016
09:37:44
текущая поддержка go в идеи вызывает боль
идее *

Sergey
29.04.2016
09:37:59
угу
я по этому в vsc и перешёл

Ivan
29.04.2016
09:38:14
сам сижу на Sublime, но хочется пересесть на vim

Sergey
29.04.2016
09:38:51

Deus
29.04.2016
09:39:09
вот этот ник
хз, я давно не смотрел
надо глянуть

parikLS
29.04.2016
09:39:23

Aragaer
29.04.2016
09:47:14
вот да
но как хранить в базе данных линкед лист. Есть конструкция для обычных rdbs, но оно как раз очень небыстрое
для документных баз данных там понятно
ну а я вот графовые сейчас для себя нашел, надо будет подумать

parikLS
29.04.2016
09:48:06
ну сделать допустим еще 2 колонки, типа prev_timeline и next_timeline

Aragaer
29.04.2016
09:48:36
да. Но выборка "достать 50 последних записей из таймлайна" будет очень небыстрой

parikLS
29.04.2016
09:48:40
а когда выводишь все записи то делать ордер по prev_timeline asc nulls first
типа такого

Google

parikLS
29.04.2016
09:50:01
и допустим можно проиндексировать prev_timeline и когда будешь выводить с 50 по 100, например, то в случае большой таблицы будет подхватываться индекс и будет норм

Aragaer
29.04.2016
09:50:02
а еще если будет что-то вроде флага "скрытый" для записи - скрытые записи тоже есть в таймлайне, но их не надо выводить. Достать 50 последних нескрытых это ж ваще непонятно как
или делать еще ссылки вида pref_unhidden_timeline
вобщем не, на sql это мазохизм какой-то

parikLS
29.04.2016
09:52:26
а че не понятно, просто добавить where hidden = false

Aragaer
29.04.2016
09:54:54
а сам запросик такой можно?
я вообще слабо представляю, как выдать такую цепочку
сортировать по prev_timeline это неправильно, оно же может указывать в любом направлении

parikLS
29.04.2016
09:56:56
не понял щас

Admin
ERROR: S client not available

parikLS
29.04.2016
09:57:02
можно примерчик?

Aragaer
29.04.2016
09:58:01
три записи. Сначала создана первая, затем вторая после нее, затем третья между ними
в базе данных их айдишники будут 1, 2, 3. next_timeline у них будут соответственно 3, 2, null, prev_timeline - null, 3, 1
у 2 стоит флаг hidden

parikLS
29.04.2016
09:59:12
у первой будет prev_timeline null, у второй - 1, потом когда добавится третяя, то у нее будет prev_timeline - 1, а у второй записи проапдейтим в 2

Aragaer
29.04.2016
09:59:27
надо сделать такой запрос, чтобы он выдал 1 и 3

parikLS
29.04.2016
10:00:07
select * from (
select * from timeline
where hidden = FALSE
order by prev_timeline asc null first
)
WHERE ROWNUM <= 50

Pavel
29.04.2016
10:00:25
а часто вообще будет добавление и какой примерное количество записей всего?

parikLS
29.04.2016
10:00:32
ну эт оракл скл, в mysql там наверн LIMIT какойто

Aragaer
29.04.2016
10:00:48
количество записей - пара десятков в день на каждого пользователя

Google

parikLS
29.04.2016
10:01:17
а количество пользователей?)

Aragaer
29.04.2016
10:02:07
ок, усложнение - в базе есть 150 записей, из них в таймлайне правильный порядок такой: 1-(5)-100-(20)-(60)-50-(22)-(11)-30
в скобках скрытые
остальные не в таймлайне
количество пользователей... условно один

parikLS
29.04.2016
10:03:19
это ты праймари кей указал?

Aragaer
29.04.2016
10:03:23
угу

Dmitry
29.04.2016
10:03:51
вот это все неправильно

Aragaer
29.04.2016
10:04:21
вообще, я не очень знаю, как правильно реализовывать такие штуки с произвольными порядками. Когда я делал штуку, где записей было немного, то у меня отдельно хранилась просто строка с правильным порядком.
но там у меня кроме скулайта выбора не было

Dmitry
29.04.2016
10:04:48
это неправильное решение
думай по другому

Aragaer
29.04.2016
10:05:05
а я и не знаю решения

Dmitry
29.04.2016
10:05:06
зачем тебе хранить сдвиг, если его можно посчитать

Aragaer
29.04.2016
10:05:20
и я не уверен, что мне надо хранить это в sql базе

Dmitry
29.04.2016
10:05:21
зная кол-во записей например
вот вот
и я не уверен

Aragaer
29.04.2016
10:05:42
поэтому мой первый вопрос и был - какую базу выбрать
а мне начали говорить, что sql, просто надо уметь готовить 8)

Dmitry
29.04.2016
10:05:59
ты спрашиваешь какой лопатой копать бетон

Aragaer
29.04.2016
10:06:12
графовая база выглядит чем-то похожим на нужное