Нереляционная база данных, значение ключевой или плоский стол

StackOverflow https://stackoverflow.com/questions/3794283

  •  05-10-2019
  •  | 
  •  

Вопрос

Моя приложение нуждается в настраиваемых столбцах, а заголовки этих столбцов получают настроенные в начале, если база данных отношений я бы создал общие столбцы в таблице, такой как Codea, CodeB и т. Д. Для этого необходимости, потому что это помогает вскрикнуть на этих столбцах (код A = 11) Также помогает отображать значения (если это столбцы хранит код и значение), но теперь я использую Non Relational DataStore DataStore (и я новичок в нее), должен ли я использовать тот же старый подход, или я должен использовать коллекцию (пару ценности ключа) Тип структуры.

На этих колоннах будет много фильтров. Пожалуйста, предложите

Это было полезно?

Решение

То, что вы только что описали, является одним из классических сценариев для базы данных основных значений. Ограничение здесь состоит в том, что у вас не будет много начисленных инструментов, которые вы привыкли.

Большинство баз данных KV действительно хороши при загрузке одной «записи» или небольшого набора. Тем не менее, они не склонны к загрузке ничего, что может потребовать присоединения. Учитывая, что вы используете AppEngine, вы, вероятно, цените это ограничение. Но это стоит с указанием.

В качестве важной заметок не вся база данных KV позволит вам «выбрать любой столбец». Многие магазины KV на самом деле разрешены только для выбора на первичный ключ. Если вы посмотрите на MongoDB, вы обнаружите, что вы можете запросить любой столбец, который звучит как необходимая функция.

Другие советы

Я бы предложил использовать пары ключа / значения, где ключи будут действовать как имена столбцов, а значение будут их данными.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top