powered by simpleCommunicator - 2.0.47     © 2025 Programmizd 02
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Поиск идет слишком медленно!
4 сообщений из 4, страница 1 из 1
Поиск идет слишком медленно!
    #32074451
Moondev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет!

Есть таблица в которой порядко 100 000 записей (строк).

В таблице 35 колонок.

Сейчас пишу поисковик по этой базе.
Может быть я что-то делаю неправильно (может быть даже сам подход вкорне не верен) - я никогда не сталкивался с таким количеством данных.
Короче - делаю поиск методом фильтрации (WHERE).

разработку веду на ASP.

По cтроке запроса:objRec.Source = "SELECT ISBN, Title, Author, PublisherName, Binding, Availability, ShortDescription FROM DBA.BookDescription WHERE title LIKE 'GUIN'"

ПОИСК ВЫПОЛНЯЕТСЯ 67 СЕКУНД!!! И это без сортировки с помощью ORDER BY!

Что-то я делаю неправильно, только вот что?

Комп: WinXP Prof. 512 DDRRAM, 1,2 Гигагерца
IIS + Sybase (Adaptive Server Anywhere 6.0)

Заренее спасибо за совет.

Если есть ссылка на статьи с примерами - буду признателен.


ВОТ весь код:

Dim objRec
Dim objRec_numrows
Dim maxReconPage

maxReconPage = 30

Set objRec = Server.CreateObject("ADODB.Recordset")

objRec.ActiveConnection = connStr
objRec.Source = "SELECT ISBN, Title, Author, PublisherName, Binding, Availability, ShortDescription FROM DBA.BookDescription WHERE title LIKE 'G'"
objRec.CursorType = 0
objRec.CursorLocation = 2
objRec.LockType = 1
objRec.Open()

objRec_numrows = 0

objRec.movefirst

rCount=0
while not objRec.EOF and rCount<>maxReconPage
rCount = rCount + 1
Response.Write "<p>"
Response.Write "ISBN: " & objRec.Fields.Item("ISBN").Value & "<br>"
Response.Write objRec.Fields.Item("Title").Value & "<br>"
Response.Write objRec.Fields.Item("Author").Value & "<br>"
Response.Write objRec.Fields.Item("PublisherName").Value & "<br>"
Response.Write objRec.Fields.Item("Binding").Value & "<br>"
Response.Write objRec.Fields.Item("Availability").Value & "<br>"
Response.Write objRec.Fields.Item("ShortDescription").Value & "<br>"
Response.Write "</p>"
objRec.Movenext
wend

objRec.Close
set objRec = nothing
...
Рейтинг: 0 / 0
Поиск идет слишком медленно!
    #32075994
Israel Bender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я никогда не корябал на АСП,но что бросилось в глаза-лайк обычно пользуют с % или _,иначе,на фиг он нужен-есть обычное сравнение =.
Но это не причина замедления.Скорее всего сдох индекс,можно крутануть апдейт статистикс,да тильки для таке малесенькой таблички чище и экономичней построить его заново.Фром для начала можно переделать на FROM DBA.BookDescription (index title_index),шоб попользовал индекс даже если он сдох.Если все это не поможет,подывись на таблички sysprocess и syslocks,можа есть паралелльный процecc шо без устали долбит по диску или блокировка именно на твою таблицу,если и там чисто-проверь сеть:вмеcто списка полей поставь в селекте count(*)
...
Рейтинг: 0 / 0
Поиск идет слишком медленно!
    #32078903
Andrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте поменять
Код: plaintext
objRec.CursorLocation =  2 

на
Код: plaintext
objRec.CursorLocation =  3 
...
Рейтинг: 0 / 0
Поиск идет слишком медленно!
    #32085005
DenisK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1 do not use like in = statement
2 check a sql plan for that query
3 you can force the index (select * from table_name index (index_name) where...)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Поиск идет слишком медленно!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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