2012-01-14 66 views
0

我想知道,如果BigTable的對單元格內容的大小的上限規模的上限。通過BigTable單元格,我的意思是表格特定列族中的單元格,特定的行和特定的時間戳。如果是,那麼上限是多少,如果不是,那麼單元的大小可以放大多少,而不會對性能產生負面影響?BigTable的設計 - 一個BigTable的細胞

Bigtable的紙說,每一個的SSTable文件64Kb的塊內部和索引。這是否意味着索引的關鍵是row + column + timestamp(其中+表示串聯),並且由某個鍵映射的值是64kb的相應單元格?那麼這是否意味着一個BigTable單元不能超過64 Kb?

謝謝

+0

以及先生。聰明的褲子...如果你沒有什麼可說的,你最好不要留下這個...... http://www.usenix.org/event/osdi06/tech/chang/chang_html/ – swanar 2012-01-14 15:11:41

回答

1

你是指google的大表的具體實現嗎?我想只有谷歌有人可以回答這個問題。

該文件本身不限制細胞爲64 kb。雖然它沒有提到它,但我想細胞可以跨越多個sstable區塊。

大表數據模型的主要開放源代碼實現的兩個都允許細胞大於64KB。 Apache Cassandra的技術限制爲2GB,但實際限制要小得多。 Apache HBase常見問題解答建議不要使用超過10MB的單元大小,但我不確定實際的技術限制。

+0

這非常有幫助。謝謝! – swanar 2012-01-14 18:12:16

0

根據Designing Your Schema的BigTable的文檔中有推薦的限制和用於單個值的硬限制。

推薦限制:〜10個Mebibytes(10.4858兆字節)

硬限制:100個Mebibytes

然而,值得注意的是,也有建議和用於行硬限制,並且具有足夠的細胞符合推薦/硬性限制的可能會超出行限制。