Done, still could use a lot of optimization as far as memory usage, reducing queries, re-indexing automatically as products are added, still needs a GUI for adding attributes to products, needs to remove values from the index when removed from products.
At some point there should be a line drawn as to how much of this we (ab)use mysql for, and provide a plugin for using mongodb, reddis, cassandra, memcache, sphinx or some other related technology(s) for storing the attributes. Some basic functionality should be supported by mysql though... it will win over users who don't know how to install these extra tools. When their shop grows larger they can enable the noSQL plugins.
Done, still could use a lot of optimization as far as memory usage, reducing queries, re-indexing automatically as products are added, still needs a GUI for adding attributes to products, needs to remove values from the index when removed from products.
At some point there should be a line drawn as to how much of this we (ab)use mysql for, and provide a plugin for using mongodb, reddis, cassandra, memcache, sphinx or some other related technology(s) for storing the attributes. Some basic functionality should be supported by mysql though... it will win over users who don't know how to install these extra tools. When their shop grows larger they can enable the noSQL plugins.