Форум продуктов IBM Lotus
Общие вопросы => Разработка приложений => Тема начата: Sergey_st85 от 07 Сентябрь 2009, 15:15:07
-
Есть вид. В нем 2000 документов. Бегу по всем документам и сравниваю их друг с другом. Получается проверка порядка 4.000.000 документов.
Как можно оптимизировать данный процесс?
Например, как-то добавить в коллекцию всё что есть во вьюхе (я не знаю, как это делать без getdocumentbykey в видах), и правильно удалять их из коллекции после прохождения.
В принципе, вопрос сводится к "как взять все док-ты из вьюхи при помощи ЛС без ключей"... В виде 1 столбец, краткое название организации.
И вообще, что быстрее: гетFirstDocument из неиндексированной вьюхи, или из коллекции?
-
Можно поподробнее что нужно сделать?
-
Есть ОДИН вид. С ним и работаем.
беру КАЖДЫЙ документ в виде. И сравниваю со ВСЕМИ остальными. Как ускорить процесс в плане цикл побыстрее чтобы работал?
Я не знаю тайминга выполнения ф-ций; может из коллекции док-тов документ берется в 5 раз быстрее, чем из вьюхи.
-
Это уже описано в первом сообщении темы.
Я спрашивал про другое: для чего нужны эти переборки. Скорее всего можно решить задачу не проводя подобные сравнения. Для этого и прошу обширнее описать проблему.
-
Код не могу скопировать, но суть такая. Взять имя краткой организации и полной. Исключить из них спец-символы: ООО, ОАО, пробелы, запятые, дефисы и т.д. И сравнивать с другими док-тами, исключая спецсимволы по такому же алгоритму.
+ ещё слова местами меняются для сравнения. ООО Россия два --- это дубль Россия ООО Два.
-
а результатом что должно быть? отчет по организациям, или что-то еще? т.е. для чего сравнения производятся?
-
Просто для CSV-шного отчета, о дублях организаций.
-
А если в документы прописать поле с названием организации без спец.символов и др., в нижнем регистре, например. Затем в виде категоризировать по этому полю. В каждой категории будут содержаться дубли.
-
Тогда "Россия Москва" и "Москва Россия" будут в разных категориях, а это по сути дубль. ПРоблема решена, я просто для агента на сервере отвел лишний час доступного времени.