2015-04-01 102 views
2

我想使塞數據庫,該數據庫將包含以下結構:塞式數據庫設計

scheme = { 
    "name": "name", 
    "version": "version", 
    "fields": [ 
     { 
      "name": "clicks", 
      "total_count": 67238882342, 
     ... 
     } 
    ] 
} 

方案名稱和方案領域屬於不同的層次。但aerospike不支持UNION/JOIN操作。我怎樣才能設計我的數據庫?

回答

1

Eugeny,

你給該方案可以方便地存儲在塞。這些字段將是數據類型列表,任何集合都可以存儲在列表中。在你的情況下,它是一張地圖。我無法理解的一點是爲什麼你需要UNION或JOIN來存儲這個模式。

您需要了解的一件事是Aerospike是一個Key/Value商店,您可以在所需的列上創建二級索引。在最近的版本中,您也可以在集合上創建二級索引。請注意存儲在RAM中的二級索引。

您不能加入從集合到集合的分欄(列)。

希望這會有所幫助。

2

嘿,這很簡單,你不必擔心aerospike中的連接,因爲它是模式較少的數據庫。

,如果你的目標是像如下:

// JSON對象

{ 「名」: 「名字」, 「版本」: 「版本」,

//它是JSON的名單再次對象

"fields": [ 
    { 
     "name": "clicks", 
     "total_count": 67238882342, 
    ... 
    } 
] 

}

您可以使用可解決此類場景的大型訂單清單

鏈接:: https://www.aerospike.com/docs/guide/llist.html