powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Многокритериальный поиск в очень-очень большой базе
25 сообщений из 309, страница 1 из 13
Многокритериальный поиск в очень-очень большой базе
    #33950781
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Мне нужно реализовать базу данных под следующую задачу:
Дано примерно 100 миллионов записей, каждая из которых представляет собой набор атрибутов некоего объекта. Нужно уметь находить записи с помощью многокритериального поиска по произвольному набору атрибутов, выбранных пользователем.
Казалось бы классика. Но в отличие от "классической" задачи, успешно решаемой всеми реляционными СУБД, в моем случае набор атрибутов непостоянен - в процессе эксплуатации базы данных регулярно (скажем, несколько раз в неделю) добавляются новые атрибуты записей.
Более того, этих атрибутов очень-очень много - единицы тысяч. Большинство из них не заполнено у большинства записей. Это очень разряженная таблица с динамически добавляемыми колонками, если говорить в терминах таблиц.
И в любой момент времени пользователь может захотеть выполнить поиск по произвольным атрибутам, выбранным им самостоятельно.
Для простоты предположим, что значения атрибутов это только целые числа.
Система должна сохранять работоспособность при очень интенсивном потоке запросов - около 1 миллиона запросов в секунду (не опечатка).
Большинство запросов пользователя возвращают ему несколько записей. Но под другие запросы (их тоже много) потенциально подпадает очень много записей. В этом случае мне нужно получить фиксированное "n" произвольных записей, соответствующих критериям поиска, не нагружая СУБД выборкой всех сотен тысяч записей, подпадающих под критерии этого запроса - иначе никакая система не справится с миллионом запросов в секунду...
Так же система должна работать при очень интенсивном потоке обновлений (ориентировочно 1 миллион запросов на изменение значения атрибута в сутки).
В качестве отдельной дополнительной задачи (опционально, но очень желательно) нужно уметь находить "n" записей, которые по очень простой метрике наиболее близки к заданной - например, находить "n" записей, у которых наименьшее количество расхождений (сравнение на четкое равенство) значений атрибутов с заданной проверочной записью. Другими словами - "n" записей, у которых минимальное расстояние по Хаффману с заданной записью.
Какую готовую СУБД + примерную (на уровне базовых идей) организацию данных в ней (естественно я не прошу точного решения, которое стоит денег, но и не хочу получить ничем не подкрепленные ответы в стиле "Oracle решит все твои проблемы!") или какую нестандартную организацию данных Вы посоветуете для такой задачи?
Стоимость СУБД и стоимость железа не имеют значения в разумных пределах. Меня интересует возможность реализации подобной системы существующими готовыми средствами или на существующей теоретической базе, даже если стоимость железа и софта составит миллионы долларов.
Отдельный вопрос: существуют ли свободно продаваемые на рынке СУБД, которые масштабируются на кластеры из тысяч и десятков тысяч машин? Универсальные СУБД, которые можно просто взять и купить за деньги, а не заказать фирме разработку новой уникальной системы под свою конкретную задачу...
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33950911
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кхм..
ИМХО у Вас задача довольно специальная, и возможно объектные базы со специально разработанным кодом подойдут больше, чем субд общего назначения.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33950923
MX -- ALEX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sysprgЗдравствуйте!
Мне нужно реализовать базу данных под следующую задачу:
Дано примерно 100 миллионов записей, каждая из которых представляет собой набор атрибутов некоего объекта. Нужно уметь находить записи с помощью многокритериального поиска по произвольному набору атрибутов, выбранных пользователем.
Казалось бы классика. Но в отличие от "классической" задачи, успешно решаемой всеми реляционными СУБД, в моем случае набор атрибутов непостоянен - в процессе эксплуатации базы данных регулярно (скажем, несколько раз в неделю) добавляются новые атрибуты записей.
Более того, этих атрибутов очень-очень много - единицы тысяч. Большинство из них не заполнено у большинства записей. Это очень разряженная таблица с динамически добавляемыми колонками, если говорить в терминах таблиц.
И в любой момент времени пользователь может захотеть выполнить поиск по произвольным атрибутам, выбранным им самостоятельно.
Для простоты предположим, что значения атрибутов это только целые числа.
Система должна сохранять работоспособность при очень интенсивном потоке запросов - около 1 миллиона запросов в секунду (не опечатка).
Большинство запросов пользователя возвращают ему несколько записей. Но под другие запросы (их тоже много) потенциально подпадает очень много записей. В этом случае мне нужно получить фиксированное "n" произвольных записей, соответствующих критериям поиска, не нагружая СУБД выборкой всех сотен тысяч записей, подпадающих под критерии этого запроса - иначе никакая система не справится с миллионом запросов в секунду...
Так же система должна работать при очень интенсивном потоке обновлений (ориентировочно 1 миллион запросов на изменение значения атрибута в сутки).
В качестве отдельной дополнительной задачи (опционально, но очень желательно) нужно уметь находить "n" записей, которые по очень простой метрике наиболее близки к заданной - например, находить "n" записей, у которых наименьшее количество расхождений (сравнение на четкое равенство) значений атрибутов с заданной проверочной записью. Другими словами - "n" записей, у которых минимальное расстояние по Хаффману с заданной записью.
Какую готовую СУБД + примерную (на уровне базовых идей) организацию данных в ней (естественно я не прошу точного решения, которое стоит денег, но и не хочу получить ничем не подкрепленные ответы в стиле "Oracle решит все твои проблемы!") или какую нестандартную организацию данных Вы посоветуете для такой задачи?
Стоимость СУБД и стоимость железа не имеют значения в разумных пределах. Меня интересует возможность реализации подобной системы существующими готовыми средствами или на существующей теоретической базе, даже если стоимость железа и софта составит миллионы долларов.
Отдельный вопрос: существуют ли свободно продаваемые на рынке СУБД, которые масштабируются на кластеры из тысяч и десятков тысяч машин? Универсальные СУБД, которые можно просто взять и купить за деньги, а не заказать фирме разработку новой уникальной системы под свою конкретную задачу...

