Вы можете моделировать отношения «один-к-одному», которые в противном случае были бы распространены на двух таблицах в одном наборе аэрокосмических технологий, используя список сложных типов и карту. Таким образом, у комбинированного продукта может быть «контейнер компонентов», который представляет собой список объектов карты, каждый из которых является продуктом. Или вы можете иметь «компоненты», чтобы быть списком идентификаторов продуктов, затем пакетно читать эти продукты на основе идентификаторов в списке.
Однако вы также можете моделировать отношения «многие ко многим» аналогично RDBMS с таблицей пересечений. У вас нет JOIN, но вы можете выполнять отдельные запросы и полагаться на то, что аэрокосмические ключевые значения и пакетные операции намного быстрее, чем РСУБД.
Так, например, вы можете иметь таблицу пересечений store_products, где вы можете хранить идентификатор магазина и продукта. Вы создаете вторичный индекс как для идентификатора магазина, так и для идентификатора продукта, и это позволяет вам делать запросы. Если вы ищете все магазины, в которых находится определенный продукт, вы делаете запрос, а затем извлекаете объекты хранилища из таблицы хранилища. Если вы ищете все продукты в магазине, вы запрашиваете где-то, где store_id = x, а затем выполняете чтение в пакетном режиме для этих продуктов.
Надеюсь, это ответит на ваш вопрос.
Возможный дубликат [Отношения в аэросике] (http://stackoverflow.com/questions/27411433/relationships-in-aerospike) –