- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Приветствую, друзья! С прошедшими и наступающими праздниками.
Требуется Ваша помощь.
есть к примеру таблица news с столбцами
требуется сравнить значение столбца sig со всеми остальными значениями sig
Например получили значения sig1 и сравниваем с sig1-sig2-sig3-sig4 и т.д.
после сравнения продолжаем sig2 и сравниваем с sig1-sig2-sig3-sig4 и т.д.
и так до конца всех значений
Я все это собирал в массив копировал в другой массив и сравнивал их.
Но все это работало пока строк было немного.
Сейчас строк больше 100 000 и сервер с моим решением отказался выполнять все это дело. Загружая проц на 90%
Может Вы подскажите какое решение с моей проблемой?
:mad: Я пытался сделать это через AJAX, но мои познаний в JS очень минимальные и поэтому не смог представить как это реализовать.
в чем смысл этого сравнивания, что в итоге это должно давать?
в чем смысл этого сравнивания, что в итоге это должно давать?
Это сравнивание проверяет схожесть значения в %, тоесть какой процент схожести значения с значением если значение превышает 10% значит дубль
Ilekor, и как часто надо это выполнять?
Ilekor, и как часто надо это выполнять?
подобный механизм выполняется 1-2 раза в месяц
Ilekor, ну так разбить задачу.
Вообще вам бы в крон (планировщик) засунуть эту задачу и в скрипте генерировать отчет, который смотреть через вебморду. Ну и разбивать над блоки, а не сразу все из БД загружать.
По поводу алгоритма сравнения - ваша запись
означает, что вы по-очереди сравниваете значения или первое значение со значением, полученным из объединения остальных?
А какой тип у колонки sig и как выглядит сравнение двух значений между собой?
Вам нужно проверить уникальность строк? Group by не подходит?
В общем не дожидаясь ответа по вангую. Если я верно понимаю задачу, то сравнивать все значения со всеми не обязательно, т.к. если упорядочить данные по некоторой сравниваемой величине, то сравнивать нужно только соседние элементы, допустим имеем упорядоченный список:
задача найти группы разность между элементами которых не более 10., тогда достаточно взять элемент и сравнивать его со следующим, пока условие не перестанет выполняться, т.е
abs(1 - 2) < 10 # да, добавляем элементы в общее множество
abs(2 - 3) < 10 # аналогично
......
abs(4-20) < 10 # нет, предыдущее множество сформировано, начинаем формировать новое
abs(20 - 28) < 10 и т.д.
таким образом задача решается в один проход, даже для кол-ва элементов более млн. все будет быстро
на python, код будет таким:
вывод по данным:
но затык может быть в том, что множество ваше не сортируемое и условно "расстояние" элемента 1 до 10 может равняться "расстоянию" от 5 до 6, но об этом вы ничего не сказали
Друзья, в значении хранится текстовый код изображения, вот эти коды и сравниваются на похожесть кодов, вот так
сначала получаем и сравниваем sig1 и sig2, mysql такого сравнения не сделает, это функция библиотеки php
и так до тех пор пока sig1 не пройдет все значения
после чего sig2 начинает также проходить по все проверкам и так пока не закончится