CACHE 5.2 ( InterSystems ) подходит по параметрам

Московское представительство :
http://www.intersystems.ru/cache/
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33950933
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ModelRИМХО у Вас задача довольно специальная, и возможно объектные базы со специально разработанным кодом подойдут больше, чем субд общего назначения.Спасибо за ответ! Я понимаю, что задача специфическая, однако же сейчас уже существуют многие системы массового обслуживания, начиная от каких-нибудь сайтов типа www.ebay.com и заканчивая банковскими системами крупных банков, которые, согласен, являются уникальными системами, сделанными под свою конкретную задачу, но базовый-то слой у них есть, какая-то СУБД за ними всеми стоит, миллионы запросов в секунду молотит... Вот я и интересуюсь - созрели ли универсальные коммерческие системы до этого уровня или же любой такой сайт/проект - это уникальная разработка под одну конкретную задачу сделанная по сути с нуля с минимальным или чисто утилитарным использованием стандартных СУБД (чисто для хранения данных, например, но не для поиска)?
Так же интересно, есть ли люди, которым приходилось решать конкретно задачу многокритериального поиска в сильно разряженной таблице с тысячами "столбцов" по сотням миллионов записей. Пусть и не с таким рейтом запросов...
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33950968
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MX -- ALEXCACHE 5.2 ( InterSystems ) подходит по параметрам
Московское представительство :
http://www.intersystems.ru/cache/Спасибо за ссылку, но у них на всех диаграммах фигурирует некий "Data Server" несущий на себе нагрузку СУБД и как можно понять из прочитанных документов - это одна-единственная машина, у которой может быть backup (для надежности).
Если я прав, что тогда от нее толку? Покажите мне машину, производительности которой хватит на миллион запросов в секунду при многокритериальном поиске...
Это нереально - обрабатывать такой поток одной машиной, нужно кластерное решение, причем масштабирующееся на сотни, тысячи узлов. Сегодня у меня ожидается максимум 100 миллионов записей и миллион запросов в секунду - и скажем я рискну и начну этот бизнес. :) Но через 3 года, скажем, будет 1 миллиард записей и 10 миллионов запросов в секунду. И весь бизнес накроется медным тазом, если система не сможет масштабироваться...
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33950978
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть ли атрибут, который есть у всех без исключения объектов?

