Выбор базы по скорости
От: Dima2  
Дата: 20.12.01 08:43
Оценка:
Помогите плиз определиться с выбором базы.
Условия следующие
— Имеется некоторая таблица, в которой < 50000 записей (100000)
— Необходимо обеспечить поиск записи из этой таблицы,
по одному из двух полей (по какому именно полю это
выбирается случайно)
— скорость поиска этой записи должна быть < 0.7c (<0.5c)
желательно обеспечить такую скорость в 95% случаев(100%)
Копм — Pentium1 (чем хуже тем лучше)
— запрос на поиск может приходить практически один за одним
— кроме этой таблицы должна быть еще одна таблица, в которую
будут записываться данные поиска (т.е. она может быть большая)
— с базой могут работать еще до 5 клиентов

Подойдет ли для такой задачи Access. Есть ли в Access поиск
по индексу, или выборку можно делать только через SQL.
Оптимизируется ли SQL запрос если есть индекс.
Re: Выбор базы по скорости
От: Lexey Россия  
Дата: 20.12.01 10:25
Оценка:
Здравствуйте Dima2, Вы писали:

D>Помогите плиз определиться с выбором базы.

D>Условия следующие
D> — Имеется некоторая таблица, в которой < 50000 записей (100000)
D> — Необходимо обеспечить поиск записи из этой таблицы,
D> по одному из двух полей (по какому именно полю это
D> выбирается случайно)
D> — скорость поиска этой записи должна быть < 0.7c (<0.5c)
D> желательно обеспечить такую скорость в 95% случаев(100%)
D> Копм — Pentium1 (чем хуже тем лучше)

Может тебе лучше посмотреть на какой-нибудь фрюних и что-нибудь типа MySQL и Postgress. Боюсь, что на такой машине даже акцесс тормозить будет нещадно.

D> — запрос на поиск может приходить практически один за одним

D> — кроме этой таблицы должна быть еще одна таблица, в которую
D> будут записываться данные поиска (т.е. она может быть большая)
D> — с базой могут работать еще до 5 клиентов

D>Подойдет ли для такой задачи Access. Есть ли в Access поиск


Хз. Пробовать надо. По размерам таблиц точно подойдет, а вот что будет со скоростью — хз.

D>по индексу, или выборку можно делать только через SQL.


Что значит поиск по индексу в отрыве от SQL-запроса?

D>Оптимизируется ли SQL запрос если есть индекс.


Естественно. Иначе зачем он нужен (индекс)?
Re[2]: Выбор базы по скорости
От: Dima2  
Дата: 20.12.01 14:42
Оценка:
Здравствуйте Lexey, Вы писали:

L>Здравствуйте Dima2, Вы писали:


D>>Помогите плиз определиться с выбором базы.

D>>Условия следующие
D>> — Имеется некоторая таблица, в которой < 50000 записей (100000)
D>> — Необходимо обеспечить поиск записи из этой таблицы,
D>> по одному из двух полей (по какому именно полю это
D>> выбирается случайно)
D>> — скорость поиска этой записи должна быть < 0.7c (<0.5c)
D>> желательно обеспечить такую скорость в 95% случаев(100%)
D>> Копм — Pentium1 (чем хуже тем лучше)

L>Может тебе лучше посмотреть на какой-нибудь фрюних и что-нибудь типа MySQL и Postgress.

Кто такой фрюних, это unix что-ли, и что MySQL работает только на нем?

L>Боюсь, что на такой машине даже акцесс тормозить будет нещадно.

Почему даже. Что аксес считается свамой быстрой базой.

D>> — запрос на поиск может приходить практически один за одним

D>> — кроме этой таблицы должна быть еще одна таблица, в которую
D>> будут записываться данные поиска (т.е. она может быть большая)
D>> — с базой могут работать еще до 5 клиентов

D>>Подойдет ли для такой задачи Access. Есть ли в Access поиск


L>Хз. Пробовать надо. По размерам таблиц точно подойдет, а вот что будет со скоростью — хз.


D>>по индексу, или выборку можно делать только через SQL.


L>Что значит поиск по индексу в отрыве от SQL-запроса?

Я работал с *.dbf, там можно было искать по индексному файлу.
Re[3]: Выбор базы по скорости
От: Lexey Россия  
Дата: 20.12.01 15:03
Оценка:
Здравствуйте Dima2, Вы писали:

D>Здравствуйте Lexey, Вы писали:


L>>Здравствуйте Dima2, Вы писали:


D>>>Помогите плиз определиться с выбором базы.

D>>>Условия следующие
D>>> — Имеется некоторая таблица, в которой < 50000 записей (100000)
D>>> — Необходимо обеспечить поиск записи из этой таблицы,
D>>> по одному из двух полей (по какому именно полю это
D>>> выбирается случайно)
D>>> — скорость поиска этой записи должна быть < 0.7c (<0.5c)
D>>> желательно обеспечить такую скорость в 95% случаев(100%)
D>>> Копм — Pentium1 (чем хуже тем лучше)

L>>Может тебе лучше посмотреть на какой-нибудь фрюних и что-нибудь типа MySQL и Postgress.

D>Кто такой фрюних, это unix что-ли, и что MySQL работает только на нем?

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

L>>Боюсь, что на такой машине даже акцесс тормозить будет нещадно.

D>Почему даже. Что аксес считается свамой быстрой базой.

