|
|
|
trace: должны ли быть index reads родит. таблицы при работе в дочерней с FK-полем ?
|
|||
|---|---|---|---|
|
#18+
ТаблоидА, и еще тут вылезло, в схеме "каскады". Исходные данные: в таблице tmain_casc - одна строка, в подчинённой ей tdetl_casc - ноль: . . . session #2 (в трейсе ниже - ATT_722). Запускаю в ней примерно через 5-7 сек вот это: Код: plaintext Бесовщина какая-то лезет! Если переключиться БЫСТРО (из session #1 в session #2), то вторая сессия, запустившая удаление мастер-строки всё равно позже, чем первая, каким-то образом умудряется таки её удалить! И облом получает уже только session #1: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Trace: ::NB:: первая сессия успела к тому моменту добавить 33521 строк Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 00:34 |
|
||
|
trace: должны ли быть index reads родит. таблицы при работе в дочерней с FK-полем ?
|
|||
|---|---|---|---|
|
#18+
dimitrТаблоидТут три раза повторяется значение "444555".а если это будет три повторения из 100500 записей ? Создание FK на табличке-миллиарднике. Давай-ка закешируй мастер.Кешировать в TreeSet'e надо только PK/UK-ключи мастера. Которые в бол-ве случаев есть int / bigint (т.е. макс. 8 байт). Кстати, если речь пошла о расходе памяти: а как тогда ФБ создаёт битмапы для выборок в 100500 млрд строк, когда там PLAN INDEX ? В этих битмапах хранятся номера записей (rdb$db_key char(8) ?), и лимита никакого (по памяти) вроде бы нет. dimitrЧто ты так привязался к этим фетчам? Они тебе жмут?Не они жмут, а неадекватно-огроменные IDX_READS, которые показывают новые mon$-счетчики на одной таблице. В одном известном тебе тесте. Я начал ковыряться в коде и вижу: эта таблица (DOC_DATA) является родительской к двум другим (QDISTR & QSORNED, причём вторая связана с DOC_DATA не одним, а двумя полями). Вспомнив, для чего вводил эти FK, решил грохнуть их к ЧМ: алгоритм и так не позволяет нарушать ссылки. Запустил заново - и вижу, что статистика вообще не поменялась. Что с ними, что без них. Но такого не может быть, раз есть какие-то "тайные затраты" на поддержание ссыл. целостности! Вот такая история. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 00:49 |
|
||
|
trace: должны ли быть index reads родит. таблицы при работе в дочерней с FK-полем ?
|
|||
|---|---|---|---|
|
#18+
ТаблоидКешировать в TreeSet'e надо только PK/UK-ключи мастера. Которые в бол-ве случаев есть int / bigint (т.е. макс. 8 байт). расскажи это Жене Болтику :-) ТаблоидКстати, если речь пошла о расходе памяти: а как тогда ФБ создаёт битмапы для выборок в 100500 млрд строк, когда там PLAN INDEX ? В этих битмапах хранятся номера записей (rdb$db_key char(8) ?), и лимита никакого (по памяти) вроде бы нет. RTFM sparse bitmap dimitrЗапустил заново - и вижу, что статистика вообще не поменялась. Что с ними, что без них. значит, не в них дело. А в кривых запросах или кривых данных. dimitrНо такого не может быть, раз есть какие-то "тайные затраты" на поддержание ссыл. целостности! ок, выведу я тебе "тайные" затраты. Но уже сейчас понятно, что оно ничего тебе не даст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 09:26 |
|
||
|
trace: должны ли быть index reads родит. таблицы при работе в дочерней с FK-полем ?
|
|||
|---|---|---|---|
|
#18+
dimitrрасскажи это Жене Болтику :-)я плохо понимал его мысли, когда они тут появлялись. Надеюсь, он меня тоже не поймёт, так что не буду тратить время попусту. dimitrdimitrЗапустил заново - и вижу, что статистика вообще не поменялась. Что с ними, что без них.значит, не в них дело. А в кривых запросах или кривых данных.Да там запросы - "два притопа, три прихлопа". Через курсоры пришлось многие вещи делать, к сож-ю. А насчет кривых данных - это ты про перекошенные распределения говоришь или что ? ибо данные генерятся рандомно из некоторых диапазонов, изначально они "равномерные". dimitrок, выведу я тебе "тайные" затраты. Но уже сейчас понятно, что оно ничего тебе не даст.Это мы еще поглядим! :-) ЗЫ. Как объяснить "артефакты" номер раз и два ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 12:18 |
|
||
|
|

start [/forum/topic.php?fid=40&startmsg=38733742&tid=1563367]: |
0ms |
get settings: |
10ms |
get forum list: |
25ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
220ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 569ms |

| 0 / 0 |
