Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / В каких СУБД есть хинты / 20 сообщений из 20, страница 1 из 1
30.10.2010, 11:31
    #36929053
В каких СУБД есть хинты
Добрый день, есть опыт работы с oracle. В данной СУБД есть так называемые хинты, кто не знает или если в др СУБД это на зазываться по другому то просто говоря это подсказки в запросе указывающие оптимизатору СУБД как выполнять запрос, например хотим использовать индекс добавляет /*+index(имя индекса таблица)*/ или например хотим чтобы использовался полный просмотр таблицы то /*+full(имя таблицы)*/ и СУБД будет делать именно так при выполнении запроса. Так вот суть вопроса в следующем в каких еще СУБД есть подобные функции.
Сразу говорю что в теме не хотелось бы рассматривать вопрос о том что хинты - это зло и СУБД в большинстве случаев сама знает что делать, а если делает не правильно то надо понять почему а не использовать подсказки. Интересует именно возможность использования подобного функционала в др СУБД. Также интересное если такая функция существует то есть ли возможность указать кардинальность (в oracle подсказка cardinality).

Заранее спасибо всем откликнувшимся.
...
Рейтинг: 0 / 0
30.10.2010, 14:11
    #36929151
Абсолют
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
В DB2 тоже есть.
...
Рейтинг: 0 / 0
30.10.2010, 17:34
    #36929266
mv
mv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
гость форума, FireBird, офкоз.
...
Рейтинг: 0 / 0
30.10.2010, 17:36
    #36929268
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
mvFireBird, офкоз.

....не относится к числу СУБД, в которых доступны хинты.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
30.10.2010, 18:55
    #36929310
Alexey Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
АбсолютВ DB2 тоже есть.
По сравнению с ораклом можно сказать что их нету
...
Рейтинг: 0 / 0
30.10.2010, 19:56
    #36929347
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
гость форумаИнтересует именно возможность использования подобного функционала в др СУБД.В MSSQL есть хинты, вплоть до сохранения конкретного плана.
...
Рейтинг: 0 / 0
30.10.2010, 20:29
    #36929388
В каких СУБД есть хинты
В Informix есть
...
Рейтинг: 0 / 0
31.10.2010, 18:04
    #36929962
Ggg_old
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
Да практически везде есть. Раньше не было в db2, по причине как-бы не надобности оных и хорошего оптимизатора, но выше в топике подтверждают, что они уже есть.
Насчет pgsql и mysql сказать не могу, не работал с ними.
...
Рейтинг: 0 / 0
31.10.2010, 18:23
    #36929970
Ggg_old
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
насчет кардинальноти, есть такой хинт в sybase sa:
Код: plaintext
1.
2.
3.
4.
The following query provides an estimate that one percent of the ShipDate values are later than  2001 / 06 / 30 :	SELECT  ShipDate
   FROM  SalesOrderItems
WHERE ( ShipDate > '2001/06/30',  1  )
ORDER BY ShipDate DESC;
...
Рейтинг: 0 / 0
31.10.2010, 19:28
    #36930031
iscrafm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
Ggg_oldнасчет кардинальноти, есть такой хинт в sybase sa:
Код: plaintext
1.
2.
3.
4.
The following query provides an estimate that one percent of the ShipDate values are later than  2001 / 06 / 30 :	SELECT  ShipDate
   FROM  SalesOrderItems
WHERE ( ShipDate > '2001/06/30',  1  )
ORDER BY ShipDate DESC;

не очень похожа на хинт, по своей сути
...
Рейтинг: 0 / 0
31.10.2010, 19:28
    #36930033
Rfr ns vju&
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
Dimitry Sibiryakov
mvFireBird, офкоз.

....не относится к числу СУБД, в которых доступны хинты.

Как ты мог?
...
Рейтинг: 0 / 0
31.10.2010, 20:01
    #36930067
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
Rfr ns vju&Как ты мог?

