powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
25 сообщений из 471, страница 15 из 19
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042872
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подфиксил нумерацию.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
head -n 20 report-ordered-by-cl-elements-1.json5
{
  // Generated with SimilarChromosomeLookup (BitSet optimization) 1.0.2
  // Java Runtime Version : 11.0.9.1+1-Ubuntu-0ubuntu1.20.04
  // Top 2147483647 clusters findings, ranked by 'elements'
  // Date: Sun Feb 07 17:05:01 EET 2021
  // Src: /bigdata/prohorov/miltbase1.txt
  // Threashold range : [10..14]
  // Lines count : 5000
  { clusterId : '3,5,7,9,11,17,20,22,23,24', clusterDimenstions : 10, chromosomesInCluster : 4, chromosomePositions : [3332, 3333, 3334, 3338] }
  { clusterId : '1,2,3,4,5,6,7,8,9,10,11,12', clusterDimenstions : 12, chromosomesInCluster : 3, chromosomePositions : [3335, 3336, 3337] }
  { clusterId : '14,21,22,32,33,35,45,60,64,72', clusterDimenstions : 10, chromosomesInCluster : 3, chromosomePositions : [1185, 3159, 3710] }
  { clusterId : '15,19,20,38,41,43,51,54,66,74', clusterDimenstions : 10, chromosomesInCluster : 3, chromosomePositions : [182, 1262, 3640] }
  { clusterId : '3,5,7,9,11,17,20,22,23,24,63', clusterDimenstions : 11, chromosomesInCluster : 3, chromosomePositions : [3332, 3333, 3338] }
  { clusterId : '21,29,50,53,60,61,63,64,70,71', clusterDimenstions : 10, chromosomesInCluster : 3, chromosomePositions : [39, 675, 2769] }
  { clusterId : '10,22,36,37,46,54,59,64,74,78', clusterDimenstions : 10, chromosomesInCluster : 3, chromosomePositions : [472, 2981, 3010] }
  { clusterId : '4,7,8,30,31,44,45,49,55,67', clusterDimenstions : 10, chromosomesInCluster : 3, chromosomePositions : [234, 2051, 4517] }
  { clusterId : '1,4,6,10,32,44,45,61,70,75', clusterDimenstions : 10, chromosomesInCluster : 2, chromosomePositions : [2004, 3326] }
  { clusterId : '4,11,13,23,27,32,33,54,61,73', clusterDimenstions : 10, chromosomesInCluster : 2, chromosomePositions : [3009, 3968] }
  { clusterId : '4,10,17,21,23,32,53,54,61,76', clusterDimenstions : 10, chromosomesInCluster : 2, chromosomePositions : [3602, 4264] }
  { clusterId : '7,8,23,28,38,39,42,52,71,75', clusterDimenstions : 10, chromosomesInCluster : 2, chromosomePositions : [549, 2661] }


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
head -n 20 report-ordered-by-cl-dimensions-1.json5
{
  // Generated with SimilarChromosomeLookup (BitSet optimization) 1.0.2
  // Java Runtime Version : 11.0.9.1+1-Ubuntu-0ubuntu1.20.04
  // Top 2147483647 clusters findings, ranked by 'dimensions'
  // Date: Sun Feb 07 17:05:03 EET 2021
  // Src: /bigdata/prohorov/miltbase1.txt
  // Threashold range : [10..14]
  // Lines count : 5000
  { clusterId : '3,5,7,9,11,17,20,22,23,24,38,39,44,46,50,52,63', clusterDimenstions : 17, chromosomesInCluster : 2, chromosomePositions : [3332, 3338] }
  { clusterId : '3,4,7,13,17,18,19,25,32,36,41,42,64,76', clusterDimenstions : 14, chromosomesInCluster : 2, chromosomePositions : [760, 2616] }
  { clusterId : '1,4,10,12,16,26,30,32,38,42,44,48,69,72', clusterDimenstions : 14, chromosomesInCluster : 2, chromosomePositions : [160, 2504] }
  { clusterId : '11,13,24,31,34,39,50,54,56,58,62,69,71,75', clusterDimenstions : 14, chromosomesInCluster : 2, chromosomePositions : [531, 2093] }
  { clusterId : '3,20,21,22,26,28,30,36,38,49,53,61,62,79', clusterDimenstions : 14, chromosomesInCluster : 2, chromosomePositions : [3192, 4827] }
  { clusterId : '10,17,28,33,34,35,40,42,51,69,73,75,77,79', clusterDimenstions : 14, chromosomesInCluster : 2, chromosomePositions : [982, 2950] }
  { clusterId : '2,3,4,5,22,26,28,34,46,50,53,55,67,79', clusterDimenstions : 14, chromosomesInCluster : 2, chromosomePositions : [3199, 3587] }
  { clusterId : '2,5,17,22,23,31,32,47,50,53,56,68,73', clusterDimenstions : 13, chromosomesInCluster : 2, chromosomePositions : [3460, 3731] }
  { clusterId : '3,5,7,14,15,20,33,39,47,62,69,71,73', clusterDimenstions : 13, chromosomesInCluster : 2, chromosomePositions : [3044, 4671] }
  { clusterId : '5,6,7,19,23,28,36,38,41,42,60,67,70', clusterDimenstions : 13, chromosomesInCluster : 2, chromosomePositions : [523, 2661] }
  { clusterId : '2,8,12,22,26,27,38,44,66,69,70,72,74', clusterDimenstions : 13, chromosomesInCluster : 2, chromosomePositions : [1889, 4318] }
  { clusterId : '3,5,9,12,18,19,21,35,36,41,42,73,75', clusterDimenstions : 13, chromosomesInCluster : 2, chromosomePositions : [186, 250] }



Андрон. Тестируй. Туды ево в качель...
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042873
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Что это? Первый проход?
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042876
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это конец. В моём алгоритме больше нет проходов.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042878
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Если это решение - ещё раз пересмотрите пример решения:

10 чисел | строки в которых они встречаются |
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042879
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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-ки ( здесь одна)
и добавляем слова
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042880
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg
mayton,

Если это решение - ещё раз пересмотрите пример решения:

10 чисел | строки в которых они встречаются |

Дрон. Андрон. Стопы-стопы. Послушай сюда.

Я не делаю твоё задание. Твоё задание - это проиндексировать вселенную. А я тебе дал ИНСТРУМЕНТ
как создать структуру данных которая ПРЕДСТАВЛЯЕТ индексированную вселенную.

Ферштейн?

При этом я спасён от комбинаторного взрыва. У меня формула с факториалом сводится просто к формуле
с квадратом. Соединения пар всех хромосом. В перспективе - я экономлю место на диске.
Моя структура данных - компактнее. Зуб даю.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042882
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

А мне нужны решения.

С этими персонажами Тема становится скучна.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042885
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алекс Устинов. Что думаешь? Имеет право на жизнь такой метод?
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042887
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

я таким и считаю, только в MySQL через битовое сравнение.
Т.е. также получаю пары с совпадениями, (заумно - пересечение множеств, автор так и делал сначала в Perl)
группирую по вхождению строки и все.
Максимальное кол-во вхождений и будет ответом. Неважно - совпало в максимуме 10 или 12. Это будет РЕШЕНИЕМ.

В итоге задача решена еще в прошлом топике, когда Paver предложил такой вариант.
Автору нужен код, поэтому здесь такая котовасия,
все это читалось с самого начала
рядом попытка кусочного получения кода))) Как получить разряды установленных единиц?
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042888
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg,