а насчет миллиона записей в секунду - это перегиб, даже через канал 1 Гбит/с столько не пролезет чисто физически
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33951122
гриб
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не вы не правы. У них сотни серверов обслуживают тысячи клиентов в одной системе.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33951183
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Здравствуйте!

И Вам - не хворать.

> Мне нужно реализовать базу данных под следующую задачу:

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

Начните хм... ну, например, с labs.google.com, узнаете много интересного.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33951187
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftесть ли атрибут, который есть у всех без исключения объектов?Есть и не один. Но, к сожалению, очень многие запросы не оперируют этими общими атрибутами. Для некоторых пользователей (и таких пользователей очень много) ценность представляют маленькие по объемам выборки по "хитрым и редким" атрибутам, а не по самым базовым. Базовые они могут вообще не затронуть выборкой.

miksoftа насчет миллиона записей в секунду - это перегиб, даже через канал 1 Гбит/с столько не пролезет чисто физическиКонечно же речь идет о системе, в которой будут работать тысячи машин, установленных на площадках основных провайдеров мирового уровня. Естественно не может быть и речи о том, чтобы собрать траффик в миллион запросов в секунду на одной-единственной машине или даже на десятке машин. Поэтому нужна кластерная система масштаба "на тысячу нод".
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33951189
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
guest_20040621Это неправильная постановка задачи. Вам не базу данных нужно реализовать, а построить инфраструктуру, удовлетворяющую заданным характеристикам. Выбор СУБД здесь (и тем более - структуры данных) - хм... в самом конце списка задач.Как раз с инфраструктурой все более и менее понятно. Есть провайдеры, каналы которых образуют backbone Интернета. Они за разумные деньги позволяют разместить на своих площадках наши машины, принимающие клиентский трафик. Начать можно с малого - вообще с нескольких машин, а по мере роста количества клиентов количество машин можно плавно увеличивать и довести, скажем, до 1000 (для системы с миллионом запросов в секунду). В начале, пока система эксплуатируется экспериментально, она будет стоить "копейки", но затем количество клиентов начнет быстро расти, однако вместе с ними - и поступление денег, что окупит расширение инфраструктуры.
Балансировать входящую нагрузку на машины будут DNS-серверы плюс мы можем ретранслировать запросы с перегруженных принимающих узлов на другие узлы внутри своего кластера.
С точки зрения организации инфраструктуры и бизнес-модели окупающей аренду стоек и каналов у провайдеров - принципиальных проблем нет.
Проблема в том, чтобы эти 1000 машин, размещенных на жирных каналах и прекрасно связанных друг с другом (или как вариант - размещенных в одном data center с жирными входящими каналами, если внутри кластера будет своя еще более скоростная сеть) заставить решать собственно содержательную задачу многокритериального поиска.
Не в железе тут проблемы, не в каналах и не в бизнесе, окупающем аренду точек приема трафика (жирных каналов) и стоек. Проблема в том, что содержательно ни одна СУБД (насколько я понимаю) не потянет 1 миллион запросов в секунду при моей постановке задачи поиска в разряженной и динамически меняющейся таблице.

guest_20040621Imho тиражируемого решения за озвученные деньги не существует.Imho Вы правы, но я написал в данную конференцию, чтобы убедится в этом - ведь от этого зависит принятие решений по проекту (вплоть до отказа от проекта, если он вообще технически или алгоритмически нереален).
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33951316
MX -- ALEX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sysprg MX -- ALEXCACHE 5.2 ( InterSystems ) подходит по параметрам
Московское представительство :
http://www.intersystems.ru/cache/Спасибо за ссылку, но у них на всех диаграммах фигурирует некий "Data Server" несущий на себе нагрузку СУБД и как можно понять из прочитанных документов - это одна-единственная машина, у которой может быть backup (для надежности).
Если я прав, что тогда от нее толку? Покажите мне машину, производительности которой хватит на миллион запросов в секунду при многокритериальном поиске...
Это нереально - обрабатывать такой поток одной машиной, нужно кластерное решение, причем масштабирующееся на сотни, тысячи узлов. Сегодня у меня ожидается максимум 100 миллионов записей и миллион запросов в секунду - и скажем я рискну и начну этот бизнес. :) Но через 3 года, скажем, будет 1 миллиард записей и 10 миллионов запросов в секунду. И весь бизнес накроется медным тазом, если система не сможет масштабироваться...

