|
Есть ли 1С запрос-профайлер? | ☑ | ||
---|---|---|---|---|
0
Гадкий 1С-ник
21.01.14
✎
09:28
|
Всем привет.
В 1С есть замер производительности, но по отношению к запросам - бесполезно. Как можно 1С запрос (синтаксис) провести через профайлер и увидеть ЧТО ИМЕННО тормозит в запросе ? Какая строка и т.д |
|||
1
Apokalipsec
21.01.14
✎
09:33
|
замер производительности для слабаков?
|
|||
2
Prog2014
21.01.14
✎
09:35
|
(0)отловить можно отбором через поле фиксированной строкой
что именно тормозит в запросе профайлер не покажет |
|||
3
МойКодУныл
21.01.14
✎
09:41
|
(0)
А что мешает запустить его на сервере sql для тестовой базы, зайти туда одному и запустить интересующий запрос в 1С. И посмотреть, что исполнилось и за сколько. Очень часто сам запрос не оптимально транслируется в SQL. Я с админами так делал(со SQL дружу плохо), когда с блокировками разбирался. А вообще лучше сначала почитать рекомендации от 1С по составлению запросов, там почти все методы. |
|||
4
vcv
21.01.14
✎
09:42
|
Для исследования выполнения запросов обычно есть штатные механизмы SQL-сервера.
Для MSSQL это встроенные средства Management Studio, Profiler, Best Practices Analyzer, и куча-куча всего, что можно получить из SQL, прочитав умные книжки. Если база файловая, боюсь уже ничего не поможет. |
|||
5
Гадкий 1С-ник
21.01.14
✎
09:44
|
(4) само сбой клиент сервер =)
Щас SQL студия показывает "тяжелые" запросы, но там вообще нечего не понять: INSERT INTO #tt59 WITH(TABLOCK) (_Q_000_F_000, _Q_000_F_001, _Q_000_F_002) SELECT T1.Q_001_F_000_, (CAST(SUM(T1.Q_001_F_001_) AS NUMERIC(23, 8)) - CAST(SUM(T1.Q_001_F_003_) AS NUMERIC(25, 8))), CAST(SUM(T1.Q_001_F_002_) AS NUMERIC(23, 8)) FROM (SELECT T2.LineNo_ AS Q_001_F_000_, CAST(SUM(CASE WHEN (T6._Fld362RRef IN (0xAA92699C971138934298508513630356, 0xA3AC4ACFF737760A4D2E851CF5E5158B)) THEN T5._Fld5593 ELSE 0.0 END) AS NUMERIC(17, 8)) AS Q_001_F_001_, CAST(SUM(CASE WHEN (T6._Fld362RRef IN (0x81669BC89C87DE99422F62D0EE0BF916, 0x9BFC1BAFCA22A0F24670D6118D626226)) THEN T5._Fld5593 ELSE 0.0 END) AS NUMERIC(17, 8)) AS Q_001_F_002_, CAST(0.0 AS NUMERIC(13, 2)) AS Q_001_F_003_ Этому меня не учили) а что лучше в SQL студио использовать именно что бы показало время по строкам? По переходам и т.д |
|||
6
Apokalipsec
21.01.14
✎
09:46
|
распихай по ВТ свои подзапросы, замер производительности, смотри какой запрос самый тупой и анализируй.
Неплохо, 59ая временная таблица с парочкой сумм выборов... |
|||
7
vlandev
21.01.14
✎
09:47
|
В 1С 8.2 можно включить технологический журнал , но точно не помню насчет выводятся-ли туда запросы или нет.
|
|||
8
Широкий
21.01.14
✎
09:48
|
(7) Запросы выводятся, если настроишь.
Профайлер от скуля все же лучше |
|||
9
vcv
21.01.14
✎
09:49
|
(5) Выдёргивай нужный запрос, что бы выполнить его из Management Studio. При выполнении из меню Query включай показ планов выполнения и статистики. Ну и почитать какую-нибудь приличную книжку по SQL.
|
|||
10
vcv
21.01.14
✎
09:52
|
(5) Для экспресс обследования можно воспользоваться штатными отчетами (правой кнопкой мыша на базе и Reports). В интернете можно нарыть sql-скрипты, которые показывают фрагментацию индексов, статистику по состояниям ожидания и многое другое.
|
|||
11
vcv
21.01.14
✎
09:53
|
(5) Так же очень рекомендую почитать http://www.gilev.info/
|
|||
12
Asmody
21.01.14
✎
09:53
|
реклама от нашего партнера:
Акция от SoftPoint! Испытайте мониторинг производительности PerfExpert бесплатно. |
|||
13
МойКодУныл
21.01.14
✎
09:54
|
(10) Но в 90% случаев этого не нужно. Достаточно просто прочитать статью на ИТС и следовать рекомендациям.
Типизировать составные поля в запросе, отказаться от вложенных, индексровать поля соединения и т.д. |
|||
14
vcv
21.01.14
✎
09:57
|
(13) Понятно, что оптимизацией кода можно достичь кардинального ускорения. Но пренебрегать возможностью оптимизировать SQL на десяток-другой процентов не стоит.
|
|||
15
vcv
21.01.14
✎
09:58
|
(13) Откуда мы тут знаем, в какую группу попадает (0) ? То ли в 90%, то ли в 10%...
|
|||
16
МойКодУныл
21.01.14
✎
09:59
|
(14) я ж совсем не против:) просто к ней обычно прибегают, когда уже весь код 1С оптимизирован. Может, автор еще его не проверял, а уже за тонкую настройку берется.
|
|||
17
Гадкий 1С-ник
21.01.14
✎
10:00
|
Спасибо за помощь
|
|||
18
Apokalipsec
21.01.14
✎
10:01
|
Судя по куску запроса из профайлера - автор попадает в 90%.
|
|||
19
vcv
21.01.14
✎
10:06
|
(18) 99% авторов попадают в 90% :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |