@dba_ru

Страница 241 из 718
Alex
12.09.2017
14:01:40
давайте его уже забаним ? :)

Vasya
12.09.2017
14:02:26
Хоть из Нигерии, можно же вести себя нормально или это сложно?

Shaz
12.09.2017
14:04:20
давайте его уже забаним ? :)
ридонли ему дайте.

Ilia
12.09.2017
14:04:24
Тут не работает нифига

Google
Ilia
12.09.2017
14:04:37
Нет можордома...

Al
12.09.2017
14:04:41
Ilia
12.09.2017
14:04:55
А инструкция где ?

Al
12.09.2017
14:05:11
Stanislav
12.09.2017
14:10:03
/warn

Al
12.09.2017
14:14:03
Че эт вы делаете?

Алексей
12.09.2017
14:15:37
Кастуют бан или просто выражют свою активную гражданскую позицию)

Al
12.09.2017
14:20:44
Sergey
12.09.2017
14:29:56
/warn

Google
Sergey
12.09.2017
14:30:00
/warn

Maksim
12.09.2017
14:31:33
/stat@combot

Combot
12.09.2017
14:31:33
combot.org/chat/-1001045152752

Kirill
12.09.2017
17:12:05
Читал в захлеб

Al
12.09.2017
17:18:45
Читал в захлеб
Убийца зебра

Dmitriy
12.09.2017
17:46:03
Привет DBA. Есть вопрос. Имеется 30 слов в таблице words. Нужно нагенерировать в бд ~30^6 уникальных комбинаций из этих слов в таблицу comb БД PGSQL, но мы можем взять любую если нужно Как мы решали: Создавали таблицу без индексов, а индексы ставили потом. 1. Написали функцию которая брала. например первые 4 комбинации и генерировала . 16 одновременно дабы в 16 потоков. долго 2. В несколько потоков генерировали ЯП. очень долго 3. Фунцией генерировали в рам таблицу и уже раз в пару часов переносили в нормальную. Если еще идеи как ускорить ? или сменить бд может быть? Если что пробовали на сервере с 96 гб рам и ксеоном с 16 потоками.

Генерировали чисто числа, добивались маленького прироста

Александр
12.09.2017
17:54:30
вы собираетесь вставить 729 млн строк

какая скорость у вас получилась? (сколько времени потратили на вставку?)

Dmitriy
12.09.2017
17:55:00
Если бы только вставить. нам еще их нагенерировать нужно.

Александр
12.09.2017
17:55:41
генерируется любым языком программирования очень быстро (на порядки раз быстрее чем вставлять в бд)

Dmitriy
12.09.2017
17:55:59
От недели и выше, в зависимости от метода.

Александр
12.09.2017
17:56:08
не, неделя много

1205/сек вы вставляете

это очень медленно

Dmitriy
12.09.2017
17:57:40
генерируется любым языком программирования очень быстро (на порядки раз быстрее чем вставлять в бд)
Если раз в пару часов стравлять то норм. иначе мы забивали память всю

В целом алгоритм верный ? или может колоночные бд лучше подойдут(ничего не знаю о них) ?

Александр
12.09.2017
18:00:22
я сейчас потыкал на руби

с 36 словами

Google
Александр
12.09.2017
18:00:56
генерирует мгновенно 1251677700 комбинаций

из 12 слов перекрёстных

прям даже без задержки

Ilia
12.09.2017
18:01:21
Александр
12.09.2017
18:01:25
у вас узкое место конечно же - это вставка в БД

words.combination(12).each { |pr| p pr } вот программа на руби =)

память не жрёт

фигачит быстро

Ilia
12.09.2017
18:02:34
Да надо через Bulck copy вставляю

Ilia
12.09.2017
18:02:39
Вставлять

Александр
12.09.2017
18:02:47
Александр
12.09.2017
18:03:02
а может всё писать частями в текстовые файлы и импортить их

Ilia
12.09.2017
18:03:28
Это пофиг

Александр
12.09.2017
18:03:39
на мускуле самая быстрая вставка через LOAD DATA INFILE ...

Ilia
12.09.2017
18:03:44
Как угодно

Александр
12.09.2017
18:03:54
то есть тупо файлики с разделением табами клепаешь и частями вгружаешь

и индексы да, потом назначать

ну на постгре думаю тоже такой способ есть

Google
Vladislav
12.09.2017
18:04:25
Возможно лучше будет хадупы и т.п., но точно не уверен и это выкидывание постгреса по сути

Александр
12.09.2017
18:05:28
В целом алгоритм верный ? или может колоночные бд лучше подойдут(ничего не знаю о них) ?
я думаю тут зависит от сценариев использования этих данных

Dmitriy
12.09.2017
18:06:48
Возможно лучше будет хадупы и т.п., но точно не уверен и это выкидывание постгреса по сути
интересно. Это даст какое-то преимущество ? В идеали нам бы нагенерировать 30^7 У нас много данных пишется в psql (аналитический сервис) (1тб сырых данных в день)

Vladislav
12.09.2017
18:07:14
В целом алгоритм верный ? или может колоночные бд лучше подойдут(ничего не знаю о них) ?
Почти все колоночные рекомендуют/обязывают использовать батчи при вставке. Прирост записи от постгреса - хз, а вот чтение точно выйграете

Ilia
12.09.2017
18:07:15
Ваще мудрее было бы вообще не вставлять эти 30 млн

Александр
12.09.2017
18:07:33
https://www.postgresql.org/docs/current/static/sql-copy.html вот аналог того что я про мускуль писал

Александр
12.09.2017
18:08:01
кстати, да

а зачем вам в базу это совать?

Al
12.09.2017
18:08:32
Главное логи отключить

В ту же касандру вали все кучей

Dmitriy
12.09.2017
18:09:30
А в чем практический смысл?
На счет комбинаций. Нужно знать в какие комбинации входит определенный обьект. Мы постоянно считаем эти комбинации и сравниваем.

Александр
12.09.2017
18:09:51
так хешируйте и сравнивайте хеши?

и хранить это барахло не надо будет

аааа, он может частично совпадать?

Dmitriy
12.09.2017
18:10:34
да

Тоже думали. но раз в 24 часа у обьектов могут меняться комбинации

Google
Александр
12.09.2017
18:11:58
ну есть объект, у него какие-то слова признаки

значит можете в памяти все комбинации для него рассчитать (дополнив недостающими)

Dmitriy
12.09.2017
18:12:14
А где еще ? Хранить то это говно нужно

Александр
12.09.2017
18:12:17
и это быстрее чем в базу лазить

Al
12.09.2017
18:12:33
Тоже думали. но раз в 24 часа у обьектов могут меняться комбинации
Может начать с начала? Типа не с проблемы где то на полпути а с первоначальной задачи.

Al
12.09.2017
18:13:51
А то звучит типа вот запускаем а оно рычит и не взлетает.. а потом выяснится что у вас танк и ему вообще не нада летать

Страница 241 из 718