у них 5-6 сентября конференция (см на сайте)

Будут интересные разработчики.
Вам возможно надо поговорить напрямую
например - системы в мобильной связи на CACHE

или с представителями SP-ARM из Петербурга -
они сделали нечто подобное - но конечно не
на 1000 000 запросов.

SP-ARM ответит четко и обосновано - толковые парни -
мы давно с ними работаем по CACHE - отлично знают систему -
и никогда не пойдут на авантюру - держат марку.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33951409
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sysprg
Насчет датацетнров и каналов - гляньте MSK-IX. Статистика
это, конечно, не весь российский интернет, но весьма существенная его часть
А вот сумма аплинков во Владивостоке - вообще копейки

Я бы дал нижнюю оценку вашего трафика в 10-100 Гбит/с. И это не считая трафика по поддержанию актуальности данных на серверах...
Так что, имхо, одним датацентром и DNS-балансировкой тут не обойдешься.

имхо, цифра в миллион запросов в секунду - абсолютно безосновательна!
в мире порядка одного миллиарда интернет-пользователей, неужели они все круглые сутки будут каждую тысячу секунд делать по запросу?
Для справки - гляньте загрузку Яндекса

sysprgя написал в данную конференцию, чтобы убедится в этом - ведь от этого зависит принятие решений по проекту (вплоть до отказа от проекта, если он вообще технически или алгоритмически нереален).этот проект сможет реализовать только тот, кто не знает, что он невозможен! :)
и при условии, что найдет миллионы долларов на предварительные исследования... и не при текущем уровне развития интернета...

PS. все сугубо мое имхо.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33952019
Фотография Last_Alien
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По основной задаче.

Данные можно хранить в виде двух таблиц.
1.
ID - идентификатор записи разреженной таблицы
iAttr - номер атрибута
Val - значение атрибута

Индексы - (ID,iAttr), (iAttr,Val)

2.
iAttr - номер атрибута
Num - количество записей, содержащих этот атрибут
Индекс - (iAttr)

Принцип поиска записей, содержащих определенные значения произвольных атрибутов.

Сначал по второй таблице ищем атрибут, который содержится в наименьшем количестве записей. Потом по этому атрибуту делаем предварительную выборку из первой таблицы. Потом по ID и остальным iAttr делаем отсев ненужного.

Реализуется на чем угодно...

P.S. Если у проекта так хорошо с деньгами, может и мне $50k за идею подкинете?:-)))
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33952095
pavelvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftимхо, цифра в миллион запросов в секунду - абсолютно безосновательна! Поддерживаю. Совершенно нереальное число. Откуда взято - непонятно. Может что-то не так с постановкой задачи?
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33952124
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, pavelvp!
Ты пишешь:

pavelvp miksoftимхо, цифра в миллион запросов в секунду - абсолютно безосновательна!
p> Поддерживаю. Совершенно нереальное число.
p> Откуда взято - непонятно.
p> Может что-то не так с постановкой задачи?нет там никакой постановки.
и задачи нет.
чисто теоретизмы.
всё.

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33952452
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Как раз с инфраструктурой все более и менее понятно.

;) Инфраструктура - на всякий случай - она не только канальная.

> пока система эксплуатируется экспериментально, она будет стоить "копейки"

Это заблуждение. Основные затраты - это не набитые серверами шкафы и не аренда места в датацентрах (это-то как раз дешево), а программная реализация файловой системы, сервера приложений и СУБД. При условии, разумеется, что есть операционная система, которая готова с ними работать. ;)) Напрасно Вы labs.google.com проигнорировали.

> ни одна СУБД

Для того, чтобы приложение обеспечивало обработку 1M запросов в секунду, совсем не обязательно, чтобы отдельный экземпляр СУБД обеспечивал такую производительность.

> в разряженной и динамически меняющейся таблице

