Часть меня удивляется, если вы могли бы предоставить свою собственную функцию санитарии так же просто, как это:
$value = preg_replace('/[^a-zA-Z_]*/', '', $value);
Я действительно не продумал это, но кажется, что удаление чего-либо, кроме символов и подчеркиваний может работать.
MongoDB является другой опцией, которая очень похожа на CouchDB, но использующий язык запросов, очень похожий на SQL вместо, отображают/уменьшают в JavaScript. Это также поддерживает индексы, профилирование запроса, репликацию и устройство хранения данных двоичных данных.
Это имеет огромную сумму документации, которая могла бы быть подавляющей в кулаке, таким образом, я предложу запуститься с тура Разработчика
Как насчет memcached?
Высокая Масштабируемость блог охватывает эту проблему; если будет решение с открытым исходным кодом для того, что Вы после, то это, конечно, будет там.
Другие проекты включают:
Другой хороший список: антиRDBMS: список распределенных хранилищ значения ключа
Википедия говорит, что Yahoo и способствует Hadoop и использует его в производстве ( статья, связанная из Википедии ). Таким образом, я сказал бы, что это значит бизнес-provenness, хотя я не уверен, рассчитывает ли это как база данных значения K/V.
Не в Вашем списке система Friendfeed использования MySQL как простое бессхемное хранилище ключа/значения .
мне трудно понять Ваши приоритеты. CouchDB является простым, отказоустойчивым, и распределенный, но так или иначе Вы исключаете его, потому что он не имеет XML. Действительно ли XML и коннекторы Java являются неустановленным требованием?
(Так или иначе, CouchDB должен на самом деле быть исключен, потому что это молодо, его API не стабилен, и это не хранилище значения ключа.)
Cloudera является компанией, которая коммерциализирует Apache, который Hadoop, с некоторым значением - добавляют, конечно, как продуктизация, конфигурация, обучение & услуги по поддержке.
Я использую API Google Base Google , это - Xml, свободный, зарегистрированный, облачный, и имеет коннекторы для многих языков. Я думаю, что это заполнит Ваш счет, если Вы захотите бесплатное размещение также.
Теперь, если Вы хотите разместить свои собственные серверы , корпус Токио является Вашим ответом, его ключ => базирующееся значение, использует плоские файлы и является самой быстрой базой данных там прямо сейчас (очень базовый сравненный для высказывания Oracle, но невероятно хороший в хранении и доступе к данным, приблизительно 1 миллион записей в секунду, приблизительно с 10 байтами издержек (в зависимости от механизма устройства хранения данных)). Что касается бизнес-готового TokyoCabinet основа сервиса под названием Mixi, которая является эквивалентом Facebook+MyPage Японии с несколькими миллионами активных пользователей, таким образом, это - на самом деле очень доказанное сражение.
Вы могли бы хотеть смотреть на это (использование MySQL как хранилище значения ключа):
Вы могли бы хотеть посмотреть на гипертаблицу, которая смоделирована после bigtable Google.
Вместо того, чтобы искать что-то вдохновленное bigtable-Google, Почему не просто используют bigtable непосредственно? Вы могли записать фронтенд на Google App-Engine.
Если Вы хотите что-то как Bigtable, Вы не можете пойти мимо HBase или Гипертаблицы - они - оба клоны Bigtable с открытым исходным кодом. Одна вещь рассмотреть, тем не менее, состоит в том, если Ваши требования действительно являются 'достаточно большими' для Bigtable. Это увеличивается к тысячам серверов планшета, и как таковой, имеет довольно мало инфраструктуры под ним для включения этого (например, обрабатывая ожидание регулярных отказов узла).
Если Вы не ожидаете расти до, по крайней мере, десятки серверов планшета, Вы могли бы хотеть рассмотреть одну из предложенных альтернатив: Вы не можете победить BerkelyDb для простоты или MySQL для повсеместности. Если все, в чем Вы нуждаетесь, является хранилищем данных ключа/значения, можно поместить простую 'dict' обертку вокруг интерфейса БД и выключить бэкенд при перерастании того.
Используйте CouchDB
Хорошая подборка инструментов хранения для вашего вопроса:
http://www.metabrew.com/article/anti-rdbms-a-list-of-distributed-key-value- store /
Tokyo Cabinet также получил некоторое внимание, поскольку он поддерживает схемы таблиц, пары значений ключа и хеш-таблицы. Он использует Lua в качестве встроенной платформы сценариев и HTTP в качестве протокола связи. Вот отличная демонстрация .