Акцесс считается самой быстрой базой? Ты шутишь?

D>>> — запрос на поиск может приходить практически один за одним

D>>> — кроме этой таблицы должна быть еще одна таблица, в которую
D>>> будут записываться данные поиска (т.е. она может быть большая)
D>>> — с базой могут работать еще до 5 клиентов

D>>>Подойдет ли для такой задачи Access. Есть ли в Access поиск


L>>Хз. Пробовать надо. По размерам таблиц точно подойдет, а вот что будет со скоростью — хз.


D>>>по индексу, или выборку можно делать только через SQL.


L>>Что значит поиск по индексу в отрыве от SQL-запроса?

D>Я работал с *.dbf, там можно было искать по индексному файлу.

А... вот оно что. Нет, здесь так не сделаешь, да и не нужно.
Re[4]: Выбор базы по скорости
От: Dima2  
Дата: 20.12.01 15:21
Оценка:
Здравствуйте Lexey, Вы писали:

D>>Кто такой фрюних, это unix что-ли, и что MySQL работает только на нем?

L>Угу, фриварный уних. MySQL работает не только не нем. Просто почти голое ядро какого-нибудь линукса будет жрать меньше памяти, чем Винды.
Нет лучше на Win. Но вроде MySQL тоже весит не мало (под винды).
А как можно достучаться до MySQL, через ODBC или какой специальный API

D>>Почему даже. Что аксес считается свамой быстрой базой.

L>Акцесс считается самой быстрой базой? Ты шутишь?
Понятно.
Re[5]: Выбор базы по скорости
От: AlexOOO  
Дата: 21.12.01 03:40
Оценка:
Здравствуйте Dima2, Вы писали:

D>Здравствуйте Lexey, Вы писали:


D>>>Кто такой фрюних, это unix что-ли, и что MySQL работает только на нем?

L>>Угу, фриварный уних. MySQL работает не только не нем. Просто почти голое ядро какого-нибудь линукса будет жрать меньше памяти, чем Винды.
D>Нет лучше на Win. Но вроде MySQL тоже весит не мало (под винды).
D>А как можно достучаться до MySQL, через ODBC или какой специальный API

D>>>Почему даже. Что аксес считается свамой быстрой базой.

L>>Акцесс считается самой быстрой базой? Ты шутишь?
D>Понятно.

Не надо никаких извратов. Если база в акцессе, то и работай в нем.
Спокойно установи индексы на нужные поля, поиск по индексу. У меня в базе более 500000 записей — ищет одну запись и направляет в отчет при первом обращении к таблице примерно за 0.005 сек, при повторном обращении 0.0012 сек (для AMD — 166). У меня необходимо обрабатывать до 1000 записей одновременно с 5 машин. причем весь код на VBA. Недавно только перенес на С++.
Re[6]: Выбор базы по скорости
От: Dima2  
Дата: 21.12.01 08:03
Оценка:
Здравствуйте AlexOOO, Вы писали:

AOOO>Не надо никаких извратов. Если база в акцессе, то и работай в нем.

AOOO>Спокойно установи индексы на нужные поля, поиск по индексу. У меня в базе более 500000 записей — ищет одну запись и направляет в отчет при первом обращении к таблице примерно за 0.005 сек, при повторном обращении 0.0012 сек (для AMD — 166). У меня необходимо обрабатывать до 1000 записей одновременно с 5 машин. причем весь код на VBA. Недавно только перенес на С++.

Это хорошо. Хотя вариант с MySQL тоже может оказаться интересным хотелось бы
как то сравнить по скорости с Аксесом, может кто имеет такой опыт и скажет,
не морочь себе яйца с этим MySQL никакого выигрыша нет?
Re[6]: Выбор базы по скорости
От: Lexey Россия  
Дата: 21.12.01 08:11
Оценка:
Здравствуйте AlexOOO, Вы писали:

D>>>>Кто такой фрюних, это unix что-ли, и что MySQL работает только на нем?

L>>>Угу, фриварный уних. MySQL работает не только не нем. Просто почти голое ядро какого-нибудь линукса будет жрать меньше памяти, чем Винды.
D>>Нет лучше на Win. Но вроде MySQL тоже весит не мало (под винды).

Хозяин — барин. Вот на виндах гонять MySQL действительно смысла нет. Тогда уж лучше MSDE.

D>>А как можно достучаться до MySQL, через ODBC или какой специальный API


Да вроде есть к нему ODBCшный драйвер.

D>>>>Почему даже. Что аксес считается свамой быстрой базой.

L>>>Акцесс считается самой быстрой базой? Ты шутишь?
D>>Понятно.

AOOO>Не надо никаких извратов. Если база в акцессе, то и работай в нем.

AOOO>Спокойно установи индексы на нужные поля, поиск по индексу. У меня в базе более 500000 записей — ищет одну запись и направляет в отчет при первом обращении к таблице примерно за 0.005 сек, при повторном обращении 0.0012 сек (для AMD — 166). У меня необходимо обрабатывать до 1000 записей одновременно с 5 машин. причем весь код на VBA. Недавно

Все зависит от запросов. Серьезный 3-х табличный запрос с частотой примерно 40 раз/сек прогинает даже MS SQL Server на тестовом P3/800 с 256 мегами памяти.

>только перенес на С++.


Если запросы более-менее сложные, то на чем написан код не играет никакой роли — основным торомозом является база.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.