|
Как быстрее обработать данные
|
|||
---|---|---|---|
#18+
Приветствую! У меня проблема: необходимо обработать таблицу идентификаторов (>>50'000 записей). Перепробовал много: ообрабатывать на MS SQL Server'е с помощью хранимых процедур (ооочень долго), в среде DELPHI c помощью RXMemoryTable и ADOQuery (все-равно очень долго). К тому же в RXMemoryTable 2.75 неработает св-во Filtered ВОПРОСЫ: - если решать задачу с помощью динамического массива , то будет ли быстрее? - если да, то не будет ли критичным кол-во эл-тов массива >>500'000? Буду благодарен всем ответившим! ЗЫ.: Ни у кого нет патча для RXMemoryTable? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2001, 18:40 |
|
Как быстрее обработать данные
|
|||
---|---|---|---|
#18+
А почему "ообрабатывать на MS SQL Server'е с помощью хранимых процедур (ооочень долго)"? 50000 - это-же не объём. Или там делается что-то безумно сложное? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2001, 18:58 |
|
Как быстрее обработать данные
|
|||
---|---|---|---|
#18+
2alexeyvg Речь идет о следующей задаче: У меня БД книжного интернет-магазина, каждая книга может встречаться в нескольких рубриках. Передо мной была поставлена задача составления классификации, в суть которой пока не будем вдаваться. Нужно составить таблицу пересечений множеств всех рубрик, составить таблицу идентификаторов книг, входящих в эти отдельные множества. ПРИМЕР: если взять 3 взаимно-пересекающихся мн-ва, то в 1й таблице будет 7 записей по одному на каждое пересечение. А во 2ю - поместим идентификаторы книг, в них входящих, после чего расчитаем кол-во книг, вошедших в каждое пересечение рубрик. Я попробовал написать хранимую процедуру но еще с 12000 записями она выполняется черезчур медленно. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2001, 19:37 |
|
Как быстрее обработать данные
|
|||
---|---|---|---|
#18+
Я думаю, что на 50'000 записей это должно работать от нескольких секунд до несколько минут (зависит от сервера и от того, что такое "пересечения множеств всех рубрик" - это я не понял). "безумно сложное" - это я имел в виду курсор и вызов хр. процедур для каждой записи из этих 50000. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2001, 10:29 |
|
Как быстрее обработать данные
|
|||
---|---|---|---|
#18+
2alexeyvg: Да, я написал курсор, вызывающий хр.проц., результата вычислений которой я даже не дождался. Сейчас я пишу прогу на дельфе, которая зачитает в динамические массивы данные (благо данные целочисленные) и будет их там сама пережевывать. Меня беспокоит лишь один вопрос: интересно, как поведет себя мое приложение, если я захочу выделить память хотя бы под 500'000 записей? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2001, 11:00 |
|
|
start [/forum/topic.php?fid=58&fpage=2092&tid=2120220]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 247ms |
total: | 373ms |
0 / 0 |