> Мммм... у меня тут есть рабочий элемент базы в 16 Гб объемом (сама база больше), и сложные гибкие выборки, которые (да, java-программеры могут начинать выкладывать кирпичи) _неизбежно_ требуют текстовой генерации запросов в зависимости от условий (иначе придется делать огромнейший список шаблонов запросов, да и все равно полностью от генерации не избавишься).
> Куда бы мне на NoSQL податься, и сколько времени займет переписывание всего кода объемом в десятки мегабайт на любой NoSQL? Да и вообще - возможно ли это, учитывая гибкие выборки?Что значит "рабочий элемент базы"? Блоб что ли?
Если у вас такие большие блобы, что может проще воспользоваться файловой системой?
Многие забывают, что файловая система - это ведь тоже такая база данных, причем иерархическая.
Чтобы иметь возможность делать гибкие выборки, надо сначала получить возможность делать гибкие "в-борки". Чтобы гибко "доставать", нужно чтобы можно было гибко "класть".
А вообще, что бы что-то "гибко выбрать", нужно просто написать гибкий код, который гибко выбирает. Какая бы технология хранения данных не использовалась.
Keep it simple, stupid!
Чем сложнее у вас технология, тем более узкое ее назначение, и тем больше ограничений за пределами ее назначения.
А то что у вас накопились тонны кода, и вы вдруг обнаружили, что "дружили не с тем". Так это к проблематике баз данных вообще не относится - это везде так. Переписывайте, пока еще хуже не стало.