如何在“ Friendfeed方式存储无模式数据”中实现多对多关系?

时间:2019-01-16 07:28:23

标签: mysql sql database friendfeed

在这篇帖子(How FriendFeed uses MySQL to store schema-less data)中,“布雷特·泰勒(Bret Taylor)”介绍了他们如何在Friendfeed中使用mysql,这是一篇老文章,但有趣的是,我只是想在我的学校项目中使用他的技术,基本上是创建一个简单的小型社交网站类似于Twitter的网络,因此会有帖子,并且帖子可以有喜欢和评论,而用户将有关注者,因此帖子和评论可以是这样的实体:-

post = {
    'id'          : 234424,
    'user_id'     : 123,
    'status_text' : 'Hello checking',
    'created_at'  : <some_time_stamp>,
    'kind'        : 'post'
}

comment = {
    'id'           : 4496,
    'post_id'      : 234424,
    'comment_text' : 'hii thats a nice post',
    'created_at'   : <some_time_stamp>,
    'kind'         : 'comment'  
}

我有一个entities表和一个索引表来查找帖子的评论(我有更多,但是有问题的假设我只有这两个)

create table `entities` (
    id      int auto_increment unique unsigned primary key,
    body    mediumblob,
    updated timestamp
)

create table `index_post_id` (
    post_id   int,
    entity_id int
)

现在从这个index_post_id中我可以找到帖子的评论,但是我对post likesuser followers的实现方式感到困惑,我知道我将不得不创建一个单独的表,但是如何? So my question is how to implement many-to-many entity relation in this situation ?请不要提出替代解决方案,我只是想学习如何实施此替代方法。对不起,英语不好:(

0 个答案:

没有答案