问题标签 [nosql-aggregation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
856 浏览

cassandra - Cassandra CQL上两个字段相乘的总和

我有统计表。stat_date、views(计数器)、amount(十进制)

我想将字段相乘并聚合。它在 MySQL 中是这样工作的。

从统计数据中选择总和(观看次数 * 金额);

但不适用于卡桑德拉。它有函数或udf吗?

谢谢。

我为这个问题创建了 udf 函数。所以这很好用。

并对所有行求和。

0 投票
2 回答
1461 浏览

mongodb - 用于帖子和共享的 Mongodb 模式

我是 mongodb NoSQL概念的新手,并且停留在我无法决定对最适合我的目的的模式进行建模的地方。

我需要以这样一种方式设计架构,使我的最终结果为Posts 和 Shares 按时间排序。为此,我考虑了两种选择:


选项 1:帖子和共享的不同集合

帖子集合的架构

共享集合模式


选项 2:在帖子本身中嵌入分享

Post 的新架构


现在哪一个可能是更好的选择?选项 1 在查询中存在问题,因为 mongodb 中没有连接,而选项 2 将导致相同数据的复制,并且可以为数十万用户增长到数十亿以上。

0 投票
0 回答
75 浏览

graph - ArangoDB/AQL:以树格式投影图遍历结果

如何编写 AQL 以 JSON 树格式投影图遍历结果?

例如。NamedGraph-“ExampleGraph”

0 投票
1 回答
152 浏览

jquery - Couchbase - 存储大量列表的最佳实践

Couchbase 是否能够存储多个列表,每个列表包含 100,000-100,000,000 条记录?

记录以“数据系列”方式(或延迟队列)存储并进行相应查询。


例子

列表数据集结构:

  • ID
  • list_id # 记录所属的列表
  • next_check 时间戳
  • 地位
  • 其他一些领域..

典型用例:

选择过去具有 next_check 和特定状态的所有记录。

然后我可以执行几个操作:

  • 使用新的 next_check/status 值更新记录。
  • 或删除记录并插入新记录。

问题

我想了解的是:

  1. 如果 Couchbase 可以处理如此庞大的数据集?
  2. 存储和查询这种结构的最佳方法是什么?
  3. 最后,有没有我需要注意的 Couchbase 限制(即不要使用超过 1000 个存储桶)?

谢谢!

0 投票
1 回答
408 浏览

arrays - 在 MongoDB 上执行聚合/设置交集

我有一个查询,在对样本数据集执行一些聚合后,将以下示例视为中间数据;

fileid 字段包含文件的 id,用户数组包含用户数组,这些用户对相应文件进行了一些更改

我需要为此找到解决方案-> 任何两个用户对至少两个相同的文件进行了一些更改。所以输出结果应该是

非常感谢您的意见。

0 投票
1 回答
1830 浏览

json - 过滤嵌入大型数组文档时的查询性能 Mongodb

在我的 mongodb 集合中,我有 1500 万个具有以下 json 结构的文档。每个 json 文档的 playfields 数组字段中的嵌入文档计数都会发生变化。我所有的查询都涉及根据 playfields 数组字段中的数据过滤文档。所有查询的执行时间都超过 2 分钟。

嵌入文档中的 value 字段存储多种数据类型(int、string)。这是糟糕的设计吗?

我在写查询时做错了吗?我是否缺少任何索引?我是否必须将数据从单个文档中的嵌入文档移动到多个集合?

多条件查询(有问题发布)需要 3 分钟才能执行。过滤同一集合时使用的语法是否错误?我的目标是返回满足所有这些条件的文档。

如果我将查询分成几部分,则每个都需要 ms 才能执行。1) db.playfieldvalues.find({$or:[ {playfields: {$elemMatch:{ID:"Play.NHL.NHLAwayTeam" ,value: "NYI NEW YORK ISLANDERS"}}},{playfields: {$elemMatch: {ID:"Play.NHL.NHLAwayTeam" ,value:"TB TAMPA BAY LIGHTNING"}}}]}) 2) db.playfieldvalues.find({playfields: {$elemMatch:{ID:"Play.NHL.NHLHomeTeam" ,value: "BOS BOSTON BRUINS"}}}) 3) db.playfieldvalues.find({playfields: {$elemMatch:{ID:"Play.NHL.NHLEventX" ,value: {$gt: 0, $lt: 25 }}}}) 4) db.playfieldvalues.find({playfields: {$elemMatch:{ID:"Play.NHL.NHLEventScoreDifferential" ,value: {$gt: 0}}}})

在此处输入图像描述 在此处输入图像描述

创建的索引:

db.collection.ensureIndex({ "playfields.ID": 1, "playfields.value": 1 })

查询运行:

1:

2:

JSON 文档示例:

附加第二个查询的解释输出: 在此处输入图像描述 在此处输入图像描述

在此处输入图像描述

0 投票
0 回答
225 浏览

arrays - MongoDB对数组中嵌入文档的查询不返回结果

我在查询名为Geolytix Supermarkets 2015 年 1 月更新 的数据集时遇到问题 问题是我运行的查询要么返回所有结果,要么根本没有结果。这是数据集的快照:

我知道这个数据结构是嵌入/嵌套在数组中的文档,为了检索我必须进入数组和文档的数据。为此,我使用点符号尝试了这些查询:

这个返回整个数据集,所以很明显这不是正确的。然后我尝试了这些:

这三个人什么都没有回来。我已经研究了文档,根据它,至少其中一种方法应该有效。我在这里做错了什么?我考虑过使用聚合框架,但对于像这样的简单查询来说,这似乎过于复杂。有人可以确认我是否尝试了正确的方法或者我是否必须使用聚合?

0 投票
1 回答
679 浏览

sql - SQL 中的 Firebase 连接、分组、聚合等价物

我来自 SQL,第一次尝试 Firebase。Firebase 可以进行此查询吗?

如果是的话,你能给我一个关于 Firebase for SQL 的博客、教程或高级课程的链接吗?(最好是 Web 版 Firebase)

0 投票
1 回答
1173 浏览

mongodb - MongoDb - 使用查找聚合时如何只返回嵌套子文档的字段?

我对 MongoDb 很陌生,所以我习惯了 SQL。现在我的数据库中有两个集合:

1)系列(具有嵌套的子文档)

2)Review(决定参考episode subdocument,因为会有很多review)

请参阅这张图片以获得更好的理解。

在此处输入图像描述

现在我想实现以下目标。对于每条评论(在这种情况下是两条),我想获得剧集名称。

我尝试了以下方法:

问题在于,这(当然)不仅返回了所引用剧集的标题,而且还返回了整个季节文档。

有关我当前的输出,请参见下图。

在此处输入图像描述

我不知道如何实现它。请帮我。我正在使用 Mongo 3.4.9

0 投票
1 回答
55 浏览

mongodb - MongoDB聚合结果差异

我正在尝试编写一个查询来查找集合中的所有文档,其中“日期”<当前日期,标志 = true,按日期排序(降序)并将结果限制为(例如)10 个文档,然后选择所有剩余的集合中的文档(满足日期和标志条件)以执行更新。SQL 等效项是:

到目前为止,我有:

是否可以在数据库中进行减法,或者我唯一的选择是在客户端处理两个查询的结果?