Таблица - 1 проход:

64 тысячи записей

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
mysql> select * from n10tn1 where sovpalo>13;
+-------+------------------------------------------------+-----------+---------+
| id    | d1                                             | str       | sovpalo |
+-------+------------------------------------------------+-----------+---------+
|  4117 | 1_4_10_12_16_26_30_32_38_42_44_48_69_72        | 160-2504  |      14 |
| 13245 | 11_13_24_31_34_39_50_54_56_58_62_69_71_75      | 531-2093  |      14 |
| 18565 | 3_4_7_13_17_18_19_25_32_36_41_42_64_76         | 760-2616  |      14 |
| 23358 | 10_17_28_33_34_35_40_42_51_69_73_75_77_79      | 982-2950  |      14 |
| 57776 | 3_20_21_22_26_28_30_36_38_49_53_61_62_79       | 3192-4827 |      14 |
| 57822 | 2_3_4_5_22_26_28_34_46_50_53_55_67_79          | 3199-3587 |      14 |
| 59122 | 3_5_7_9_11_17_20_22_23_24_38_39_44_46_50_52_63 | 3332-3338 |      17 |
+-------+------------------------------------------------+-----------+---------+
7 rows in set (0.13 sec)
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042889
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
отлично, 22276747
первую стадию сделали. Теперь надо правильно группирнуть с GROUP_CONCAT
и не держите STR в таком виде, дальнейшая обработка неудобна
лучше так и оставьте STR1 и STR2
чтобы можно было схлопнуть по DL допустим вот так
Код: sql
1.
2.
3.
4.
5.
6.
SELECT GROUP_CONCAT(t.id), t.dl, COUNT(*) AS xxx FROM 
(SELECT o.str1 AS id , o.dl FROM otvet o
UNION 
SELECT o.str2 AS id , o.dl FROM otvet o) AS t
GROUP BY t.dl
HAVING XXX>1
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042892
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это конечно можно поправить
Код: sql
1.
HAVING XXX> 1


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


еще один шаг и будет решение, не прошло и 2 месяца
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042894
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все выкладываю. Берите. Пользуйтесь. Работает 1.5 секунды на моём железе. Это при том что JVM - холодная
на таком старте.

Это работающий и самодостаточный код. Нужна Java-11 и maven сборщик для сборки с сорцов.

Бинарь я тоже приложу чтоб сразу запускать.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042895
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И бинарь.

Образец запуска - в исходниках в "go"-файле.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042900
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg
miltorg,

Поставил обсчитывать 10-ку. Через 50 мин - ббудет результат.


10 - считается на чистом sql - 3 минуты максимум.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042901
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__
miltorg
miltorg,

Поставил обсчитывать 10-ку. Через 50 мин - ббудет результат.


10 - считается на чистом sql - 3 минуты максимум.


Правда 112 ядер и 1 ТераБайт оперативки.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042904
Victor Ichalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати, да, ваш метод с битами похоже работает. Просто "3 5 7 9 11 17 20 22 23 24" это плохой пример для демонстрации, потому что он появляется только без пропусков:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
mysql> select * from miltbase1 where sequence like '%3 %5 %7 %9 %11 %17 %20 %22 %23 %24%';

+------------+---------------------------------------------------------+
| date       | sequence                                                |
+------------+---------------------------------------------------------+
| 13.07.2016 | 3 5 7 9 11 17 20 22 23 24 38 39 44 46 50 52 63 67 73 79 |
| 14.07.2016 | 3 5 7 9 11 17 20 22 23 24 48 49 54 56 60 62 63 77 83 99 |
| 15.07.2016 | 3 5 7 9 11 17 20 22 23 24 25 26 27 28 29 30 31 32 33 34 |
| 19.07.2016 | 3 5 7 9 11 17 20 22 23 24 38 39 44 46 50 52 53 57 63 69 |
+------------+---------------------------------------------------------+



А вот хороший пример (если его находит, то скорее всего правильно работает):
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
mysql> select * from miltbase1 where sequence like '%2 %3 %4 %5 %22 %26 %28 %34 %46%';
+------------+---------------------------------------------------------+
| date       | sequence                                                |
+------------+---------------------------------------------------------+
| 02.03.2016 | 2 3 4 5 10 14 15 19 22 26 28 34 46 50 53 55 57 67 71 79 |
| 25.03.2017 | 2 3 4 5 12 21 22 26 28 34 43 46 50 51 53 54 55 67 74 79 |
+------------+---------------------------------------------------------+

mysql> select * from miltbase1 where sequence like '%3 %4 %5 %22 %26 %28 %34 %46 %50%';
+------------+---------------------------------------------------------+
| date       | sequence                                                |
+------------+---------------------------------------------------------+
| 02.03.2016 | 2 3 4 5 10 14 15 19 22 26 28 34 46 50 53 55 57 67 71 79 |
| 25.03.2017 | 2 3 4 5 12 21 22 26 28 34 43 46 50 51 53 54 55 67 74 79 |
+------------+---------------------------------------------------------+



Но как это реализовать на SQL - разум пасует.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042907
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg
miltorg,

Таблица - 1 проход:

