问题标签 [secondary-indexes]

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 回答
127 浏览

aerospike - 无法在 MAPKEYS 索引上使用流 UDF

我有一个带有 map 作为数据类型的 bin,并在 MAPKEYS 上创建了一个辅助文件夹。现在我想在 MAPKEYS 索引上运行带有过滤器的 udf。它给出了错误AEROSPIKE_ERR_INDEX_NOT_FOUND。

这是我的 aql 查询:
aql> aggregate test.check_password('hii') on test.user in MAPKEYS where pids = 'test2' Error: (201) AEROSPIKE_ERR_INDEX_NOT_FOUND

而正常查询工作
aql> select * from test.user in MAPKEYS where pids = 'test2'
返回一些数据

插入用于测试的示例数据,在理想情况下,它将是 String 到 Object 的 Map

在此处输入图像描述

0 投票
1 回答
413 浏览

amazon-dynamodb - 读取 DynamoDB 表的不同本地二级索引键

假设我有一个staff主键组成的表作为organization_id分区排序键。另一方面,我有作为排序键的本地二级索引。staff_iddepartmentdepartment_id

很容易发现,有许多不同的项目staff_id共享相同的department索引键。我需要用给定的组织查询部门列表organization_id。有没有办法从staff表中检索这个列表?我不喜欢维护另一个departments表。我是 DynamoDB 的新手,所以如果您对整体表设计有任何意见/建议,非常欢迎。

0 投票
1 回答
603 浏览

aerospike - 从 aerospike 上的二级索引查询

我正在为我们的一个项目考虑使用 aerospike。所以我目前创建了一个 3 节点集群并在上面加载了一些数据。

样本数据

ns: imei

设置:imei_data

然后我使用 AQL 在 lcheck_epoch 上创建了一个二级索引,因为我想根据日期进行查询。

create index idx_lcheck on imei.imei_data (lcheck_epoch) NUMERIC

当我执行

select imsi from imei.imei_data where idx_lcheck=1476165806

我越来越

Error: (204) AEROSPIKE_ERR_INDEX

请解释。

0 投票
0 回答
140 浏览

hbase - 在 Apache Phoenix 中是否可以在 UDF 上创建一个功能索引,该索引用作来自两个不同表的参数列?

我们需要执行地理空间查询,我们使用地理空间函数对来自两个不同表(YELLOW_TAXI_TRIPS、TAXI_ZONES)的列进行操作。

UDF 用作连接两个表的比较。下面是我们要在其中应用功能索引来提高性能的查询。

0 投票
0 回答
419 浏览

cassandra - 如何在 cassandra 中索引高基数列

我有一列高基数,我需要索引该列,因为我必须对该列执行范围查询。我知道二级索引不适合 cassandra 中的高基数列,所以我尝试在该表上创建物化视图,将该列作为分区键,但是如果不允许对该视图进行过滤,则范围查询不起作用。对于大量数据,始终执行允许过滤查询不是一个好习惯。我应该使用什么架构?

其中 status_id 包含 id 序列,这是高基数字段。

我的查询就像

select * from input_log_profile_1 where cid='1_1' and status_id >= 1 and status_id <= 100 ;

0 投票
1 回答
723 浏览

indexing - Cassandra 中的二级索引支持?

博客上,我看到以下声明

二级索引

二级索引是 MongoDB 中的一流结构。这使得索引存储在 MongoDB 中的对象的任何属性变得容易,即使它是嵌套的。这使得基于这些二级索引进行查询变得非常容易 Cassandra 对二级索引只有粗略的支持。二级索引也仅限于单列和相等比较。如果您主要通过主键查询,那么 Cassandra 将非常适合您。

我的问题是 Cassandra 不能在单独的列上创建多个二级索引吗?

我们也不能在 Cassandra 上执行操作likefull text search因为它说二级索引仅适用于相等比较

更新:- cassandra 二级索引和 Mongo 二级索引有什么区别?

0 投票
1 回答
959 浏览

amazon-web-services - 使用全局二级索引的 AWS DynamoDB 项目访问(获取/放置/删除)

是否可以使用全局二级索引 (GSI) 访问(获取/放置/删除)DynamoDB 表的项目?到目前为止,我只看到了通过 GSI 进行查询的可能性。

0 投票
2 回答
1009 浏览

amazon-dynamodb - 在 dynamodb 中对 GSI 执行条件表达式查询

我知道 DynamoDB 不支持下面的查询,因为您必须在 HASH 键上使用相等表达式。 query({ TableName, IndexName, KeyConditionExpression: 'purchases >= :p', ExpressionAttributeValues: { ':p': 6 } }); 如何组织我的数据,以便我可以有效地查询购买的所有商品 >= 6 次?

现在我只有 3 列,orderID(主键)address、、confirmations(GSI)。

对这种类型的查询使用不同类型的数据库会更好吗?

0 投票
2 回答
814 浏览

cassandra - 按非主键列搜索 Cassandra 的最佳方法

我将历史时间序列数据存储到 Cassandra 中。

在“值”列中,我在序列化之后存储了整个 json。现在我想根据存储在 value 列中的 json 中的一些键来获取记录。

  1. 我可以通过根据要求添加新的聚类列来创建重复表。或者
  2. 我能想到Secondary INDEX

我在表中有 20+ 百万条记录。

最好的方法是什么?

0 投票
1 回答
437 浏览

cassandra - 为什么即使指定了主键,Cassandra 也不允许对没有二级索引的列进行查询/过滤

在创建 Cassandra 改进票之前,我很好奇即使指定了整个主键(partition_key 和 clustering_key),也不允许在没有二级索引的情况下进行列查询的技术限制是什么?通过 PK,Cassandra 已经在特定的分区行,并且可以避免基于适当的列值过滤返回该行。如果这可以通过仅指定分区键来完成,而不是返回这么多宽行并在客户端进行过滤,它可以在服务器上过滤数据本身并且只使用 ALLOW FILTERING 直接返回匹配的行 - 该客户端知道风险吗?

当您使用带有分区键查询的二级索引时,执行计划显示它首先使用分区键来获取行,然后才使用索引扫描的单个分区键(如果数据存在),然后可能就地过滤以返回共同的反正数据。当您使用多个二级索引时,有一个优化可以首先选择最优化的一个。

我确实了解默认二级索引树像任何其他索引数据结构一样在内存中维护,并且索引实际上是对分区键的反向列族查找,仅索引同一节点内的本地数据。

我的问题是围绕 Cassandra 无法做到这一点而不是在指定整个主键时将其推送给客户端的“巨大技术开销或限制”?

这两个都有道理。二级索引仅限于高基数列,然后,您不能创建许多二级索引而不滥用它们,也不能通过索引创建新的反向查找 CF 而不必担心空间和一致性。