Предположим, у нас есть где-то триллионы наборов.Домен для каждого из этих наборов одинаков.Это также конечно и дискретно.Таким образом, каждый набор может быть сохранен как битовое поле (например: 0000100111 ...) относительно короткой длины (например, 1024).То есть бит X в битовом поле указывает, включен ли элемент X (из 1024 возможных элементов) в данный набор или нет.
Теперь я хочу разработать структуру хранения и алгоритм для эффективного ответа на запрос.: то, что устанавливает в хранилище данных, установило Y как подмножество.Сам набор Y не присутствует в хранилище данных и указывается во время выполнения.
Теперь самый простой способ решить эту проблему - это использовать И битовое поле для набора Y с битовыми полями каждого набора в одном хранилище данных.по одному, выбирая те, чей результат AND соответствует битовому полю Y.
Как я могу ускорить это?Существует ли древовидная структура (индекс) или какой-нибудь умный алгоритм, который позволил бы мне выполнить этот запрос без необходимости И И Битовое поле каждого сохраненного набора?
Существуют ли базы данных, которые уже поддерживают такие операции с большими коллекциями наборов?1009 *