Программное выполнение запросов

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Программное выполнение запросов

Сообщение SLIM » 14.05.2009 (Чт) 22:21

SQL Server
Нет возможности испытать, но скажите мне если не трудно, если сделать консоль выполнения запросов самому, используя непосредственно для выполнения ADO например, будет ли отличаться скорость выполнения и как ее повысить до максимального уровня, сравнимо например с Query Analizer-ом
Пишите жизнь на чистовик.....переписать не удастся.....

HandKot
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 283
Зарегистрирован: 28.06.2006 (Ср) 13:34
Откуда: Sergiev Posad

Re: Программное выполнение запросов

Сообщение HandKot » 15.05.2009 (Пт) 7:17

скорость выполнения запросов не должно зависеть от клиентской утилиты, т.к они авыполняются на сервере

возможно, что если и будет отставание, то только в момент передачи результата запроса клиенту и его отображения
I Have Nine Lives You Have One Only
THINK!

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 15.05.2009 (Пт) 21:45

Я понимаю что скорость выполнения не изменится.
Узкое место - передача (запрос) к серверу. Вот меня и интересует, какие камни могут возникнуть
А отвечать так никто и не торопится...жаль конечно
Пишите жизнь на чистовик.....переписать не удастся.....

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Программное выполнение запросов

Сообщение iGrok » 15.05.2009 (Пт) 22:22

SLIM писал(а):А отвечать так никто и не торопится...жаль конечно

Просто не очень понятно, в чём вопрос.
label:
cli
jmp label

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 15.05.2009 (Пт) 22:59

iGrok писал(а):Просто не очень понятно, в чём вопрос.

Ладно, опишу задачу...
в стандартный пакет MS SQL 2000 входит утилита выполнения запросов Query Analyzer. Требуется выполнять запросы в самописной утилите не медленее чем QA.

Что-то мне подсказывает, что сама СУБД не юзает ADO, а я ее собираюсь использовать. Поэтому и интересуюсь, что юзает MS SQL и намного ли медленнее ADO например.

Да и вообще, как клиент обращается к серверу
Пишите жизнь на чистовик.....переписать не удастся.....

arvitaly
Постоялец
Постоялец
 
Сообщения: 485
Зарегистрирован: 12.04.2009 (Вс) 0:30
Откуда: Казань

Re: Программное выполнение запросов

Сообщение arvitaly » 15.05.2009 (Пт) 23:07

Скорее всего QA использует API ODBC функции http://msdn.microsoft.com/en-us/library/ms714562(VS.85).aspx

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Программное выполнение запросов

Сообщение iGrok » 15.05.2009 (Пт) 23:09

SLIM писал(а):Требуется выполнять запросы в самописной утилите не медленее чем QA.

Гм. А сейчас они выполняются медленнее?

ИМХО, тебе заняться нечем. Или ты просто не там решил искать узкое место...

Я юзал ADO и OLEDB. Каких-либо значимых тормозов не наблюдал.

Нет, если у тебя запросы по 4-5 тысяч символов, и ответ на 500 мегабайт, тогда да. Но в этом случае тебя уже ничто не спасёт, как ни работай с БД, а узким местом банально окажется скорость передачи данных по сети.

arvitaly писал(а):Скорее всего QA использует API ODBC функции http://msdn.microsoft.com/en-us/library/ms714562(VS.85).aspx

Я, конечно, точно не знаю, но что-то у меня возникают сомнения, что QA из пакета SQL Server 2000 будет юзать такой уровень абстракции, а не общаться напрямую с сервером. Хотя я могу и заблуждаться..
label:
cli
jmp label

karlex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 138
Зарегистрирован: 30.03.2009 (Пн) 20:25
Откуда: Пермский край, г.Кунгур

Re: Программное выполнение запросов

Сообщение karlex » 15.05.2009 (Пт) 23:44

Есть такой протокол: Tabular Data Stream, если один ресурс не врет, то именно он является тем самым протоколом по которому идет общение с MS SQL Server.

Т.е. используя его, я так понимаю, можно обойтись без ADO и пр. технологий, только вот кто будет этим маяться.
Все гениальное — просто!
-------------------------------------
Кто ищет — тот всегда найдет!
-------------------------------------
Лень — двигатель прогресса.
Прогресс — двигатель лени.

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 16.05.2009 (Сб) 6:56

iGrok писал(а):Гм. А сейчас они выполняются медленнее?

ИМХО, тебе заняться нечем. Или ты просто не там решил искать узкое место...

Я юзал ADO и OLEDB. Каких-либо значимых тормозов не наблюдал.

Нет, если у тебя запросы по 4-5 тысяч символов, и ответ на 500 мегабайт, тогда да. Но в этом случае тебя уже ничто не спасёт, как ни работай с БД, а узким местом банально окажется скорость передачи данных по сети.

arvitaly писал(а):Скорее всего QA использует API ODBC функции http://msdn.microsoft.com/en-us/library/ms714562(VS.85).aspx


Я, конечно, точно не знаю, но что-то у меня возникают сомнения, что QA из пакета SQL Server 2000 будет юзать такой уровень абстракции, а не общаться напрямую с сервером. Хотя я могу и заблуждаться..


