Database 如何处理数据库分片中的非规范化/二级索引?
假设我有一个带有2个二级索引的“消息”表:Database 如何处理数据库分片中的非规范化/二级索引?,database,scalability,denormalization,sharding,distributed-transactions,Database,Scalability,Denormalization,Sharding,Distributed Transactions,假设我有一个带有2个二级索引的“消息”表: “收件人id” “发件人\u id” 我想按“收件人id”切分“邮件”表。这样,要检索发送给某个收件人的所有消息,我只需要查询一个碎片 但同时,我希望能够查询某个发送者发送的所有消息。现在,我不想将该查询发送到“message”表的每个碎片。一种方法是复制数据,并用“发送者id”切分“message\u by\u sender”表 这种方法的问题是,每次发送消息时,我都需要将消息插入“message”和“message\u by\u sender”
- “收件人id”
- “发件人\u id”