Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Подскажите правильно ли я мыслю / 25 сообщений из 37, страница 1 из 2
20.03.2009, 01:36
    #35880632
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
Всем привет.

Задача такая:
есть 10 миллионов записей, у каждой есть id и текст длиной 200 байт. Индекс по ID.

Нужно быстро делать выборку из этой базы по группе из 500сот не связанных между собой ID:

select * from ... where id in(1,2,3,4,5...500)

эти 500 подзапросов убивают любой винчестер, и получить быстродействие выше 1 запроса в секунду не получается.

Вопрос - как получить быстродействие 10 выборок в секунду?
Кроме как установить 10 винчестеров или больше памяти чтобы вся база умещалась в кеш идей у меня нет...
...
Рейтинг: 0 / 0
20.03.2009, 09:36
    #35880867
ддддддд
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhneckiВсем привет.

Задача такая:
есть 10 миллионов записей, у каждой есть id и текст длиной 200 байт. Индекс по ID.

Нужно быстро делать выборку из этой базы по группе из 500сот не связанных между собой ID:

select * from ... where id in(1,2,3,4,5...500)

эти 500 подзапросов убивают любой винчестер , и получить быстродействие выше 1 запроса в секунду не получается.

Вопрос - как получить быстродействие 10 выборок в секунду?
Кроме как установить 10 винчестеров или больше памяти чтобы вся база умещалась в кеш идей у меня нет...

В каком смысле убивают?
...
Рейтинг: 0 / 0
20.03.2009, 10:17
    #35880951
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhnecki , какая СУБД-то?
...
Рейтинг: 0 / 0
20.03.2009, 12:04
    #35881330
LSV
LSV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
Сколько лет назад афтар впервые сел за комп ?
Такое впечатление, что пошел 2-й год

Научитесь спрашивать.
...
Рейтинг: 0 / 0
20.03.2009, 12:06
    #35881339
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
похоже здесь одни школьники остались с тех пор как я заходил в последний раз :)
...
Рейтинг: 0 / 0
20.03.2009, 12:07
    #35881345
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
создайте такую тестовую базу и поймёте о чем я.
база mysql myisam, но это значния не имеет, разве что другой тип индекса выбрать
...
Рейтинг: 0 / 0
20.03.2009, 12:33
    #35881447
guest_20040621
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
> похоже здесь одни школьники остались с тех пор как я заходил в последний раз

Нет, дружище, школьники типа Вас сюда иногда заходят и начинают спрашивать фигню. Вот как сейчас.

Вам русским языком сказали: научитесь задавать вопросы. Сейчас Вы задали вопрос "как заставить велосипед летать?". Ответ очевиден даже полным баранам: никак.
...
Рейтинг: 0 / 0
20.03.2009, 12:35
    #35881455
Подскажите правильно ли я мыслю
vazhneckiсоздайте такую тестовую базу и поймёте о чем я.
база mysql myisam, но это значния не имеет, разве что другой тип индекса выбрать

Однако невежливо так отвечать.
Все в этом мире имеет значение :)

Ну а если база mysql зайди в соответствующий раздел и задай там вопрос
...
Рейтинг: 0 / 0
20.03.2009, 12:54
    #35881558
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
если здесь есть нормальные люди - напишите ответ, остальным просьба не флудить, вопрос задан исчерпывающе.
...
Рейтинг: 0 / 0
20.03.2009, 12:55
    #35881566
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
база любая, задача и заключается в выборе условий для реализации, а не реализация на определённой базе/железе.
...
Рейтинг: 0 / 0
20.03.2009, 13:05
    #35881612
Подскажите правильно ли я мыслю
vazhneckiбаза любая, задача и заключается в выборе условий для реализации, а не реализация на определённой базе/железе.

Если база любая, то могу тебе сказать что проблем у мну с такими запросами нет
и первоначальный вопрос к проектированию как по мне никакого отношения не имеет.
так-что ищи соответствующий раздел и задавай нормально вопрос
...
Рейтинг: 0 / 0
20.03.2009, 13:09
    #35881638
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhneckiбаза mysql myisam, но это значния не имеет, разве что другой тип индекса выбрать
Ты глубоко ошибаешься...
...
Рейтинг: 0 / 0
20.03.2009, 15:39
    #35882187
