|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Копал план по данному запросу. Как результат выяснил что проблемы с S_USER/S_OPTY_POSTN. Но манипуляции с таблицами и их соединениями не помогли. Особо не разбираюсь в планах. Приложил полный план. Подскажите, может что-то пропустил? Код: plsql 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. 478. 479. 480. 481. 482. 483. 484. 485. 486. 487. 488. 489. 490. 491. 492. 493. 494. 495. 496. 497. 498. 499. 500. 501.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 18:38 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91, вот еще инфа из плана. по размеру не влез файл ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 18:41 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91, предлагаю найти архитектора и разработчиков и оторвать им что нибудь) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 18:47 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91, Вряд ли кто-то захочет это делать бесплатно. Если очень нужно, наймите кого-нибудь, кто решит ваши "проблемы с S_USER/S_OPTY_POSTN". Форум "Работа" А если не очень нужно, расслабьтесь и/или ждите "энтузизиста". Но лучше свяжитесь с разработчиком системы, которая автоматически генерирует такие запросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 18:59 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Смутно знакомый вид портянок... Siebel? Или что-то типа того... Вкратце, CBO плохо работает с таким кол-вом таблиц в запросе, так что надо ему помочь хинтами. Еще помогает хотя бы логически объединять части во вьюхи. А еще лучше изначально не делать запросы на 353 столбца по 65 таблицам... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:08 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov, В плане исключительно Nested Loops и Nested Loops Outer. Предполагаю, что это давно "неподдерживаемый" "руль" всё ещё рулит. :-) /*+ RULE */ ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:30 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Валерий Юринский давно "неподдерживаемый" "руль" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:35 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
для начала вообще статистику бы хоть собрали... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:36 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov, Да, все верно, это Siebel. СПасибо. попробую объединить логически во вьюхи. к Сожалению. как писали выше. это Сибл сам генерит такой запрос. Кинул вопрос конечно на удачу. сам копаюсь уже внутри системы. Но возможно. кто-то увидит то, чего не увидел я и направит в нужном направлении)) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:37 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov, как мне сказали . ДБА. по основным таблицам. которы меняются постоянно и которые. больше N. она пересобирается каждую ночь. "У нас все ок, к нам не лезь мальчик" - Как-то так мне ответили) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:39 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91 Да, все верно, это Siebel. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:42 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91 ДБА... "У нас все ок, к нам не лезь мальчик" - Как-то так мне ответили) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 19:44 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov для начала вообще статистику бы хоть собрали... У Siebel есть специальный скрипт, который генерирует команды сбора статистики для каждой таблицы согласно логике, определенной разработчиками Siebel, и выполняет его. Сбор статистики рекомендуется выполнять ежедневно, во время минимальной нагрузки на базу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 21:50 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov Валерий Юринский давно "неподдерживаемый" "руль" Одно из требований Siebel - optimizer_index_cost_adj=1. В 2013 году, когда мы апгрейдили Siebel с версии 6 на версию 8, мы имели кучу проблем, пока поддержка Siebel (точнее, Oracle) не разродилась рекомендацией на время апгрейда установить optimizer_index_cost_adj=100. После апгрейда вернули как было. В 2019, во время очередного апгрейда, мы были уже ученые :-). Там еще немало параметров, которые Siebel рекомендуют изменить, включая несколько hidden параметров. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2022, 21:58 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov Смутно знакомый вид портянок... Siebel? ... А еще лучше изначально не делать запросы на 353 столбца по 65 таблицам... Это точно Siebel. И он мало того, что генерит запросы, он генерит идентичные запросы, время от времени меняя имена алиасов. В древних версиях зибеля был функционал, позволяющий прописать хинты для запросов формы, но потом этот функционал убрали, что сильно осложнило жизнь. Тем не менее, как-то случайно пообщался с опытыми зибелеводами в офисе oracle. И те отметили, что набор запросов формы хоть и велик, но конечен, и систематическое прибивание правильных планов (через профили, ЕМНИП) в конечном итоге дает желаемый эффект. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 13:49 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91 Скрипт короткий какой-то ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 13:58 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
andrey_anonymous хоть и велик, но конечен да все в мире конечно, хоть и велико))) бесконечность придумали люди для упрощения себе жизни) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 14:33 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Ролг Хупин, Если Вы про доп ину. то там две части. т.к. размер возможного вложения превышало ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 14:44 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
andrey_anonymous, ДБА. мне сказали. что не будут по отдельным селектам менять план запроса. из-за кривых конфугураций системы. в целом наверно согласен. дело в кривом конфигурировании именно Siebel. по плану я хотел как раз найти место куда копать. потому что менять все что на мой взгляд кривое не дадут. возможны появления связанных ошибок итп. поэтому и хочу как-то "хирургически" найти проблему и попытаться локализовать ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 14:46 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91, вы к хинту ALL_ROWS можете добавить свои хинты? Например, opt_param('optimizer_index_cost_adj',100) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 14:50 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Sayan Malakshinov, Да. конечно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 14:52 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91, пытался хинтами разные индексы прибить которые он почему-то не юзал. картина не менялась. Про opt_param('optimizer_index_cost_adj',100) не в курсе. но попроую. спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 14:54 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91 пытался хинтами Очень давно (и слава богу) не трогал Siebel. В древних версиях Siebel использовал RBO. А что сейчас CBO? SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 15:12 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91 donkarleone-91, пытался хинтами разные индексы прибить которые он почему-то не юзал. картина не менялась. Про opt_param('optimizer_index_cost_adj',100) не в курсе. но попроую. спасибо уже советовали. к таким "мудрым" запросам хорошо подходит хинт /*+ rule */ прям волшебная пуля) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 15:29 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Надфиль donkarleone-91 donkarleone-91, пытался хинтами разные индексы прибить которые он почему-то не юзал. картина не менялась. Про opt_param('optimizer_index_cost_adj',100) не в курсе. но попроую. спасибо уже советовали. к таким "мудрым" запросам хорошо подходит хинт /*+ rule */ прям волшебная пуля) Тогда был только один optimizer - Rule Optimizer. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 15:47 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Валерий Юринский Тяжелое наследие далекого прошлого, когда создавались E-Business Suite, Siebel и другие. Тогда был только один optimizer - Rule Optimizer. Это у Larry. А вот DEC (Digital Equipment Corporatrion) RDB и тогда имел CBO. До сих пор жалею что DEC пошел с торгов и исчез. Ну а Larry прикупив RDB получил CBO и адаптировал его к Oracle. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 15:56 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Валерий Юринский Тяжелое наследие далекого прошлого, когда создавались E-Business Suite, Siebel и другие. Тогда был только один optimizer - Rule Optimizer. Еще б CBO работал бы "как ожидается"... а то как не посмотришь на код какой нибудь встроенной тулзы от оракла.... половина запрсов начинается с волшебного select /*+ rule */ ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 15:59 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
SY Валерий Юринский Тяжелое наследие далекого прошлого, когда создавались E-Business Suite, Siebel и другие. Тогда был только один optimizer - Rule Optimizer. Это у Larry. А вот DEC (Digital Equipment Corporatrion) RDB и тогда имел CBO. До сих пор жалею что DEC пошел с торгов и исчез. Ну а Larry прикупив RDB получил CBO и адаптировал его к Oracle. SY. Но по своему или чужому недомыслию не перенес из Rdb домены. :-( А DEC очень жалко. Это правда. Слабо надеюсь, что возрождаемый OpenVMS даст новый технологический толчок рынку ИТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 17:22 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
Надфиль Валерий Юринский Тяжелое наследие далекого прошлого, когда создавались E-Business Suite, Siebel и другие. Тогда был только один optimizer - Rule Optimizer. Еще б CBO работал бы "как ожидается"... а то как не посмотришь на код какой нибудь встроенной тулзы от оракла.... половина запрсов начинается с волшебного select /*+ rule */ на простых джойнах/группировках cbo зашибись какая сладкая штуковина, мудрейшая, мудрее сложно придумать, при наличии правильных статистик, разбирающаяся с тем, какой вот сейчас вариант соединения умнейший. Но проблема степенного взрыва при переборе вариантов делает его беспомощно бессмысленным - он по выставленным ограничениям на перебор может просто не добираться до разумных вариантов в сложных случаях. rule - естественная таблетка для работы в такой истории, фиксирующая время компиляции запроса. можно сколько угодно твердить о том, что мы его не развиваем и не поддерживаем, но тут либо слабые правила rule и быстрое время компиляции, либо cbo с выкрученными руками-ногами путем простановки хинтов. Что само по себе смехотворно - стоило выдумывать умный цбо, чтобы подкручивать ему мозги хинтами. А в условиях роста данных - это просто неприемлемо как "профессиональный заход". Поэтому колесо истории, несомненно провернется, и, либо rule просто оживет, либо на костях и веточках rule, навесят в итоге тряпочки cbo. Имхо. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 17:54 |
|
помогите понять проблему
|
|||
---|---|---|---|
#18+
donkarleone-91 andrey_anonymous, ДБА. мне сказали. что не будут Тогда проблема сложно разрешима - CBO просто не добирается до удачного плана среди того количества перестановок таблиц, помноженного на количество комбинаций методов доступа и соединения, которое ему надо просмотреть и оценить за ограниченное время. Между тем у DBA есть автоматические инструменты для решения этой задачи (при наличии соответствующих лицензий). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2022, 22:03 |
|
|
start [/forum/topic.php?all=1&fid=52&tid=1879566]: |
0ms |
get settings: |
15ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
41ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
568ms |
get tp. blocked users: |
1ms |
others: | 274ms |
total: | 913ms |
0 / 0 |