我想听听您对广告代理商数据库潜在解决方案的建议。
我们希望构建一个能够以我们所知道的方式跟踪用户的系统 他们在广告上做了什么,以及在哪里。
广告类型很多,其中一些也是FORMS,因此用户可以填写数据。 每个表单都不同,但我们不想为每个表单创建表格。
我们考虑创建一个包含1k列的WIDE表,每种类型数十个,并存储数据。
简而言之:
应用程序逻辑会将数据映射到相关的cols中,以便我们以后能够搜索和更新这些文档。
你怎么看待这个?
答案 0 :(得分:2)
小心在Cassandra中动态生成表。当您有太多表时,您将开始遇到问题,因为每个表的内存开销很大。每Jonathan Ellis:
Cassandra将为每个CF的记忆保留至少1MB:http://www.datastax.com/dev/blog/whats-new-in-cassandra-1-0-performance
即使是每日表在Cassandra中也不是一个好主意(每个表格的表格更糟糕)。我建议您构建一个可以保存所有数据的表格,并且您知道这些表格可以很好地扩展 - 请使用cassandra-stress进行验证。
此时,听取了mikea的建议并开始考虑您的访问模式(请参阅Patrick的video series),您可能需要构建其他表以满足您的查询需求。
注意:对于希望在c *中使用无模式选项的任何人: https://blog.compose.io/schema-less-is-usually-a-lie/ http://rustyrazorblade.com/2014/07/the-myth-of-schema-less/