- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一款游戏,我正在使用排行榜来跟踪玩家的得分。还需要跟踪大约 200 个额外的统计数据。这些统计数据包括:击杀、死亡、游戏时间、使用的武器、获得的成就等等。
玩家感兴趣的是得分、击杀数、死亡数和比赛时间。所有其他统计数据不一定需要在游戏中显示,但如果我想查看它们或将它们与其他玩家进行比较,应该可以访问。预计要存储在此排行榜表中的玩家数量约为 200 万。
目前的设计是将玩家 ID 存储在一个表中,例如:player_id
, points
, stat_1
.. stat_200
, date_created
, date_updated
如果我想根据积分显示排序的排行榜,那么我必须在积分上放置一个索引,并使用选择查询对其进行排序,并将结果限制为每次返回 50。还有一些想法可以让玩家根据其他几个统计数据(例如最多可排序的 5 个统计数据)对排行榜进行排序,例如上场时间或死亡人数。
预计同时玩游戏的用户数量约为40k。也许有四分之一,但这真的是一个大概的数字,会主动浏览排行榜,其余的只会玩游戏并在完成后上传他们的分数。
我对以下这种方法有很多疑问:
最佳答案
1) 对于多个索引,更新表的成本会更高。这一切都归结为每个玩家状态写入数据库的频率。
2)只要索引足够小以适合RAM,它就会非常快。在那之后,性能受到了很大的打击。
3) 有时,如果将所需的所有字段添加到索引中,则可以获得性能,因为 DBMS 根本不需要访问该表。如果访问的字段与行的大小相比较小,则此方法最有可能起作用。
4) Oracle 可能会擅长为你做缓存,但如果你有大量用户都在做相同的查询,那么定期运行该查询并将结果存储在内存中(或内存映射文件)可能会更好)。
例如,如果高分列表被访问 50 次/秒,您可以通过每 2 秒转储一次该问题来减少 99% 的负载。
我对此的建议是:除非你需要,否则不要这样做。先测量性能,必要时再添加。
关于sql - oracle 中的排行榜设计和性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5831670/
我的数据库中有 2 个表,如下所示: 下面是团队表: id tname poule 1 ZF Eger heren1A 2 Pro Recco he
这期看标题已经能猜到了,主要讲的是成绩排行功能,还有对应的文件读写。那么废话不多说,让我们有请今天的主角...的设计稿: 那么主角是何方神圣呢?当然是图中的大框框—
我正在尝试在我的应用程序中实现 GameCenter。这是为了向我显示 GameCenter LeaderBoard,但它向我显示:没有项目。 -(IBAction) ShowLeader{ GKGa
这个问题在这里已经有了答案: MySQL - Get row number on select (6 个答案) 关闭 9 年前。 我有一个包含以下数据的表 USER_ID | REVENUE 1
我有一个排行榜,我想给每一行一个排名,代表他们有多少分。这是我到目前为止的代码。它工作正常,但是当两个玩家拥有相同数量的点数时,排名相同,例如,如果 DB 中有 2/2 的玩家都拥有 100 点,则他
我正在为即将到来的世界杯做一个小项目。我正在建立一个基于国家队小组的名册/排行榜/记分牌。我们的想法是获得有关小组内或淘汰赛阶段所有即将到来的比赛的信息(比分、比赛时间、比赛统计数据等)。目前我被数据
如何设置工具提示显示在所有元素之上?我需要分配坐标,以便工具提示不会关闭图表,但顶部 block 会关闭工具提示。 http://joxi.ru/L21PnlgTRPVxEm http://joxi.
我用 C# 创建了一个简单的排行榜应用程序。但是我注意到拉动和排序分数的问题。假设我在一个排序集 (95、12、60、50、66) 上运行 ZREVRANGE,然后它将按 95、66、60、50、12
我已经为我的应用设置了 google play 游戏服务并添加了排行榜。我在代码中添加了游戏 ID 和排行榜 ID。现在应用程序和游戏都已发布。 用于启动排行榜的代码 if(mclient.isCo
我目前有一些代码可以检测您在特定秒数内可以点击多少次 react 。 我正在尝试为每个人制作一个排行榜,以最高 CPS(每秒点击次数)保存前 10 名。否则代码工作完美,但我被困在排行榜上。 这是我的
当前是否有办法从网络读取 GameCenter 排行榜数据? 我正在寻找一种只读方式来在配套网站上显示排行榜。我不需要发布分数或以其他方式操作设备上的排行榜。 我感觉答案是否定的,我需要使用 Open
我正在尝试使用该按钮来拉出单个 View Gamecenter 排行榜,但无法真正弄清楚如何。我尝试了苹果论坛,但没有帮助,所以我来到了这里。帮助表示赞赏 最佳答案 将呈现 GKGameCenterV
我有一个包含以下列的表格: +----+--------+-----+------+-------+-------+-------+ | Id | Member | End | Done | Righ
我正在尝试用 MySQL 数据制作一个排行榜。 MySQL数据来自minecraft服务器上的插件。因此,我将插件的数据链接到名为 iConomy 的 MySQL 数据库 在数据库中我制作了 2 个
我有一些代码,可以计算用户在排行榜上的分数和位置,然后根据他们的分数/分数按降序显示它们。 现在我已经完成了编号,所以它看起来像这样 1 2 2 3 3 3 4 但是我想让这个更正确并根据之前的数字跳
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this qu
我对 Couchbase 数据库非常陌生,并且需要在我们的项目中构建排行榜解决方案。理想情况下,它应该像内存排序集一样工作:添加的每个项目为 O(log(N)),O(log(N)+M),其中 N 是排
我目前正在开发这个应用程序,用于跟踪每日运行并显示排行榜。这是针对一个类的,所以我不一定要寻找代码,只是关于如何进行的一些想法。无论如何,应用程序当前将获取输入信息(从底部文本字段),创建 RaceE
现在我以这种方式显示 SwarmConnect 在线排行榜: public void showLeaderboard() { SwarmLeaderboard.showLeaderboard(
是否可以轻松实现并使用 Javascript 完成,我不确定但是.. 如下面的代码所示,我有 5 个玩家,每个玩家的分数都不同。我正在寻找代码,以便它会根据玩家的分数自动重新列出玩家。理想情况下,如果
我是一名优秀的程序员,十分优秀!