|
|
|
Поиск блоками по rowid
|
|||
|---|---|---|---|
|
#18+
Добрый день, Некоторое время назад возникла задача обрабатывать определенные партиции по специальному алгоритму для построения своей структуры-индекса, которая будет использоваться потом. Работа с базой ORACLE реализована из C++ и построение своего индекса выполняется средствами С++. Задача раз в месяц шерстить некоторые партиции для ограниченного, но большого набора табличек. Поэтому обработка записей выполняется следующим образом: 1. Вначале каждая партиция каждой таблички разбивается на небольшие блоки Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 2. Каждый блок c min_rowid и max_rowid в зависимости от загрузки оборудования обрабатывается Код: sql 1. 2. 3. 4. 5. 6. 7. 8. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Почему-то шаг 2. выполняется очень быстро и после его выполнения в таблицах можно видеть, что не все записи попали в обработку (Это видно по полям status и stmp_calc). Почему такое может происходить? Заранее спасибо, за конструктивные комментарии! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 22:44 |
|
||
|
Поиск блоками по rowid
|
|||
|---|---|---|---|
|
#18+
gvitalik, Кто-то еще в таблицу пишет. Пахнет костьілестроением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 22:57 |
|
||
|
Поиск блоками по rowid
|
|||
|---|---|---|---|
|
#18+
какой свежий взгляд на использование ROWID )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2017, 01:00 |
|
||
|
Поиск блоками по rowid
|
|||
|---|---|---|---|
|
#18+
gvitalik Код: sql 1. gvitalikПочему-топотому что группировка у вас случайная... да сама методика у вас крайне кривая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2017, 01:11 |
|
||
|
Поиск блоками по rowid
|
|||
|---|---|---|---|
|
#18+
gvitalik, получить диапазоны rowid можно проще Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2017, 01:19 |
|
||
|
Поиск блоками по rowid
|
|||
|---|---|---|---|
|
#18+
ну и сравнивать потому нужно с приведением к типу rowid: https://jonathanlewis.wordpress.com/2013/12/01/rowids/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2017, 01:29 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39555872&tid=1884899]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
53ms |
get topic data: |
7ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 332ms |

| 0 / 0 |
