Я хотел бы перенести мой db, который в настоящее время находится на mysql, на C *. На данный момент у меня есть таблица, в которой мне трудно представить, как ее «перенести».рейтинг, где оценка - это функция времени
Сущность
- Id
- балл (ов)
- hotscore
Где hotscore является F (S, d) = log10 + (s.t/45000). S - это оценка, а t - временная метка с эпохи.
По существу, я бы изучал запросы - это топ-20 этого объекта. С mysql и работой cron я обновляю hotscore каждую минуту. По этой причине горячий балл не подходит для ключа раздела. Я пытаюсь понять, могу ли я это сделать, прежде чем переходить к c *. Насколько я знаю, первичный ключ, такой как (id, hotscore)
, не был бы хорошим, потому что это означает, что C * должен проверять каждую запись.
Отлично! на боковой ноте, которую я сейчас читаю о ScyllaDB, которая утверждает, что является лучшей версией cassandra, в 10 раз быстрее, «plug-and-play». Вы знаете об этом? – Ced
Я немного читал про ScyllaDB, и это звучит интересно. Я хотел попробовать, но, как ни странно, пока нет версии для Ubuntu. Я думаю, что 10-кратное число исходит из теста кластера с одним узлом, что похоже на странный тестовый пример. Им действительно нужно протестировать большие кластеры, чтобы сделать хорошее сравнение. Идея использовать C++ вместо java и очерчивать ядра процессора, похоже, может дать хорошее повышение производительности, но время покажет. На самом деле я больше заинтересован в полной поддержке SQL в C *, чем в более высокой производительности, но и высокая производительность всегда приветствуется. –
@well сейчас – Ced