Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Скорорость работы с таблицой БД [D6, dBase, FoxPro]


Страницы:   1 2

tormoz ©   (2005-07-28 17:25:00) 

Здравствуйте. Есть одна таблица *.dbf на 1500000 записей. На диске занимает 590 МБайт. Запросы к этой таблице обрабатываются очень долго. Как можно ускорить выполнение запросов к таблице? В идеале хотелось бы получить возможность работы с таблицей в интерактивном режиме... Пока использую стандартный компонент Query.


Anatoly Podgoretsky   (2005-07-31 20:52:00) [1]

Надо менять только последнее, остальное прикладное.


Desdechado   (2005-07-31 20:50:00) [2]

если в одной таблице хранится ВСЕ и еще в виде, который неформализован (для чего тогда такие бешенные LIKE?), то нужно менять не платформу, а структуру БД
а еще лучше, подход к проектированию БД и программных систем


Виталий Панасенко   (2005-07-29 19:55:00) [3]

like даже при наличии индексов на локали(я о формате БД)  - тормоза конкретные.. если точное сравнение, то все нормально.. скорость, в смысле, приличная...


AlexWlad   (2005-07-29 18:55:00) [4]

Fay ©   (29.07.05 18:54) [24]

Ох, зря написал... Ща как попрет... ;)


Fay   (2005-07-29 18:54:00) [5]

2 AlexWlad ©   (29.07.05 18:44) [23]
>> MSDE или Firebird 1.5 Еmbedded - тут уж вопрос скорее религиозный
Для меня это вАщЕ не вопрос : MSSQL (в любой инкарнации) рулит! 8)


AlexWlad   (2005-07-29 18:44:00) [6]

tormoz   (29.07.05 11:53) [8] и [19]

Не могу поверить, что такой объем инфы настолько безразличен начальству, что нельзя выбить денег. Никто не говорил про "тяжелые" сервера. Вполне хватит (учитывая 1-польз.) MSDE или  Firebird 1.5 Еmbedded - тут уж вопрос скорее религиозный :).


alex_***   (2005-07-29 14:53:00) [7]

ресурсы не позволяют- системных ресурсов для работы с такими табличками уж точно хватит для работы SQL сервера или MSDE


Anatoly Podgoretsky   (2005-07-29 13:19:00) [8]

tormoz   (29.07.05 11:53) [8]
Программа должна работать на локальной машине. Ставить на нее отдельно SQL-сервер никак, ресурсы не позволяют.

Это у тебя ресурсы не позволяют использовать ФоксПро, а для локального SQL сервера должно хватить


Sergey13   (2005-07-29 12:41:00) [9]

2 [19] tormoz   (29.07.05 12:31)
А деньги то зачем просить? У тебя 386/486 что-ли? Если хотябы В98 работает, то и Firebird проканает.
Хотя машину обновить никогда не вредно. 8-)


tormoz   (2005-07-29 12:31:00) [10]

Ладно... Всем спасибо!!! Буду пытаться выбить денег на апгрейд машины и установки на нее SQl-сервера... По-детски проблему решить не удалось... :-(
Просто по вопросам безопасности, данный компьютер в сеть включать нельзя...


k2   (2005-07-29 12:23:00) [11]

2tormoz   (29.07.05 12:14)
а если в запросе есть условие
... <имя поля> like "%<строка условия>%"...
как искать в куче таблиц? Выполнять 20-50 запросов последовательно?

нет конешно, все к месту хорошо
допустим у тебя гарантированно в одном случае ищутся данные за текущий год,
в другом случае поднимаются из архива, можно тогда было бы разделить по годам
ну не получилось протелепать :)


ЮЮ   (2005-07-29 12:18:00) [12]

тогда остается ограничить пользователя запросами типа
 <имя поля> like "<строка условия> %"... + индексы по полям поиска.
А что там за информация, что приходится искать в середине поля?


tormoz   (2005-07-29 12:14:00) [13]


> k2 ©   (29.07.05 12:11) [15]

а если в запросе есть условие
... <имя поля> like "%<строка условия>%"...
как искать в куче таблиц? Выполнять 20-50 запросов последовательно?


k2   (2005-07-29 12:11:00) [14]

ненормальным выходом может если есть возможность по задаче сделать аналог партицированных таблиц? то есть по какому то условию разделить таблицу не по полям а по строкам?


Sergey13   (2005-07-29 12:10:00) [15]

2[12] tormoz   (29.07.05 12:06)
> или где почитать можно?
Тут и поищи - один из самых частых вопросов.
Если интересно мое мнение - Firebird 1.5 Еmbedded - лучший выбор.
Подробностей много на ibase.ru


-=snoop=-   (2005-07-29 12:07:00) [16]

просто из фокса есть возможность проще вытащить все возможности по оптимизации, индесы допустим


tormoz   (2005-07-29 12:06:00) [17]


> Sergey13 ©   (29.07.05 12:02) [10]

Уже что-то... а можно поподробнее, пожалуйста? или где почитать можно? для Win 2000


tormoz   (2005-07-29 12:03:00) [18]


> -=snoop=- ©   (29.07.05 11:59) [9]

что-то в этом есть... просто очень лениво переделывать все остальное... прога не маленькая, на фокс надоест переписывать...
да и на фоксе запросы выполняются немногим быстрее, я пробовал просто выполнить запрос к таблице... :-(


Sergey13   (2005-07-29 12:02:00) [19]

2 [8] tormoz   (29.07.05 11:53)
У тебя устаревшие сведения о SQL-серверах. Они ведь разные бывают. Например встроенные.


-=snoop=-   (2005-07-29 11:59:00) [20]

не логично это работать с *.dbf через драйвер систему, отчего на фоксе все не зделать?? скорость вырастит в разы


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо