问题标签 [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.
arrays - Mongodb:查找所有元素都存在于查询数组中的数组的文档,但文档数组可以更小
我的数据库中有一个集合,其中大多数文档都有一个数组字段。这些数组正好包含2 个元素。现在我想找到所有这些数组元素都是我的查询数组元素的所有文档。
示例文件:
查询数组:
查询应该找到前 3 个文档,但不是最后一个,因为我的查询数组中没有“4”。
预期结果:
期待一个有用的答案:)。
elasticsearch - Elasticsearch - 如果数组包含元素,则包含在构面中
我试图找出是否可以对一个字段进行分面/聚合,如果该字段(这是一个数组)包含 1 个或多个记录。
例如 - 假设我的索引中有 3 个文档,都在“用户”类型下。
我想要某种方式(使用聚合)来返回“拥有(或没有,因为我可以从他们的个人资料中的_totalHits)照片中减去的用户数量。” 在此示例中,预期结果将是2,因为 2 个用户有照片,或1,因为 1 个用户没有照片。显然,我想要的首选是返回有照片的用户数量的那个。
这可能吗?如果是这样 - 我将使用哪种类型的聚合来完成此操作?
nosql-aggregation - fpga系统的嵌入式NoSQL方法
在嵌入式设备上使用什么好的 NoSQL 系统?
- SQLite 对于大量信息来说太慢了。
- 需要在 fpga 上运行 SVM(支持向量机)
redis - 从 redis 中的通配符键获取/求和值
我在 redis 中有一个字符串类型的键值存储,具有这样的键 -
我可以使用这样的通配符查询检索/url-pattern/的所有键——
我想检索与此通配符/url-pattern/*对应的所有键的值
我试过这个
但它没有按预期返回数组。
如何检索与/url-pattern/*对应的所有键的值
我也想对值进行求和,但我认为 redis 中没有所谓的 SUM()
elasticsearch - Elasticsearch 聚合:是否可以在聚合中引用过滤器/查询数据
所以考虑这个数据:
映射
和一些示例数据来了解什么是什么
这个想法是有些事件时不时地独立发生,我们记录它们何时开始和何时结束。
我需要的是进行聚合,但如果没有一些外部脚本,我想不出办法。
聚合应该给我:在eventType “type1”开始之前 10 分钟到 0 分钟发生的所有eventTypes的列表,并在“type1 ”开始之后结束。
而且我不需要针对特定的“type1”事件而是针对所有事件,因此我的聚合应该为每个“type1”事件都有一个存储桶,然后在该存储桶中列出在“type1”之前最多 10 分钟发生的类型列表"但在 type1 以我们为此实例找到的这些类型的数量开始计数之后结束。
因此,据我了解,我需要某种方式来进行查询/过滤以获取所有 type1 事件,然后以某种方式在我的聚合中引用我的结果的日期字段,但我找不到如何或是否有可能。
我希望这是有道理的。
很抱歉这个问题很长,但我认为这个抽象的例子会让我的问题更清楚。
mongodb - Calculating collection stats for a subset of documents in MongoDB
I know the cardinal rule of SE is to not ask a question without giving examples of what you've already tried, but in this case I can't find where to begin. I've looked at the documentation for MongoDB and it looks like there are only two ways to calculate storage usage:
db.collection.stats()
returns the statistics about the entire collection. In my case I need to know the amount of storage being used to by a subset of data within a collection (data for a particular user).Object.bsonsize(<document>)
returns the storage size of a single record, which would require a cursor function to calculate the size of each document, one at a time. My only concern with this approach is performance with large amounts of data. If a single user has tens of thousands of documents this process could take too long.
Does anyone know of a way to calculate the aggregate document size of set of records within a collection efficiently and accurately.
Thanks for the help.
nosql-aggregation - Aerospike 聚集部分大小
我们正在使用“小型”仅内存 Aerospike 服务器来存储最近一小时的网站分析。最后一小时的数据大小约为 10 Gb。
我们尝试从 Aerospike 上的单独服务器(基于 Java 的客户端)执行一些聚合查询,如下所示(在 LUA 中):
根据文档,所有聚合都在 Aerospike 节点(在我们的例子中是单个节点)上完成,并在客户端上减少。
事实证明,aggregate() 函数只处理小批量数据,即 10-16 条记录。之后聚合结果被发送到客户端,由 reduce() 处理。
由于 reduce() 操作是在客户端执行的,这意味着服务器将至少向客户端发送 1/16 大小的数据。即数百兆字节的数据。谈论性能。
是否可以更改记录流聚合的“缓冲区大小”或“队列大小”或“任何大小”?即是否可以“调整” Aerospike 以每个节点仅调用一次 reduce() 函数?
data-modeling - 适用于多个用例的 Cassandra 列族好/坏
我有一个数据结构来存储不同的区域/位置,区域是城市的一部分,城市是州的一部分,州是国家的一部分。
要查询的几个用例是
U1:给定一个位置,获取城市、州、国家。U2 : 给定一个国家,州获得城市,地区的列表
我知道要存储在 cassandra 中的数据应该针对读取路径进行优化。
U1 的键是 {location, city, state, country}
U2 的键是 {国家、州、城市、位置}
想知道除了将值存储在两个列族中之外是否存在更好的方法
java - 架构从对关系 NoSql
我在 Parse.com 文档中遇到了这个架构问题。我有以下“模式”,称为 Debit :
from 和 to “列”是指向_User
表的指针。问题是,在我的 Android 应用程序中,我想根据登录用户显示from
和to
借记,但在我的适配器上只显示“未登录用户”用户。
我尝试or
在 Parse 上进行查询以获取所有借方查询,但我无法包含 User 指针,因为or
查询 Parse 不支持。
像这样:
但问题是在显示“不是我”适配器时:
适配器:
当然我需要获取用户,这在适配器中不是一个好主意。那么,数据库方面是否有更好的方法来改进这一点?
谢谢
mongodb - MongoDB中的一对多模式设计:我可以避免交叉嵌入和真正的链接吗?
我正在开发 T 恤的电子商务网站。T 恤有 8 种变体,所有这些都是“版本”(或服装系列)的一部分。我希望能够始终展示属于该版本的所有衬衫,但能够检查每件衬衫是否有货,以便表明这一点。
所以现在我有两个模式:衬衫模式和版本模式。它们是这样建模的(在猫鼬中):
所以模式的例子是:
我希望能够将版本嵌入到衬衫对象中,但是我不确定如何做到这一点。如果我在 ShirtSchema 中嵌入版本信息,那么一旦购买了所有裤子(即从数据库中删除),我似乎将无法检索版本信息。
但是,现在看来,我检查是否有库存某种颜色的衬衫的唯一方法如下:
- 检索版本架构。
- 循环遍历所有成员(以便我知道该版本的每个成员)
- 遍历整个衬衫系列并检查每种颜色的至少一件衬衫是否存在
这似乎有很多循环,我想知道是否有更简单的方法?