Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Каким образом указать в секции from индекс для таблицы, который должен быть использован для отбора данных. Заранее спасибо за помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 12:29 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Если это ASE Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 12:37 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
А для ASA читать главу Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 18:07 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Прочитал предложенную главу в ASA SQL Reference для ASA 8.0.3 и не понял, каким образом я могу подсказать оптимизатору использовать определенный индекс. Или это поддерживается только в 9-ке? И можно ли как-то подсказать оптимизатору порядок проверки условий при выборке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:11 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
A.K. wrote: > Прочитал предложенную главу в ASA SQL Reference для ASA 8.0.3 > и не понял, каким образом я могу подсказать оптимизатору использовать > определенный индекс. Никак - ASA 9.0.1+. > И можно ли как-то подсказать оптимизатору порядок проверки условий при > выборке? Не считай себя умнее оптимизатора ;). Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:15 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Хотя актуальность вопроса в целом снята (оказалось, что просто статистика давно не обновлялась), хотелось бы все же узнать, поддерживается ли что-то типа optimization hints в ASA 8.0.3 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:19 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Dim2000 Никак - ASA 9.0.1+. > И можно ли как-то подсказать оптимизатору порядок проверки условий при > выборке? Не считай себя умнее оптимизатора ;). Posted via ActualForum NNTP Server 1.3 Спасибо за ответ, к сожалению я так и думал ( Однако в ряде случаев человек все же оказывается умнее оптимизатора, поскольку может точно знать что за данные лежат в таблицах, в то время как оптимизатор оперирует более обобщенной статистикой. Как-то раз я заикнулся по поводу бесполезности хинтов в ветке по Oracle, и меня дружно убедили на конкретных примерах что я не совсем прав. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:23 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
И еще один вопрос: Из доки следует, что ASA должна автоматически иногда перестраивать статистику, и предлагает использовать CREATE STATISTICS только в rare circumstances. Однако посмотрев syscolstat, я обнаружил там весьма старые данные. Чем руководствуется ASA определяя необходимость обновления статистики? Есть ли какие-то параметры, которыми можно заставить ее обновлять статистику почаще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:26 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
A.K. wrote: > поддерживается ли что-то типа optimization hints в ASA 8.0.3 ? Есть Explicit selectivity estimates, типа: select * from t1 where (t1.f = 10, 0.1) Здесь мы сообщаем серверу, что вероятность того, что t1.f = 10, равна 0.1%. См. также USER_ESTIMATES option. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:40 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Dim2000 select * from t1 where (t1.f = 10, 0.1) Здесь мы сообщаем серверу, что вероятность того, что t1.f = 10, равна 0.1%. Оно не о вероятностях сообщает, а о том, что такому условию соответствуют 0.1% записей в таблице. Хотя суть похожая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 15:09 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Александр ГoлдунОно не о вероятностях сообщает, а о том, что такому условию соответствуют 0.1% записей в таблице. Хотя суть похожая. Ну, в общем, терминологически "вероятность" конечно не совсем верно, правильнее наверное "селективность", хотя имхо все поняли о чем речь. Остается неотвеченным вопрос про статистику: A.K. Из доки следует, что ASA должна автоматически иногда перестраивать статистику, и предлагает использовать CREATE STATISTICS только в rare circumstances. Однако посмотрев syscolstat, я обнаружил там весьма старые данные. Чем руководствуется ASA определяя необходимость обновления статистики? Есть ли какие-то параметры, которыми можно заставить ее обновлять статистику почаще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 16:13 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
Статистика не будет обновлятся или будет неактуальной, если есть хоть один из пунктов: 1. Выключена опция UPDATE_STATISTICS 2. Выключена опция USER_ESTIMATES 3. Создаются в существующей таблице с записями новые поля 4. Загружаются данные через LOAD TABLE без указания пересчета статистики. Сама же статистика обновляется сервером автоматически после каждого выполнения запроса, где оптимизатор во время построения данных собирает статистику и потом сравнивает ее с существующей, коррелируя значения на более правильные. Однако для того, чтобы это автообновление хорошо работало требуется, чтобы к таблице шло большое кол-во запросов по различным разрезам, так как к примеру постоянное обращение к таблице только по WHERE PK = Значение вряд ли чем то позволит оптимизатору скорректировать статистику по одной найденной записи :) Здесь в таком случае наверное стоит принудительно периодически обновлять статистику. -- www.rusug.ru - портал русскоязычной группы пользователей Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 17:41 |
|
||
|
Указание индекса в селекте
|
|||
|---|---|---|---|
|
#18+
ASCRUSСама же статистика обновляется сервером автоматически после каждого выполнения запроса, где оптимизатор во время построения данных собирает статистику и потом сравнивает ее с существующей, коррелируя значения на более правильные. Однако для того, чтобы это автообновление хорошо работало требуется, чтобы к таблице шло большое кол-во запросов по различным разрезам, так как к примеру постоянное обращение к таблице только по WHERE PK = Значение вряд ли чем то позволит оптимизатору скорректировать статистику по одной найденной записи :) Здесь в таком случае наверное стоит принудительно периодически обновлять статистику. То есть, упрощенно говоря, оптимизатор сравнивает то что он ожидал получить и исходя из чего строил план, с тем что в результате получилось. И если оценка и факт сильно расходятся, запускает пересчет статистики? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 21:14 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=34031734&tid=2012530]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
136ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 229ms |
| total: | 455ms |

| 0 / 0 |
