|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg paver, У меня такое ощущение, что вы пытаетесь рассказать о том, как находить совпадения в 2 строках. Я это решил по простому - загнал цифры в массивы и применил функцию которая ищит совпадения массивов. 1. Это не ощущение. Именно это вам и пытаются рассказать. 2. Я это решил по простому - загнал цифры числа в битовые строки и применил битовую операцию, которая показывает совпадения. Я не видел вашего кода поиска совпадений, но очевидно, что он на несколько порядков (!) медленнее битовой операции A & B. BIT_COUNT(A&B) - это и есть мой код. Покажите ваш Это во-первых. А во-вторых, предлагаемое решение - для общего случая. BIT_COUNT просто даст количество совпавших чисел, а отфильтровать нужные строки можно элементарным WHERE BIT_COUNT(A & B) IN (10, 11, 12) (ну или просто >=10). ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2021, 20:51 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
paver, Я ведь писал код. Раз: 22260895 Два: 22264457 И уже 4 раза написал что скорость в данном случае не имеет значения Вы знаете. Я не стану больше с вами разговаривать. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2021, 21:51 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg Что я хочу сейчас? - Проверить своё решение. Как? Решить с битовыми масками. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2021, 04:53 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
mayton Alex_Ustinov mayton, я так глубоко не полез, там вроде было нормальное обсуждение Я не об этом. Пятничные топики часто носят характер развлекательных. Трудовая неделя закончилась. Можно и отдохнуть. Это - давняя традиция которая возникла на скруле еще задолго до того как я создал первый пятничный. Возможно Милторг не имел в виду ничего серъезного. Но все так возбудились... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2021, 14:55 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
Нас ждёт вторая серия. - Заказчик сказал, что лучшая проверка - это генерировать всё подряд и проверять на совпадения. У него правда есть своя идея. - Отгенерированное класть не просто так, и не в базу, а в файлы по первому числу. - Сразу группировать единицы и пр. Начинаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2021, 00:29 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
Итак. Я вернулся в начало. 1 мысль: Генерировать буквально по 1 строчке и сразу выдавать готовый результат. 2. Делать как сказал заказчик - ибо заказчик всегда прав. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2021, 00:32 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg У него правда есть своя идея. - Отгенерированное класть не просто так, и не в базу, а в файлы по первому числу. - Сразу группировать единицы и пр. miltorg Начинаю. miltorg 2. Делать как сказал заказчик - ибо заказчик всегда прав. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2021, 04:03 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg Итак. Я вернулся в начало. 1 мысль: Генерировать буквально по 1 строчке и сразу выдавать готовый результат. 2. Делать как сказал заказчик - ибо заказчик всегда прав. Если заказчик просто хочет проверить формулу - то не обязательно генерить все 20 чисел. Может проверить на 5 штуках? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2021, 14:13 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
mayton, это же монолог, ТС купил пивка и ему опять скучно... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2021, 18:27 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
Я вот думаю, что что-то не так в моём переводе из 12 совпадений в 10 Лезут какие то дубликаты. Что я делаю. Хоть я уже про это и писал. Я последовательно удаляю по 1 цифре в 12 совпадений Потом также последовательно удаляю цифры в полученных 11 совпадениях А нужны ли они вообще эти цифры? Ведь я уже сравнивал эти все строки между собой. Это тогда совсем упрощает задачу! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2021, 22:45 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
Сегодня я достиг 5 миллионов записей и оно мне сказало: авторtable is full Странно. Я читал что у mySQL вроде как ограничений нет на число записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2021, 05:17 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg, И это инженер с дипломом? Дилетант. Ему форум дал отличное решение с битсетом, бери, пользуйся на здоровье, но нет, не хочу, хочу жрать говно. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2021, 06:47 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
crutchmaster miltorg, Дилетант. Ему форум дал отличное решение с битсетом, бери, пользуйся на здоровье, но нет, не хочу... Он его просто не понял. До сих пор. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2021, 10:28 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
Если взять не 10 из 20, а 32 из 64 (регистр). То подсчет удачных комбинаций может затянуться. Я не против битовых операций но КМК надо исследовать на временную сложность. Когда мы дойдем до старших разрядов (62,63 биты) то пауза в ожидании следующей удачной комбинации затянется. Хотелось-бы уйти от вращения битов в регистре и подойти ... ну со стороны неких прямых пермутаций. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2021, 16:37 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
mayton, Не понял. Зачем вращать биты в регистре? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 05:56 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg, Код: javascript 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.
Проверяй. Наваял левой пяткой за 30 минут на сраном жс то, над чем ты тужишься уже две недели. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 06:55 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
crutchmaster, Можно было заюзать bigint вместо number и делать по 64 бита, но мне влом, да и время правки истекло. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 07:09 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
crutchmaster, Ребят, вы правда к 12 странице до сих пор не поняли задание? Нужно сравнивать 10 цифр. 10!!! И ответ по этим данным я уже публиковал. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 09:19 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 09:24 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg, И не забывайте, что это не исходный файл - а это тестовый файл В исходном файле 5000 строк, а не 10 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 09:27 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
А это что должно у вас получиться в конечном итоге из тестового файла: Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 09:39 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
В конечном результате, перед сортировкой - больше 2 миллионов строк. Так что всё это нужно писать в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 09:47 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg В конечном результате, перед сортировкой - больше 2 миллионов строк. Напугал ежа голой жопой. Я на ноде крутил и больше. miltorg Так что всё это нужно писать в БД. Тебе не нужно 2м строк. И сортировки делать не нужно. Коду, что выше это не нужно. Никому это не нужно. Закидываешь свои несчастные 5к строк (да хоть 10М, лишь бы RAM хватило) и вперёд. Если боишься выхлопа можешь сразу его писать в файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 10:08 |
|
Как отсортировать 1 миллиард записей?
|
|||
---|---|---|---|
#18+
miltorg В исходном файле 5000 строк, а не 10 Не сильно больше. А это что должно у вас получиться в конечном итоге из тестового файла: А дублировать строки обязательно? miltorg Нужно сравнивать 10 цифр. 10!!! До тебя не доходит, что всё, что больше 10 - это уже и есть решение? Тебе как маленькому надо сделать перестановочки и получить файлик, как у тебя 1 в 1, чтобы начало доходить? Кстати, посмотри вот на это: Код: sql 1.
Тут 10 совпадений. Где у тебя пара 19.08.1966 и 20.08.1966 в результате? Походу ты обосрался со своим кодом. Вот твои исходные данные, если забыл. 22264235 Циферки сам посчитаешь руками. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2021, 10:16 |
|
|
start [/forum/topic.php?fid=47&msg=40037817&tid=1828220]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 154ms |
0 / 0 |