|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость? Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 03:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Часть таблицы: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
В таблице около миллиона записей. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 03:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Если кто то не читал предыдущею тему: Есть файл - в каждой строке 20 чисел, через пробел, от 1 до 99 включительно. Около 5 тысяч строк. Нужно получить совпадения по 9 чисел. Например 5_7_8_27_39_50_58_62_70 - комбинация есть в 5 строках - в 1, 28, 1004, 4300, 4444, ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 03:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
увеличивать буфер, начать с 2G ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 14:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, А по русски? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 15:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, таблицы InnoDB? (99% да) в файле конфигурации в my.ini (или my.cnf если Линукс) поставить параметр Код: sql 1. 2.
перезапустить сервер ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 15:19 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov> У него "миллиард записей"б там наверное РАМы как минимум 10ки Гб, а он сейчас 2Гб поставит :) Диверсия!!!! )) Если можете, как рекомендуется, 70% от всей РАМы ставьте. Я так понял, у вас какой-то там алгоритм, вы можете по тестить его на n записей, потом n*10, n* 100 и посмотреть как растет время поиска, может в алгоритме что-то не то. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 16:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Еще, долго не вдаваясь в вашу проблему, можно писать 20ть чисел в 20ть колонок и включать по ним текстовой поиск. Просто как идея. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 16:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Fitter2, у меня уже есть опыт общения с miltorg. ничего не говорится о таблицах, алгоритме и т.д. смотрим контекст miltorgВ таблице около миллиона записей. среди "простыни" на PHP я вижу один запрос на MySQL SELECT * FROM $tab1 where str1=$r[5] or str2=$r[5] поэтому отвечаю по запросу в стиле ТС и сравнение (или не сравнение, кто его знает) у него в двух циклах, нет там JOIN-а миллиардного. фетч из одной таблицы подставляется в фетч другого запроса ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 16:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
и смотреть надо завершение стадии гораздо выше до $dbh->do("COMMIT"); чтобы понять на чем висит .....2 дня... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 16:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov> Это у него уже вторая лента, в первой начиналось словами "миллиард" :) Ваша позиция мне понятна. Я так, постёбываюсь :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 16:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Не висит. Работает. Но в таблице 600 тысяч с лишним строк. И практически каждую нужно сравнить с каждой и получить количество совпадений и записать в новую таблицу. В первой таблице - 2 совпадения строк, а в второй таблице - уже 3 совпадения. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 17:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
какой тип таблиц? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 18:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Есть SELECT (пусть 600тыс) Есть одиночные Insert Что пытаемся оптимизировать - 2 этажный цикл + INSERT? Можно поставить COMMIT этажом выше, фиксировать порциями. и соответственно использовать INSERT IGNORE на случай сбоя-остановки сейчас я так понимаю 600тыщ*600тыщ коммитится? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 18:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
исходный текстовый файл в 5000+ строк есть смысл вообще привести в более компактный и удобный вид на дату выделить 2 байта = 0..65535 дней, итого хватает на 179 лет числа от 1 до 99 в строчке не повторяются, можно представить, как последовательность из 99 битов если бит выключен - соответственного числа в строчке нет, если включен - есть это 13 байт итого, с датой, всего 15 байт на хранение строчки, 75кб+ размер обрабатываемого файла чтобы сравнить 2 любые строки, перебираем 13 байт каждой, делая побитную операцию & (and) с таким же байтом другой строки если в итоге какой-то бит включен, значит число, за которое отвечает этот бит, присутствует в обеих строчках чтобы быстро считать, сколько всего чисел совпало, можно забацать спец-табличку/массив для 256 вариантов байтов, в которой хранить посчитанное число включенных бит для этого конкретного байта сделали & двух байтов для проверки (узнали какие числа совпали), а по байту-результату через таблицу узнали сколько бит в нем включено и приплюсовали в какую-нибудь переменную для суммы если сумма = 9 или сколько там надо совпадений, перевели все в нормальный текст и выдали в нужный файл как-то так :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 19:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
...а можно поиграть с файликом 75к, как там еще надо заказчику, например, - генеришь очередной 13-байтный "ключ" (хоть перебором от 1 до 2^99), в котором включено именно 9 бит из 99 пробегаешь этим ключем по & с каждой строчкой из 5000 совпавшие строки, где все 9 бит включены, направляются в текстовом виде, скажем, во вспомогательный файл а после подсчета их числа, уже этот весь кусок идет в выходной файл (файлы), сразу сортируясь на нужную позицию по числу строк в куске как-то так :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 22:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
хотя не, перебирать долго :) лучше очередной ключ создавать из пар строк, где есть от 9 совпадений :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2021, 22:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
...а в рабочем 75к файле (копии), по которому ключами бегать, оставить только строчки, где есть не менее 9 совпадений ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 00:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Немного не так. Первый проход сравнения первоначальной таблицы дал эти самые 600 тысяч совпадений. Но эти совпадения - почти половина искомые - то есть по 9 чисел больше 15 чисел совпадений - одна штука 14 чисел - работало 5 мин 13 чисел - 10 мин 12 чисел - около 5 часов 11 чисел - сутки 10 чисел вот теперь - вторые сутки. Вероятно что будет 6 суток. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 02:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я не ожидал такого затыка. - Думал что за 2 суток доработает. Ан - нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 02:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Сейчас я просто создаю таблицу совпадений по 9 чисел. Даже окончательно не сравнивая их. Если бы при первом проходе получились только совпадения по 9 цифр - всё, задача решена. Но получились совпадения и по 10, и по 11, 12, 13, 14,. 15 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 02:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Поэтому я и сравниваю с кем ещё совпало 15 совпадений, например. Сколько этих совпадений. И тд. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 02:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
ну как бы логичный алгоритм получаем "дерево" и достаточно глубокое вхождений 10 из 20-ти больше чем 11 из 20 и т.д. поэтому и будет дольше "перебирать". все равно основная трата времени на "проверке вхождения" именно поэтому и предлагали перейти на битовые операции. это Перл? надо в Перле посмотреть битовые операции и переделать. Это просто быстрее, хочу-не-хочу еще вариант исследования - прогнать алгоритм без INSERT в базу посмотреть сколько он отработает (с выводом проиежуточных данных после внутр цикла) далее - INSERT самая долгая операция, это запись на диск. Оптимизация - быстрые диски (опуская COMMIT и т.д.) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 10:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
опять же - если это Perl, то лучше спросить в профилирующем форуме PHP, Perl, Python ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 10:26 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Кстати, да. Mysql у тебя находится где? Попорбуй делать или INSERT DELAYED, или поставь автокоммит, или не делай insert в базу, а записывай в файл, потом заливай в бд. Повторю, что эта задача решается в памяти полностью за секунды, ты занимаешься ерундой. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 10:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster, А вы напишите алгоритм решения - от начала и до конца. Может и правда у вас что-то гениальное. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 11:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Сейчас уже ищем 9 цифр! Мой алгоритм: В исходном файле находим количество совпадений строго больше 8(9 чисел или больше) и формируем БД: Строка совпадений (9 чисел или больше. Больше 15 - нет), строки совпадений из исходного файла, количество совпадений (9 или больше) = кол-ву чисел в первом столбце. Получили БД в которой совпали 2 строки. У меня эта БД заняла около 600 тысяч строк. Второй проход - делаем тоже самое что и в первом этапе но сравниваем строки с количеством совпадений больше 9(10 чисел или больше) с строками которые содержат номер этой строки в совпадении. Пока всё. Я здесь завис. ------------- Этот же подход я использовал и для 10 цифр . Там всё решилось очень быстро. За сутки. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 11:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 12:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость? Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Предположительно... желтым маркером я выделил строчку которая может быть бутылочным горлом. Чтобы точно-точно убедится - нужно запускать скрипт под профайлером . Как это на Perl делается я не знаю - но вот в стековере есть инфа https://stackoverflow.com/questions/4371714/how-do-i-profile-my-perl-programs Если подтверждается - то надо оптимизировать inserts в MySQL. Тут есть два пути. Первое - подобрать такой table-engine чтоб был максимально шустр на вставку а на остальное плевать. Возможно MyISAM. Второе - делать вставку пачками (batch или bulk по разному это называется). Пример пачковой вставки. Код: sql 1.
Размер пачки должен быть не большой-не-маленький а какая-то золотая середина между скоростью конкатенации Perl-строки (тут возможно пригодится какой-то аппендер) и скоростью обработки. Возможно имеет смысл разбить Perl программу на 2 потока. Чтоб первый 50% обработал и второй еще половину. Так пачковая вставка еще ускорится. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 12:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg А вы напишите алгоритм решения - от начала и до конца. Это дело безблагодарное. Код нужен вам, а не мне. Возможность реализации уже была доказана ранее в закрытом треде. Если интересно, бесплатно отвечу на любые вопросы ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 12:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Пример пачковой вставки. Там есть ограничение на длину вставляемого. Если надо очень много лучше тупо загнать в csv а потом сделать дамп средствами mysql. Ну и ему смысла нет ничего тащить в базу, задача полностью влазит в память даже на ноде. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 12:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, а зачем идем по нарастающему? искали >8 (9 и более) затем ищем >9 (10 и более) ... ну дошли до крайнего =13 и что это дает? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster mayton Пример пачковой вставки. Там есть ограничение на длину вставляемого. Если надо очень много лучше тупо загнать в csv а потом сделать дамп средствами mysql. Ну и ему смысла нет ничего тащить в базу, задача полностью влазит в память даже на ноде. В родительском топике я тоже предлагал грузить утилитами из CSV. Это кстати - самый быстрый вариант почти для всех бд (Oracle, MSSQL e.t.c.). ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Наоборот. Из 15 чисел-совпадений при втором прогоне остаётся только 9 чисел совпадений в 3 строках. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, тяжело воспринимать противоречивую информацию авторВ исходном файле находим количество совпадений строго больше 8(9 чисел или больше) и формируем БД: Строка совпадений (9 чисел или больше. Больше 15 - нет), строки совпадений из исходного файла, количество совпадений (9 или больше) = кол-ву чисел в первом столбце. Получили БД в которой совпали 2 строки. У меня эта БД заняла около 600 тысяч строк. Второй проход - делаем тоже самое что и в первом этапе но сравниваем строки с количеством совпадений больше 9(10 чисел или больше) с строками которые содержат номер этой строки в совпадении. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Давайте разговаривать алгоритмами - ведь написать алгоритм - это совсем не сложно и занимает - десяток строк. Сразу скажу - файл в 600 тысяч строк мне не нравится. А в моём алгоритме есть 600 тысяч строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
если задача из 14страничного опуса не изменилась, то алгоритм прост ищем все наборы с числом совпадений > N, допустим >8 получили все все все - и 9 и 10 и 11 и т.д, допустим 13 это макс 9 -> в ответ из 10 делаем комбинации по 9 и -> в ответ из 11 делаем комбинации по 9 и -> в ответ ..... из 13 делаем комбинации по 9 и -> в ответ это все, таблица строк в которых совпадают 9 чисел - готова ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton, Давайте разговаривать алгоритмами - ведь написать алгоритм - это совсем не сложно и занимает - десяток строк. Сразу скажу - файл в 600 тысяч строк мне не нравится. А в моём алгоритме есть 600 тысяч строк. Сделай профилирование. Просто так за ништяк никто не захочет глубоко погружаться в твой алгоритм. Покажи где узкое место в реализации и потом мы пойдем в алгоритм. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:53 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Что вы не поняли? Вы понимаете что совпадений при первом прогоне может быть например 15 чисел? 1_2_3_4_5_6_7_8_9_10_11_12_13_14_15 есть в строках 1, 5 А где то есть строка: 1_2_3_4_5_6_7_8_9 есть в строках 5, 500 ---------------- Таблица при втором прогоне: 1_2_3_4_5_6_7_8_9 есть в строках 1, 5, 500 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Это Мой первый алгоритм. Из первой темы. Теперь попробуйте привести 15 совпадений к 9 Там сразу начинают ходить таблицы по 15 миллионов. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 13:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Нет смысла сравнивать всё со всеми - достаточно сравнивать только совпавшие - отсюда получился мой 2 алгоритм. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, я не предлагал сравнивать все со всем в данном случае. если у нас совпало 15 чисел, то как не крути - в них совпадут и комбинации 9 чисел из этих 15-ти. Поэтому и надо построить комбинации 9 из 15 и записать в ответ (ничего не сравнивая, просто построить эти наборы) никаких 15 млн не будет ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Alex_Ustinov, Это Мой первый алгоритм. Из первой темы. Теперь попробуйте привести 15 совпадений к 9 Там сразу начинают ходить таблицы по 15 миллионов. В этих 15 миллионных таблицах есть дубликаты - точно есть - я делал таким способом. - То есть дубликаты нужно убирать. Таблицы совмещать и пр. ужас. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Я вас попросил составить количество строк из 15 совпадений. Как вы не поймёте я всё эту уже делал и отказался от этого. А если вы предлагаете сравнивать не со всеми подряд, а только с совпавшими - получаем мой алгоритм который работает сейчас. Ведь он просто сейчас берёт 10 совпадений и ищет новые строки среди уже ранее совпавших. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
в прошлом топике не зря предлагали упростить задачу. Только для того чтобы ее можно было "нарисовать" на пальцах. Допустим есть наборы из 6 чисел 1,2,3,4,8,9 1,2,3,4,6,7 Задача Ищем совпадения 3 чисел нашли в строках совпадения >2: это из 4-х чисел 1,2,3,4 то и 3 из 4-х тоже будут совпадать, строим эти наборы 1,2,3 1,2,4 1,3,4 2,3,4 это ответ ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Потом тоже самое проделывает с 11 совпадениями. Точнее 11 совпадений я уже сделал - всего то за сутки. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, опять пятница? НАЧАЛОНужно получить совпадения по 9 чисел. Например ТЕПЕРЬЯ вас попросил составить количество строк из 15 совпадений. я не вижу в вашем алгоритме построение наборов в искомом найденном наборе. Я вижу сравнение массивов ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
покажите где у вас строится комбинации 9 из 15-ти или 9 из 13 НЕ надо ничего сравнивать. Чисто построение Или все таки топик надо переносить в форум Perl ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Добавьте строки чтоб они были без совпадений Добавьте строки с разным количеством совпадений - тогда это будет походе на прототип. А сейчас это похоже на натянутое за уши задание под ваше неверное решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Запрос построчечно приводится к массиву - вы этого правда не знаете? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, где неверное? поясните ваш алгоритм на пальцах на простом примере Дано Наборы чисел 1,2,3,4,8,9 1,2,3,4,6,7 Найти вхождения всевозможных комбинаций из 3 чисел ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
можете добавить сколько угодно строк без этих чисел, чтобы они не совпадали притяните за уши ваш алгоритм под ответ 22273238 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:26 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Мысли вслух. Про первый алгоритм. Я приводил например 13 совпадений к 12 . Потом приводил 12 совпадений к 11 Потом 11 совпадений к 10 А вы предлагаете из 13 сразу сделать 10. А какая разница? Всё равно надо глянуть - вдруг тут есть хоть какой то выход. Вдруг всё будет считать быстро и хорошо. Ок. Я это посмотрю. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:39 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, так что мы рассуждаем? у вас нормальный алгоритм. Только сделать рекурсивную функцию Построение комбинации N-1 чисел из N для построения 10 из 15 вызывается 14 из 15, потом 13 из 14 и т.д. Без этого никак проще не сделать. Иначе генерить млрд строк ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov miltorg, где неверное? поясните ваш алгоритм на пальцах на простом примере Дано Наборы чисел 1,2,3,4,8,9 1,2,3,4,6,7 Найти вхождения всевозможных комбинаций из 3 чисел Ну не вхождения нужно искать. Не вхождения. А строки. То есть ответ в вашем случае для 2 строк не имеет вообще никакого смысла. Вы выдумали сами себе задание и сами его решили и радуетесь. Но задание - найти строки в которых совпало по 9 чисел максимальное количество раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 14:53 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov покажите где у вас строится комбинации 9 из 15-ти или 9 из 13 НЕ надо ничего сравнивать. Чисто построение Или все таки топик надо переносить в форум Perl Я ведь писал: 22273009 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 15:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, На 2 последних страницах я рассказываю вам элементарные вещи - разговор с вами прекращаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 15:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Какой смысл в вашей фразе авторВы выдумали сами себе задание и сами его решили и радуетесь. если в результате делаете так же получается вы не можете переложить ваш алгоритм на простую задачу. авторТо есть ответ в вашем случае для 2 строк не имеет вообще никакого смысла. я же описал задачу 22273259 и показал решение и ответ здесь 22273238 Только после этого промежуточного решения вы можете суммировать свои максимальные вхождения. Иного не дано. Топик наверное опять надо закрывать. Тем более он совершенно не касается MySQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 16:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
задача решается за часик простеньким map-reduce кодом. мапер читает строку, шлет на редюсер все комбинации по 8, по 9 .. хоть 200 элементов в ключе (шлет строку, ключ - комбинация). редюсер считает кол-во строк прилетевших по ключу, если их больше нужного - пишет в файл ответ. потом файлы от редюсера уже можно грузить в базу, в базе отсортировать. если машина всего одна и дохлая, запускать с одим мапером и одним редюсером, если памяти гагабайты map-reduce замечательно распараллелит это дело. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 17:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, техники map-reduce предполагают что у тебя не 1 ноутбучек с MySQL, а готовый и поднятый кластер наподобие AWS-EMR в облаке. В противном случае эти технологии так-же полезны как и 1 sql запрос с группировкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 18:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton H5N1, техники map-reduce предполагают что у тебя не 1 ноутбучек с MySQL, а готовый и поднятый кластер наподобие AWS-EMR в облаке. В противном случае эти технологии так-же полезны как и 1 sql запрос с группировкой. что за ерудна ? база тошнит от того что пишет гигабайты лишнего в undo, redo, ставит блокировки, занимается каким-то порно с кешированием и еще миллионом совершенно ненужным в этой задаче вещами. map-reduce на ноутбуке дубово и ничего лишнего, потому будет чудовищно эффективно. понятно, что речь о запуске на винде в локальном режиме. кластер нафиг не нужен, пара маперов и редюсоров запросто влезут на ноутбук, обычный ноутбук. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 18:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, опять ваш клиент, заберите его в Программирование, тем более там уже пыточный топик есть с комбинаторикой ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 22:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton H5N1, техники map-reduce предполагают что у тебя не 1 ноутбучек с MySQL, а готовый и поднятый кластер наподобие AWS-EMR в облаке. В противном случае эти технологии так-же полезны как и 1 sql запрос с группировкой. база тошнит от того что пишет гигабайты лишнего в undo, redo, ставит блокировки, занимается каким-то порно с кешированием и еще миллионом совершенно ненужным в этой задаче вещами. Что? Пишет в undo? Ставит блокировки? Где?? Мы-же говорим про запрос Милторга? SELECT ... GROUP BY ... Не? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 22:15 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Что? Пишет в undo? Ставит блокировки? Где?? Мы-же говорим про запрос Милторга? SELECT ... GROUP BY ... Не? не. мы говорим про перл скрипт который в одном потоке в цикле долбит инсертом два дня. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 22:39 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Что? Пишет в undo? Ставит блокировки? Где?? Мы-же говорим про запрос Милторга? SELECT ... GROUP BY ... Не? не. мы говорим про перл скрипт который в одном потоке в цикле долбит инсертом два дня. Ну да. Он выбрал MySQL. Автомат калашникова нашего времени. А вы что ему предлагаете? Сериализацию в Avro? Parquet? Orc? Какой вообще сценарий по шагам ему надо сделать в том случае чтоб задействовать технологии BigData. Забегая вперед я скажу что знаю ответ на этот вопрос. Но я считаю что для его уровня подготовки, MySQL с табличкой - это железный вариант который он хотя-бы сделает. Медленно. Со скрипом но сделает. Альтернативный сценрий в данном топике мне представляется просто невозможным. Вот в таком вот аспекте. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 22:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton А вы что ему предлагаете? Сериализацию в Avro? Parquet? Orc? Какой вообще сценарий по шагам ему надо сделать в том случае чтоб задействовать технологии BigData. Забегая вперед я скажу что знаю ответ на этот вопрос. если знаете ответ, странные вопросы задаете mayton Но я считаю что для его уровня подготовки, MySQL с табличкой - это железный вариант который он хотя-бы сделает. Медленно. Со скрипом но сделает. да без шансов. комбинации из 9 он уже точно не дождется долбя в одном потоке. с map-reduce никакие паркеты не нужны, маперы читают csv файл, на редюсер соответственно уходит text, выплюнет редюсер тоже csv. в том же стиле явно можно и на спарк решить эту задачу: считать csv файл в датасет, flatMap() раздует датасет (перемножив строки на комбинации, каждая комбинация станет ключем), reduceByKey() посчитает кол-во строк по ключу. теперь это можно отсортировать и обрезать нужный топ. ну может еще по ключу заджоинить на первый датасет, т.к. в топе будут только топовые ключи/комбинации. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2021, 23:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Альтернативный сценрий в данном топике мне представляется просто невозможным. Скинуть готовый код, в который он просто введёт данные и выполнит. Иначе этот тупак будет тянутся еще месяц. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 05:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, 1. Спасибо 2. Вы считаете что не имеет смысла искать какие то хитромудрые mySQL запросы? - именно это я ожидал от этой темы. Что кто-то умный напишет запрос который всё сделает внутри mySQL. 3. Вы предлагаете решить всё с помощью map-reduce? А оно точно справиться с 300 000 * 300 000 записей. Ведь проблема именно в этом огромном количестве проверяемых строк. Именно оно и считает уже почти неделю. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 07:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
так сколько строк - 600 или 300 тыс?) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 13:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
еще недоразумение - miltorgбольше 15 чисел совпадений - одна штукаиз совпадений 15 получаем 14 - это строковая функция путем последовательного вычеркивания чисел, т.е. получим 15 строк - каким алгоритмом это работает так долго? miltorg14 чисел - работало 5 мин если должно быть 0,5 сек на одну строку МАКСимум в самом убогом случае? maytonМы-же говорим про запрос Милторга? SELECT ... GROUP BY ...не дошли мы еще до GROUP BY, это еще в зародыше ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 13:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
или вот это автор14 чисел - работало 5 мин какой то другой замер? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 14:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, map-reduce - запросто. набросал код, 9 цифр в комбинации, данные взял из этой таблички https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1332345&msg=22260954 на ноутбуке четыре ядра - 24 секунды и победила одна комбинация [5, 7, 8, 27, 39, 50, 58, 62, 70] 3 т.е. три строки с такой комбинацией. верный ответ? маппер/редюсер Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 14:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, не похоже даже близко, там 10-ки 3 раза как я помню 5-7-8-15-22-23-27-34-37-39-40 а девяток из этих 10 чисел будет гораздо больше ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 14:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
по ссылке 5_7_15_22_23_27_34_37_39_40 а вообще 11 чисел совпадает 3 раза 5-7-8-15-22-23-27-34-37-39-40 так что 9-ток там куча (110штук?) и здесь все жестко (-:) Вид ответа ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster mayton Альтернативный сценрий в данном топике мне представляется просто невозможным. Скинуть готовый код, в который он просто введёт данные и выполнит. Иначе этот тупак будет тянутся еще месяц. Чорт! Брателло! Конечно скидывай. Я только рад буду. Только мы с тобой заключим джентльменское пари на тему того, за сколько времени ТС разберется с развертыванием этого стека целиком. Я вангую что Perl/MySQL - быстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov H5N1, не похоже даже близко, там 10-ки 3 раза как я помню 5-7-8-15-22-23-27-34-37-39-40 а девяток из этих 10 чисел будет гораздо больше я не вижу. первая и последняя строка одинаковы, под комбинацию 5-7-8-15-22-23-27-34-37-39-40 попадают. третей не вижу. назовите номер строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, выше последняя вводная простыня от ТС упс в предыдущем грозбухе я так вижу 1-е 21-е и 22-е число даты ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1я не вижу. первая и последняя строка одинаковы я лишь показал подачу ТС, вопросы к автору ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov выше последняя вводная простыня от ТС упс в предыдущем грозбухе я так вижу 1-е 21-е и 22-е число даты это здорово, но а я не вижу связи ваших наблюдений с теми данными на которых считал я. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, я не показывал своих наблюдений. И связей не искал) я лишь показал результат который уже известен на известных данных Этот топик исходит из того, "миллиардного". который уже как вечность в этом подфоруме MySQL) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov выше последняя вводная простыня от ТС упс в предыдущем грозбухе я так вижу 1-е 21-е и 22-е число даты закинул эти данные, если 10 комбинаций то ответ [5, 7, 15, 22, 23, 27, 34, 37, 39, 40] 3 [5, 7, 8, 15, 22, 23, 27, 34, 37, 39] 3 [5, 7, 8, 15, 22, 23, 27, 34, 37, 40] 3 [5, 7, 8, 15, 22, 23, 27, 34, 39, 40] 3 [5, 7, 8, 15, 23, 27, 34, 37, 39, 40] 3 [5, 7, 8, 22, 23, 27, 34, 37, 39, 40] 3 [5, 7, 8, 15, 22, 23, 27, 37, 39, 40] 3 [5, 7, 8, 15, 22, 23, 34, 37, 39, 40] 3 [5, 7, 8, 15, 22, 27, 34, 37, 39, 40] 3 [5, 8, 15, 22, 23, 27, 34, 37, 39, 40] 3 [7, 8, 15, 22, 23, 27, 34, 37, 39, 40] 3 теперь близко ? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:30 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, да это к автору, со времен прошлого топика остались алгоритмы, я просто примерно посмотрел что должно быть ~110 штук 3-х кратных вхождений по 9 раскиньте сами 11 по 9 вы искали 10 чисел, тогда 11-ть 3-хкратных совпадений, да ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 15:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Я уже здесь несколько раз написал что нужны номера строк совпадений из исходной таблицы: [5, 7, 15, 22, 23, 27, 34, 37, 39, 40] есть в строках 1,2,3 - 3 раза [5, 7, 8, 15, 22, 23, 27, 34, 37, 39] есть в строках 5,7 - 2 раза -- это просто пример. Не результат. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 18:38 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Вы первый человек с этого форума который выдал ответ очень близкий к моему. Тема висит уже около месяца. Спасибо вам большое - особенно если по вашему алгоритму всё получится. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 18:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg H5N1, Я уже здесь несколько раз написал что нужны номера строк совпадений из исходной таблицы: [5, 7, 15, 22, 23, 27, 34, 37, 39, 40] есть в строках 1,2,3 - 3 раза [5, 7, 8, 15, 22, 23, 27, 34, 37, 39] есть в строках 5,7 - 2 раза -- это просто пример. Не результат. Это я написал до рассмотрения вашего результата - это можно бы удалить, но оно уже не удаляется. Ещё раз - спасибо вам. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2021, 19:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Моя программа закончила считать этой ночью. Я даже не знаю - сколько дней это длилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 06:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Тебе еще делать что-то надо? А то мы тут пари собираемся заключить? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 06:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Моя программа закончила считать этой ночью. Я даже не знаю - сколько дней это длилось. раз добавляются записи это было бесполезно. мне кажется с подходом map-reduce задачка достаточно просто решается и на перл скриптиках. первый скриптик (мапер) читает строку из входного файла, генерит встретившиеся комбинации, создает файл на файловой системе с именем комбинации, пишет туда строку (столько раз сколько комбинаций в строке), читает следующую стоку ... втрому скриптику (редюсер) остается лишь сосчитать кол-во строк в каждом файлике и выявить у кого там больше. в боевых условиях следует чуток соптимизировать - не сваливать все в один фолдер, а создавать вложенные фолдеры из первой цифры, второй цифры комбинации и только там уже файл с именем комбинации. если файл при каждой записи открывать закрывать, наверно можно и в параллель запускать. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 10:08 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Моя программа закончила считать этой ночью. Я даже не знаю - сколько дней это длилось. Индексы строил? Explain смотрел? Движок на MyIsam менял? (По умолчанию МайСКЛ создает InnoDB). ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 10:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, MyIsam не навернётся, когда много данных? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 11:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster mayton, MyIsam не навернётся, когда много данных? Почитал здесь https://dev.mysql.com/doc/mysql-reslimits-excerpt/8.0/en/table-size-limit.html Вроде хватает до 1 миллиарда. Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 11:08 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Моя программа закончила считать этой ночью. Ответ - 42? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 11:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Я ваше решение ещё даже не смотрел. Я боялся что нажму не ту кнопку и мои недельные мучения-расчёты обнулятся. Сейчас гляну ваш метод. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 12:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 miltorg, map-reduce - запросто. набросал код, 9 цифр в комбинации, данные взял из этой таблички https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1332345&msg=22260954 на ноутбуке четыре ядра - 24 секунды и победила одна комбинация [5, 7, 8, 27, 39, 50, 58, 62, 70] 3 т.е. три строки с такой комбинацией. верный ответ? маппер/редюсер Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42.
Попытался скомпилировать - выдало кучу ошибок. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 13:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Попытался скомпилировать - выдало кучу ошибок. Это технология Apache Hadoop. https://hadoop.apache.org/ По развертыванию локально можно поискать - но она неэффективна на single node. Лучше - кластер. И лучше купить его за деньги. И даже развертывание single node локально - требует определённой сноровки. Вобщем - тут лучше еще один топик отдельно поднять. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 13:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Упс. То есть кроме Java мне на компьютер пользователя, удалённо, придётся ставить ещё что-то? Крутовато. Учитывая то, что простой запуск Перлового скрипта на его компьютере - вызывает массу вопросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 13:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, да. Совершенно верно. Нужна инсталляция hadoop для начала. На Windows машинах все это ставится плохо. Со скрипом. В основном это связано с несовершенством cmd-shell. Куча банальностей типа левые-правые слеши, или разделители в CLASSPATH. Поэтому если уж захотел плотно работать с java/bigdata - то лучше на Linux машине начинать учёбу. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 miltorg Моя программа закончила считать этой ночью. Я даже не знаю - сколько дней это длилось. раз добавляются записи это было бесполезно. мне кажется с подходом map-reduce задачка достаточно просто решается и на перл скриптиках. первый скриптик (мапер) читает строку из входного файла, генерит встретившиеся комбинации, создает файл на файловой системе с именем комбинации, пишет туда строку (столько раз сколько комбинаций в строке), читает следующую стоку ... втрому скриптику (редюсер) остается лишь сосчитать кол-во строк в каждом файлике и выявить у кого там больше. в боевых условиях следует чуток соптимизировать - не сваливать все в один фолдер, а создавать вложенные фолдеры из первой цифры, второй цифры комбинации и только там уже файл с именем комбинации. если файл при каждой записи открывать закрывать, наверно можно и в параллель запускать. Блин. Печально что не компелируется... Я почему то подумал что это всё получится. Даже не знаю что делать. Ведь нужно обсчитать ещё 8 совпадений, 7 и 6 Пойду считать своим методом. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Я то на Убунте. А клиент на Виндосе и за 800 км - у буржуинов. Ок. Тупик, так тупик. Клиент говорил, что неделя расчётов - это нормально. - Нормально, так нормально, только не на моём ноутбуке. пусть нагружает свой. Я конечно попробую всё оптимизировать... - с помощью местного населения. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:15 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Это технология Apache Hadoop. https://hadoop.apache.org/ По развертыванию локально можно поискать - но она неэффективна на single node. вроде в ветке жава ты адекватное впечатление создавал, нафига такую ерунду пороть ? hadoop это идеология массивно параллельной обработки, есть множество задач где она эффективна и на одной ноде. вот собственно задача этого топика, яркий тому пример. задача прекрасно ложится на map-reduce и фиг кто-то на ноутбуке обгонит хадуп. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Вот есть я. И есть мой ноутбук. Я готов выполнять ваши команды. Помогите пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Сейчас уже есть 2 таблицы - 10 цифр и 9 цифр - совпадений. 10 цифр - это очень быстро считалось - за сутки Как раз всё проверим. У меня Убунту и Виндос. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
нужно обсчитать ещё 8, 7 и 6 совпадений. Плиииз. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Блин. Печально что не компелируется... Я почему то подумал что это всё получится. Даже не знаю что делать. Ведь нужно обсчитать ещё 8 совпадений, 7 и 6 Пойду считать своим методом. я видел пару твоих топиков, жава да, ты не поднимешь. советую пилить на перле то, что я выше расписал. что бы запустить мой код, нужно распоковать hadoop бинарники для винды, отсюда https://github.com/steveloughran/winutils прописать переменную HADOOP_HOME , вытрясти из меня еще один класс, Tool который запускает мои маперы и редюсеры, собрать maven проект, а это значит прописать в pom.xml библиотеки хадупа. я этот код в свой рабочий проект добавил где все либы в pom.xml уже есть. вобщем для жава джуна это посильная задача, но в тебе я че-то сомневаюсь. я вечером могу проект собрать, но очевидно что ты его поддерживать не сможешь. думаю скриптик на перле в твоем случае более перспективно ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Это технология Apache Hadoop. https://hadoop.apache.org/ По развертыванию локально можно поискать - но она неэффективна на single node. вроде в ветке жава ты адекватное впечатление создавал, нафига такую ерунду пороть ? hadoop это идеология массивно параллельной обработки, есть множество задач где она эффективна и на одной ноде. вот собственно задача этого топика, яркий тому пример. задача прекрасно ложится на map-reduce и фиг кто-то на ноутбуке обгонит хадуп. Я-же тебе писал выше что ты оказал автору "медвежью услугу". Эксперт в бигдатах? - Давай консультируй его как все установить и использовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 вобщем для жава джуна это посильная задача, но в тебе я че-то сомневаюсь. я вечером могу проект собрать, но очевидно что ты его поддерживать не сможешь. думаю скриптик на перле в твоем случае более перспективно :рука-лицо: Ты профиль автора вообще смотрел? Он - Perl разработчик. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 miltorg Блин. Печально что не компелируется... Я почему то подумал что это всё получится. Даже не знаю что делать. Ведь нужно обсчитать ещё 8 совпадений, 7 и 6 Пойду считать своим методом. я видел пару твоих топиков, жава да, ты не поднимешь. советую пилить на перле то, что я выше расписал. что бы запустить мой код, нужно распоковать hadoop бинарники для винды, отсюда https://github.com/steveloughran/winutils прописать переменную HADOOP_HOME , вытрясти из меня еще один класс, Tool который запускает мои маперы и редюсеры, собрать maven проект, а это значит прописать в pom.xml библиотеки хадупа. я этот код в свой рабочий проект добавил где все либы в pom.xml уже есть. вобщем для жава джуна это посильная задача, но в тебе я че-то сомневаюсь. я вечером могу проект собрать, но очевидно что ты его поддерживать не сможешь. думаю скриптик на перле в твоем случае более перспективно Поддерживать это всё должен Пользователь-Юзер. Даже не я. Замечательное вы предложили решение - к нему просто нужен дополнительный отдел программистов :-) А так - всё просто. А вот вопрос - быстро или нет? Мне жутко интересно: 1. Исходный файл дать не могу - не моё. 2. Можно ведь сгенерировать файл в 5 тысяч записей 3. Обсчёт моим методом занимает - около суток. За сколько справиться ваш метод? Сейчас сгенерирую файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 14:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Сейчас сгенерирую файл. Давай. Сгенерируй. Сделаем на синтетических данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Блин. Мог-бы сархивировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Если кто то забыл за месяц: Ищем номера строк с максимальным числом 10-циферных совпадений - которое тоже нужно указать. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Пример ответа: 1_2_3_4_5_6_7_8_9_10 ------ есть в 105, 200, 500, 5000 строках ------- 4 строки совпадения ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Так тут 5 тыщ только. Неинтересно. Я думал 600 тыщ будет или мильярд. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:30 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, В настоящем исходном файле - 5 тысяч строк. Вы правда за месяц это никак не поняли? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, 600 тысяч - это первая таблица совпадений после сравнения каждой строки с каждой. для 9 цифр Для 10 цифр - 200 тысяч совпадений. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Ох от тебя ТЗ получать... Без бутылки все равно непонятно ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 15:59 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Поддерживать это всё должен Пользователь-Юзер. Даже не я. Замечательное вы предложили решение - к нему просто нужен дополнительный отдел программистов :-) А так - всё просто. А вот вопрос - быстро или нет? Мне жутко интересно: 1. Исходный файл дать не могу - не моё. 2. Можно ведь сгенерировать файл в 5 тысяч записей 3. Обсчёт моим методом занимает - около суток. За сколько справиться ваш метод? Сейчас сгенерирую файл. гуд. вечером тогда научу номер строки вытягивать и запущу ... мерятся я люблю. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Пока я, как высокооплачеваемый программист, намазывал чёрный хлеб растительным маслом...: 1. Все мои скрипты делают одно и тоже - сравнение и запись в БД 2. Значит оптимизацию можно начинать практически с первого сравнения. Сейчас вам всё напишу. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, кроме того, это реально оплачиваемое задание - я возьму как посредник - 1 евро в час И я давал клиенту ссылку на этот форум. Если вы выдадите результаты на 6,7,8,9 быстро - я обязательно про вас напишу клиенту - мне тоже не интересно сидеть неделями с включённой программой. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Есть одно но. Не знаю прочитали вы про это или нет - эти то таблицы - на один раз, Но! данные будут пополняться И всё должно работать с полной базой , и не отделом программистов, а желательно вообще - само собой на машине удалённого Юзера. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:08 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Пока я, как высокооплачеваемый программист, намазывал чёрный хлеб растительным маслом...: 1. Все мои скрипты делают одно и тоже - сравнение и запись в БД 2. Значит оптимизацию можно начинать практически с первого сравнения. Сейчас вам всё напишу. Итак. Первый скрипт вытаскивает всё из исходного файла: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Попробуй так miltorg Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Inserts должны ускорится. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton miltorg Моя программа закончила считать этой ночью. Я даже не знаю - сколько дней это длилось. Индексы строил? Explain смотрел? Движок на MyIsam менял? (По умолчанию МайСКЛ создает InnoDB). Индексы тут пока строить вроде не на чем и не за чем - пока идёт просто заполнение. У меня такое ощущение что файл вместо БД заполнялся быстрее. Будем проверять. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:38 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Спасибо огромное Сейчас проверю на сотне строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton, Спасибо огромное Сейчас проверю на сотне строк. Прошло 0.42 min - это на 10 строках моего, исходного скрипта. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg mayton, Спасибо огромное Сейчас проверю на сотне строк. Прошло 0.42 min - это на 10 строках моего, исходного скрипта. Прошло 1.23 min Это ваше решение выдало. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg пропущено... Прошло 0.42 min - это на 10 строках моего, исходного скрипта. Прошло 1.23 min Это ваше решение выдало. Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 16:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А раньше наполнение таблички сколько было? Я просто не помню цифр. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Хи-хи. Просто запись в файл: Прошло 0.10 min В 4 раза быстрее. Хи-хи. Вот тебе и БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А вот я посравнивал хромосомы. Лог типа. Везде где больше 12 совпадений. У тебя там надо было что-то от десятки отсекать? Я забил на это делал своё. Но ты всё равно глянть корректность. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:08 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
в меню сообщения есть кнопка ДОПОЛН. там есть ТЭГ spoiler "простыни" можно прятать под этот ТЭГ ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:08 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Обижаешь. У меня - не простыня. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, у вас тестовый 5000 файл? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, а у меня в кавычках... никого не пытался обидеть) каждый думает в свою меру... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:31 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton, у вас тестовый 5000 файл? Да тот мелкий который u.txt ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:36 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, вы прям с него работаете? Потому что скорость не реальная даже для простого чтения файла ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 17:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Убунта его закешировала. Сколько там? Жалкие килобайты. Но суть - алгоритме. Ты навали на меня так чтоб я почувствовал. Дай лям. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 18:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
maytonПопробуй так ==>) ENGINE = MYISAM;"); Inserts должны ускорится. продолжим изыски - таблицы в памяти Код: sql 1.
перед созданием таблицы установить SET max_heap_table_size = ... для MAX размера таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 19:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Мне почему-то эту задачу хочется реализовать через unix - конвейер. Типа загрузка таблицы. Калькуляция хромосом-дубликатов. Код: sql 1.
И все эти генераторы цифр и пермутаторы - просто как звенья цепочки. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 19:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov maytonПопробуй так ==>) ENGINE = MYISAM;"); Inserts должны ускорится. Код: sql 1.
перед созданием таблицы установить SET max_heap_table_size = ... для MAX размера таблицы. Вот еще SQLite мне нравится https://perlmaven.com/sqlite-in-memory Правда некоторые возможности SQL диалекта у него ограничены. Там надо смотреть. Какие-то запросы могут не работать. Возможно там какой-нибудь pivot. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 19:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 miltorg Поддерживать это всё должен Пользователь-Юзер. Даже не я. Замечательное вы предложили решение - к нему просто нужен дополнительный отдел программистов :-) А так - всё просто. А вот вопрос - быстро или нет? Мне жутко интересно: 1. Исходный файл дать не могу - не моё. 2. Можно ведь сгенерировать файл в 5 тысяч записей 3. Обсчёт моим методом занимает - около суток. За сколько справиться ваш метод? Сейчас сгенерирую файл. гуд. вечером тогда научу номер строки вытягивать и запущу ... мерятся я люблю. на комбинацию по 10 у меня заняло 31 минуту на стареньком i7-3770k. у меня не нашлось даже в трех строках совпадений, максимум в двух. таких 9242 совпадения. я пока не разобрался, но подозреваю поскольку у меня не хадуп, а лишь заглушка от него в папочке на 5Мб, то работало это все в одном потоке, а не в параллель. видимо на что-то посерьезней все же нужно виртуалку с хадупом запускать. зы. а куда можно файлик с результатми выложить, он хоть не по формату, но с выводом строк где найдены комбинации ? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 21:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 зы. а куда можно файлик с результатми выложить, он хоть не по формату, но с выводом строк где найдены комбинации ? сюда получилось выложить https://filebin.net/ugpm5w22ble5p5lt/miltorgout.zip?t=l9n8ljne запущу теперь по 9 комбинаций. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 21:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 запущу теперь по 9 комбинаций. странно, по 9 комбинаций те же 31 минута и не видно больше двух комбинаций, 79504 совпадений. https://filebin.net/srpfxmekf7dhp0n8/miltorg9.zip?t=xk027t84 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 23:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А чего единичка дважды повторилась? В хромосоме. Разве они не уникальны? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 23:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton А чего единичка дважды повторилась? В хромосоме. Разве они не уникальны? Код: sql 1.
в исходном файле вроде есть такая строка Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 23:27 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Неаккуратненько как-то. У Прохорыча было такое? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 23:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
на 8 комбинаций нашлось 505262 совпадений и из них 623 в трех строках причем посчиталось быстрее, за 25 минут https://filebin.net/4rbttlchbmx792nb/miltorg8.zip?t=qfa6rgq0 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2021, 23:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
u.txt какая то другая задача - числа в строках повторяются в лотерее так не бывает да и "непонятных" дубликатов куча в ответе ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 00:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Ждем автора. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 00:38 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 причем посчиталось быстрее, за 25 минут у меня загдушка для хадупа была версии 2.4, проапгрейдил "хадуп" до 2.7 по 6 комбинаций быстрее чем за 10 минут посчиталось. 2 ключа в 7 сроках нашлось: cat part-r-0000* | grep "7 /" Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 10:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Блин. Я неповтор не учёл. Много его там? Он на что-то влияет? Надо подумать или проще почистить? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 11:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Повторю ещё раз. Решение задачи - номера строк где есть максимальные повторы 10 комбинаций То есть это буквально максимум 20 строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 11:26 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Alex_Ustinov, Блин. Я неповтор не учёл. Много его там? Он на что-то влияет? Надо подумать или проще почистить? В принципе он ни на что не влияет. Тебе надо просто посмотреть были ли повторы в исходных файлах от заказчика. И если не было - то генерацию рандомных файлов надо сделать более качественной. Еще может влиять на наши статистические оценки. Это как испорченные лотерейные билеты. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 11:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 H5N1 зы. а куда можно файлик с результатми выложить, он хоть не по формату, но с выводом строк где найдены комбинации ? сюда получилось выложить https://filebin.net/ugpm5w22ble5p5lt/miltorgout.zip?t=l9n8ljne запущу теперь по 9 комбинаций. Что это? Это точно не решение. Секунду. Я сейчас подправлю исходный файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 12:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, по одной-две пары совпадений. Исходный набор превращается в 18-19 чисел вместо 20-ти ни на что не влияет кроме время выполнения, если вы тестируете время. авторНадо подумать или проще почистить?проще почистить, не понимаю почему вы этого не сделали. не надо впахивать оппонента ради вашей задачи. Если ранее давались упорядоченные наборы неповторяющихся чисел, то этот набор с повторяющимися, что меняет логику. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 12:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Новый исходный файл. Повторы пока не убрал. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 12:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Если кто то забыл за месяц: Ищем номера строк с максимальным числом 10-циферных совпадений - которое тоже нужно указать. Пример ответа: 1_2_3_4_5_6_7_8_9_10 ------ есть в 105, 200, 500, 5000 строках ------- 4 строки совпадения 2_3_4_5_6_7_8_9_10_11 ------ есть в 15, 20, 50 строках ------- 3 строки совпадения ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 12:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
изучаю python, вот вам на нем генерилка и файл после нее :) Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
zyubr, Что это? Исходный Файл с неповторяющимися цифрами в строках? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Если кто то забыл за месяц: Ищем номера строк с максимальным числом 10-циферных совпадений - которое тоже нужно указать. Пример ответа: 1_2_3_4_5_6_7_8_9_10 ------ есть в 105, 200, 500, 5000 строках ------- 4 строки совпадения 2_3_4_5_6_7_8_9_10_11 ------ есть в 15, 20, 50 строках ------- 3 строки совпадения Протокол работы моей утилиты с 12-циферными совпадениями был верный? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
файл мне нравится - он гораздо более похож на исходный клиента. Если нет повторов в строках. Их там нет? В любом случае - я сейчас с ним подшаманю и мы возьмём его за основу Спасибо Вам большое. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Я и не проверял. Нужно было проверять? Вы там кричали про какие то миллионы - Я решил что вы выпили. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton, Я и не проверял. Нужно было проверять? Вы там кричали про какие то миллионы - Я решил что вы выпили. Вечерочком я опрокидываю ликеры и настойки. Есть такое дело. Лечусь. Но я тебе разработал софт. Он работает. Работает быстро. А ты - даже проигнорировал проверить результат? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg файл мне нравится - он гораздо более похож на исходный клиента. Если нет повторов в строках. Их там нет? вроде как, не должно :) Python’s random module provides random.sample() function for random sampling and randomly pick more than one element from the list without repeating elements . ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 13:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Ура. Есть новый, идентичный исходному файл: ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton miltorg mayton, Я и не проверял. Нужно было проверять? Вы там кричали про какие то миллионы - Я решил что вы выпили. Вечерочком я опрокидываю ликеры и настойки. Есть такое дело. Лечусь. Но я тебе разработал софт. Он работает. Работает быстро. А ты - даже проигнорировал проверить результат? Вот видете. Сейчас чего от меня хотите? 1. Что бы я проверил ваши совпадения? или вам нужны восторги? Восторгаюсь. Но повторю. Мне нужно решение задачи или алгоритм. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Ура. Есть новый, идентичный исходному файл: Работать желательно с ним и только с ним. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton пропущено... Вечерочком я опрокидываю ликеры и настойки. Есть такое дело. Лечусь. Но я тебе разработал софт. Он работает. Работает быстро. А ты - даже проигнорировал проверить результат? Вот видете. Сейчас чего от меня хотите? 1. Что бы я проверил ваши совпадения? или вам нужны восторги? Восторгаюсь. Но повторю. Мне нужно решение задачи или алгоритм. Вот ты вредный... Яж тестирую. Я твои тестовый строки с 10 цифрами выбросил. Так как нашел сверх-покрытие. С 12 цифрами. И прошу тебя проверить результат по протоколу работы моей программы. Которая написана на pure Java без всяких хадупов и ничего больше не требует. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
интересная генерация, на 1-й позиции практически 95% числа 1..9 а на последней все меньше 80 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Сейчас новый исходный файл. Он точная копия исходного в задании. Работайте пожалуйста с ним - тогда работа имеет хоть какой то смысл. 22275586 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:14 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Капец ты умеешь демотивировать.... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:15 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, А что мне демативировать-недемативировать Я даже написал что готов деньги заплатить если смогу продать клиенту ваше решение. Но нужно чтоб клиент это купил. А купит он решение только в том виде котором ОН хочет - вид этого решения я написал уже 500 раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:19 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А ты про деньги... Ну это мне не интересно. Я в этом форуме не ради денег. Я тут вообще ни цента ни заработал. Думал Вискарь с тобой попить да и то не вышло. А программу я тебе подарю. Просто я хочу ее до зеленого сегмента теста довести. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Первые 20 строк из сделанные из нового файла: 1 13_15_17_29_31_32_34_38_51_60_76 0-24 11 2 13_14_15_17_21_26_29_31_34_40_51 0-268 11 3 13_14_15_26_38_40_51_60_67_76 0-346 10 4 15_29_32_34_39_42_44_51_60_63_67 0-372 11 5 17_21_26_31_34_40_42_60_63_67 0-397 10 6 14_15_17_21_29_34_38_40_51_63_67 0-497 11 7 26_32_38_40_42_44_51_63_67_76 0-855 10 8 13_17_21_26_29_31_32_34_60_67_76 0-1012 11 9 13_14_15_21_26_29_38_42_44_51_60_63_76 0-1036 13 10 14_17_26_29_31_34_38_42_63_76 0-1349 10 11 17_21_26_31_32_38_39_51_60_76 0-2191 10 12 14_15_17_26_34_38_40_44_51_63 0-2438 10 13 14_15_21_34_38_39_40_42_51_67 0-2449 10 14 13_14_15_26_32_39_40_42_60_63 0-2586 10 15 13_15_17_21_31_32_34_39_60_76 0-2724 10 16 13_14_15_17_26_44_51_63_67_76 0-2738 10 17 13_21_29_31_32_38_39_42_63_67 0-2936 10 18 13_17_29_31_38_39_40_42_44_60 0-3166 10 19 13_14_29_31_32_34_38_44_63_76 0-3250 10 20 13_15_17_21_29_31_32_44_60_63_76 0-3562 11 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:27 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, 100 строк обрабатывал 1 мин 1000 строк - 10 мин Файл полностью (5000) - около часа. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
авторПервые 20 строк из сделанные из нового файла:зачем выкладывать эти никчемные непонятные данные? что это за цифры 0-2449? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, может посмотреть требование к решению? Может это строки исходного файла? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg, Первые 20 строк из сделанные из нового файла: 1 13_15_17_29_31_32_34_38_51_60_76 0-24 11 2 13_14_15_17_21_26_29_31_34_40_51 0-268 11 3 13_14_15_26_38_40_51_60_67_76 0-346 10 4 15_29_32_34_39_42_44_51_60_63_67 0-372 11 5 17_21_26_31_34_40_42_60_63_67 0-397 10 6 14_15_17_21_29_34_38_40_51_63_67 0-497 11 7 26_32_38_40_42_44_51_63_67_76 0-855 10 8 13_17_21_26_29_31_32_34_60_67_76 0-1012 11 9 13_14_15_21_26_29_38_42_44_51_60_63_76 0-1036 13 10 14_17_26_29_31_34_38_42_63_76 0-1349 10 11 17_21_26_31_32_38_39_51_60_76 0-2191 10 12 14_15_17_26_34_38_40_44_51_63 0-2438 10 13 14_15_21_34_38_39_40_42_51_67 0-2449 10 14 13_14_15_26_32_39_40_42_60_63 0-2586 10 15 13_15_17_21_31_32_34_39_60_76 0-2724 10 16 13_14_15_17_26_44_51_63_67_76 0-2738 10 17 13_21_29_31_32_38_39_42_63_67 0-2936 10 18 13_17_29_31_38_39_40_42_44_60 0-3166 10 19 13_14_29_31_32_34_38_44_63_76 0-3250 10 20 13_15_17_21_29_31_32_44_60_63_76 0-3562 11 Первые 20 из Базы: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:53 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
База проработала 1,5 минуты Что получается. Получается что 1,5 минуты нужно уменьшить в 7 раз как минимум - Тогда расчёты будут идти не неделю, а 1 день. 15 сек должно кушать 100 строк. А сейчас - 90 секунд. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 14:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Alex_Ustinov, может посмотреть требование к решению? Может это строки исходного файла? Дан файл с вводными из 5000 строк авторУра. Есть новый, идентичный исходному файл: К сообщению приложен файл (miltbase.zip - 84Kb) cкачать 20 из какой едрить-мадрить базы?) 1 13_15_17_29_31_32_34_38_51_60_76 0-24 11 2 13_14_15_17_21_26_29_31_34_40_51 0-268 11 0-24 0-268 Что это? Зачем эти 20 строк? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov miltorg Alex_Ustinov, может посмотреть требование к решению? Может это строки исходного файла? Дан файл с вводными из 5000 строк авторУра. Есть новый, идентичный исходному файл: К сообщению приложен файл (miltbase.zip - 84Kb) cкачать 20 из какой едрить-мадрить базы?) 1 13_15_17_29_31_32_34_38_51_60_76 0-24 11 2 13_14_15_17_21_26_29_31_34_40_51 0-268 11 0-24 0-268 Что это? Зачем эти 20 строк? Я плюсую. Мне тоже непонятно что такое 0-24. Андрей. Ты можешь сделать нормальное ТЗ ? Я уже 2 варианта сделал и 1 вариант откатил назад т.к. понял что ты все таки считаешь количество цифр а не хромосом. Жаль время терять. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:15 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Вот хвост моего лога. Найдено примерно 29 тыщ за 1 секунду. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
По новому файлу. Проверяй. Чорт тебя дери... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, есть файл с 5000 тыщ строк. Посл вариант без повторений. найти макс.вхождение 10 чисел (указать номер строк вхождения, ведь надо как то проверять :-), PS он поменял номера строк на даты, значит указать даты вхождения, ведь номеров строк нет... это все ТЗ так как считает долго, miltorg берет 20 строк и показывает какие то тайминги))) авторФайл полностью (5000) - около часа. .... Получается что 1,5 минуты нужно уменьшить в 7 раз как минимум - Тогда расчёты будут идти не неделю, а 1 день. .... 15 сек должно кушать 100 строк. А сейчас - 90 секунд.но сегодня Пятница ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, да с датами - вообще отдельная задача IMHO. Мне просто как предмет для изучения - неинтересно. Вот данный поиск похожих хромосом - квадратичный. Интерес топика в том что на мильярде мы все умрём. И интерес есть применить например кластеризацию для отбрасывания заведомо лишних хромосом которые не войдут никогда в результат. И есть интерес найти золотую середину между предварительной кластеризаций которая оп любому займет 10-20 прогонов всего файла и между тупым квадратичным брутфосом который я тоже реализовал но по своему. Если хотим 5 тыщ - любой школьник закодит это на Борланд паскале и все будет летать и свистеть. И хадупы не нужны. А вот если подойти с точки зрения науки. То нужны научные методы. Я-бы предложил алгоритмы кластеризации. Но что-то мне кажется что мы до них просто не дойдем. Андрею хватит и брутфорса. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Вот хвост моего лога. Найдено примерно 29 тыщ за 1 секунду. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
По новому файлу. Проверяй. Чорт тебя дери... А начала чтоб сравнить с моим уже опубликованным началом - у вас нет? Ок. Сейчас гляну в конец файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg А начала чтоб сравнить с моим уже опубликованным началом - у вас нет? Ок. Сейчас гляну в конец файла. Подождите. Какой конец файла? Мне его считать - 1,5 часа. Если только специально для вас обсчитать последние строки... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:44 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, в первичной постановке задачи милрд не будет. Будет добавляться по 1 строке в день. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Я плюсую. Мне тоже непонятно что такое 0-24. Андрей. Ты можешь сделать нормальное ТЗ ? Я уже 2 варианта сделал и 1 вариант откатил назад т.к. понял что ты все таки считаешь количество цифр а не хромосом. Жаль время терять. 0 и 24 строка исходного файла - это правда так сложно понять? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:47 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton Я плюсую. Мне тоже непонятно что такое 0-24. Андрей. Ты можешь сделать нормальное ТЗ ? Я уже 2 варианта сделал и 1 вариант откатил назад т.к. понял что ты все таки считаешь количество цифр а не хромосом. Жаль время терять. 0 и 24 строка исходного файла - это правда так сложно понять? Нет мне не сложно понять. Мне лень делать гипотезы и их проверять. Ты мог-бы просто сделать одолжение и описать что входные данные - текстовый файл такого-то формата? С датаи или без дат. Выходной файл - отчот тоже текстового формата с такими-то полями. Это ведь не сложно? Ты бы избавил мир от лишних вопросов. И кстати. Есть система нумерации порядковых номеров принятая в С++/Java. Она начинается с нуля. И есть система Pascal. Она идет с единицы. Это пустяк. Но вообще когда говорят о ТЗ - то и такие мелочи оговаривают. Это - вопрос It-культуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg А начала чтоб сравнить с моим уже опубликованным началом - у вас нет? Ок. Сейчас гляну в конец файла. Подождите. Какой конец файла? Мне его считать - 1,5 часа. Если только специально для вас обсчитать последние строки... И у меня вообще не будет 5000 строки - см код. который я тут уже выложил 2 раза: ... for $str2 ($str+1 .. $kolStr){ ... 5000 строка будет сравниваться только с 5001. А 5001 строки и нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
короче, :) 1. есть первичный файл в 5000 строк 2. miltorg генерит из него второй файл в стопиццоттыщмиллионов строк, где каждая строчка описывает совпадение 2 каких-либо строк первоначального файла, но не менее 10 (или 9?) чисел в строке, чтобы совпадало там же указываются номера этих строк 3. закащщику нужен вообще третий файл, где указываются только самые частые совпадения, с их количеством видимо, так )) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton miltorg пропущено... 0 и 24 строка исходного файла - это правда так сложно понять? Нет мне не сложно понять. Мне лень делать гипотезы и их проверять. Ты мог-бы просто сделать одолжение и описать что входные данные - текстовый файл такого-то формата? С датаи или без дат. Выходной файл - отчот тоже текстового формата с такими-то полями. Это ведь не сложно? Ты бы избавил мир от лишних вопросов. И кстати. Есть система нумерации порядковых номеров принятая в С++/Java. Она начинается с нуля. И есть система Pascal. Она идет с единицы. Это пустяк. Но вообще когда говорят о ТЗ - то и такие мелочи оговаривают. Это - вопрос It-культуры. Я 500-й раз напишу. Ищем номера строк с максимальным числом 10-циферных совпадений - которое тоже нужно указать. Это я писал уже 500 раз. 500. Если вы сделаете это за 1 проход - в моём понимании - вы будите гений. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 15:59 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я их нахожу за 10 проходов. 2 проход последний раз занял 7 дней. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
zyubr, это все может изменится через пару минут id=1 а строка 0, догадайся по датам...))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
zyubr короче, :) 1. есть первичный файл в 5000 строк 2. miltorg генерит из него второй файл в стопиццоттыщмиллионов строк, где каждая строчка описывает совпадение 2 каких-либо строк первоначального файла, но не менее 10 (или 9?) чисел в строке, чтобы совпадало там же указываются номера этих строк 3. закащщику нужен вообще третий файл, где указываются только самые частые совпадения, с их количеством видимо, так )) Зачем выдумывать? Я ведь выложил код первой обработки. И код второй обработки - с комментариями. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, А зачем смотреть мои промежуточные результаты? - Выкладывайте свои. И тогда вам всё сразу станет ясно и понятно. Мои результаты - это вообще просто так. Но люди не понимают что строка может быть нулевой. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov zyubr, это все может изменится через пару минут id=1 а строка 0, догадайся по датам...))) :)) можно насчитать как угодно, а потом даты подтянуть из первоначального файла и финально подправить с 0 или с 1, или как там уже будет верно в будущем :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Это ведь не сложно? Ты бы избавил мир от лишних вопросов. И кстати. Есть система нумерации порядковых номеров принятая в С++/Java. Она начинается с нуля. И есть система Pascal. Она идет с единицы. Это пустяк. Но вообще когда говорят о ТЗ - то и такие мелочи оговаривают. Это - вопрос It-культуры. Какая культура? - это промежуточный, никому не нужный результат. Нельзя блин показывать недоделанную работу - нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Зачем выдумывать? Я ведь выложил код первой обработки. И код второй обработки - с комментариями. там такая жесточайшая путаница во всех предыдущих темах/комментариях... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:14 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
zyubr, ???? Вы первый раз на форуме? Длинные темы нужно читать с конца ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я так понял что решение мне никто тут не подкинет. Не за деньги ни без. А жаль. ---------------- Я верю в БД. Поэтому начну с того, что засуну всё в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:27 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton пропущено... Нет мне не сложно понять. Мне лень делать гипотезы и их проверять. Ты мог-бы просто сделать одолжение и описать что входные данные - текстовый файл такого-то формата? С датаи или без дат. Выходной файл - отчот тоже текстового формата с такими-то полями. Это ведь не сложно? Ты бы избавил мир от лишних вопросов. И кстати. Есть система нумерации порядковых номеров принятая в С++/Java. Она начинается с нуля. И есть система Pascal. Она идет с единицы. Это пустяк. Но вообще когда говорят о ТЗ - то и такие мелочи оговаривают. Это - вопрос It-культуры. Я 500-й раз напишу. Ищем номера строк с максимальным числом 10-циферных совпадений - которое тоже нужно указать. Я не понимаю эту фразу. Так с максимальным? Или с 10 циферным? Или где >= 10 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, все 10 , даже те что входят в >10 там где 11 и т.д. совпадений - нужно тоже учитывать комбинации из 10-ти то есть если попадется макс из 11 совпадений, то ответом будет 11 комбинаций по 10 чисел из 11 совпавших допустим совпало 11 чисел 1 2 3 4 5 6 7 8 9 10 11 - 5раз значит ответ Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Ого! Вы поняли это!!! Всего то месяц прошёл. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Наполняем БД. Код: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Первые строки - это недоделанная работа! Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 16:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, едрить мадрить) не остри, все тут понимают в меру твоего объяснения. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 17:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Alex_Ustinov, Ого! Вы поняли это!!! Всего то месяц прошёл. Alex_Ustinov в меню сообщения есть кнопка ДОПОЛН. там есть ТЭГ spoiler "простыни" можно прятать под этот ТЭГ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 17:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Первый проход. Код: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 17:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Первые 10 строк. Недоделано! Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 17:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, И считало оно 100 строк - 1,23 мин ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 17:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А нужно - 15 сек. Как бы объединить эти 2 запроса в один? Не про это ли писали в самой первой теме? - Но меня тогда скорость устраивала. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 17:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
У меня пока - баг. Появляются числа больше 100. Исправлю - потом покажу репорт. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 18:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Экономил на спичках. Вместо битсета - регистры и целые числа. Вечная спешка... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 18:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Это нормальное решение: 22261538 Но оно не даёт цифры-совпадения. Их можно от туда вытащить? А может они и не нужны на промежуточных этапах? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 19:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Хм! Ведь совпавшие строки то оно даёт. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 19:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
по-моему надо переписать miltorg Alex_Ustinov, miltorg, Ого! Вы поняли это!!! Всего то месяц прошёл. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 20:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я сделал фун-ю StrToBit (в Binary(100)) и обратную BitToStr() которая ищет пересечение единичек в (Bin1 & Bin2) О чем уже сказано 55км пути назад ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 20:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
хотя с Binary немного другой подсчет, но это не мешает использовать BIT_COUNT ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 20:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я откачусь назад. Сделаю медленно но правильно. Через BitSet. А уж потом если будет все корректно - тогда оптимизирую по скорости. Битовые операции в Java не сложны. Только я про дополнительный код забываю. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 20:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov Я сделал фун-ю StrToBit (в Binary(100)) и обратную BitToStr() которая ищет пересечение единичек в (Bin1 & Bin2) * которая из единичек "делает числа" О чем уже сказано 55км пути назад ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 20:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Вот взяли бы и гордо выложили бы решение для 10 цифр-совпадений. А так... - одни словеса. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 21:11 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, это не ответ!!!))) id covpalo cifri kol-vo3333-3334-3335-3336 14.07.2016 -15.07.2016 -16.07.2016 -17.07.2016 4 1-2-3-4-5-6-7-8-9-10-11-12 12..... словеса у вас, с ненужными проходными выкладками ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 21:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
это не ответ!!! id covpalo cifri kol-vo3333-3334-3335-3336-3337 14.07.2016 -15.07.2016 -16.07.2016 -17.07.2016-18.07.2016 5 1-2-3-4-5-6-7-8-9-10-11-12 12 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 22:36 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, ты не поверишь! Но я грешным делом тоже самое дёрнулся делать. У меня даже в закоментированном коде оно так и осталось. Потом смотрю - Прохорыч просто пары учитывает. А кросс-парную группировку ему вроде как не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 22:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Alex_Ustinov, ты не поверишь! Но я грешным делом тоже самое дёрнулся делать. У меня даже в закоментированном коде оно так и осталось. Потом смотрю - Прохорыч просто пары учитывает. А кросс-парную группировку ему вроде как не надо. еще вчера надо было miltorg Если кто то не читал предыдущею тему: Есть файл - в каждой строке 20 чисел, через пробел, от 1 до 99 включительно. Около 5 тысяч строк. Нужно получить совпадения по 9 чисел. Например 5_7_8_27_39_50_58_62_70 - комбинация есть в 5 строках - в 1, 28, 1004, 4300, 4444, ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 23:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, ну это логично побитово решение практически одно, допустим ищем 11 вхождений, получили (беру строку 3333 для примера) ТАБ1 id1 id2 cifri kol-vo3333 3334 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 153333 3335 1 2 3 4 5 6 7 8 9 10 11 12 13 14 143333 3336 1 2 3 4 5 6 7 8 9 10 11 12 13 133333 3337 1 2 3 4 5 6 7 8 9 10 11 12 123333 3667 2 3 4 9 10 12 13 14 18 19 20 11 maytonПотом смотрю - Прохорыч просто пары учитывает. А кросс-парную группировку ему вроде как не надо. ему это как раз и надо, т.е. из ТАБ1 свернуть каким то образом в GROUP kolvo kombi3333-3334-3335-3336-3337 5 1 2 3 4 5 6 7 8 9 10 11 12 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 23:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, ну вот-же Прохорыч приводит свой отчет. У него - список пар. Первая и двадцать пятая строка. 11 общих цифр. Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 23:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, это первый проход ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2021, 23:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Пф... какой еще к чорту проход? Кто вообще так задания ставит. Вот посмотрите как я поставил задачу 22268087 в топике Программирования. В олимпиадном стиле. Есть Input . Output . И точка. И все поняли и стали кодить. А здесь - седьмая вода на киселе... Зачем давать ценные указания. Программист сам знает КАК сделать. Скажите что на выходе. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 00:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, через несколько дней увидим что на выходе ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 00:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А почему вообще не разобрать все числа в строки таблицы, например такой date, colid int, val int А затем простой запрос: Код: sql 1. 2. 3. 4. 5. 6.
? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 01:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__ А почему вообще не разобрать все числа в строки таблицы, например такой date, colid int, val int А затем простой запрос: Код: sql 1. 2. 3. 4. 5. 6.
? Результат: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30.
Скрипт: ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 01:38 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
Убрал двойников, запрос считает за минуту. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 02:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
у хадупа в комбинации по 10 победили 66 строк с 5 совпадениями [1, 2, 3, 4, 5, 6, 7, 8, 10, 11] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 9, 11] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 9, 10, 11] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 9, 12] ----- есть в 14.07.2016 17.07.2016 15.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 9, 10, 11] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 02:14 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, так и есть 10 из 12 комбинаций = 66 1-2-3-4-5-6-7-8-9-10-11-12 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 02:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov это не ответ!!! id covpalo cifri kol-vo3333-3334-3335-3336-3337 14.07.2016 -15.07.2016 -16.07.2016 -17.07.2016-18.07.2016 5 1-2-3-4-5-6-7-8-9-10-11-12 12 Нет. В ответе 10 цифр: 1-2-3-4-5-6-7-8-9-10 --------------- Нет. В ответе несколько... - ну например 20, максимальных совпадений. - У вас одно. Поймите. Когда я покажу ваше решение заказчику - он спросит тоже самое и деньги мы за это списать не получится. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Alex_Ustinov, ты не поверишь! Но я грешным делом тоже самое дёрнулся делать. У меня даже в закоментированном коде оно так и осталось. Потом смотрю - Прохорыч просто пары учитывает. А кросс-парную группировку ему вроде как не надо. Если вы уже перешли на кликухи - я Андрон. - Армейская кликуха. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Это ответ или первый проход? Если ответ - цифр должно быть 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Даты не нужно таскать. Я ведь просил - строки. Номера строк. Сравнивать удобней. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, Зачем вы начали прикручивать даты? В задании - номера строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, Во! Уважуха. Наконец то хоть один готовый скрипт. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg H5N1, Это ответ или первый проход? Если ответ - цифр должно быть 10 это финальный ответ. мне лень вникать, что там у вас сменилось в тз, я решил вот эту задачу для 10 цифр miltorg Если кто то не читал предыдущею тему: Есть файл - в каждой строке 20 чисел, через пробел, от 1 до 99 включительно. Около 5 тысяч строк. Нужно получить совпадения по 9 чисел. Например 5_7_8_27_39_50_58_62_70 - комбинация есть в 5 строках - в 1, 28, 1004, 4300, 4444, miltorg Пример ответа: 1_2_3_4_5_6_7_8_9_10 ------ есть в 105, 200, 500, 5000 строках ------- 4 строки совпадения ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, У меня ваш скрипт не запустился, к сожалению: mysql> source /media/miltorg/712B9BD2598A5E26/uuu/n3/u/SQLQuery24.sql; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'drop table declare @t xml = '<root> <a date="31.05.2007" s="13 14 15 17 21 26 ' at line 2 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXEC sp_xml_preparedocument @docHandle OUTPUT, @t' at line 1 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM OPENXML(@docHandle, N'/root/a',2) WITH (d varchar(10) '@date', s varchar(10' at line 3 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'insert into select try_convert(smalldatetime,t.d,104), v.value from cross appl' at line 2 mysql> ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 miltorg H5N1, Это ответ или первый проход? Если ответ - цифр должно быть 10 это финальный ответ. мне лень вникать, что там у вас сменилось в тз, я решил вот эту задачу для 10 цифр miltorg Если кто то не читал предыдущею тему: Есть файл - в каждой строке 20 чисел, через пробел, от 1 до 99 включительно. Около 5 тысяч строк. Нужно получить совпадения по 9 чисел. Например 5_7_8_27_39_50_58_62_70 - комбинация есть в 5 строках - в 1, 28, 1004, 4300, 4444, miltorg Пример ответа: 1_2_3_4_5_6_7_8_9_10 ------ есть в 105, 200, 500, 5000 строках ------- 4 строки совпадения Упс. Я что-то не туда посмотрел. Извиняюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Отлично. Супер. Спасибо. Присылайте скрипт. Или как? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 08:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Хм. Вот ведь какая штука. Хромосомы группируются в кластеры. Но сами кластеры тоже образуют иерархию. Это надо показать в отчёте? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 09:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Хм. Вот ведь какая штука. Хромосомы группируются в кластеры. Но сами кластеры тоже образуют иерархию. Это надо показать в отчёте? miltorg Пример ответа: 1_2_3_4_5_6_7_8_9_10 ------ есть в 105, 200, 500, 5000 строках ------- 4 строки совпадения ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 09:14 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Отлично. Супер. Спасибо. Присылайте скрипт. Или как? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 09:30 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Спасибо. Но. Эти строки которые вы нашли я внёс искусственно. Как бы нам протестировать ваш скрипт более надёжно? ------------------ Ведь это здорово! Первое решение - кроме моего - за месяц мучений местных умников и умниц - которые задание до сих пор не поняли. Да. Забыл. А считает то сколько? 10-ку я делал за сутки. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 09:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg H5N1, Спасибо. Но. Эти строки которые вы нашли я внёс искусственно. Как бы нам протестировать ваш скрипт более надёжно? ------------------ Ведь это здорово! Первое решение - кроме моего - за месяц мучений местных умников и умниц - которые задание до сих пор не поняли. Да. Забыл. А считает то сколько? 10-ку я делал за сутки. на десктопе посчиталось за 2.5 часа, но похоже из-за того что я не настоящий хадуп юзаю, а заглушку от него, все в одном потоке считается. на след недели попробую в виртуалке запустить, в параллель думаю должно в час укладываться. для 9 комбинаций где то 2.2 часа. снова максимум 5 вхожений. результат: [1, 2, 3, 4, 5, 6, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 10, 11] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 10] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 12] ----- есть в 14.07.2016 16.07.2016 17.07.2016 15.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 9] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 9, 11] ----- есть в 17.07.2016 15.07.2016 16.07.2016 14.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 10, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 9, 10] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 9, 12] ----- есть в 15.07.2016 17.07.2016 16.07.2016 14.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 10, 11] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 9, 11] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 8, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 10, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 9, 10] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 9, 12] ----- есть в 15.07.2016 17.07.2016 14.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 10, 11] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 9, 11] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 8, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 10, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 9, 10] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 9, 12] ----- есть в 17.07.2016 14.07.2016 15.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 6, 7, 8, 9, 10, 11, 12] ----- есть в 14.07.2016 15.07.2016 16.07.2016 17.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 10, 11] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 9, 11] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 9, 10] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 9, 12] ----- есть в 17.07.2016 14.07.2016 15.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [4, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 8, 11] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 9, 10] ----- есть в 18.07.2016 14.07.2016 15.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 7, 9, 12] ----- есть в 15.07.2016 17.07.2016 14.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 10, 11] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 8, 9, 11] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 6, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 9, 10] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 8, 9, 12] ----- есть в 15.07.2016 14.07.2016 17.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 7, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 5, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 10, 11] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 8, 9, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 7, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 8, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 6, 8, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 4, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 10, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 9, 10] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 8, 9, 12] ----- есть в 16.07.2016 15.07.2016 17.07.2016 14.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 7, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 6, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 5, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 3, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 10, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 8, 9, 11] ----- есть в 18.07.2016 17.07.2016 15.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 7, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 6, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 5, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 4, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 2, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 17.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 10, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 9, 10] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 8, 9, 12] ----- есть в 17.07.2016 15.07.2016 14.07.2016 16.07.2016 18.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 17.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 7, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 6, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 5, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 4, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 16.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 16.07.2016 14.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 15.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [1, 3, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 16.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 4, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [1, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 17.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 11, 12] ----- есть в 18.07.2016 16.07.2016 14.07.2016 17.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 8, 9, 11] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 7, 9, 10, 12] ----- есть в 18.07.2016 14.07.2016 17.07.2016 16.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 8, 10, 11, 12] ----- есть в 18.07.2016 14.07.2016 15.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 8, 9, 10, 11] ----- есть в 18.07.2016 14.07.2016 16.07.2016 15.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 6, 8, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 17.07.2016 16.07.2016 14.07.2016 15.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 5, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 4, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 3, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 7, 8, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 14.07.2016 15.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 7, 8, 9, 10, 11] ----- есть в 18.07.2016 15.07.2016 16.07.2016 14.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 7, 8, 9, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 5, 6, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 17.07.2016 15.07.2016 14.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [2, 4, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 16.07.2016 15.07.2016 17.07.2016 14.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 7, 8, 9, 10, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 6, 7, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 17.07.2016 16.07.2016 cтроках ---- 5 cтроки совпадения [3, 4, 5, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения [3, 5, 6, 7, 8, 9, 10, 11, 12] ----- есть в 18.07.2016 15.07.2016 14.07.2016 16.07.2016 17.07.2016 cтроках ---- 5 cтроки совпадения теперь попробую 9,10,11,12,13 в один проход и отфильтровать победителей с более 5 пападаний ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 11:08 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, то есть кода не будет? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 11:31 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Вы внесите последней строкой в исходник что либо ещё или распечатайте повторы которые и меньше 5 совпадений. Потому что получается что вы находите только мои, искусственно внесённые строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 11:36 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, А чего я радуюсь? Это вы развернули свой Хадуп. Блин. Опять нет никакого решения. Получается. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 11:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Нет. В ответе несколько... - ну например 20, максимальных совпадений. - У вас одно. Поймите. Когда я покажу ваше решение заказчику - он спросит тоже самое и деньги мы за это списать не получится. ЭТО НЕ ОТВЕТ 3333-3334-3335-3336-3337 5 1 2 3 4 5 6 7 8 9 10 11 12 данное решение получено после первого "прохода" и группировки. Самое интересное - это решение лежало на виду еще в прошлом топике, оставалось правильно сгруппировать Даже не помню сколько это считалось - 1 или 2 мин а заказчику вы покАжите так, как ему надо я за вас думать не собираюсь и никому не советую как уже писалось 100км пути назад - осталось разложить по 10 из 12 полученных чисел, путем последовательного "вычеркивания двух чисел", сделайте, покажИте как вы умеете Цикловать. Я за то чтобы вы сами приложили голову а не попрошайничали решение ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 11:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Для первого прохода - хорошо, но где остальные совпадения? Приведите хоть пару десятков. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 11:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, У меня стойкое ощущение, что вы специально меня не слушаете. В прошлом топике я обсчитывал 10 чисел - у меня всё получалось в приемлемые для меня сроки - 1 день пыхтения компа Там никакой задачи по оптимизации и не ставилось. Там я спрашивал - Как проверить результат? Потом я стал обсчитывать своим методом 9 чисел ... - неделя непрерывной работы компьютера... - это много... - возникла эта новая тема про оптимизацию. Что не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Немного изменил входной файл. Так он должен стать более интересным: ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, к чему этот цирк? получено решение из 12 чисел циклуйте вычеркивая по 2 числа ИЗ 12 получите 12!/(12-10)!10! = 66 комбинаций 1 2 3 4 5 6 7 8 9 10 11 12 авторПриведите хоть пару десятков. вот 6 строк Код: plaintext 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton Alex_Ustinov, ты не поверишь! Но я грешным делом тоже самое дёрнулся делать. У меня даже в закоментированном коде оно так и осталось. Потом смотрю - Прохорыч просто пары учитывает. А кросс-парную группировку ему вроде как не надо. Если вы уже перешли на кликухи - я Андрон. - Армейская кликуха. Замётано, Андрон. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg, Немного изменил входной файл. Так он должен стать более интересным: для milbase1 решение str XXX kombi2981- 472 - 3010 3 10 22 36 37 46 54 59 64 74 783332 -3333 -3334 3 3 5 7 9 11 17 20 22 23 243335 - 3336 -3337 3 1 2 3 4 5 6 7 8 9 10 11 12182- 1262- 3640 3 15 19 20 38 41 43 51 54 66 74234 -2051 - 4517 3 4 7 8 30 31 44 45 49 55 67 для получения ответа развернуть все kombi в комбинации по 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, затраченное время 7 сек заливка ~ 2мин перетрубация в binary итоговый запрос < 1 сек для ответа оставшуюся часть с комбинаторикой оставлю ТС ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov Alex_Ustinov, затраченное время 7 сек заливка ~ 2мин перетрубация в binary итоговый запрос < 1 сек для ответа оставшуюся часть с комбинаторикой оставлю ТС Генерация сочетаний из N по K ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov miltorg, к чему этот цирк? получено решение из 12 чисел циклуйте вычеркивая по 2 числа ИЗ 12 получите 12!/(12-10)!10! = 66 комбинаций 1 2 3 4 5 6 7 8 9 10 11 12 авторПриведите хоть пару десятков. вот 6 строк Код: plaintext 1. 2. 3. 4. 5. 6. 7.
угу. Только у меня на 9-ке получилось 300 тысяч по 10 совпадений. 300 тысяч Я не буду с вами спорить про это. Я вам тысячу раз про это рассказывал ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, у вас есть код на первый проход? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:36 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov получено решение из 12 чисел циклуйте вычеркивая по 2 числа ИЗ 12 получите 12!/(12-10)!10! = 66 комбинаций халтура в файле заказчика никто не обещает, что данные будут сгенерированны путем предсказуемых перестановок miltorg Вы внесите последней строкой в исходник что либо ещё или распечатайте повторы которые и меньше 5 совпадений. Потому что получается что вы находите только мои, искусственно внесённые строки. слишком длинная простыня. для девяток там на 250 мб лог, для десяток 40, ну если убедится, вот https://filebin.net/ivxe745t645ivdx9/for10.zip?t=3z1kqzyw miltorg H5N1, А чего я радуюсь? Это вы развернули свой Хадуп. Блин. Опять нет никакого решения. Получается. развернуть хадуп=распаковать 5 мб папку и прописать переменную среды. там другая сложность, почему-то не запускается с командной строки, только с IDE и в процессе жрет 120 гб в темп папке :) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:38 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, я не спорю ни оч ем, только факты. авторна 9-ке получилось 300 тысяч по 10 совпадений.так а что вы хотели? сделайте скрипт, не на горбу мешки таскать. допустим процедуру в MySQL , пусть сливает строки в итоговую таблицу как надо для ответа --Я вам тысячу раз про это рассказывал. не надо ничего рассказывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:39 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov miltorg miltorg, Немного изменил входной файл. Так он должен стать более интересным: для milbase1 решение str XXX kombi2981- 472 - 3010 3 10 22 36 37 46 54 59 64 74 783332 -3333 -3334 3 3 5 7 9 11 17 20 22 23 243335 - 3336 -3337 3 1 2 3 4 5 6 7 8 9 10 11 12182- 1262- 3640 3 15 19 20 38 41 43 51 54 66 74234 -2051 - 4517 3 4 7 8 30 31 44 45 49 55 67 для получения ответа развернуть все kombi в комбинации по 10 3332 -3333 -3334, 3, 3 5 7 9 11 17 20 22 23 24 3338 строка ещё должна была совпасть. У вас её нет вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorgу вас есть код на первый проход? а чем же я считаю? пальцем? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov miltorg miltorg, Немного изменил входной файл. Так он должен стать более интересным: для milbase1 решение str XXX kombi2981- 472 - 3010 3 10 22 36 37 46 54 59 64 74 783332 -3333 -3334 3 3 5 7 9 11 17 20 22 23 243335 - 3336 -3337 3 1 2 3 4 5 6 7 8 9 10 11 12182- 1262- 3640 3 15 19 20 38 41 43 51 54 66 74234 -2051 - 4517 3 4 7 8 30 31 44 45 49 55 67 для получения ответа развернуть все kombi в комбинации по 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:44 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg 3338 строка ещё должна была совпасть. У вас её нет вообще.отлично, вы начали думать автор3335 - 3336 -3337, 3, 1 2 3 4 5 6 7 8 9 10 11 12 12 совпадений, а не 10отлично, читаем дальше Alex_Ustinovдля получения ответа развернуть все kombi в комбинации по 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov miltorgу вас есть код на первый проход? а чем же я считаю? пальцем? Ок. ОК. До свидания ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg __Avenger__, У меня ваш скрипт не запустился, к сожалению: mysql> source /media/miltorg/712B9BD2598A5E26/uuu/n3/u/SQLQuery24.sql; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'drop table declare @t xml = '<root> <a date="31.05.2007" s="13 14 15 17 21 26 ' at line 2 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXEC sp_xml_preparedocument @docHandle OUTPUT, @t' at line 1 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM OPENXML(@docHandle, N'/root/a',2) WITH (d varchar(10) '@date', s varchar(10' at line 3 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'insert into select try_convert(smalldatetime,t.d,104), v.value from cross appl' at line 2 mysql> Итак. осталось только это решение. И решение которое я почти написал сам ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Еще вопрос. Являются ли исходные хромосомы (5000 штук) уникальными по заданию? Это может повлиять на смысл подсчета количества штук в кластере. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
мозги напрягли? отлично РЕШЕНИЕ-"потеряшка" 3332-3333-3334-3338 4 3 5 7 9 11 17 20 22 23 24 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Alex_Ustinov пропущено... а чем же я считаю? пальцем? Ок. ОК. До свидания ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, Мы ведь отбросили это Хайдуп решение потому что его не сможет Юзер администрировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 12:59 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Если вы это у меня спрашиваете - то говорите по русски или дайте ссылку на ваши хромосомы и кластеры Матрицы проходил. Сложение, перемножение. Хромосомы - нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 13:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton, Если вы это у меня спрашиваете - то говорите по русски или дайте ссылку на ваши хромосомы и кластеры Матрицы проходил. Сложение, перемножение. Хромосомы - нет. Прошу прощения. Чтоб задача была наполнена прикладным смыслом. Я ввожу (для себя названия). Потому-что числа и векторы - это какое-то масло-маслянное. Представте что вам бухгалтер скажет что в следующем месяце вы получите аж столько чисел. Поэтому хромосома это такая штука. Код: sql 1.
А кластер для нее это ее пересечение с другими хромосомами. Это те десятки и одинадцатки. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 13:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg __Avenger__, У меня ваш скрипт не запустился, к сожалению: mysql> source /media/miltorg/712B9BD2598A5E26/uuu/n3/u/SQLQuery24.sql; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'drop table declare @t xml = '<root> <a date="31.05.2007" s="13 14 15 17 21 26 ' at line 2 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXEC sp_xml_preparedocument @docHandle OUTPUT, @t' at line 1 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM OPENXML(@docHandle, N'/root/a',2) WITH (d varchar(10) '@date', s varchar(10' at line 3 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'insert into select try_convert(smalldatetime,t.d,104), v.value from cross appl' at line 2 mysql> Итак. осталось только это решение. И решение которое я почти написал сам вроде говорит что версия не та ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 13:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Еще вопрос. Являются ли исходные хромосомы (5000 штук) уникальными по заданию? Это может повлиять на смысл подсчета количества штук в кластере. Да. Исходный файл - железобетонный и в нём ничего изменяться не будет. Но каждый день будет приходить новая пачка строк. Возможно, что когда то заказчик попросит выкинуть из расчётов часть совсем старых строк. Возможно ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 13:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg пропущено... Итак. осталось только это решение. И решение которое я почти написал сам вроде говорит что версия не та mysql --version mysql Ver 8.0.23-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu)) У меня версия за январь этого года. Слишком новая? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 13:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
))) обычная текущая версия ......>mysql --version mysql Ver 8.0.23 for Win64 on x86_64 (MySQL Community Server - GPL) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 14:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
вся беда в том что скрипт у __Avenger__, не MySQL ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 15:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Спасибо. Значит нужно только писать самому. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 15:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Андрон. Ану зацени результат. Первая тыща центров кластеров. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
И еще тоже самое но отсортированное по количеству хромосом в кластере. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton И еще тоже самое но отсортированное по количеству хромосом в кластере. по мне так лажа. если это miltbase.txt, то в clusterDimenstions : 10 должно было попасть 66 хромосон с chromosomesInCluster : 5 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1332994&msg=22276120 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Вам лучше всего будет переписать perl скрипт так чтобы он не вставлял миллион записей в $tab2, а хранил их в хеше прямо в памяти perl, потом проходил по тем, в которых насчитано больше одного и делал по ним отчёт. Но это сложно написать без рабочего тестового стенда. Могу предложить решение чисто на MySQL, но его может глючить если где-то пробелы будут лишние или элементов будет не 20. И сложно эти ситуации обработать средствами именно SQL. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton И еще тоже самое но отсортированное по количеству хромосом в кластере. по мне так лажа. если это miltbase.txt, то в clusterDimenstions : 10 должно было попасть 66 хромосон с chromosomesInCluster : 5 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1332994&msg=22276120 Это top 4000 отсортированных по двум столбцам соотв. И поскольку в кластер с 10 измерениями попадает большая половина гипотетических центров кластеров (их порядка 29 тысяч) - то они просто отсеклись при выводе отчота. Сравни с 14 мерными лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:39 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Это top 4000 отсортированных по двум столбцам соотв. И поскольку в кластер с 10 измерениями попадает большая половина гипотетических центров кластеров (их порядка 29 тысяч) - то они просто отсеклись при выводе отчота. Сравни с 14 мерными лучше. я не понимаю о чем речь. cat report-2.json5 | grep "clusterDimenstions : 14" ничего не выводит, а на верхних местах лажа. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov, Красота! Спасибо огромное. Мне нужно время чтоб это всё осмыслить. Но по выводу результатов - красотища. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Это top 4000 отсортированных по двум столбцам соотв. И поскольку в кластер с 10 измерениями попадает большая половина гипотетических центров кластеров (их порядка 29 тысяч) - то они просто отсеклись при выводе отчота. Сравни с 14 мерными лучше. я не понимаю о чем речь. cat report-2.json5 | grep "clusterDimenstions : 14" ничего не выводит, а на верхних местах лажа. Давай по конкретному кейсу. Я могу сформировать полный отчот. Просто его трудно аттачить к этому форуму (он больше 150К). Какие центры кластеров я упустил? Если сравнивать с твоими данными. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Давай по конкретному кейсу. Я могу сформировать полный отчот. Просто его трудно аттачить к этому форуму (он больше 150К). Какие центры кластеров я упустил? Если сравнивать с твоими данными. конкретно по clusterDimenstions : 10. должны быть записи с "clusterDimenstions : 10, chromosomesInCluster : 5", 66 штук. я их перечислил тут https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1332994&msg=22276120 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 19:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
У меня примерно 25 тыщ центров кластеров с размерностью 10. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Сколько у тебя? Возможно я ошибаюсь. Но давай как-то приблизимся к ошибке если она есть. Я пофикшу. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 20:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
(переименовал maxClusterLength => maxClusterDimensions) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 20:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Сколько у тебя? Возможно я ошибаюсь. Но давай как-то приблизимся к ошибке если она есть. Я пофикшу. я уже не уверен где у меня посчитано по miltbase.txt и где по miltbase1.txt все что тебе нужно есть по ссылке, сделай cat miltbase.txt | grep "1 2 3 4 5 6 7 8 9 10 11 12" 14.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 15.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 26 27 28 29 30 16.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 14 35 36 37 38 39 40 17.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 44 45 46 47 48 49 50 18.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 53 54 55 56 57 58 59 60 т.е. должно быть туча хромосом с ключами от 1 до 12, попадающие в эти строки ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 20:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Сколько у тебя? Возможно я ошибаюсь. Но давай как-то приблизимся к ошибке если она есть. Я пофикшу. я уже не уверен где у меня посчитано по miltbase.txt и где по miltbase1.txt все что тебе нужно есть по ссылке, сделай cat miltbase.txt | grep "1 2 3 4 5 6 7 8 9 10 11 12" 14.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 15.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 26 27 28 29 30 16.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 14 35 36 37 38 39 40 17.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 13 44 45 46 47 48 49 50 18.07.2016 1 2 3 4 5 6 7 8 9 10 11 12 53 54 55 56 57 58 59 60 т.е. должно быть туча хромосом с ключами от 1 до 12, попадающие в эти строки Я щас попробую встать на дебаггер и понять куда улетели эти 5 штук. Есть предположение что они склеились с кластером размерности 11 и выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 20:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov, Повторил у себя ---- ОХРЕНЕТЬ!!! Это чудо какое то. Спасибо огромнейшее. Сейчас подсуну туда настоящий файл. Он у меня уже просчитан для 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 21:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Victor Ichalov, Повторил у себя ---- ОХРЕНЕТЬ!!! Это чудо какое то. Спасибо огромнейшее. Сейчас подсуну туда настоящий файл. Он у меня уже просчитан для 10 С ходу - не сработало :-( Что-ж мне так не везёт, блин. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 21:31 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov, Когда будет презентация-конференция ваших запросов? У меня вопрос. Ваши запросы подойдут для любых аналогичных входящих данных или это какой то частный случай? - я в коде вижу, что вы используете конкретную строку - или это для проверки? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 21:36 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Когда будет презентация-конференция ваших запросов? Я не знаю, пока хотелось бы этого избежать. miltorg Ваши запросы подойдут для любых аналогичных входящих данных или это какой то частный случай? - я в коде вижу, что вы используете конкретную строку - или это для проверки? Должны подходить для любых аналогичных, запросы с датой просто для контроля. Единственное что приходит в голову это то что во втором поле должно быть 19 пробелов: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Может там подчёркивания, а не пробелы? Вообще сложно что-то ответить по предложенной диагностической информации. Возвращается пустая выборка или какая-то ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 22:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Даже скорее какой-то такой проверочный запрос: Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2021, 22:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Можно задачу в лоб решить, но итоговый селект с перестановками нужно динамически формировать Пример для 10 чисел в итоговой выборке. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 00:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Подфиксил у себя баг. Связан с этим чортовым символом табуляции который в оригинальном txt/csv используется. Вобщем я проглатывал 1 символ хромосомы. Из за этого многие единички не попадали в репорт. Теперь 60 тысяч потенциальных кластеров есть. Вот шапка отчота сортированного по размеру измерений в кластере. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Вот хвост. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 03:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
И тоже самое. Отсортировано по количеству хромосом к властере. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Андрон. Устинов. Н5N1. Смотрите. Ищите несоответсвия. Исходник и бинарь я предоставлю. Просто во мне сидит воинстующий эстет и я не хочу его отдавать в виде рваной салфетки где я писал каракули и все прочее. Привык... знаетели к clean code. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 03:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, там на входе уже другой файл - miltbase1.txt )) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 04:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Андрон. Устинов. Н5N1. Смотрите. Ищите несоответсвия. Исходник и бинарь я предоставлю. Просто во мне сидит воинстующий эстет и я не хочу его отдавать в виде рваной салфетки где я писал каракули и все прочее. Привык... знаетели к clean code. clean code предполагает наличие итегрейшен теста, напишите интегрейшен тест уже, в ваших салфетках лажа. я же написал, в верном ответе на miltbase.txt должны быть 66 строк "clusterDimenstions : 10, chromosomesInCluster : 5" вход для теста Код: plaintext 1. 2. 3. 4. 5.
выход: https://filebin.net/eg5q9277xuqpqvtw/integration_test_out.txt?t=rp9s0q41 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 11:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov, Спасибо. Возвращается недовыборка Если у вас так строго с пробелами - я сейчас гляну нетестовый исходный ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 11:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Возвращается недовыборка Другой причиной может быть то что мои запросы только сравнивают непрерывные подпоследовательности. Т.е. они не засчитывают такое как совпадение: Код: plaintext 1.
Просто может в miltbase1 такого нет, поэтому результат совпадает. Ну можно написать SQL чтобы все упорядоченные комбинации сравнивал. Но это будет: 1. Медленнее 2. Видимо прогрессивно медленнее с уменьшением длины подпоследовательности 3. Сложно определить в процессе сколько процентов уже сделано (в perl полегче) 4. Вызывать необходимость следить за памятью, т.к. если она кончится в процессе то результата не дождёшься ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 13:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 clean code предполагает наличие итегрейшен теста, напишите интегрейшен тест уже, в ваших салфетках лажа. я же написал, в верном ответе на miltbase.txt должны быть 66 строк "clusterDimenstions : 10, chromosomesInCluster : 5" Ну .. интеграционные мы пока отложим. Они предполагают минимум несколько взаимодействующих модулей системы. У меня - просто процедура main. И интегрироваться там несчем. По поводу архивов. Код: sql 1. 2. 3. 4. 5. 6.
У меня последний файлик с контольной суммой 91ba78c4. Дайте линку на более актуальный. Не могу найти по треду. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 14:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, 22276243 советую обработать в текстовом редакторе, заменив ТАВ после даты на ЗПТ у меня это первая обязательная обработка данных дом-2 жив, однако... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 14:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, спасибо. Чет не заметил. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 14:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov miltorg Возвращается недовыборка Другой причиной может быть то что мои запросы только сравнивают непрерывные подпоследовательности. Т.е. они не засчитывают такое как совпадение: Код: plaintext 1.
Просто может в miltbase1 такого нет, поэтому результат совпадает. Ну можно написать SQL чтобы все упорядоченные комбинации сравнивал. Но это будет: 1. Медленнее 2. Видимо прогрессивно медленнее с уменьшением длины подпоследовательности 3. Сложно определить в процессе сколько процентов уже сделано (в perl полегче) 4. Вызывать необходимость следить за памятью, т.к. если она кончится в процессе то результата не дождёшься То есть вы делали задание под себя, а не по заданию? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 14:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Пошёл 2 месяц "простенького задания". Но у меня есть хоть долгие, но решения. У вас? - Нет ничего? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 14:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Ну .. интеграционные мы пока отложим. Они предполагают минимум несколько взаимодействующих модулей системы. У меня - просто процедура main. И интегрироваться там несчем. странновастые мягко говоря у вас представления. ладно, я утомился. топик в какой-то чат малолеток превратился. я говорю на этот вход должно быть 66 строк выхода, ноль внимания. вот мой джарник, собранный на java 15 и фолдер с заглушкой от хадупа. как запустить видно в bat файле. вывод параметризован - или в вашем стиле или тот что хотел miltorg. https://filebin.net/tngol6xocmvfzm7l/app1.zip?t=k7k0oin1 по мне так надо нормальный пример генерить, где и 19 совпадений встретиться могут, ну и инпут побольше, хотя бы 10к, ведь если пару раз в день строка добавляется ... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:00 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov по мне так это халтура базирующаяся на знании как был сгенерирован тестсет. на miltorg1.txt оно уже кривой ответ даст ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Ну .. интеграционные мы пока отложим. Они предполагают минимум несколько взаимодействующих модулей системы. У меня - просто процедура main. И интегрироваться там несчем. странновастые мягко говоря у вас представления. ладно, я утомился. топик в какой-то чат малолеток превратился. я говорю на этот вход должно быть 66 строк выхода, ноль внимания. вот мой джарник, собранный на java 15 и фолдер с заглушкой от хадупа. как запустить видно в bat файле. вывод параметризован - или в вашем стиле или тот что хотел miltorg. https://filebin.net/tngol6xocmvfzm7l/app1.zip?t=k7k0oin1 по мне так надо нормальный пример генерить, где и 19 совпадений встретиться могут, ну и инпут побольше, хотя бы 10к, ведь если пару раз в день строка добавляется ... Я не против хадупа. Я его использовал в AWS. Просто решение для Андрея надо упростить так чтобы он мог хотя-бы это standalone запустить на любой тачке где установлена JRE. Скопировать и запустить шелл или бат-скриптик. По поводу кластера 1 2 3 4 5 6 7 8 9 10 11 12. Он был найден. И классифицирован дважды как подкластер более точного 1 2 3 4 5 6 7 8 9 10 11 12 13. И три хромосомы в разных сочетаниях туда зашли. Это отфильтровано из отчота. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Код: sql 1. 2. 3.
Почему должно быть 66 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, какая халтура не понял это по miltorg1.txt и есть, хотите проверьте поиск вхождения наборов через битовые ф-ии находим пары вхождения и группируем по набору вхождения . Все. Та как эта тема висит уже месяц - для меня это уже просто комедийный сериал Т.к. автор выуживает конечный код под ключ для передачи заказчику - поэтому такой странный топик, и это уже второй первый здесь Как отсортировать 1 миллиард записей? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov miltorg Когда будет презентация-конференция ваших запросов? Я не знаю, пока хотелось бы этого избежать. miltorg Ваши запросы подойдут для любых аналогичных входящих данных или это какой то частный случай? - я в коде вижу, что вы используете конкретную строку - или это для проверки? Должны подходить для любых аналогичных, запросы с датой просто для контроля. Единственное что приходит в голову это то что во втором поле должно быть 19 пробелов: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Может там подчёркивания, а не пробелы? Вообще сложно что-то ответить по предложенной диагностической информации. Возвращается пустая выборка или какая-то ошибка? Вот первые 20 строк нетестового файла: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg То есть вы делали задание под себя, а не по заданию? Вообще, я отвечал на вопрос "Как оптимизировать скорость?": "Вам лучше всего будет переписать perl скрипт ... Но это сложно написать без рабочего тестового стенда." (т.е. без реалистичных данных которые разложены в таблицы со структурой, требуемой скриптом) Что касается "Могу предложить решение чисто на MySQL ...", то я его сделал для кросс-проверки что из тестовых данных действительно получается требуемое, оно выглядело подходящим, поэтому я его опубликовал именно чтобы можно было свериться с другими решениями, найти причины расхождений, если они есть. Я тут вижу проблему скорее в том что по тестовым примерам не очевидно что требуется найти также совпадения подпоследовательностей с разрывами и в общей массе написанного также сложно найти где это требование явно указано. (Кстати, оно точно нужно заказчику? Я в биоинформатике не очень разбираюсь, но уже оптимизировал что-то подобное и там вроде нужно было сравнивать только непрерывные последовательности.) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, комбинации по 10 из 12 = 12!/(12-10)!*10! = 66 и там 5 строк совпадений 3333-3334-3335-3336-3337 5 1 2 3 4 5 6 7 8 9 10 11 12 нумерация у меня с 1 по файлу miltorg.txt ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:26 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Код: sql 1. 2. 3.
Почему должно быть 66 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov miltorg То есть вы делали задание под себя, а не по заданию? Вообще, я отвечал на вопрос "Как оптимизировать скорость?": "Вам лучше всего будет переписать perl скрипт ... Но это сложно написать без рабочего тестового стенда." (т.е. без реалистичных данных которые разложены в таблицы со структурой, требуемой скриптом) Что касается "Могу предложить решение чисто на MySQL ...", то я его сделал для кросс-проверки что из тестовых данных действительно получается требуемое, оно выглядело подходящим, поэтому я его опубликовал именно чтобы можно было свериться с другими решениями, найти причины расхождений, если они есть. Я тут вижу проблему скорее в том что по тестовым примерам не очевидно что требуется найти также совпадения подпоследовательностей с разрывами и в общей массе написанного также сложно найти где это требование явно указано. (Кстати, оно точно нужно заказчику? Я в биоинформатике не очень разбираюсь, но уже оптимизировал что-то подобное и там вроде нужно было сравнивать только непрерывные последовательности. ) Похоже что я опять остался без решения. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
подождем новых /клиентов/ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:37 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Я не против хадупа. Я его использовал в AWS. Просто решение для Андрея надо упростить так чтобы он мог хотя-бы это standalone запустить на любой тачке где установлена JRE. Скопировать и запустить шелл или бат-скриптик. я в курсе. потому и положил 3.7 мб папку с заглушкой от хадупа. jar файл, 3.7 мб папка от хадупа и батник. ну и jre нужно. все, больше ничего не требуется. mayton Почему должно быть 66 ? потому что из 12 символов можно построить 66 хромосом диной 10 символов. потратьте уже 2 минуты на изучение правильного ответа https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1332994&msg=22276120 Alex_Ustinov это по miltorg1.txt и есть, хотите проверьте проверил, там уже нет тех 66, что были miltoirg.txt. милторг собственно для этого и сделал miltorg1.txt, что бы нельзя было генерить перестановки, не заглядывая в инпут файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:39 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov, Я вполне нормально решал эту задачу частями. Но я упёрся в то, что мне нужно сравнить каждую строку с каждой просто получить количество совпадений и сами совпадения. И на Перл это занимало очень много времени - неделю. У вас случайно нет решения этого на mySQL ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov mayton, комбинации по 10 из 12 = 12!/(12-10)!*10! = 66 и там 5 строк совпадений 3333-3334-3335-3336-3337 5 1 2 3 4 5 6 7 8 9 10 11 12 нумерация у меня с 1 по файлу miltorg.txt Во первых это не комбинации а сочетания. Формула n! / (n - k)! * k! это подтверждает. Или если вы взяли перевод английского термина permutation (перестановки/комбинации) - то надо тогда добавить что это permutation with repetitions. В задаче Андрона-Милторга я создаю кластер как только есть более чем 1 хромосома имеющая более чем 10 совпадающих полей. Вот и вся суть моего алгоритма. Попарное сравнение всех. По поводу той магической пятёрки которая там используется. Код: sql 1.
Надо актуализировать. По новому файлу miltbase1.txt Код: sql 1. 2. 3. 4.
Есть только 3 хромосомы содержащие то вхождение. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:44 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Ну .. интеграционные мы пока отложим. Они предполагают минимум несколько взаимодействующих модулей системы. У меня - просто процедура main. И интегрироваться там несчем. странновастые мягко говоря у вас представления. ладно, я утомился. топик в какой-то чат малолеток превратился. я говорю на этот вход должно быть 66 строк выхода, ноль внимания. вот мой джарник, собранный на java 15 и фолдер с заглушкой от хадупа. как запустить видно в bat файле. вывод параметризован - или в вашем стиле или тот что хотел miltorg. https://filebin.net/tngol6xocmvfzm7l/app1.zip?t=k7k0oin1 по мне так надо нормальный пример генерить, где и 19 совпадений встретиться могут, ну и инпут побольше, хотя бы 10к, ведь если пару раз в день строка добавляется ... Спасибо. 47МБ - многовато для "простенького задания" - как все тут говорили месяц назад. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:47 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Это полное решение? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 проверил, там уже нет тех 66, что были miltoirg.txt. милторг собственно для этого и сделал miltorg1.txt, что бы нельзя было генерить перестановки, не заглядывая в инпут файл. причем здесь сгенерить там не халтура, там ответ по miltorg1.txt ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 15:53 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, во-первых, я не понял, о чем вы. Не надо меня учить как что называется. Сочетания - подраздел комбинаций, конкретно перестановок авторЕсть только 3 хромосомы содержащие то вхождение. какое "то" вхождение. Автор изменил задание. Как можно результат из прошлого анализировать по новым данным. ЗАДАЧА1 - miltorg.txt3333-3334-3335-3336-3337 5 1 2 3 4 5 6 7 8 9 10 11 12 ЗАДАЧА2 - miltorg1.txt (другой набор)3332-3333-3334-3338 4 3 5 7 9 11 17 20 22 23 24 зачем показывать знание grep это здесь не надо. вхождение 10 чисел может быть с "дырками внутри", если так понятнее какие ХРОМОСОМЫ?)) это Лотерейные билеты! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 16:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton В задаче Андрона-Милторга я создаю кластер как только есть более чем 1 хромосома имеющая более чем 10 совпадающих полей. Вот и вся суть моего алгоритма. Попарное сравнение всех. а мне не понятна суть. что бы создать кластер, нужно знать что это совпадение. т.е. надо в памяти иметь Hash структуру, куда заносятся абсолютно все получаемые из хромосом кластера. но 5к инпут файл дает миллиад кластеров, сомневаюсь что Hash в памяти такое поместиться. так что я пока не понимаю сути идеи. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 16:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, автордает миллиад кластероввот с этого начиналась первая тема автора... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 16:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov вхождение 10 чисел может быть с "дырками внутри", если так понятнее Приведите пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 16:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 но 5к инпут файл дает миллиад кластеров, сомневаюсь что Hash в памяти такое поместиться. так что я пока не понимаю сути идеи. Но это-же глупо правда? Дело даже не в том что миллиард поместистя или нет. А будет ли эта структура полезна для поиска или избыточна. Я - как dba - думаю о поисковыз структурах. Зачем нам все сочетания компонентов кластера если есть корневая компонента которая в себя просто включает всех детей? Нам достаточно просто найти какой сет кластеров включает ... ээ нужное сочетание цифр и мы выйдем быстро на ... эээ лотерейные билетики-хромосомы. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 16:38 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, я не думал, что вы еще не врубились вычеркиваем по 2 цифры для ОТВЕТА Alex_Ustinov miltorg, к чему этот цирк? получено решение из 12 чисел циклуйте вычеркивая по 2 числа ИЗ 12 получите 12!/(12-10)!10! = 66 комбинаций 1 2 3 4 5 6 7 8 9 10 11 12 авторПриведите хоть пару десятков. вот 6 строк Код: plaintext 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 16:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Так. Нашел еще один баг с нумерацией. Я рапортую о хромосомах-лотерейных-билетах в нумерации с 0 как принято в Java. А в топике насколько я понял приводится нумерация с 1 как основа для тестирования. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
я заливаю исходные данные в табл с автоинкрементом. Поэтоиу у меня с 1 . В любом случае +-1 для сверки найти можно, это не суть ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg У вас случайно нет решения этого на mySQL ? Ну я думаю его можно сделать, например чтобы сравнить скорость MySQL с hadoop на этой задаче. Одна из проблем заключается в том что оно тоже может будет исполняться слишком долго и таким образом нельзя будет показать что оно вообще работает (с другой стороны, вряд ли больше нескольких часов для подпоследовательностей длиной 9). И SQL очень непрактичен для таких вещей: 1. Даже переделать мои запросы чтобы они принимали и пробел и подчёркивание в качестве разделителей уже проблема 2. Как-то сигнализировать, что встретились входные данные больше 20 элементов - тоже 3. Если у perl кончится память, то он просто остановится - тоже неприятно, но хотя бы можно заметить. А MySQL вероятно молча продолжит выполнение, только намного медленнее. Просмотрел сейчас топик "Как отсортировать 1 миллиард записей?" :) Может вам вообще лучше вернуться к тому решению когда была эта большая таблица в которой надо было найти дубликаты (для этого её не обязательно сортировать). C помощью group_concat() и group by ... having count(*) > 1 как в моих запросах. Проблема в том что для этого требуется память. Если бы там было мало различных значений - то памяти нужно немного. А если там почти все записи - разные, то их все желательно разместить в памяти чтобы была максимальная скорость поиска дупликатов. Память для этого в MySQL выделяется примерно так: Код: sql 1. 2.
64 гигабайт наверное должно хватить для вашего случая (но нужно экспериментировать, я в MySQL такого не пробовал по вышеуказанным причинам). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:19 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov, нормально работает и с 2-3G буфера без MEMORY (нормально по сравнению с несколькими сутками у автора) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov 64 гигабайт наверное должно хватить для вашего случая (но нужно экспериментировать, я в MySQL такого не пробовал по вышеуказанным причинам). Да дело не в гигабайтах. Эта задача похожа на тестовое задание после собеса. Но оно - с хитринкой. С намёком на комбинаторный взрыв. И в таких задачах обычно идеи перебрать всё. Или всё брутфорсить - это неправильные идеи. Да они сработают для 10 из 12. Но что мы будем делать при удвоении исходных данных в разрядности? Просто докупить памяти - уже не вариант. Достигнем пределов Бреммермана? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
"Простенькая задачка" перешла в разряд нерешаемых... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, так это всегда в конечном счете будет "перебор каких-то значений" (не пойму зачем вставлять непонятные словени типа БРУТФОРС) любой SELECT INSERT UPDATE - перебор ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg "Простенькая задачка" перешла в разряд нерешаемых... зацикловать ответ : Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
вы что? Не решили задачу даже для первого прохода? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Но что мы будем делать при удвоении исходных данных в разрядности? Ну это сильно зависит от данных. Если у них грубо говоря энтропия низкая (много повторений одних и тех же значений) - то всё и прекрасно пройдёт. А если, например, менеджер может потом подсунуть этой же программе хаотические данные чтобы показать что она тормозит и не работает - то что тут сделаешь? mayton всё брутфорсить - это неправильные идеи Вообще, есть конечно идея как это всё ускорить. Но да, пока не будет большей определённости и меньшей загадочности зачем это всё нужно и какая природа у входных данных, пожалуй забью её проверять. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 17:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Поставил обсчитывать 10-ку. Через 50 мин - ббудет результат. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:06 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Подфиксил нумерацию. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Андрон. Тестируй. Туды ево в качель... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Что это? Первый проход? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Это конец. В моём алгоритме больше нет проходов. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Если это решение - ещё раз пересмотрите пример решения: 10 чисел | строки в которых они встречаются | ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, верно. Есть там 17 вхождений"id1""id2""strin""XXX""3332""3338""3 5 7 9 11 17 20 22 23 24 38 39 44 46 50 52 63""17""760""2616""3 4 7 13 17 18 19 25 32 36 41 42 64 76""14""3192""4827""3 20 21 22 26 28 30 36 38 49 53 61 62 79""14""3199""3587""2 3 4 5 22 26 28 34 46 50 53 55 67 79""14""531""2093""11 13 24 31 34 39 50 54 56 58 62 69 71 75""14""982""2950""10 17 28 33 34 35 40 42 51 69 73 75 77 79""14""160""2504""1 4 10 12 16 26 30 32 38 42 44 48 69 72""14""1697""1988""9 22 28 33 35 51 63 66 67 69 73 75 77""13" теперь правильный гроуп бай по "совпадению" и получим 3332-3333-3334-3338 3 5 7 9 11 17 20 22 23 24 4 для ответа разворачиваем 3 5 7 9 11 17 20 22 23 24 в 10-ки ( здесь одна) и добавляем слова ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg mayton, Если это решение - ещё раз пересмотрите пример решения: 10 чисел | строки в которых они встречаются | Дрон. Андрон. Стопы-стопы. Послушай сюда. Я не делаю твоё задание. Твоё задание - это проиндексировать вселенную. А я тебе дал ИНСТРУМЕНТ как создать структуру данных которая ПРЕДСТАВЛЯЕТ индексированную вселенную. Ферштейн? При этом я спасён от комбинаторного взрыва. У меня формула с факториалом сводится просто к формуле с квадратом. Соединения пар всех хромосом. В перспективе - я экономлю место на диске. Моя структура данных - компактнее. Зуб даю. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, А мне нужны решения. С этими персонажами Тема становится скучна. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Алекс Устинов. Что думаешь? Имеет право на жизнь такой метод? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, я таким и считаю, только в MySQL через битовое сравнение. Т.е. также получаю пары с совпадениями, (заумно - пересечение множеств, автор так и делал сначала в Perl) группирую по вхождению строки и все. Максимальное кол-во вхождений и будет ответом. Неважно - совпало в максимуме 10 или 12. Это будет РЕШЕНИЕМ. В итоге задача решена еще в прошлом топике, когда Paver предложил такой вариант. Автору нужен код, поэтому здесь такая котовасия, все это читалось с самого начала рядом попытка кусочного получения кода))) Как получить разряды установленных единиц? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Таблица - 1 проход: 64 тысячи записей Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:46 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
отлично, 22276747 первую стадию сделали. Теперь надо правильно группирнуть с GROUP_CONCAT и не держите STR в таком виде, дальнейшая обработка неудобна лучше так и оставьте STR1 и STR2 чтобы можно было схлопнуть по DL допустим вот так Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:49 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
это конечно можно поправить Код: sql 1.
нам надо вообще то максимальное число строк в группировке еще один шаг и будет решение, не прошло и 2 месяца ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 18:59 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Все выкладываю. Берите. Пользуйтесь. Работает 1.5 секунды на моём железе. Это при том что JVM - холодная на таком старте. Это работающий и самодостаточный код. Нужна Java-11 и maven сборщик для сборки с сорцов. Бинарь я тоже приложу чтоб сразу запускать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 19:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
И бинарь. Образец запуска - в исходниках в "go"-файле. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 19:05 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg, Поставил обсчитывать 10-ку. Через 50 мин - ббудет результат. 10 - считается на чистом sql - 3 минуты максимум. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 19:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__ miltorg miltorg, Поставил обсчитывать 10-ку. Через 50 мин - ббудет результат. 10 - считается на чистом sql - 3 минуты максимум. Правда 112 ядер и 1 ТераБайт оперативки. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 19:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Кстати, да, ваш метод с битами похоже работает. Просто "3 5 7 9 11 17 20 22 23 24" это плохой пример для демонстрации, потому что он появляется только без пропусков: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
А вот хороший пример (если его находит, то скорее всего правильно работает): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Но как это реализовать на SQL - разум пасует. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 20:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg, Таблица - 1 проход: 64 тысячи записей Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Запрос с заполнением данных и расчетом, без всяких промежуточных расчетов: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Выполнение 1 сек. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 20:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
А потом вторым запросом с 10 join сформировать все перечисления из 10 чисел и сгруппировать, вот и вся задача. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 20:27 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, не, немного не так. Надо найти строки в которые входят 10 чисел, по другому - один набор из 10-ти чисел должен входить во все найденные строки ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 20:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov __Avenger__, не, немного не так. Надо найти строки в которые входят 10 чисел, по другому - один набор из 10-ти чисел должен входить во все найденные строки Ну так это и есть группировка по 10 числам (набору). А в агрегацию - список дат. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 20:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__ Alex_Ustinov __Avenger__, не, немного не так. Надо найти строки в которые входят 10 чисел, по другому - один набор из 10-ти чисел должен входить во все найденные строки Ну так это и есть группировка по 10 числам (набору). А в агрегацию - список дат. Вот ответ: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
3 минуты все затраты на все. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, Тихо-тихо, боясь спугнуть: - Ура... У нас есть ответ? А на mySQL это получится? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:15 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg __Avenger__, Тихо-тихо, боясь спугнуть: - Ура... У нас есть ответ? А на mySQL это получится? Конечно. Там же примитивные запросы без всяких bit_count. Только join с группировкой и все!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, ну это если все строки совпадений разложить по 10 то да а из таблицы после 1-го прохода можно группирнуть по строке вхождений взять максимальный каунт, в данном случае максимум и будет на строке 3 5 7 9 11 17 20 22 23 24 (это так получиось у ТС в этом примере что строка из 10) в предыдущих его данных было 5 строк совпадений из 12 чисел (в итоге в ответе 66 строк по 10 чисел в ответе) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__ miltorg __Avenger__, Тихо-тихо, боясь спугнуть: - Ура... У нас есть ответ? А на mySQL это получится? Конечно. Там же примитивные запросы без всяких bit_count. Только join с группировкой и все!!! Для начало надо исходные данные положить в таблицу Код: sql 1.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, Как это всё переписать на mySQL? Помоожете? Пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, это путь прошлой темы, там на 5000строк раскручиваем до 1млрд? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Как это всё переписать на mySQL? Помоожете? Пожалуйста. используй 22276803 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov __Avenger__, это путь прошлой темы, там на 5000строк раскручиваем до 1млрд? Да, но на этих данных миллиард не получился, всего лишь - 319139 строк с 10-ками. Да и что такое миллиард? У меня сейчас БД по 16 ТераБайт!!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, Началось... Ответа нет получается опять? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:30 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, 10-ки я расчитал за 1 день. 9-ки считало - неделю А ещё нужны 8-ки, 7, 6-ки Плюс к ним будут каждый день дополнятся строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg __Avenger__, Началось... Ответа нет получается опять? Так а в чем сложность разобрать данные из строки в столбец? Как пробовал? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
__Avenger__, ну с такой техникой понятно) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg __Avenger__, 10-ки я расчитал за 1 день. 9-ки считало - неделю А ещё нужны 8-ки, 7, 6-ки Плюс к ним будут каждый день дополнятся строки. зачем тогда делать 10-ки потом 9-ки ..... 6-ки если надо раз сделать самый минимум чисел, допустим 6, слить в таблицу и из нее получить и 6-7-8-9-10-ки или залить >=10 затем подливать в таблицу =9 =8 =7 =6 совпадений чтобы было быстрее затем только 1 новую строку переводить в биты и также искать вхождения >=6 и добавлять в "таблицу 1-го прохода" ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:39 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
в 9ках 288тыс по данным miltbase1.txt /если я правильно запомнил/ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Затем, что 10-ку мой ноутбук обрабатывает в течении часа. А 6-ку он говорит, что у него таблица переполнилась после 4 часов работы. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, Это я про первый проход. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 21:57 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, какой у вас ноутбук - сколько RAM не может быть чтоб <4G сколько стоит параметр innodb_buffer_pool_size в my.cnf? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg miltorg, Это я про первый проход. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:04 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Я вот только не понял, similar-chromosome-lookup-1.0.jar , он действительно делает 25 млн. попарных сравнений каждого с каждым, или там что-то типа градиентного спуска? Можно им получить одну или все дуплицированные подпоследовательности длиной 9, которые не являются частью более длинных? Если да, то уверую окончательно (хотя этот метод квадратичный по отношению к числу записей в исходной таблице, а брутфорс - линейный). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Victor Ichalov,все дуплицированные подпоследовательности длиной 9, которые не являются частью более длинных?ну там так и есть, судя по предоставленным кускам с выхода. Т.е. 9 -ки не входят в 10 ки не входят в 11 и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я вот только не понял, similar-chromosome-lookup-1.0.jar , он действительно делает 25 млн. попарных сравнений каждого с каждым, или там что-то типа градиентного спуска? Он - действительно квадратичный. Никакого градиентного спуска нет. Да. Делает 5000 * 5000 / 2 = 12500 сравнений. Деление на 2 потому что все пары не нужны а только верхняя треугольная часть матрицы пар. Но ваш вопрос касается чего? Генерации индекса? Или операции поиска. Давайте просто разделим эти два понятия. Андрей в начале говорил что база будет неизменна. И лишь периодически владелец будет делать в нее insert новых хромосом (или лотерейных билетов). Тоесть. Если у нас уже будет построен по ней индекс - то наша задача сводится только к периодической вставке в него новых строк. Тоесть я рассуждаю как DBA в условиях эксплуатации инфо-системы которая уже инициализирована. Моя идея - предварительная подготовка данных таким образом чтобы быстро обслужить входящие запросы клиента. Все прочие цели - такие как выдать на экран "ВСЁ" я считаю ложными. Они являются побочным эффектом неправильного ТЗ. Мне сложно себе представить как нормальный человек может взглядом охватить 5000 векторов целых чисел (или не дай бох 1 000 000 000 кластеров). Поэтому я акцентирую внимание на том что нас интересует не текстовые файлы. И даже не наполненные таблички MySQL. А информационная система, обладающая способностью быстро дать отклик на нужный лаконичный запрос от заказчика. Или на несколько типов запросов. Можно им получить одну или все дуплицированные подпоследовательности длиной 9, которые не являются частью более длинных? Если да, то уверую окончательно (хотя этот метод квадратичный по отношению к числу записей в исходной таблице, а брутфорс - линейный). Если вы хотите получить например все над-кластеры которые покрывают суб-кластер 5,6,7,8,9,10,11,12,13 (к примеру) - то отвечаю - ДА. Можно. Думаю что займет меньше секунды. Как и многие другие участники топика я думал об оптимизации и заложил такой расчет что хромосома длиной до 100 элементов у меня будет занимать не более 128 бит или 2х64 битных числа в формате long. Если вы смотрели в код то видели что ключом в хеш-таблице является BitSet. Это обобщенный вариант такой пары. Безразмерный. Код: java 1.
И дополняя свой ответ. Когда мы получим списки над-кластеров - то мы получим и сами хромосомы. Они являются value-s по отношению к ключам. Более раняя (неопубликованная) версия кода содержала работу над сырыми целыми числами (Long) (фрагмент) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
Но я заметил что если заменить пару этих чисел на структуру BitSet почти ничего не теряю в performance - но приобретаю надежность и бесконечную масштабируемость по размеру вектора хромосомы. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov Victor Ichalov,все дуплицированные подпоследовательности длиной 9, которые не являются частью более длинных? Т.е. 9 -ки не входят в 10 ки не входят в 11 и т.д.не немного не так. если есть совпадение из 10 чисел в 4 строках, то этих совпадений нет в девятках. т.е в каждой паре - максимальное совпадение ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:31 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, 5000 * 5000 / 2 = 12500000 сравнений Но в целом я согласен, что на этих размерах таблиц этот метод перспективнее брутфорса. Но ваш вопрос касается чего? Я на самом деле просто хочу понять, есть ли там такие последовательности (дуплицированные, длиной 9, не входящие в более длинные). В 22276737 вроде нет таких, самые короткие - 10. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Давайте я выложу полный отчот. Какая файловая шара вам доступна? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:48 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
вот поиск по like and like в 10 000 000 идёт 5 сек. а сравнение двух длинных чисел намного быстрее так в чем проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Давайте я выложу полный отчот. Какая файловая шара вам доступна? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
вадя, напиши лайк чтобы множества с дырками искать. т.е. чтобы в ЛАЙК %4% %5% %66% не попало 34 35 66 и 44 45 66 и т.д. единственное - держать числа в маске ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Все выкладываю. Берите. Пользуйтесь. Работает 1.5 секунды на моём железе. Это при том что JVM - холодная на таком старте. Это работающий и самодостаточный код. Нужна Java-11 и maven сборщик для сборки с сорцов. Бинарь я тоже приложу чтоб сразу запускать. интегрейшен теста так и нет, беру mitbase.txt, 66 записей с пятью попаданиями в отчете нет. перепроверяю файл Код: plaintext 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 22:57 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Все выкладываю. Берите. Пользуйтесь. Работает 1.5 секунды на моём железе. Это при том что JVM - холодная на таком старте. Это работающий и самодостаточный код. Нужна Java-11 и maven сборщик для сборки с сорцов. Бинарь я тоже приложу чтоб сразу запускать. интегрейшен теста так и нет, беру mitbase.txt, 66 записей с пятью попаданиями в отчете нет. перепроверяю файл Код: plaintext 1. 2. 3. 4. 5. 6.
Бери новый файл miltbase1.txt ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:01 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1, там кажись уже по данным mitbase1.txt ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:02 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Про инт-тесты я уже отвечал. Непонятно зачем два раза спрашивать? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Бери новый файл miltbase1.txt не возьму. я уже на miltbase.txt вижу, что салфетка не работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
с 9-ками то же решение GROUP_CONCAT(t.id) strin xxx3332 3333 3334 3338 3 5 7 9 11 17 20 22 23 24 4макс 4 совпадения 10 комбинаций по 9 из набора 3 5 7 9 11 17 20 22 23 24 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 mayton Бери новый файл miltbase1.txt не возьму. я уже на miltbase.txt вижу, что салфетка не работает. Как будет угодно. Я не настаиваю. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
вход Код: plaintext 1. 2. 3. 4. 5.
выход Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
нет ни clusterDimenstions : 11 ни clusterDimenstions : 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
8-ки - после первого захода поиска совпадений >=8 в таблице 954,203 строк 8-ки - добавляются кобинации с 4 совпадающими строкамиGROUP_CONCAT(t.id) strin xxx1037 3902 1 1267 13 14 29 38 42 44 51 63 44806 972 1977 18 13 14 35 40 48 59 65 73 43423 3331 4867 164 2 27 35 53 60 63 67 78 44401 4934 1699 298 2 3 11 34 36 50 56 79 4950 3673 3549 2876 2 7 16 23 27 47 53 55 44060 1250 3452 4898 23 31 41 42 48 53 54 55 41436 734 1790 1673 3 5 34 38 44 47 48 55 43332 3333 3334 3338 3 5 7 9 11 17 20 22 23 24 42114 3338 4941 3332 3 7 11 20 22 38 46 52 4267 442 1024 3587 4 5 21 22 26 34 43 54 4 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
H5N1 нет ни clusterDimenstions : 11 ни clusterDimenstions : 10 И что? Разве это ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2021, 23:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Все прочие цели - такие как выдать на экран "ВСЁ" я считаю ложными. Ну я посмотрел в код в меру своих знаний java (11 у меня под рукой нет чтобы запустить), всё действительно очень похоже на правду. Я почему-то имел предубеждение, что там должна быть какая-то ML библиотека, а не вложенные циклы. Скорость впечатляет, но она наверное ухудшится, если уменьшить if (cnt >= 10) { . А так, оно не должно пропускать как при градиентном спуске, т.е. выдаст именно "ВСЁ". Давайте я выложу полный отчот. Ну я нашёл уже искомое: Код: sql 1. 2. 3. 4. 5. 6. 7.
Я думаю оно будет в отчёте если сделать if (cnt >= 9) { . ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 00:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
7-ки - после первого захода поиска совпадений >=7 в таблице 2,432,768 строк 7-чисельные пересечения - появились 5 строк вхожденияStroki strIn XXX204 275 2739 4259 2311 2 26 36 37 52 69 79 52986 2813 2049 4169 829 6 13 24 28 32 34 54 53677 2194 1947 1779 4467 12 15 18 33 46 47 58 54298 4555 1803 1874 2029 6 9 10 24 28 36 64 5620 3332 3338 4499 3002 7 22 23 24 38 50 52 5827 1291 3545 2777 2748 16 23 28 31 47 48 65 5844 4434 4514 4079 4165 7 24 30 41 49 78 79 5 примерный тайминг формирования попарной таблицы пересечения множества чисел (во загнул, аж самому понравилось) >=10 чисел 2мин /66тыс строк >=9 чисел 4мин /288тыс =8 8мин / 1млн =7 18 мин / 2.4 млн строк ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 00:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Но я тебе разработал софт. Он работает. Работает быстро. А ты - даже проигнорировал проверить результат? Не ты первый, не ты последний. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 05:14 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Что-ж мне так не везёт, блин. Везение - не нужно. Нужно работать головой и делать руками. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 05:21 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Пошёл 2 месяц "простенького задания". Но у меня есть хоть долгие, но решения. Если бы некоторые сделали нормальное ТЗ и тестовые примеры, то уже получили бы работающее решение. Никто не может ничего сделать, потому что не может до конца понять, а что именно, собственно надо сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 05:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Но это-же глупо правда? Дело даже не в том что миллиард поместистя или нет. А будет ли эта структура полезна для поиска или избыточна. Нет. Надо миллиард. Так заказчик сказал. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 05:26 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Как это всё переписать на mySQL? Не нужно. Еще раз, а то может не понятно. НЕ_НУЖНО Всё решается в памяти. Помоожете? Пожалуйста. https://jsfiddle.net/0kemgyhv/ Проверь выхлоп, пожалуйста и сделай вменяемое ТЗ. А то на заказчиков ты говорил, что не понятно что хотят, а сам не лучше. Исходные Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Выхлоп dates seq cnt1.08.1966;21.08.1966;22.08.19665 7 8 15 22 23 27 34 37 3961.08.1966;21.08.19667 8 15 22 23 27 34 37 39 4421.08.1966;21.08.19668 15 22 23 27 34 37 39 40 4421.08.1966;21.08.19667 15 22 23 27 34 37 39 40 4421.08.1966;21.08.19667 8 22 23 27 34 37 39 40 4421.08.1966;21.08.19667 8 15 23 27 34 37 39 40 4421.08.1966;21.08.19667 8 15 22 27 34 37 39 40 4421.08.1966;21.08.19667 8 15 22 23 34 37 39 40 4421.08.1966;21.08.19667 8 15 22 23 27 37 39 40 4421.08.1966;21.08.19667 8 15 22 23 27 34 39 40 4421.08.1966;21.08.19667 8 15 22 23 27 34 37 40 4421.08.1966;21.08.19665 8 15 22 23 27 34 37 39 4421.08.1966;21.08.19665 15 22 23 27 34 37 39 40 4421.08.1966;21.08.19665 8 22 23 27 34 37 39 40 4421.08.1966;21.08.19665 8 15 23 27 34 37 39 40 4421.08.1966;21.08.19665 8 15 22 27 34 37 39 40 4421.08.1966;21.08.19665 8 15 22 23 34 37 39 40 4421.08.1966;21.08.19665 8 15 22 23 27 37 39 40 4421.08.1966;21.08.19665 8 15 22 23 27 34 39 40 4421.08.1966;21.08.19665 8 15 22 23 27 34 37 40 4421.08.1966;21.08.19665 7 15 22 23 27 34 37 39 4421.08.1966;21.08.19665 7 22 23 27 34 37 39 40 4421.08.1966;21.08.19665 7 15 23 27 34 37 39 40 4421.08.1966;21.08.19665 7 15 22 27 34 37 39 40 4421.08.1966;21.08.19665 7 15 22 23 34 37 39 40 4421.08.1966;21.08.19665 7 15 22 23 27 37 39 40 4421.08.1966;21.08.19665 7 15 22 23 27 34 39 40 4421.08.1966;21.08.19665 7 15 22 23 27 34 37 40 4421.08.1966;21.08.19665 7 8 22 23 27 34 37 39 4421.08.1966;21.08.19665 7 8 23 27 34 37 39 40 4421.08.1966;21.08.19665 7 8 22 27 34 37 39 40 4421.08.1966;21.08.19665 7 8 22 23 34 37 39 40 4421.08.1966;21.08.19665 7 8 22 23 27 37 39 40 4421.08.1966;21.08.19665 7 8 22 23 27 34 39 40 4421.08.1966;21.08.19665 7 8 22 23 27 34 37 40 4421.08.1966;21.08.19665 7 8 15 23 27 34 37 39 4421.08.1966;21.08.19665 7 8 15 27 34 37 39 40 4421.08.1966;21.08.19665 7 8 15 23 34 37 39 40 4421.08.1966;21.08.19665 7 8 15 23 27 37 39 40 4421.08.1966;21.08.19665 7 8 15 23 27 34 39 40 4421.08.1966;21.08.19665 7 8 15 23 27 34 37 40 4421.08.1966;21.08.19665 7 8 15 22 27 34 37 39 4421.08.1966;21.08.19665 7 8 15 22 34 37 39 40 4421.08.1966;21.08.19665 7 8 15 22 27 37 39 40 4421.08.1966;21.08.19665 7 8 15 22 27 34 39 40 4421.08.1966;21.08.19665 7 8 15 22 27 34 37 40 4421.08.1966;21.08.19665 7 8 15 22 23 34 37 39 4421.08.1966;21.08.19665 7 8 15 22 23 37 39 40 4421.08.1966;21.08.19665 7 8 15 22 23 34 39 40 4421.08.1966;21.08.19665 7 8 15 22 23 34 37 40 4421.08.1966;21.08.19665 7 8 15 22 23 27 37 39 4421.08.1966;21.08.19665 7 8 15 22 23 27 39 40 4421.08.1966;21.08.19665 7 8 15 22 23 27 37 40 4421.08.1966;21.08.19665 7 8 15 22 23 27 34 39 4421.08.1966;21.08.19665 7 8 15 22 23 27 34 40 4421.08.1966;21.08.19665 7 8 15 22 23 27 34 37 4421.08.1966;22.08.1966;21.08.19667 8 15 22 23 27 34 37 39 4041.08.1966;22.08.1966;21.08.19665 8 15 22 23 27 34 37 39 4041.08.1966;22.08.1966;21.08.19665 7 15 22 23 27 34 37 39 4041.08.1966;22.08.1966;21.08.19665 7 8 22 23 27 34 37 39 4041.08.1966;22.08.1966;21.08.19665 7 8 15 23 27 34 37 39 4041.08.1966;22.08.1966;21.08.19665 7 8 15 22 27 34 37 39 4041.08.1966;22.08.1966;21.08.19665 7 8 15 22 23 34 37 39 4041.08.1966;22.08.1966;21.08.19665 7 8 15 22 23 27 37 39 4041.08.1966;22.08.1966;21.08.19665 7 8 15 22 23 27 34 39 4041.08.1966;22.08.1966;21.08.19665 7 8 15 22 23 27 34 37 4043.08.1966;5.08.19662 12 21 28 36 50 53 55 59 6623.08.1966;14.08.19663 5 24 26 28 50 53 55 59 6623.08.1966;16.08.19662 3 5 15 23 28 37 38 50 5323.08.1966;16.08.19663 5 15 23 28 37 38 50 53 5923.08.1966;16.08.19662 5 15 23 28 37 38 50 53 5923.08.1966;16.08.19662 3 15 23 28 37 38 50 53 5923.08.1966;16.08.19662 3 5 23 28 37 38 50 53 5923.08.1966;16.08.19662 3 5 15 28 37 38 50 53 5923.08.1966;16.08.19662 3 5 15 23 37 38 50 53 5923.08.1966;16.08.19662 3 5 15 23 28 38 50 53 5923.08.1966;16.08.19662 3 5 15 23 28 37 50 53 5923.08.1966;16.08.19662 3 5 15 23 28 37 38 53 5923.08.1966;16.08.19662 3 5 15 23 28 37 38 50 5926.08.1966;18.08.196611 15 16 29 32 35 42 43 62 6327.08.1966;9.08.19667 8 21 27 30 49 50 53 54 68210.08.1966;21.08.19665 7 23 27 34 45 46 47 52 64212.08.1966;21.08.196623 27 40 44 45 46 47 52 64 66213.08.1966;17.08.19661 5 11 16 20 22 25 26 47 56213.08.1966;17.08.19665 11 16 20 22 25 26 47 56 70213.08.1966;17.08.19661 11 16 20 22 25 26 47 56 70213.08.1966;17.08.19661 5 16 20 22 25 26 47 56 70213.08.1966;17.08.19661 5 11 20 22 25 26 47 56 70213.08.1966;17.08.19661 5 11 16 22 25 26 47 56 70213.08.1966;17.08.19661 5 11 16 20 25 26 47 56 70213.08.1966;17.08.19661 5 11 16 20 22 26 47 56 70213.08.1966;17.08.19661 5 11 16 20 22 25 47 56 70213.08.1966;17.08.19661 5 11 16 20 22 25 26 56 70213.08.1966;17.08.19661 5 11 16 20 22 25 26 47 70219.08.1966;20.08.19668 15 17 26 35 37 42 44 50 692 Еще раз говорю, cnt - не знаю, что такое, я сделал пары записей. Совпадения по 10 хардкод, везде хардкод, надо проверить комбинатор и сделать запись в файл, а оттуда можешь засунуть куда захочешь. Ошибки могут быть не существенные. Я тебе еще тогда говорил, проверяй выхлоп, но нет, не хочу, хочу еще 2 недели с mysql хернёй страдать. Сделал, чтобы тебе ничего не надо было разворачивать. Тупо ссылка на jsfiddle выше. Просто нажми это. Еще одна на всякий случай ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 07:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
доброе утро в Доме-2 6-ки записей после поиска пар пересечения 6 чисел в множествах COUNT(*) 4,864,490 6-чисельные пересечения - появились 7 строк вхождения1353 3241 1731 3634 3700 3598 2405 9 24 38 63 65 66 74547 2906 1659 1430 1950 1148 505 4 8 10 37 54 67 7 тайминг 8часов 30 мин!!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 11:22 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
6-рки и выше. Тоже приблизительно 4 миллиона. Алгоритм работал 1 минуту. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 11:32 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Выше вы писали что у вас нет решения, а есть направления и показ пути и пр. И я не стал вообще смотреть на ваши коды. Так у вас есть решение? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 11:36 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Моё решение - не в том виде в котором ты хотел. Но зрячий увидит в нём алмаз. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 11:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, Ок. Тогда обязательно посмотрю. - Как будет время на драгоценности. Мне сейчас решение надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 11:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Как будет угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:03 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
innodb_buffer... = 3G 8час. вот над этим и надо думать, если делать в MySQL, что ждет в ближайшем будущем так как в течении месяца добавятся 30 записей и т.д. все опять начнет тормозить постоянным увеличением памяти не отделаешься. таблица V=1,4G на диске 1,9G Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
наполнение пару строк id1 id2 strin bin10 ХХХ1 11 14 17 21 26 29 32 34 42 76 здесь строка из 01 длиной 100 91 25 13 15 17 29 31 32 34 38 51 60 76 здесь строка из 01 длиной 100 11 запрос простой влоб Код: sql 1. 2. 3. 4. 5. 6. 7.
имхо, вот на этом этапе надо пробовать сбросить подзапросы в табл MEMORY ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:23 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
это решение для победителей лотереи "6 из 20" , если кто пропутил выиграло 14 билетов (по 7 билетов в 2ух комбинациях) утешительный приз 1 евро/час, запрос работал 8 часов, значит выигрыш 8 евро/час 6-чисельные пересечения - появились 7 строк вхождения1353 3241 1731 3634 3700 3598 2405 9 24 38 63 65 66 74547 2906 1659 1430 1950 1148 505 4 8 10 37 54 67 7 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov вот на этом этапе надо пробовать сбросить подзапросы в табл MEMORY Можно просто сразу сбросить всё в MEMORY не приплетая сюда mysql. На том же пёрле есть словари. Просто берешь и наполняешь словарь, пока пёрл не крякнет. Потом переписываешь на что-то, что не так жрёт память. Зачем вы вообще вцепились зубами в бд? На текущем этапе она не нужна вообще. Необходимость появится, когда там будет больше 50-100к исходных записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, а пробовал таблицу в MyISAM переключить? Будет быстрее вставка или выборка? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:35 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster, ну не я же вцепился в БД) о Перле ничего не скажу, я Перла не знаю совершенно. Можно там хранить данные как в БД? В БД мы можем хранить сравнительные пары. Для каждой новой строки добавляем пары только для новой строки. Это будет продолжительное время недолгой операцией. Поэтому нет смысла засовывать сразу в память всю таблицу пар. Все это наполнение - первичное, "завтра" его делать не надо. Весь затык - в последнем "свертывании". ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Будет быстрее вставка или выборка? Раза в 2 будет быстрее, кмк. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:45 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Alex_Ustinov, а пробовал таблицу в MyISAM переключить? Будет быстрее вставка или выборка? выше описал, что в данной задаче - это накопительная функция Выборка большая, вопрос в том где эти данные обабатывает MySQL. ворочает в памяти или кидает в темпы. Я не спец в тюнинге. Может позже попробую в MyISAM. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:50 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov Можно там хранить данные как в БД? Там не надо их хранить. Есть словарь - это типа таблица с ключом. Всё, больше ничего для этой задачи не надо. Alex_Ustinov Поэтому нет смысла засовывать сразу в память всю таблицу пар Пары это, где посчитали сколько совпало цифр? Она не большая получается и в память должна влазить полностью. Alex_Ustinov Весь затык - в последнем "свертывании". "Свёртывание", если это то, про что я думаю, делается проще. У нас уже есть пары и набор совпавших чисел. Этот набор скидываем в комбинаторную функцию, которая выдаёт нам n наборов по 10 чисел. Каждый набор - это ключ. Добавляем этот ключ в словарь вместе с парой дат. Всё. Если надо в другом виде - развёртываем словарь в таблицу, где будет пара дат (или еще чего угодно) и ключ-последовательность. Когда начнёт не влазить в память, придётся прыгать с запросами и кэшами, но это произойдёт еще не скоро. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:51 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster, авторПары это, где посчитали сколько совпало цифр? Она не большая получается и в память должна влазить полностью.да, это основная рабочая таблица в данном варианте решения ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:54 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Я вообще тащусь со всей этой истории. Андрейка взял заказ за 100 евро, сделать не может, а весь форум вокруг него бегает, пытается решить простую задачу изначально проблемным способом, от которого задача становится неподъёмной. Будут лишние сто евро, тоже закажу у него что-нибудь. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov да, это основная рабочая таблица в данном варианте решения Сколько там записей выходит с теми данными, которые он прислал? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:57 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg Так у вас есть решение? У меня есть решение уже две недели как. Да что это меняет. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 12:59 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster, Есть идея как изящно на Оракле сделать вторую часть. Поиск групп. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:07 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Есть идея как изящно на Оракле сделать вторую часть. Поиск групп. Я даже думать про это боюсь. Как только речь заходит о выборках сложнее Код: sql 1.
У меня начинает болеть голова и охота прилечь. А как там сделать через поиск групп? Нам же надо сделать перестановки, для этого надо какую-то функцию пилить (по идее можно через pipeline функции). Без перестановок будет всё ооочень медленно, оракл отрубит поддержку к тому времени и база самопроизвольно вырубится. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov crutchmaster, авторПары это, где посчитали сколько совпало цифр? Она не большая получается и в память должна влазить полностью. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:13 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster mayton Есть идея как изящно на Оракле сделать вторую часть. Поиск групп. Я даже думать про это боюсь. Как только речь заходит о выборках сложнее Код: sql 1.
У меня начинает болеть голова и охота прилечь. А как там сделать через поиск групп? Нам же надо сделать перестановки, для этого надо какую-то функцию пилить. Без перестановок будет всё ооочень медленно, оракл отрубит поддержку к тому времени и база самопроизвольно вырубится. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:15 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov какие перестановки? этот этап пройден через побитовое сравнение Nyet. После побитового у нас только пары записей в которых совпало больше n чисел, дальше из этих n чисел надо делать все уникальные выборки по k чисел. А потом уже группировать эти выборки и считать сколько пар туда попало и каких. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, Ну она сама влезет. А для перестановок уже что-то придётся мутить, возможно. Хотя не факт. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:20 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster mayton Есть идея как изящно на Оракле сделать вторую часть. Поиск групп. Я даже думать про это боюсь. Как только речь заходит о выборках сложнее Код: sql 1.
У меня начинает болеть голова и охота прилечь. А как там сделать через поиск групп? Нам же надо сделать перестановки, для этого надо какую-то функцию пилить (по идее можно через pipeline функции). Без перестановок будет всё ооочень медленно, оракл отрубит поддержку к тому времени и база самопроизвольно вырубится. Вот. Приколись. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Далее сюда надо влить либо результат с МайСкл. Либо результат с моего репорта в формате *.json5 образцы которого я прикладывал. У кого есть поднятый инстанс Оракла? Проверте pls. Здесь важно чтоб оптимизатор внутри плана указал что индексы активировались. В ораклах такие штуки эффективны как раз чем больше полей с низкой кардинальностью в WHERE - тем лучше. Тем биткартовый индекс эффективнее. Код: sql 1.
Далее одним простым запросом мы ищем мета-кластер который покроет все суб-кластеры и выгребем все билетики в полях List. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:24 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmaster Alex_Ustinov какие перестановки? этот этап пройден через побитовое сравнение Nyet. После побитового у нас только пары записей в которых совпало больше n чисел, дальше из этих n чисел надо делать все уникальные выборки по k чисел. А потом уже группировать эти выборки и считать сколько пар туда попало и каких. 1. Получили пары совпадений из 8-ми и выше 2. далее я делаю гроуп бай по строке совпадения. 3. Допустим получили максимум совпадений в 9-ти чисельной строке. 4. Суть в том что и для 8-ми и для 9-ти чисельного совпадения максимальное кол-во пересечений будет именно в этой строках. именно полученную 9-ку надо разложить в 8-ку т.е. у меня операция перестановок нужна только при формировании ОТВЕТА Поэтому я не раскручиваю сразу все пары в нужные 8-ки на этапе (1.), это достаточно сделать после этапа (3) Т.е. самым накладным у меня является - гроуп бай. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
надо пробовать в PostgreSQL там GROUP BY должен по другому или назовем по другому - надо оптимизировать GROUP BY ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:43 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov надо пробовать в PostgreSQL там GROUP BY должен по другому или назовем по другому - надо оптимизировать GROUP BY Дык чтоб оптимизировать надо знать куда двигаться. Покажи какой был план в MySQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 13:59 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
crutchmasterЭтот набор скидываем в комбинаторную функцию, которая выдаёт нам n наборов по 10 чисел. я бы назвал это решением "влоб" (разложением на конечные наборы) на втором этапе, теоретически это же очень много. Допустим ищем не 10 а 7 или 6 чисел. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 14:09 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, "id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra""1""PRIMARY""<derived2>"null"ALL"nullnullnullnull"4647356""1000""Using temporary; Using filesort""2""DERIVED""o"null"ref""IDX_otvet_XXX""IDX_otvet_XXX""5""const""2323678""1000"null"3""UNION""o"null"ref""IDX_otvet_XXX""IDX_otvet_XXX""5""const""2323678""1000"nullnull"UNION RESULT""<union23>"null"ALL"nullnullnullnullnullnull"Using temporary" обычный план ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 14:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Блин... а че оно в виде дерева не показывается? Как в Ораклах или Постгресах. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 14:27 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Не-по-нятненко... А если заменить на Код: sql 1. 2. 3. 4. 5. 6. 7.
Стоимость понижатеся? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 14:40 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, конечно просто UNION это DISTINCT ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 14:52 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Так может в этом и суть. Давай глянем что возвращает верхняя и нижняя части. Может удастся схитрить. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 14:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, надо join ть я же показываю влоб через Union. это отрабатывается быстро Код: sql 1.
UNION ALL в подзапросе по логике не проходит ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 15:16 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
какой то сбой был 5мин. group By может буфер "разогрелся" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 15:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Попробуй на Постгресе конечно. Но мне кажется что задачу на DBMS-ке тоже надо решать с привлечением биткарт. Я имею в виду 128-битное целое как базовый поисковой тип и операции AND + BIT_COUNT как только есть любая возможность. Я даже думаю что Perl будь у него такая возможность показал - бы сравнительно терпимый результат если уйти от строк и коллекций к нормальным регистрам процессора и быстрым булевым операциям. Кто знает Perl, есть ли там поддержка такого? Собственно кто-то умный еще 1 месяц назад Андрею ванговал про bitwise operations но его светлый голос потонул в пучине каких-то загрузок и таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 16:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton, уже получили пары (неважно как BIT_COUNT() или перебором множеств), т.е. это не проблема вопрос - дальше что? я группирую по пересечению множеств (по совпадению строк) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 17:29 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Дальше что? Получить бабос от шефа. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 17:41 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton бесконечную масштабируемость по размеру вектора хромосомы Я ещё немного подумал и мне кажется тут может быть проблема (не с этим датасетом, а вообще). Сейчас получается, что весь датасет занимает в закодированном виде около 64Кб. Т.е. умещается весь в кеш первого уровня хорошего процессора. Отсюда такая милота, как 10млн. сравнений в секунду. С увеличением размера вектора видимо придётся увеличивать и максимальное значение, которое надо хранить, иначе значений будет не хватать, а для этого нужно увеличить INITIAL_BITSET_SIZE. По идее это дожно приводить к более-менее линейному росту времени выполнения само по себе. Но вдобавок, оно может так дорасти до того что не будет больше помещаться в кеш и это уже должно привести к сильному росту времени выполнения (но видимо когда-то выйдет опять на линейное). Было бы интересно попробовать проверить эти измышления увеличивая INITIAL_BITSET_SIZE и возможно добавляя цифры перед 20-м элементом в векторе, чтобы он становился в диапазоне 101-200 или 1001-1100, а не 1-100. Но у меня нет пока времени, если есть интерес, попробуйте сами. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 18:17 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я немножко подустал от этой задачи. Уже хочется переключится на что-то другое. И сама тема лотерей и комбинаторик очень быстро надоедает. Да и что искать в ней. Если распределение изначально идеально - какие задачи ставить? Быстрый поиск? Насколько быстрый? Какой ценой? И следующий шаг какой? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2021, 19:55 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Таблица t3. Первый проход. 102 сек. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 15:12 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 15:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, перечитай последние 6 страниц, давно уже многие подсчитали 22276747 и далее смотри уже выложены решения по 9-кам 8-кам 7-кам и 6-кам ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 15:25 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
а зачем u1 и u? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 15:30 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Да вроде пройденный этап. Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 15:42 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov а зачем u1 и u? Потому что двоичное у меня только до 64-х бит ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 16:28 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, не надо BIT используй BINARY(100) и пиши туда все сразу ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 16:34 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov, А чем лучше? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 16:44 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
miltorg, ну дальше не надо конкатенацию делать для сравнения, сравниваешь одно поле, я это уже писал 200км назад ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 16:58 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Я обрезал аутпут потому что мой отчот просто в форум не пролезал. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 19:33 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
mayton Я обрезал аутпут потому что мой отчот просто в форум не пролезал. А 6-ки у Вас за сколько считаются? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 22:10 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Arhat109 О, круто! Процес оказывается ещё в самом разгаре .. то есть ещё никто не выложил готовое решение ТС-у с доплатой?!? :D Мое решение Запуск Код: plaintext
7-ки считает за 54 секунды на стареньком ноутбуке Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 22:56 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Alex_Ustinov mahoune, miksoft заняты А я болею и сил вчитываться особо нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 23:18 |
|
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
|
|||
---|---|---|---|
#18+
Топик частично почистил и закрываю. miltorg , пожалуйста, не создавайте больше топиков по общим вопросам в подфоруме по MySQL. Буду либо переносить по собственному разумению, либо просто удалять. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2021, 23:21 |
|
|
start [/forum/topic.php?all=1&fid=47&tid=1828188]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
153ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
436ms |
get tp. blocked users: |
2ms |
others: | 256ms |
total: | 893ms |
0 / 0 |