64 тысячи записей

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
mysql> select * from n10tn1 where sovpalo>13;
+-------+------------------------------------------------+-----------+---------+
| id    | d1                                             | str       | sovpalo |
+-------+------------------------------------------------+-----------+---------+
|  4117 | 1_4_10_12_16_26_30_32_38_42_44_48_69_72        | 160-2504  |      14 |
| 13245 | 11_13_24_31_34_39_50_54_56_58_62_69_71_75      | 531-2093  |      14 |
| 18565 | 3_4_7_13_17_18_19_25_32_36_41_42_64_76         | 760-2616  |      14 |
| 23358 | 10_17_28_33_34_35_40_42_51_69_73_75_77_79      | 982-2950  |      14 |
| 57776 | 3_20_21_22_26_28_30_36_38_49_53_61_62_79       | 3192-4827 |      14 |
| 57822 | 2_3_4_5_22_26_28_34_46_50_53_55_67_79          | 3199-3587 |      14 |
| 59122 | 3_5_7_9_11_17_20_22_23_24_38_39_44_46_50_52_63 | 3332-3338 |      17 |
+-------+------------------------------------------------+-----------+---------+
7 rows in set (0.13 sec)





Запрос с заполнением данных и расчетом, без всяких промежуточных расчетов:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
create table #Temp(id int identity(1,1), Dt date, nv tinyint, primary key(dt,nv), index IX_nv(nv,dt))
insert into #Temp(Dt,nv)
select try_convert(date,t.d,104), v.value
from #Temp1 t
cross apply string_split(t.s,' ') v

SELECT max(t1.id), max(t2.id), t1.Dt, t2.Dt, Cnt=COUNT(1), STRING_AGG(t1.nv, ',') WITHIN GROUP (ORDER BY t1.nv)
FROM #Temp t1
INNER JOIN #Temp t2 ON t2.nv = t1.nv
  AND t2.Dt > t1.Dt
--where t1.Dt = '2016-07-14'
GROUP BY t1.Dt, t2.Dt
having count(1) > 9
order by 5 desc,1,2



Выполнение 1 сек.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Dt	Dt	Cnt	(No column name)
2016-07-13	2016-07-19	17	3,5,7,9,11,17,20,22,23,24,38,39,44,46,50,52,63
2010-02-05	2015-06-27	14	10,17,28,33,34,35,40,42,51,69,73,75,77,79
2008-11-11	2013-02-20	14	11,13,24,31,34,39,50,54,56,58,62,69,71,75
2007-11-06	2014-04-07	14	1,4,10,12,16,26,30,32,38,42,44,48,69,72
2016-02-24	2020-08-16	14	3,20,21,22,26,28,30,36,38,49,53,61,62,79
2016-03-02	2017-03-25	14	2,3,4,5,22,26,28,34,46,50,53,55,67,79
2009-06-28	2014-07-28	14	3,4,7,13,17,18,19,25,32,36,41,42,64,76
2012-01-21	2012-11-07	13	9,22,28,33,35,51,63,66,67,69,73,75,77
2011-11-07	2014-03-02	13	9,10,20,25,26,34,37,43,48,50,56,61,76
2012-01-28	2018-02-11	13	2,5,22,29,37,42,44,53,60,61,67,71,76
2012-07-26	2015-08-12	13	6,11,20,23,26,27,32,44,62,63,71,72,79
2012-07-31	2019-03-26	13	2,8,12,22,26,27,38,44,66,69,70,72,74
2012-08-19	2018-09-14	13	1,7,10,17,20,23,25,28,29,34,64,69,70
2012-10-20	2012-12-06	13	1,5,11,15,24,31,32,48,50,55,61,65,70
2012-11-11	2017-03-28	13	1,4,10,11,18,23,34,54,56,62,66,69,77
2012-11-13	2015-10-24	13	4,27,33,34,38,63,66,67,69,72,73,74,75
2012-11-23	2016-08-05	13	1,4,26,28,31,33,44,47,52,57,67,73,75
2013-01-08	2017-08-15	13	4,11,15,16,17,20,22,25,38,44,53,56,79
2013-02-25	2015-08-10	13	2,13,19,21,23,24,33,34,41,45,53,64,69
2011-11-18	2015-08-27	13	9,15,23,26,28,33,44,49,54,55,61,64,65
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042909
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А потом вторым запросом с 10 join сформировать все перечисления из 10 чисел и сгруппировать, вот и вся задача.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
2016-07-13	3 5 7 9 11 17 20 22 23 24
2016-07-13	3 5 7 9 11 17 20 22 23 38
2016-07-13	3 5 7 9 11 17 20 22 24 38
2016-07-13	3 5 7 9 11 17 20 23 24 38
2016-07-13	3 5 7 9 11 17 22 23 24 38
2016-07-13	3 5 7 9 11 20 22 23 24 38
2016-07-13	3 5 7 9 17 20 22 23 24 38
2016-07-13	3 5 7 11 17 20 22 23 24 38
2016-07-13	3 5 9 11 17 20 22 23 24 38
2016-07-13	3 7 9 11 17 20 22 23 24 38
2016-07-13	3 5 7 9 11 17 20 22 23 39
2016-07-13	3 5 7 9 11 17 20 22 24 39
2016-07-13	3 5 7 9 11 17 20 22 38 39
2016-07-13	3 5 7 9 11 17 20 23 24 39
2016-07-13	3 5 7 9 11 17 22 23 24 39
2016-07-13	3 5 7 9 11 20 22 23 24 39
2016-07-13	3 5 7 9 17 20 22 23 24 39
2016-07-13	3 5 7 11 17 20 22 23 24 39
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042912
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__,