Bely
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhneckiбаза любая, задача и заключается в выборе условий для реализации, а не реализация на определённой базе/железе.У нас на Оракле проблема не засветилась...
Помогло хоть чем-то? :)
...
Рейтинг: 0 / 0
20.03.2009, 16:58
    #35882469
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
у вас на оракле делает 5000 СЛУЧАЙНЫХ выборок в секунду ?
...
Рейтинг: 0 / 0
20.03.2009, 17:01
    #35882481
S.G.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhnecki
Нужно быстро делать выборку из этой базы по группе из 500сот не связанных между собой ID:
select * from ... where id in(1,2,3,4,5...500)
Обычно делают вторую таблицу в которую записывают эти 500 id, и потом уже используя inner join ... должно быть гораздо быстрее
...
Рейтинг: 0 / 0
20.03.2009, 17:03
    #35882482
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
Уточняю для тех кто в танке:
>эти 500 подзапросов убивают любой винчестер, и получить быстродействие выше 1 запроса в секунду не получается.

Здесь "1 запрос" это, как я написал, запрос вида:
select * from ... where id in(1,2,3,4,5...500)

а не один из этих 500 подзапросиков, надеюсь вы хоть про подзапросики знаете, или здесь вообще детский сад :)
...
Рейтинг: 0 / 0
20.03.2009, 17:07
    #35882494
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
S.G.vazhnecki
Нужно быстро делать выборку из этой базы по группе из 500сот не связанных между собой ID:
select * from ... where id in(1,2,3,4,5...500)
Обычно делают вторую таблицу в которую записывают эти 500 id, и потом уже используя inner join ... должно быть гораздо быстрее
вы прикалываетесь ? какое быстрее, один и тотже primary индекс испольдуется для поиска тела по ID
...
Рейтинг: 0 / 0
20.03.2009, 17:10
    #35882507
Подскажите правильно ли я мыслю
vazhneckiУточняю для тех кто в танке:
>эти 500 подзапросов убивают любой винчестер, и получить быстродействие выше 1 запроса в секунду не получается.

Здесь "1 запрос" это, как я написал, запрос вида:
select * from ... where id in(1,2,3,4,5...500)

а не один из этих 500 подзапросиков, надеюсь вы хоть про подзапросики знаете, или здесь вообще детский сад :)

Устал ты нас
У нас в яслях и садике нет этих проблем, совсем нет.
...
Рейтинг: 0 / 0
20.03.2009, 17:20
    #35882547
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
правильно, давайте обсудим ясли, школу и садик, а про задачу, которую блин даже никто понять не может, просто забудем :)
...
Рейтинг: 0 / 0
20.03.2009, 17:21
    #35882548
Glok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhneckiсоздайте такую тестовую базу и поймёте о чем я.
база mysql myisam, но это значния не имеет, разве что другой тип индекса выбрать
Ну создал?
0.04 Сек... все 500..
...
Рейтинг: 0 / 0
20.03.2009, 17:44
    #35882606
Senya_L
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
Glokvazhneckiсоздайте такую тестовую базу и поймёте о чем я.
база mysql myisam, но это значния не имеет, разве что другой тип индекса выбрать
Ну создал?
0.04 Сек... все 500..Даже и не знаю что подумать, на что грешить. Может руки прямые?
...
Рейтинг: 0 / 0
20.03.2009, 17:53
    #35882629
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
Glokvazhneckiсоздайте такую тестовую базу и поймёте о чем я.
база mysql myisam, но это значния не имеет, разве что другой тип индекса выбрать
Ну создал?
0.04 Сек... все 500..
с первого запроса ? или после того как дисковый кеш их запомнил ?
...
Рейтинг: 0 / 0
20.03.2009, 17:56
    #35882637
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
уточняю для вторых танкистов :)
select * from .... where id in(N1,N2...N500)
где все N случайны
В таблице записей не 10 штук, а 10 миллионов, так, что даже половина не умещяется в кеше.
...
Рейтинг: 0 / 0
20.03.2009, 18:00
    #35882647
vazhnecki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
если у вас куча оперативки, а базу вы только что создали, то вся она будет в кеше и эксперимент не получится -
чтобы получить представление о проблеме - создайте базу, перезагрузитесь (или сбросьте дисковый кеш вашей операционки) и повторите этот запрос, будет далеко не 0.04 секунды ;)
...
Рейтинг: 0 / 0
20.03.2009, 18:16
    #35882675
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите правильно ли я мыслю
vazhnecki, не понятно, чем Вы недовольны. Что серверу надо время, чтобы выполнить запрос?
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Подскажите правильно ли я мыслю / 25 сообщений из 37, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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