在Aerospike中的反向映射

huangapple go评论109阅读模式
英文:

Reverse mapping in aerospike

问题

我在aerospike中有一些记录,其键值对如下:

键:"1234"
值:{
	"XYZ":{
		"B":[1,3],
		"C":[3,4]
	}
}

键:"5678"
值:{
	"XYZ":{
		"B":[1,3,5],
		"C":[3,4]
	}
}

我想从集合中获取所有包含字段"B"的JSON值中包含3的键。在golang中有没有办法查询所有这样的键?

英文:

I have a few records in aerospike in following key-value pair :

Key : "1234" 
Value : {
			"XYZ":{
				"B":[1,3]
				"C":[3,4]
			}
		}

Key : "5678" 
Value : {
			"XYZ":{
				"B":[1,3,5]
				"C":[3,4]
			}
		}

I want to get all the keys from set where field "B" in json value contains let say 3. Is there any way to query all such keys in golang ?

答案1

得分: 4

是的,你可以在键为"B"的映射值上构建一个二级索引,然后运行一个二级索引查询来获取所有匹配的记录。

你可以使用等效的API在Go语言中进行相同的操作。

在这里有许多Java交互式代码示例:https://developer.aerospike.com/tutorials/java/cdt_indexing

例如,这是一个顶层示例,其中包含字符串值:

然后还有另一个示例,你可以在嵌套的子级上构建一个二级索引:

英文:

Yes, you can build a secondary index on the values in map key "B" ... at that nested level and then run a secondary index query to get all matching records.

You can do the same in Go using equivalent APIs.

Many Java interactive code examples at: https://developer.aerospike.com/tutorials/java/cdt_indexing

For example, this is top level example with string values:在Aerospike中的反向映射

Then another example where you can build a SI on nested sublevel:
在Aerospike中的反向映射

huangapple
  • 本文由 发表于 2023年1月13日 00:13:40
  • 转载请务必保留本文链接:https://go.coder-hub.com/75099262.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定