@proGO

Страница 414 из 1674
Славик
19.01.2017
11:19:46
12/60 = 1/5 x * 1/5 = x / 5 round(float64(int * float)) => int / int

Maxim
19.01.2017
11:21:54
блин, думаю что не так... не учел ноль как число

Славик
19.01.2017
11:23:18
но и на примере, который тебя устраивает, уже другое условие что ли

ты хотел 23 -> 25, а на деле тебя уже устраивает 23 -> 20

Google
Славик
19.01.2017
11:23:39
господа, подскажите, вот есть у меня 12 чисел с шагом 5 (5, 10, 15 ... 60), как можно любое другое число (0..60) соотнести с этой группой из 12? типа 23->25, 41->45, 0->5

Maxim
19.01.2017
11:26:22
ну да, ты прав

Антон
19.01.2017
11:26:41
потому что надо юзать https://golang.org/pkg/math/#Ceil а не round

Maxim
19.01.2017
11:31:34
ага, Ceil не round. вариант Славика именно то, что я просил собственно

всем спасибо!

Denis
19.01.2017
15:09:41
http://specto.io/blog/replacing-redis-with-boltdb

Заменили редиску на болт, получили + к перфомансу и ноль ошибок

Maxim
19.01.2017
15:11:12
Заменили редиску на болт, получили + к перфомансу и ноль ошибок
Ну, там довольно тяжело ошибки сделать не по своей криворукости.

Чутка трогал (как раз для своей файлопомойки), насчёт скорости - довольно заметны различия по сравнению с другими БД, это да.

Quet
19.01.2017
15:21:30
Заменили редиску на болт, получили + к перфомансу и ноль ошибок
люди на телефоне запускали что ли все? 400rps у редиса это надо постараться

болт неплохая штука где надо тупой embedded kvs

и объемы данных небольшие

и нагрузка read-heavy

Google
Subbotin
19.01.2017
15:34:05
лучше скажите как сделать такую задачу: есть ~40 гиговая база которая у меня не влезает в память и добыть где=то сервер с 48 гигами не вариант. база представляет собой кей-валуе где и ключ и значение лонг лонг инт. ключи весьма разряженные и случайно/равномерно распределены по диапазону. по ней надо очень быстро бегать и проверять есть ли значение и чему оно равно. доля попаданий около 1%. 99 - мисы. как лучше организовать такую штуку?

памяти могу выкроить гигов 20

инсерты не нужны. только геты

Quet
19.01.2017
15:38:20
добыть сервер с 48 гигами или больше, память стоит копейки

Subbotin
19.01.2017
15:38:39
мне не комерческий проект

джаст фо фан

32 гиговый уже есть и мигрировать из-за этого не хочется. а платить за два чё-то не охота

Quet
19.01.2017
15:39:19
если не коммерческий то видимо и нагрузки там не будет бери любую kv которая умеет в диск и храни там

вон койнить leveldb или подобное

Denis
19.01.2017
15:39:52
Вот да , какие требования к респонсу?

Kirill
19.01.2017
15:40:18
Вот да , какие требования к респонсу?
а кто сказал, что к респонсу? может, там что-то считать нужно.

Subbotin
19.01.2017
15:40:30
Вот да , какие требования к респонсу?
требований нет. но чем больше я проверю в секунду тем лучше

Quet
19.01.2017
15:40:54
ну, я хоть и соображаю сейчас плохо, но идея упоротая есть. слабать своё с radix tree индексом.
а толку? будет ходить в диск все равно если в память это не лезет если жадничать с памятью то любая kv база и готовься что будет ходить в диск и на порядок медленнее чем могло быть

Denis
19.01.2017
15:41:17
а кто сказал, что к респонсу? может, там что-то считать нужно.
Но ведь никто не сказал что нужно считать :)

Quet
19.01.2017
15:41:25
но реально, под последний некоммерческий брали машину с 256 памяти, оно реально стоит копейки сейчас

Subbotin
19.01.2017
15:41:48
ну там не совсем подсчёт но грубо говоря можно считать что это расчёты

Kirill
19.01.2017
15:44:17
Quet
19.01.2017
15:44:46
чо кстати у тебя по запросам — много запросов приходит на которые оказывается что нет значения в базе?