не, немного не так.
Надо найти строки в которые входят 10 чисел,
по другому - один набор из 10-ти чисел должен входить во все найденные строки
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042915
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov
__Avenger__,

не, немного не так.
Надо найти строки в которые входят 10 чисел,
по другому - один набор из 10-ти чисел должен входить во все найденные строки


Ну так это и есть группировка по 10 числам (набору). А в агрегацию - список дат.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042918
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__
Alex_Ustinov
__Avenger__,

не, немного не так.
Надо найти строки в которые входят 10 чисел,
по другому - один набор из 10-ти чисел должен входить во все найденные строки


Ну так это и есть группировка по 10 числам (набору). А в агрегацию - список дат.


Вот ответ:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
3 5 7 9 11 17 20 22 23 24	4	2016-07-13 2016-07-14 2016-07-15 2016-07-19
3 5 7 9 11 17 20 22 23 63	3	2016-07-13 2016-07-14 2016-07-19
3 5 7 9 11 17 20 22 24 63	3	2016-07-13 2016-07-14 2016-07-19
3 5 7 9 11 17 20 23 24 63	3	2016-07-13 2016-07-14 2016-07-19
3 5 7 9 11 17 22 23 24 63	3	2016-07-13 2016-07-14 2016-07-19
3 5 7 9 11 20 22 23 24 63	3	2016-07-13 2016-07-14 2016-07-19
3 5 7 9 17 20 22 23 24 63	3	2016-07-13 2016-07-14 2016-07-19
3 5 9 11 17 20 22 23 24 63	3	2016-07-13 2016-07-14 2016-07-19
3 7 9 11 17 20 22 23 24 63	3	2016-07-13 2016-07-14 2016-07-19
4 6 10 11 16 50 64 67 72 78	3	2008-07-12 2009-10-06 2019-04-15
4 6 7 26 31 39 44 47 63 69	3	2008-07-14 2013-11-27 2013-12-25
4 6 9 20 26 28 42 63 65 67	3	2017-02-18 2017-08-10 2018-01-13
4 7 8 30 31 44 45 49 55 67	3	2008-01-19 2013-01-09 2019-10-11
5 7 11 17 22 23 24 38 50 52	3	2009-02-08 2016-07-13 2016-07-19
5 7 9 11 17 20 22 23 24 63	3	2016-07-13 2016-07-14 2016-07-19

3 минуты все затраты на все.
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042922
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__,
Тихо-тихо, боясь спугнуть:
- Ура... У нас есть ответ?

А на mySQL это получится?
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042923
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg
__Avenger__,
Тихо-тихо, боясь спугнуть:
- Ура... У нас есть ответ?

А на mySQL это получится?


Конечно. Там же примитивные запросы без всяких bit_count. Только join с группировкой и все!!!
...
Рейтинг: 0 / 0
Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
    #40042924
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__,

ну это если все строки совпадений разложить по 10 то да

а из таблицы после 1-го прохода можно группирнуть по строке вхождений взять максимальный каунт,

в данном случае максимум и будет на строке 3 5 7 9 11 17 20 22 23 24 (это так получиось у ТС в этом примере что строка из 10)

в предыдущих его данных было 5 строк совпадений из 12 чисел (в итоге в ответе 66 строк по 10 чисел в ответе)
...
Рейтинг: 0 / 0
25 сообщений из 471, страница 15 из 19
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Считает слишком долго. Уже 2 сутки. Как оптимизировать скорость?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]