Таким образом, у simpledb есть своего рода модель данных электронной таблицы.
У меня есть приложение, которое просто должно хранить ключи и значения. За исключением того, что один ключ может иметь несколько значений.
Будет несколько клиентов. У каждого клиента есть идентификатор с собственным набором ключей.
Я хотел бы придерживаться одного домена, если смогу на этом этапе.
Как я могу отобразить это на simpleDB?
Я думал
домен = мойдомен
пункт = клиентура
attribute.n.name = key_1 ... key_n
attribute.n.value = val1 ... valn
Это удовлетворит способность хранить несколько значений для одного и того же ключа.
Но потом я обнаружил, что мне нужно либо получить ВСЕ атрибуты в моем примере выбора, либо знать
сколько у меня атрибутов. Я не буду знать это заранее.
Также я разрешаю удалить конкретное значение из ключа (или атрибута). Я должен буду искать это сначала. Кажется, что в select нет функции attributeName (), только функция itemName ().
Возможно, было бы лучше сделать имя элемента комбинацией id + key + _n?
например если идентификатор «myid», а ключ «boots», то имя элемента будет
'Myidboots_1'
И затем иметь по одному атрибуту для каждого элемента, который называется скажем 'keyval'.
и я могу сделать
выберите 'keyval', где itemName, например, 'myidboots_%'?
Все еще довольно громоздко по сравнению с обычной базой данных sql.
Может быть, мне следует попробовать закодировать значения в виде списка через запятую?
За исключением того, что это, вероятно, более громоздко, а также я прочитал, что есть ограничение в 1000 символов.
Есть еще предложения?