Google
Subbotin
19.01.2017
15:49:26
но реально, под последний некоммерческий брали машину с 256 памяти, оно реально стоит копейки сейчас
ну вот у хетцнера самая дешевая машина на 64 гига стоит 40 евро в месяц + 90 за сетап. чё-то меня жаба душит. я лучше пива куплю

Quet
19.01.2017
15:49:37
а, ну любая kv и блум перед ней

40 евро в месяц это даром же )

Subbotin
19.01.2017
15:49:51
что такое блум?

Quet
19.01.2017
15:50:04
https://en.wikipedia.org/wiki/Bloom_filter

Subbotin
19.01.2017
15:50:45
я могу найти применения 40 евро. да и я планирую за пару месяцев "обсчитать" так что ещё плата за деплоймент удвоит месячную цену

Quet
19.01.2017
15:51:22
Тарантул с их вторым движком, который расчитан на базу в размере 3-4 RAM size
ток они сами как-то его очень осторожно рекомендуют

Roman
19.01.2017
15:51:40
Так судя по задаче - самое оно

Subbotin
19.01.2017
15:51:41
https://www.hetzner.de/en/hosting/produkte_rootserver/ex40
там 32 гига - читай внимательнее

Quet
19.01.2017
15:51:55
возьми две )

Daniel
19.01.2017
15:52:00
а где сказано, что нужно 64?

Roman
19.01.2017
15:52:25
чем вам блум не угодил?

Subbotin
19.01.2017
15:52:32
в самом начале сказано что база - 40 гигов

Quet
19.01.2017
15:52:42
чем вам блум не угодил?
уже советовал его

Google
Daniel
19.01.2017
15:55:36
база 40

а индекс?

Subbotin
19.01.2017
15:57:08
а я индекс пока не строил. очевидно размер индекса зависит от алгоритма его построения. по сути я и спрашиваю счас как правильно сделать индекс.

Daniel
19.01.2017
15:57:45
погоди

а что тогда значат слова "база 40 гигов"?

Subbotin
19.01.2017
15:58:13
лежит у меня пока огромный бинарь где каждые 16 байт это пара ключ:значение

Daniel
19.01.2017
15:58:40
ах вот оно что

2.5 миллиарда строк?

Quet
19.01.2017
15:59:30
можно наверное даже полный закат солнца руками сделать отсортировать бинарь, положить рядом индекс (сделать по аналогии с постгресовым BRIN)

Admin
ERROR: S client not available

Daniel
19.01.2017
15:59:32
рилли?

Subbotin
19.01.2017
15:59:56
2.5 миллиарда строк?
там нет строк. бинарь

Daniel
19.01.2017
16:00:04
но в базе-то будут

еще раз - я правильно посчитал?

Subbotin
19.01.2017
16:00:34
да я сам не считал но порядок да - такой

Quet
19.01.2017
16:00:48
да, 2.5 миллиарда

Daniel
19.01.2017
16:00:50
но в 16 байт не влезет столько никак

там дубликаты

много дубликатов

Subbotin
19.01.2017
16:02:02
прости что?

Google
Subbotin
19.01.2017
16:02:03
>>> 2**(8*8) 18446744073709551616

Quet
19.01.2017
16:02:23
Daniel
19.01.2017
16:02:28
коллеги

Quet
19.01.2017
16:02:33
8 байт ключ, 8 байт значение

Daniel
19.01.2017
16:02:54
упс, извините, был напуган

перепутал байты с битами

так вот

Quet
19.01.2017
16:03:30
а что за данные-то?

Daniel
19.01.2017
16:03:52
два с половиной миллиарда строк в любой базе это существенно больше, чем 64G на индекс

Daniel
19.01.2017
16:04:15
любой

Quet
19.01.2017
16:04:40
ну не, вон выше пример был с BRIN индексом постгреса

Daniel
19.01.2017
16:04:43
индексы - они быстрые, а не компактные

Quet
19.01.2017
16:04:48
он будет сильно меньше 64г

Daniel
19.01.2017
16:05:04
но он будет не индекс

в смысле - он будет очень тормозить

Quet
19.01.2017
16:06:00
почему?

Daniel
19.01.2017
16:06:19
потому, что в нем будет много проверок

Quet
19.01.2017
16:07:36
ну как много. от размера блока зависит

Daniel
19.01.2017
16:08:34
или много памяти на индекс, или тормоза

as simple as that

у нас есть требования по скорости выборки?

Страница 414 из 1674