Database design Cassandra中的基本WhatsApp数据库设计

Database design Cassandra中的基本WhatsApp数据库设计,database-design,cassandra,whatsapp,nosql,Database Design,Cassandra,Whatsapp,Nosql,开始讨论NoSQL中的WhatsApp数据库设计。我在Cassandra中为基本功能(聊天列表、好友列表、聊天)设计了数据库 create table friendship(user_id,friend_id,friend_name,mobile_no,status,primary key((user_id),friend_id)) create table chat_list(user_id,message_time,friend_id,last_message,unread_count,p

开始讨论NoSQL中的WhatsApp数据库设计。我在Cassandra中为基本功能(聊天列表、好友列表、聊天)设计了数据库

create table friendship(user_id,friend_id,friend_name,mobile_no,status,primary key((user_id),friend_id))

create table chat_list(user_id,message_time,friend_id,last_message,unread_count,primary key((user_id),(message_time)))

create table chat(user_id,friend_id,message_time,message,primary key((user_id,friend_id),message_time))

如果可以设计得更好,请提供意见。

你不能笼统地回答这个问题。在cassandra中,您必须首先使用查询设计——根据每个必需的查询,您可以开始设计强非规范化的表


你不能笼统地回答这个问题。在cassandra中,您必须首先使用查询设计——根据每个必需的查询,您可以开始设计强非规范化的表


这就是我所做的,我们需要查询用户的联系人列表,第一个表将提供该列表,第二个表将提供聊天列表查询,第三个表将用于与朋友聊天。好的。对于这3个查询,我将以相同的方式实现它。您还可以为时间戳设置描述顺序…这就是我所做的,我们需要为用户查询联系人列表,这将由第一个表提供,聊天列表查询将由第二个表提供,第三个表将用于与朋友聊天。好的。对于这3个查询,我将以相同的方式实现它。您还可以为时间戳设置描述顺序。。。