gpt4 book ai didi

database-design - 类似于 Facebook 的通知系统的数据库架构

转载 作者:行者123 更新时间:2023-12-03 10:00:42 25 4
gpt4 key购买 nike

我正在尝试设计一个类似于 facebook 的通知系统,但我已经达到了一点砖墙。我的要求是能够支持无限数量的通知类型,这些通知类型可能需要呈现不同类型的元数据。

我在想我将按如下方式设计架构:

**Notification**
Id (int)
TypeId (int)
RecipientId (int)
SenderId (int)
SendDateTime (DateTime)
Read (bool)
MessageData (...Blob?)
Deleted (bool)

**NotificationType**
Id
Name
Description

我真的很想尽量避免在我的数据库中存储 HTML 字符串,但是,我也不是特别喜欢存储 blob。

有可能我可以查看 NotificationType 表并引用另一个存储特定于该类型的数据的表,但是,这意味着每次我创建一个新的通知类型时,我都需要创建一个新表。我相信我也会让自己进入一个不得不编写动态 SQL 来获取数据的世界。

有人对我有什么建议吗?

最佳答案

这是我最终解决这个问题的方法。

Notifications Schema

我决定使用字典来存储每种通知类型独有的数据。然后我将该字典对象序列化为二进制字符串,并将其与每个通知一起存储在数据库中。我为每个包含占位符的通知类型分配了一个模板,即。 '{song-title}' 我可以用我的字典对象中的值快速替换。

关于database-design - 类似于 Facebook 的通知系统的数据库架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15013713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com