X-Software

X-Software
Рейтинг
61
Регистрация
31.01.2014

Внимание! Вышло обновление Penguin до версии 5.9. Внесены следующие изменения:

  • Исправлена ошибка в удалении вхождения строк друг в друга
  • Добавлена возможность использовать ограничение конкретного вхождения (#условие#) при поиске вхождений слов в разном порядке (условие+найти). Теперь так же действует конструкция #слово#+#найти#.

Скачать Penguin 5.9

По поводу антивирусов: в последнее время наблюдается наращивание параноидальности у антивирусов, только что скомпилированный файл лицензионной версией Майкросовтовской Visual Studio, только за отсутствие цифровой подписи некоторые антивирусы определяют, как вирус. Ставишь на него любую защиту с помощью лицензионного пакера и тоже, в зависимости от настроек, определяются на выходе разные вирусы. Делаешь инсталятор и та же проблема. В текущей версии я проверил все сборки самым параноидальным антиварем и вроде бы все нормально. Если у кого-то на версию 5.9 что-то сработает, пишите в ЛС кто ругается и на что. Буду качать эти анивирусы и проверять при каких настройках можно минимизировать срабатывание.

Ну и по традиции с одновлениями акция!

Промокод: 1203AA335E9842AD, скидка 50% на все программы на X-Parser.ru

Купить Penguin 5.9, не забывайте нажимать кнопку "Применить", чтобы применить скидку!

Ок, приму к сведению, попробую добавить.

Логика предельно простая: есть в файле определенное кол-во строк. Если у нас есть 1 условие проверки, то программа делает следующее: проходит файл построчно и выполняет 1 условие на каждую строку. Если у нас есть 2 условия, то на каждую строку выполняются уже 2 условия. И если у нас в файле, например, миллиард строк, то в первом случае у нас был миллиард операций, а во втором - 2 миллиарда операций поиска подстроки в строке. Это, так или иначе, пропорционально увеличивает расход процессорного времени и на больших объемах при увеличении количества условий скорость пропорционально падает.

Лучшее решение - первоначально делать глобальную выборку по минимуму условий, чтобы выделить тематические клчевики и сократить объем начальных данных, а уже потом делать более сложные выборки по нескольким условиям.

В любом случае при работе с огромными файлами (40-50Гб) скорость будет исчисляться часами, так как операций производится миллиарды. В целом есть решения как ускорить выборку, но это потребует создавать программу совершенно отличную от концепции Пингвина, которая будет работать не с текстовыми файлами. А цель пингвина работать именно с текстовыми файлами.

#слово+#слово в очередь добавил, буду делать обновления - посмотрю на сколько будет это удобно реализовать. В целом можно использовать регулярное выражение типа ([^а-я]слово1[^а-я].*[ ]слово2[^а-я]|[^а-я]слово2[^а-я].*[^а-я]слово1[^а-я]), в целом условия с # преобразуются именно в такие регулярные выражения, а регулярное выражение работает на много медленнее, чем простое условие. Поэтому предпочтительнее сделать выборку начальную по простым условиям и уже потом прогонять составные.

Sevix:
Логично было бы предположить, что если делать выборку для более чем одной фразы, время должно быть примерно таким же (+ -), с разницей только, что для каждого слова создается свой файл.

Такой режим, но для каждого условия построчно может быть реализован путем ввода вхождений таким образом: "Слово1:=Имя_файла1.txt" и так отдельная строка для каждого условия.

Обновления! Penguin обновлен до версии 5.7. Внесены следующие изменения:

  • Добавлена возможность создавать новый проект, что позволяет быстро очистить форму приложения от всех ранее введенных данных.
  • Добавлена индикация при подсчете количества строк в очереди были ли посчитаны они точно или примерно.
  • Добавлена возможность удаления явных и неявных дублей в файлах весом в 10Gb и более. Примерно в трое превышающих объем ОЗУ.
  • Исправлена ошибка при сохранении больших файлов, когда при сохранении оставалась 1 строка.

Скачать Penguin 5.7

Пишите в аську 663 восемь четыре семь 900, она постоянно активна. Идею нужно обсудить детальнее.

Пингвин обновлен до версии 5.3. Внесены следующие изменения:

  • Добавлена возможность подключать файлы с условиями в списки включений и исключений, что позволяет задавать десятки тысяч условий, если это нужно.
  • Добавлена возможность при групповой фильтрайии в разные файлы выбрать режим распределения включений: либо проверять включения для каждого файла независимо, либо до первого совпадения.

До конца месяца действует скидка 40%, промокод: B9069F28F4BE49E1

Купить, как укажите промокод, не забудьте нажать кнопку "Использовать"

Принял Вашу идею. Возможно реализую в следующих обновах. Довольно хорошая концепция.

Удаление дублей происходит при использовании оперативной памяти, таким образом размер файла ограничен размером Вашей оперативной памяти.

Есть 2 варианта удаления дублей: быстрый но лимитированный, и медленный, но не лимитированный. Во втором случае надо сравнить все строки со всеми, а это значит, что на файл размером 45 гигабайт нужно произвести примерно миллиард миллиардов операций, что ровно в миллиард раз больше, чем производится при фильтрации. А это значит, что такой файл будет обрабатываться около миллиона лет. Кстати такой алгоритм используется при поиске вхождения строк друг в друга, и если попробовать обработать им такой файл, то он напишет Вам сколько точно займет по времени такая обработка.

Как удалять дубли, советы:

1. Удаляйте дубли в конечных выборках, это займет пару лишних минут.

2. Если файл отсортирован по алфавиту, то можно проверить есть ли там в принципе дубли, как правило не бывает, но если база собрана самостоятельно то другое дело.

3. Если файл отсортирован, разбить его на части размером меньше чем Ваша оперативная память, удалить в каждом куске дубли, затем открыть все эти файлы, произвести выборку без условий, чтобы они объединились и сохранить уже с нужным именем.

4. Самый лучший: Сделать выборку по первой букве по регулярному выражению во включениях типа "^a", "^б" и т.д. по каждой букве, затем проделать все действия, описанные в третьем пункте.

По поводу ICQ: я использую 2 аськи (ICQ и QIP), обе можно найти здесь. Писать лучше именно на ICQ 66-три-84-семь-900, так как QIP отличается тем, что очень много сообщений туда не доходят. ICQ доступно постоянно и отвечаю моментально.

А вот это, кстати сказать, надо будет сделать в следующих обновлениях. Спасибо, что обратили внимание.

Обновления! Penguin обновлен до версии 4.7. Внесены следующие изменения:

  • Исправлена ошибка валидации при разбивке файлов, которая не позволяла запустить процесс разбивки.
  • Добавлена возможность удаления строк, которые содержатся в других строках, вне зависимости от порядка следования слов. С помощью данной функции можно увеличить уникальность кейвордов относительно друг друга.

Скачать Penguin 4.7

-------------------------------------------------------------------

IBakalov:
Записал видео-обзор вашей программы :)

За обзор большое спасибо.

Всего: 71