У меня есть несколько баз данных SQL, каждая из которых содержит множество таблиц.Они преимущественно имеют случайно сгенерированные направляющие как первичные ключи строк.Я хотел бы найти способ найти таблицу и данные строки, связанные с данным Guid (без информации о типе).
Поэтому я подумывал о настройке фильтра Блума для каждой таблицы и где-то его кешировать.Сначала я протестировал бы Guid по отношению к фильтру, а затем запросил в базе данных или кеше данные (или ложный результат).Однако я никогда не работал с ними раньше и поэтому не знаю, каковы их характеристики производительности, и могут ли они стать эффективным решением моей проблемы.
Характеристики базы данных:
~ 100 таблиц на выбор.Некоторые из них гораздо более вероятны, чем другие.
Ни одна строка не удаляется (если только ручная очистка после ошибки), поэтому меня не беспокоит невозможность удаления информации изфильтр Блума.
Больше структуры, чем данных!Все умещается на одном сервере.
Стоит ли исследовать это решение?Мне лучше придерживаться кэширования более обычных структур поиска?Если я перейду к Блуму, есть ли какие-нибудь ярлыки для функций хеширования, учитывая, что направляющие являются очень независимым входом?