Да нет у Вас такой задачи. Забудьте.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953311
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторДа нет у Вас такой задачи. Забудьте.

я тоже сомневаюсь, что при такой постановке задачи человек вообще пойдет что-либо спрашивать, и тем более сюда, при всем уважении к этому форуму.

Это задача единичного, штучного решения, вроде гугла, яндекса и т.п., которые, как правило, не используют почти ничего "штатного".
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953346
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> вроде гугла, яндекса

Не слишком правильно использовать перечисление в данном случае. Яндекс по сравнению с google - наколенная поделка. Есть Google и есть все остальные.

> как правило, не используют почти ничего "штатного"

Насколько мне известно, геотаргетинг у Яндекса вполне себе "штатный". Полистайте материалы последнего конкурса Яндекса.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953516
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftЯ бы дал нижнюю оценку вашего трафика в 10-100 Гбит/с. И это не считая трафика по поддержанию актуальности данных на серверах...
Так что, имхо, одним датацентром и DNS-балансировкой тут не обойдешься.
Сейчас в Европе живет около 800 миллионов человек, в США около 300 миллионов, в Японии - 130 миллионов, в Южной Корее - 50 миллионов и так далее, не говоря уже об Индии (1 миллиард человек) и Китае (1.3 миллиарда человек). В Европе, в США, в Японии уже практически все люди 16...45 лет так или иначе постоянно используют Интернет (дома, на работе, в библиотеках, в интернет-кафе и т.п.), а через 5 лет человек, который не пользуется Интернетом в повседневной жизни, будет казаться таким же странным, как сейчас человек без мобильника. Кстати мобильные сервисы опять-таки будут все реализованы через IP! (это важно).
Предположим, что есть некий сервис, ожидаемое число активных пользователей которого через 4-5 лет составит около 300 миллионов человек, а количество разовых посетителей может быть еще в два раза больше, где-то 600 миллионов человек.
Если каждый из них в день в среднем пошлет 10 запросов, то получится трафик примерно в один миллион запросов в секунду.
Конечно, нет и речи о том, что у сервиса сразу будет столько пользователей - но специфика такова, что есть смысл создавать его только в полной уверенности, что в ближайшие 5 лет компания не столкнется с проблемой взрывного роста популярности и сервис не упадет из-за неспособности наших серверов "переварить" трафик. Не должно быть именно технических проблем - они угробят всю идею.
Идея этого бизнеса такова, что он должен стать именно глобальным и войти в повседневную жизнь масс.

miksoftимхо, цифра в миллион запросов в секунду - абсолютно безосновательна!
в мире порядка одного миллиарда интернет-пользователей, неужели они все круглые сутки будут каждую тысячу секунд делать по запросу?Через 5 лет - будут. Они будут делать эти запросы не только сидя за клавиатурой классических PC, но так же со своих мобильных телефонов, всяких гаджетов, из автомобилей и так далее.

Кстати отдельное спасибо за статистику. :)

miksoft sysprgя написал в данную конференцию, чтобы убедится в этом - ведь от этого зависит принятие решений по проекту (вплоть до отказа от проекта, если он вообще технически или алгоритмически нереален).этот проект сможет реализовать только тот, кто не знает, что он невозможен! :)
и при условии, что найдет миллионы долларов на предварительные исследования... и не при текущем уровне развития интернета...Все когда-то начиналось как проекты, имеющие сотню пользователей, а затем НЕКОТОРЫЕ из этих компаний получили сотни миллионов пользователей. Почему бы не попытать счастья? :) Необходимое условие в данном случае - наличие технической/алгоритмической базы - так как было бы действительно глупостью делать проект, который уже через год столкнется с гораздо меньшим, но уже большим трафиком, все сайты полягут, время реакции станет неадекватным и доверие к ресурсу у пользователей будет необратимо подорвано.
Я видел как загибались некоторые интересные проекты не справившись с наплывом посетителей. А затем их место занимали другие.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953526
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MX -- ALEXу них 5-6 сентября конференция (см на сайте)
Будут интересные разработчики.
Вам возможно надо поговорить напрямую
например - системы в мобильной связи на CACHE
Спасибо за информацию!
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953535
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очередной порно-движек
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953542
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, Yo.!!!
Ты пишешь:

