Вдохновился структурой такой субд как Redis, возникла идея. А почему бы не сделать в таком же виде модель приложения?

Код AS3:
package com.earwig.mvc.model
{
/**
* ...
* @author Dukobpa3
*/
public class BaseRedisModel
{
//=============================
// PARAMETERS
//=============================
private var _data:Object;
//=============================
// CONSTRUCTOR, INIT
//=============================
public function BaseRedisModel()
{
}
//=============================
// PUBLIC
//=============================
public function update(data:Object)
{
for (var key:String in data)
_data[key] = data[key]
}
//=============================
// ACCESSORS
//=============================
public function getByKey(key:String):Object
{
return _data[key];
}
/**
* Дальше еще стопицот всяких геттеров дляразного рода нужд
*
*/
}
}
Суть в том что есть некий словарь с большим кол-вом значений примерно такого вида:

Код AS3:
{'user:<user_id>:profile:location:<location_id>:building:<building_id>:isoX':12}
Всё это в виде списка, одноуровневое.
Удобство - скорость доступа. Весь код модели будет не намного больше того что я привел, расширять особо некуда. Плюс допустим в нашем случае так сервер тоже пользует редис у себя на бекенде, и это могло бы избавить их от парсинга в удобочитаемый для нас формат, ну и если некоторые фичи редиса тоже перенять то и некое удобство привнесло бы.
Теперь в чем сомнения.
Это всё однозначно удобно если точно знаешь какое значение тебе надо. А вот если нужен некий поиск чего-то то уже сложно.
И тут уже вопрос, имеет ли смысл эту идею вообще развивать во-первых.
А во вторых если да, то как искать в этих ключах при необходимости допустим получить:

Код AS3:
'user:<user_id>:profile:location' // в виде массива например
Та и вообще как перемешаться по ключам быстро и удобно. Склоняюсь к регекспам. А вы что скажете?
Ну и в третьих производительность.