Какой нужен сервер?

C
На сайте с 13.01.2004
Offline
177
639

Думаю одну идею реализовать.

В идеи будет поиск в базе, где примерно 500.000 записей.

Какая примерно нужна машина, чтобы один запрос к базе не превышал 1-2 секунд?

Например для MySQL.

Таблица без индексов.

Поиск по одному полю INT.

[Удален]
#1

Если руки не кривые то виртуального хостинга хватит. 1-2 секунды выборка по одному целочисленному полю из одной таблицы? Даже на каком нибудь pentium 166 будет быстрее.

C
На сайте с 13.01.2004
Offline
177
#2
neolord:
Если руки не кривые то виртуального хостинга хватит. 1-2 секунды выборка по одному целочисленному полю из одной таблицы? Даже на каком нибудь pentium 166 будет быстрее.

Вы забыли, что я указал размер таблицы без индексов.

И базу MySQL.

Для 10к записей виртуального хостинга конечно хватит - у меня на hc.ru 0.5-0.3 сек. такой запрос, а вот для 500к не знаю. :)

[Удален]
#3

creation а что индексы проставить трудно? намного ускорит выборку. Если база спроектирована с умом, то боятся не чего, но у вас видать далеко не так.

[Удален]
#4
creation:
Вы забыли, что я указал размер таблицы без индексов.
И базу MySQL.

Для 10к записей виртуального хостинга конечно хватит - у меня на hc.ru 0.5-0.3 сек. такой запрос, а вот для 500к не знаю. :)

Это значит руки кривые. У меня на довольно слабом впс (500 Mhz, 512 Ram) запрос к таблице из полутора миллионов строк (MySQL, без индексов, представьте себе) такой селект делается 0.02 секунды. Вопрос в том сколько данных вы передаете между сервером баз данных и веб-сервером, это занимает большую часть времени. Если вы говорите все еще про одну таблицу.

[Удален]
#5

Да еще сказать нужно, что если некие поля не нужны, то и тягать их не стоит, оптимизируйте запросы, не указывайте * а прописывайте те поля которые нужны + проставьте индексы. Тем более что поле int почему бы в индекс не загнать.

V
На сайте с 01.02.2008
Offline
106
#6

Не понятно, а что мешает сделать индекс?

SEOInst.ru - Каталог инструментов seo-оптимизатора (http://seoinst.ru) - online-сервисы, специализированный софт, биржи ссылок и статей, ссылки на полезные ресурсы и другое. Все необходимое оптимизатору в одном месте!
C
На сайте с 13.01.2004
Offline
177
#7

creation добавил 09.06.2009 в 14:21

neolord:
Это значит руки кривые. У меня на довольно слабом впс (500 Mhz, 512 Ram) запрос к таблице из полутора миллионов строк (MySQL, без индексов, представьте себе) такой селект делается 0.02 секунды. Вопрос в том сколько данных вы передаете между сервером баз данных и веб-сервером, это занимает большую часть времени. Если вы говорите все еще про одну таблицу.

У кого кривые?

У создателей MySQL или у хостинга?

Я спрашиваю время SQL запроса для таблицы без индекса для разных машин и числа записей от 500к.

Как это коррелирует с моими руками не понимаю.

Или эго никак больше не получается увеличить? :)

creation добавил 09.06.2009 в 14:32

vikuz:
Не понятно, а что мешает сделать индекс?

Ничто не мешает, но скорость это не сильно увеличит, так как корреляция записей очень низкая, поэтому дерево создать не получиться.

V
На сайте с 01.02.2008
Offline
106
#8
creation:
Ничто не мешает, но скорость это не сильно увеличит

Ясно, кроме метода перебора значит ничего не подойдет. Может Вам этот вопрос задать представителям хостинг компаний, они постоянно с этим возятся, может кто-то даст толковую оценку.

C
На сайте с 13.01.2004
Offline
177
#9
vikuz:
Ясно, кроме метода перебора значит ничего не подойдет. Может Вам этот вопрос задать представителям хостинг компаний, они постоянно с этим возятся, может кто-то даст толковую оценку.

Скорее всего у них и спрошу.

А то тут вместо ответов толковых криворуким обзывают. :)

[Удален]
#10

Потому что видимо так и есть.

Какой у вас запрос?

Select field1,field2 from table where int_field=value ?

Никакой хостер вам тут не поможет. Я еще раз вам говорю что такой запрос, не считая времени передачи данных, работает доли секунды. Т.е. время по большому счету зависит от только количества результатов в выборке, а не в самой таблице. Если вы почитаете секцию 5 руководства MySQL, то узнаете, что СУБД прекрасно справляется с выборкой по численному полю и без всяких деревьев, но от индекса скорость может выиграть вполне значительно (смотря какой процент повторений среди значений этого поля)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий