Alex
11.04.2016
22:34:08
Ну да
Phil
11.04.2016
22:34:08
letoto
11.04.2016
22:34:12
Alex
11.04.2016
22:34:20
В го встроен статистический сэмплер же
Google
Nik
11.04.2016
22:34:23
ребят проще, я прогать начал есяца 2 назад
Alex
11.04.2016
22:34:26
Ааа
Это окей
Кароч
Смотри
Nik
11.04.2016
22:34:33
а bash увидел 3 месяца назад
Alex
11.04.2016
22:34:36
Сначала пиши, чтобы работало
Nik
11.04.2016
22:34:40
уже есть
ща работает
Alex
11.04.2016
22:34:52
Про скорость будешь думать, когда заработает
Так
Где там эта статья-то была
Про профайлер гошный
Nik
11.04.2016
22:35:18
пока в плаанах - вообще в редис загнать, и проверить компактнее, и сколько я проиграю в скорости
Alex
11.04.2016
22:35:29
А зачем все это
Google
Nik
11.04.2016
22:35:39
был скрипт на баше
Alex
11.04.2016
22:35:41
Если нужна компактность - используй пул
Nik
11.04.2016
22:35:42
работ часов 8
Roman
11.04.2016
22:35:44
Alex
11.04.2016
22:35:45
Не нужно редис
Nik
11.04.2016
22:35:48
ща то что спрогал работает 2 часа
надо уложиться в 40 минут
или быстрее
Alex
11.04.2016
22:35:58
Там же есть это самое
Пул объектов
Херово уже соображаю, излагать не могу
Кароч, есть местный аналог слаб аллокатора
Все как в редисе
Только редис не нужен
Roman
11.04.2016
22:36:47
Alex
11.04.2016
22:36:55
Sync.pool или как там его
Nik
11.04.2016
22:37:10
у меня на питоне будет работать несколько минуть.
спросить не буду
но я питон не умею
Sync.pool - читаю
Alex
11.04.2016
22:38:11
Да забей пока на него
Google
Alex
11.04.2016
22:38:18
Сперва профайлером надо пройтись
Пул потом будет
Если понадобится
Хотя, гошный профайлер не показывает же GC
Daniel
11.04.2016
22:39:40
на 130М не нужен map
на 130M нужен массив с дырками
есть для go массивы с дырками?
Nik
11.04.2016
22:40:18
а это что за массивы такие?
Daniel
11.04.2016
22:40:35
https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%B7%D1%80%D0%B5%D0%B6%D1%91%D0%BD%D0%BD%D1%8B%D0%B9_%D0%BC%D0%B0%D1%81%D1%81%D0%B8%D0%B2
https://godoc.org/golang.org/x/tools/container/intsets
Nik
11.04.2016
22:42:43
если я понимаю ерно
я могу описать массив с инексами 0,1,7,9 например
так?
Daniel
11.04.2016
22:43:16
да
Nik
11.04.2016
22:43:34
а вот это круто
это будет сильно легче мапы по идее
Daniel
11.04.2016
22:43:49
да
и, возможно, быстрее
Nik
11.04.2016
22:44:18
теперь опрос - съест ли он int64
ща попробую проверить
Google
Roman
11.04.2016
22:44:54
Daniel
11.04.2016
22:46:26
ну - я его нашел как имплементацию sparse array
Nik
11.04.2016
22:46:41
вот я не вижу что бы можно было воткнуть значения
letoto
11.04.2016
22:46:42
если просто проверять есть номер или нет то https://github.com/bickfordb/judy.git
Roman
11.04.2016
22:46:44
я бы вообще просто взял большой шмат памяти
Nik
11.04.2016
22:46:49
пока только как множесто
после проверки номера и получения кода города - надо залезь в нужную базу в нужную таблицу(котору я определяю по коду города) и получить доп данные
это нечто вроде сверки с другой системой
на предмет рассинхрона
и делать это нужно быстро - пока данные не обновились
Roman
11.04.2016
22:48:25
Nik
11.04.2016
22:48:35
только то выше описал
или надо подробнее
Roman
11.04.2016
22:48:57
ох
letoto
11.04.2016
22:49:03
Roman
11.04.2016
22:49:05
тебе тут всё надо переписывать
Nik
11.04.2016
22:49:15
пока что я делаю
есть входной файл
млионов на 10 строк
я его вгоняю в редис
Google
Nik
11.04.2016
22:49:44
тупо csv
номер и параметр
потом мне надо найти где этот номер живет
Daniel
11.04.2016
22:50:10
ну хорошо
Nik
11.04.2016
22:50:17
найти его параметр в моих базах
Daniel
11.04.2016
22:50:18
берем массив на 130М элементов
Nik
11.04.2016
22:50:19
сверить
Daniel
11.04.2016
22:50:22
сортируем
потом методом половинного деления быстро находим свой элемент
Nik
11.04.2016
22:50:46
а как я его массивом сделаю
Daniel
11.04.2016
22:50:49
профит
Nik
11.04.2016
22:50:50
пока не приходит в голову
пример map[79031112233] = «MSK01»
в текущем виде
Roman
11.04.2016
22:54:02
Nik
11.04.2016
22:54:25
сделать несколько множеств именованых
и проверять наличие номера в каждом множестве?
Roman
11.04.2016
22:54:52
В который раз говорю: нумеруешь табличку кодов и складируешь в отдельный мап. В большом мапе хранишь только номера.
В итоге, у тебя будет две операции поиска, но обе по O(1)
Nik
11.04.2016
22:57:07
это я понял
вариант со словарем