- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在为我们的社交网络使用 Datastax Cassandra,我们正在设计/数据建模我们需要的表,这让我们感到困惑,我们不知道如何设计一些表,我们遇到了一些小问题!
据我们了解,对于每个查询,我们必须有不同的表,例如,用户 A 关注用户 C 和 B。
现在,在 Cassandra 中我们有一个表是 posts_by_user
:
user_id | post_id | text | created_on | deleted | view_count
likes_count | comments_count | user_full_name
我们有一个根据用户关注者的表,我们将帖子的信息插入到名为 user_timeline
的表中,当关注者用户访问第一个网页时,我们从数据库中获取帖子user_timeline
表。
这是user_timeline
表:
follower_id | post_id | user_id (who posted) | likes_count |
comments_count | location_name | user_full_name
首先,此数据建模是否适用于关注基础(关注者,关注行为)社交网络?
现在我们要计算帖子的点赞数,如您所见,我们在两个表中都有点赞数(user_timeline
, posts_by_user
),假设一个用户有 1000 个关注者,那么通过每个点赞操作,我们必须更新 user_timeline
中的所有 1000 行和 posts_by_users
中的 1 行;这是不合逻辑的!
那么,我的第二个问题是应该如何?我的意思是(最喜欢的) table 应该如何?
最佳答案
考虑使用 posts_by_user 作为帖子信息的元数据。这将允许您容纳 user_id、post_id、message_text 等,但您将抽象view_count、< em>likes_count 和 comments_count 到一个计数器表中。这将允许您获取帖子的元数据或计数器,只要您有 post_id,但您只需更新一次 counter_record。
DSE 柜台文件: https://docs.datastax.com/en/cql/3.1/cql/cql_using/use_counter_t.html
但是,
下面的文章是与 Cassandra 数据建模相关的非常好的起点。也就是说,在回答这个问题时需要考虑一些事情,其中很多取决于系统的内部结构以及查询的结构。前两条规则表述为:
规则 1:在集群周围均匀分布数据
规则 2:最小化读取的分区数
花点时间考虑“user_timeline”表。
user_id 和 created_on 作为复合键* - 这将是理想的,如果
user_id 和 hash_prefix 作为复合键* - 这将是理想的如果
follower_id 和 created_on 作为复合键* - 这将是理想的如果
这些是 1 个表的 3 个示例,我想传达的要点是围绕要执行的查询设计表。也不要害怕跨多个表复制数据,这些表被设置为处理各种查询,这就是 Cassandra 的建模方式。花一点时间阅读下面的文章并观看 DataStax Academy 数据建模类(class),以熟悉其中的细微差别。我还在下面提供了一个示例架构,以涵盖我之前指出的基本计数器架构。
* 使用复合键的原因是您的 PRIMARY KEY 必须是唯一的,否则具有现有 PRIMARY KEY 的 INSERT 将成为 UPDATE。
http://www.datastax.com/dev/blog/basic-rules-of-cassandra-data-modeling https://academy.datastax.com/courses
CREATE TABLE IF NOT EXISTS social_media.posts_by_user (
user_id uuid,
post_id uuid,
message_text text,
created_on timestamp,
deleted boolean,
user_full_name text,
PRIMARY KEY ((user_id, created_on))
);
CREATE TABLE IF NOT EXISTS social_media.user_timeline (
follower_id uuid,
post_id uuid,
user_id uuid,
location_name text,
user_full_name text,
created_on timestamp,
PRIMARY KEY ((user_id, created_on))
);
CREATE TABLE IF NOT EXISTS social_media.post_counts (
likes_count counter,
view_count counter,
comments_count counter,
post_id uuid,
PRIMARY KEY (post_id)
);
关于社交网络的 Cassandra 数据建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37512446/
有没有人将 Socialize (getsocialize.com) 与 PhoneGap 集成?我正在开发一个 PhoneGap 应用程序,所以所有的 UI 都是 HTML5,但我的客户希望我们将
晚安 我试图掌握社交 SSO(Facebook/Google 等)如何在微服务架构中工作的概念。 场景 假设我有 2 个后端微服务(Order、User)和一个前端(WebApp) 用户:包含用户个人
Socialblade如何使用youtube api生成live subscriber count? 每个 channel 每秒更新一次。那会不会轻易超过速率限制? 他们从app store desc
我正在尝试在我的(maven)spring MVC secure(spring security)应用程序中配置springsocial,但是当我尝试访问/connect/或/connect/prov
我有一张 table CREATE TABLE `tbl_users` ( `user_id` int(11) NOT NULL auto_increment, `user_username`
这是当前的样本结构 Posts(Collection) - post1Id : { viewCount : 100, likes : 45,
我正在使用快速入门示例中的 Spring Social 和 Thymeleaf 进行开发,但我意识到每个 Controller 只支持一个 Facebook 对象。这意味着示例无法为多个用户提供支持,
我关注了基本的 Spring Social Facebook,它很有效。但它要求我登录浏览器。 您知道如何使用在 Spring 程序中输入的电子邮件和密码登录吗? 图表: 其他程序(发送电子邮件和密码
我想获取我关注的用户帖子列表。在conrtoller我写: @posts = Post.where(id: current_user.followers(User).map(&:id)); 在 Vie
我试图了解 ProviderSignInController 是做什么的,但我很难理解它。 因此,当我单击使用 facebook 登录时,我会转到 facebook 登录页面,然后在输入我的凭据后调用
我正在使用 Spring Boot starter social Facebook 来通过 Facebook 对用户进行身份验证/授权。 我想添加一些 Permissions ,例如 邮箱 为了检索用
我正在使用 Spring Social 通过 Facebook 或 LinkedIn 获取信息。它工作完美,我得到了我想要的,但我遇到了一个问题:它非常慢。 例如,使用 linkedin 访问我的联系
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
我们正在构建一些“sociable”单元测试(大于“单元”但明确不调用外部服务或数据库的测试)。我想知道如果 future 的开发人员编写了一个确实调用的测试,C# 中是否有一种方法可以让测试运行器抛
有什么方法可以使 Follow Us 文本与 sprite 图像内联? http://jsfiddle.net/e2ScF/66/ Follow us:
我是新来的,在互联网上看过很多这个网站和视频,现在我的 CSS fort 有问题,我会打个招呼,看看是否有人可以帮助我。我正在纠正一个网站,并在我的导航栏上有一个滑动条。但是文本 witch is h
对于那些只想切入正题并知道我在问什么的人。我的问题在下面的段落中进行了编号和加粗。 我费了好大劲想弄清楚1.)如何为 Android 社交网络应用程序实现适当的通知系统?到目前为止,我收集到的所有
我使用 spring 安全登录。现在我正在尝试添加 spring social facebook 登录,但是我得到很多错误信息。 首先,当我尝试使用与 spring social guide 相同的方
我在使用 spring-social 获取 id 和 name 以外的参数时遇到问题。 依赖关系: org.springframework.social
我正在启动 ServiceStack 社交引导 API 示例来看看它是如何工作的。 我点击了“登录”链接,但什么也没发生。我查看了代码(参见附件图片1) sign in 在“登录”链接的点击事件中,我
我是一名优秀的程序员,十分优秀!