Здравствуйте, Nikolay Bespalov, Вы писали:
NB>Действительно выглядит как то что надо, как бы это реверснуть... + Хочется иметь доказательства сложностей на бумажке
Вот неплохое введение.
Эффективность манипуляций с самим hierarchyid? Там всё ок, строится суффиксное дерево и сжимается в побитовое представление.
Эффективность поиска тоже ок, поиск всех детей сводится к условию "x>текущий узел И x < текущий узел.Сосед()". Обычный range scan, короче.
Засада в тяжёлых обновлениях и необходимости синхронизации при операциях с деревом (или пессимистичной, или оптимистичной блокировкой — один фиг затык). В общем для статичных данных — самое оно, для часто меняющихся — не лучше и не хуже прочих вариантов.
Я копался в этом лет 5 назад, сходу деталей не вспомню, если интересно — завтра могу попробовать поискать.