我是新来的卡桑德拉。据我所知,可以每密钥空间被存储的表的最大数目是Integer.MAX_VALUE的。然而,什么是从这样一个大数目表的业绩看(速度,存储等)的影响是什么?是否有关于任何建议?
虽然有合法的用例有很多在卡桑德拉的表,他们是罕见的。您的使用案例可能是其中之一,但要确保它是。没有knowning更多关于你正在试图解决这个问题,这显然难以给予指导。许多表将需要更多的资源,很明显。多少?这取决于设置和使用。
举例来说,如果你有一千个表,并在同一时间写信给所有的人都将有RAM争,因为会有memtables为他们每个人,并且有一定的开销,每个的memTable(多少取决于其版本卡桑德拉,设置等)。
不过,如果你有一千个表,但在同一时间不写于所有的人,都会有竞争少。仍然有每桌的开销,但会有更多的RAM保持周围活动的表的memtables。
这同样适用于磁盘IO。如果你读,并在同一时间内磁盘将会做更多的随机IO写了很多不同的表。
只要有大量的表格是不是一个大问题,即使是你能有多少的限制 - 你可以有你想要的前提是你有足够的内存来保持这种跟踪它们的结构为多。有大量的表格和阅读,并在同一时间写他们都将是一个问题,虽然。这将需要更多的资源不是做相同数量的读取和写入更少的表。
如果您可以将数据分割成多个表,甚至上千,我的意见是有益的。
优点:
缺点:
此外,检查出的链接,他们帮了我大忙 http://manuel.kiessling.net/2016/07/11/how-cassandras-inner-workings-relate-to-performance/ https://www.infoq.com/presentations/Apache-Cassandra-Anti-Patterns
请随意编辑自己的帖子,我还挺新的大数据