Yo.!!Y> очередной порно-движек не иначе!

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953562
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Last_AlienСначал по второй таблице ищем атрибут, который содержится в наименьшем количестве записей. Потом по этому атрибуту делаем предварительную выборку из первой таблицы. Потом по ID и остальным iAttr делаем отсев ненужного.

P.S. Если у проекта так хорошо с деньгами, может и мне $50k за идею подкинете?:-)))Увы, тривиальные решения работают только на тривиальных задачах. Пользователь может запросить информацию по двум атрибутам, по каждому из которых есть, скажем, 10000 записей, а их пересечение - всего-навсего 100 записей. Если я буду из базы выгребать даже 10000 записей для последующего отсеивания, то мне никаких машинных мощностей не хватит при большом потоке запросов. Как я сказал в постановке задачи, многих пользователей интересуют "нетривиальные" пересечения, у которых короткий ответ, но по "ID" атрибутов это предсказать трудно - даже по самому "короткому" из них может быть достаточно много записей (не миллионы, но много).
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953617
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
guest_20040621Это заблуждение. Основные затраты - это не набитые серверами шкафы и не аренда места в датацентрах (это-то как раз дешево), а программная реализация файловой системы, сервера приложений и СУБД. При условии, разумеется, что есть операционная система, которая готова с ними работать. ;)) Напрасно Вы labs.google.com проигнорировали.
В том-то и дело - именно поэтому я и спрашиваю в этом форуме о существовании ГОТОВЫХ СУБД с такими характеристиками - пусть даже частично удовлетворяющих требованиям. Именно из-за четкого осознания того, что разработка соответствующего ПО самостоятельно - чрезвычайно сложная, трудоемкая и долгая в реализации задача (без гарантии успеха, кстати).

А вот файловая система и ОС подойдут "любые" - сейчас это фактически просто низкий уровень, как процессор, например. Мы ставим разные процессоры в свои компьютеры, а приложения не сильно напрягаются анализом того, какой именно процессор там установлен (если система команд одна и та же, например Intel x86). До такого же уровня развития дошли и ОС, файловые системы - по большому счету (если не брать крайности) уже пофиг, какая именно ОС и какая именно современная файловая система используется ниже уровня СУБД. Собственно все упирается в саму СУБД (которая файловую систему может не использовать вовсе, а от ОС ей нужны только средства управления страничной памятью, TCP/IP и еще драйвер диска, по большому счету).

guest_20040621Для того, чтобы приложение обеспечивало обработку 1M запросов в секунду, совсем не обязательно, чтобы отдельный экземпляр СУБД обеспечивал такую производительность.Это понятно, но мне лично неясно, как разделить данные и при этом не потерять возможность обрабатывать запросы с помощью СТАНДАРТНЫХ средств (даже самых развитых СУБД, представленных на рынке). Однако вопрос для меня важный, поэтому хотелось убедится, что подходящего готового решения нет. Чтобы не: 1). отказаться от проекта, который на самом деле может быть сделан, 2). не ввязываться в свою разработку в том случае, если подобные готовые движки все же существуют и могут быть куплены в готовом виде.
...
Рейтинг: 0 / 0
Многокритериальный поиск в очень-очень большой базе
    #33953634
sysprg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdvя тоже сомневаюсь, что при такой постановке задачи человек вообще пойдет что-либо спрашивать, и тем более сюда, при всем уважении к этому форуму.IMHO в ex-USSR программисты быстрее всего изучают новые технологии и знают состояние дел именно в технологическим и алгоритмическом аспекте в среднем лучше, чем на Западе. Поэтому мнение форума мне очень интересно. Задавать же вопросы некоторым ведущим западным специалистам, контакты с которыми потенциально можно найти - нельзя, так как было бы глупостью вводить в суть дела их нанимателей, которые потенциально просто сделают это сами ( если они вдруг заинтересуются идеей).
...
Рейтинг: 0 / 0
25 сообщений из 309, страница 1 из 13
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Многокритериальный поиск в очень-очень большой базе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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