Сейчас у меня нет возможности испытат свою утилиту. В двух словах - БД очень большая, запросы конечно не по 5 тыс символов, а вот возврат вполне может быть метров по 150. Поэтому и боюсь что обращение через общедоступные средства будут с тормозами. Но все равно, нормальный запрос к той самой БД выполняется порядка 15 минут, иногда меньше. Однажды я вообще выполнял запрос 6 часов, но это отдельная история.
Так вот и хочется хотя бы такое же время.
Пишите жизнь на чистовик.....переписать не удастся.....

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Программное выполнение запросов

Сообщение alibek » 16.05.2009 (Сб) 8:20

SLIM писал(а):Что-то мне подсказывает, что сама СУБД не юзает ADO, а я ее собираюсь использовать. Поэтому и интересуюсь, что юзает MS SQL и намного ли медленнее ADO например.

Да какая разница, что используют для доступа клиентские приложения.
Неужели ты думаешь, что запросы выполняются на них или на прослойках?
Lasciate ogni speranza, voi ch'entrate.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Программное выполнение запросов

Сообщение alibek » 16.05.2009 (Сб) 8:22

SLIM писал(а):а вот возврат вполне может быть метров по 150. Поэтому и боюсь что обращение через общедоступные средства будут с тормозами.

Значит используй серверные рекордсеты, фетчи данные по необходимости и оптимизируй сами запросы.
При чем тут метод доступа к СУБД?
Lasciate ogni speranza, voi ch'entrate.

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 17.05.2009 (Вс) 11:36

alibek писал(а):Да какая разница, что используют для доступа клиентские приложения.
Неужели ты думаешь, что запросы выполняются на них или на прослойках?

Нет, я так не считаю.
alibek писал(а):Значит используй серверные рекордсеты, фетчи данные по необходимости и оптимизируй сами запросы.
При чем тут метод доступа к СУБД?

Ну вот как бы я и спрашиваю, прим они (методы) тут или не причем, а если и причем, то что делать

Но если разницы нет, то могу сказать только спасибо тебе alibek!
Пишите жизнь на чистовик.....переписать не удастся.....

arvitaly
Постоялец
Постоялец
 
Сообщения: 485
Зарегистрирован: 12.04.2009 (Вс) 0:30
Откуда: Казань

Re: Программное выполнение запросов

Сообщение arvitaly » 17.05.2009 (Вс) 19:11

Ну вот как бы я и спрашиваю, прим они (методы) тут или не причем, а если и причем, то что делать


На клиентских приложениях тормоза не из-за методов доступа к СУБД, а в отображении передаваемой информации, а также, например, маленькой скорости сети.

И еще ты ведь наверное и сам можешь сравнить и увидеть где теряется скорость. В QA скорее всего пишется время выполнения запроса

HandKot
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 283
Зарегистрирован: 28.06.2006 (Ср) 13:34
Откуда: Sergiev Posad

Re: Программное выполнение запросов

Сообщение HandKot » 18.05.2009 (Пн) 7:16

arvitaly писал(а): QA скорее всего пишется время выполнения запроса

в QA пишется полное время: и время выполнения и время перекачки результата клиенту

для выполнения запросов используются не только QA, но и osaql.exe, sqlcmd.exe, с некоторым приближением и bcp.exe
I Have Nine Lives You Have One Only
THINK!

arvitaly
Постоялец
Постоялец
 
Сообщения: 485
Зарегистрирован: 12.04.2009 (Вс) 0:30
Откуда: Казань

Re: Программное выполнение запросов

Сообщение arvitaly » 18.05.2009 (Пн) 12:26

osaql.exe

osql.exe??

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 18.05.2009 (Пн) 21:00

Мне данные отображать не нужно вовсе.
Все запросы будут через insert-ы
Пишите жизнь на чистовик.....переписать не удастся.....

arvitaly
Постоялец
Постоялец
 
Сообщения: 485
Зарегистрирован: 12.04.2009 (Вс) 0:30
Откуда: Казань

Re: Программное выполнение запросов

Сообщение arvitaly » 18.05.2009 (Пн) 21:38

150-метровый insert??? Ты же писал у тебя возвращают что-то запросы?

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 19.05.2009 (Вт) 19:42

arvitaly писал(а):150-метровый insert??? Ты же писал у тебя возвращают что-то запросы?

150 метров это не так уж часто, но бывает.
Но то что запросы возвращают что-то я не писал.
И все запросы insert-ся.
Пишите жизнь на чистовик.....переписать не удастся.....

arvitaly
Постоялец
Постоялец
 
Сообщения: 485
Зарегистрирован: 12.04.2009 (Вс) 0:30
Откуда: Казань

Re: Программное выполнение запросов

Сообщение arvitaly » 19.05.2009 (Вт) 20:51

Сейчас у меня нет возможности испытат свою утилиту. В двух словах - БД очень большая, запросы конечно не по 5 тыс символов, а вот возврат вполне может быть метров по 150.

Я что-то не так понимаю?

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Программное выполнение запросов

Сообщение SLIM » 19.05.2009 (Вт) 23:17

Возврат - я имею ввиду суммарный вес данных по итогам запроса. Просто неудачно выразился
Пишите жизнь на чистовик.....переписать не удастся.....


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 31

    TopList