Легко и просто. А в чём проблема? В Firebird действительно нет хинтов. Различные ухищрения
и прямое указание плана запроса хинтами считаться не могут.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
31.10.2010, 20:08
    #36930080
iscrafm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
Dimitry Sibiryakov
прямое указание плана запроса хинтами считаться не могут.

именно они ими и считаются. Есть каие-то другие сведения?
...
Рейтинг: 0 / 0
31.10.2010, 20:16
    #36930088
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
iscrafmименно они ими и считаются. Есть каие-то другие сведения?

Угу. В Оракуле хинты можно указать только для отдельных таблиц, используемых в запросе, и
остаток оптимизатор достроит. В Firebird если план указан, он должен быть полным. Т.е. это
уже не "подсказка", а "прямое указание".
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
31.10.2010, 21:06
    #36930120
iv_an_ru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
гость форума,

OpenLink Virtuloso, есть table option для отдельного алиаса, есть option для запроса в целом. Можно указывать оценки кардинальности в декларациях procedure views, но не в запросах. С другой стороны, оптимизатор при компиляции запроса может сам залезть в таблицу для получаения точной статистики для указанных в запросе константных ограничений на поля.

Вообще по нашему опыту указание кардинальностей в запросе запросто вредит. Часто запрос с "угадываемыми" кардинальностями выполняется хорошо, и запрос со всеми реальными кардинальностями тоже выполняется хорошо, а коктейль из половины угадываемых кардинальностей и половины реальных сносит оптимизатору крышу. Пиво + водка = ёрш.

Вообще у нас очень забавный оптимизатор. В отличие от большинства СУБД, которые получают запросы только от "доверенных" клиентов, Virtuoso часто выставляют голой задницей в Интернет. Например вы можете отправить любой SPARQL-запрос на SPARQL web service endpoint правительства США , и он должен или что-то раскопать в правительственных данных и вернуть, или предсказать таймаут, или хотя бы корректно дать отлуп в реальном времени. Понятное дело, юные и не очень хакеры долбятся туда как дятлы, редкий запрос _не_ является попыткой взлома. С учётом того, что исходники Virtuoso открыты, расслабляться нам эти дятлы не дают :) http://lod.openlinksw.com/sparql и http://dbpedia.org/sparql/ тоже атакуют, но не так настырно.
...
Рейтинг: 0 / 0
31.10.2010, 21:59
    #36930159
Ggg_old
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
iscrafm, это хинт на кардинальность, а не на индекс. Но вообще я его привел лишь потому, что автор топика спрашивал за него. Сам сайбейз большим жирным шрифтом не рекомендует использовать хинты кардинальности - плохая практика. В SA очень неплохо сделано автоматическое управление статистикой, так что в хинтах кардинальности нет нужды. Да и вообще сколько читаю этот форум - это кажется первый вопрос на хинты статистики. Так что зачем топикстартеру это надо я не понимаю.
...
Рейтинг: 0 / 0
01.11.2010, 11:32
    #36930677
ЮВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
В СУБД ЛИНТЕР.
...
Рейтинг: 0 / 0
01.11.2010, 12:16
    #36930812
Ivan Durak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
Dimitry Sibiryakov
iscrafmименно они ими и считаются. Есть каие-то другие сведения?

Угу. В Оракуле хинты можно указать только для отдельных таблиц, используемых в запросе, и
остаток оптимизатор достроит. В Firebird если план указан, он должен быть полным. Т.е. это
уже не "подсказка", а "прямое указание".

Это даже лучше. А то я в основном и пытаюсь хинтами привести оракла к конкретному плану!
...
Рейтинг: 0 / 0
01.11.2010, 12:41
    #36930855
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В каких СУБД есть хинты
гость форума,

В СУБД Caché есть.
...
Рейтинг: 0 / 0
09.11.2010, 17:24
    #36945509
В каких СУБД есть хинты
всем откликнувшимся огромное спасибо )))
...
Рейтинг: 0 / 0
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / В каких СУБД есть хинты / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]