3.2. 从 Data Grid 控制台和 CLI 查询缓存
Data Grid Console 和 Data Grid 命令行界面(CLI)可让您查询索引和非索引的远程缓存。您还可以使用任何 HTTP 客户端通过 REST API 索引和查询缓存。
此流程解释了如何对存储 Person
实例的远程缓存进行索引和查询。
先决条件
- 至少有一个正在运行的 Data Grid 服务器实例。
- 具有创建权限的 Data Grid 凭证。
流程
在 Protobuf 模式中添加索引注解,如下例所示:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Data Grid CLI 中,使用带有
--upload=
参数的schema
命令,如下所示:schema --upload=person.proto person.proto
schema --upload=person.proto person.proto
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建名为 ProtoStream 编码的人员 的缓存,并将 Data Grid 配置为索引您的 Protobuf 模式中声明的实体。
以下缓存会索引上一步中的
Person
实体:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 CLI 中,使用带有
--file=
参数的create cache
命令,如下所示:create cache --file=people.xml people
create cache --file=people.xml people
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在缓存中添加条目。
要查询远程缓存,需要包含一些数据。在本例中,创建使用以下 JSON 值的条目:
PersonOne
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PersonTwo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PersonThree
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 CLI 中,使用
put
命令和--file=
参数来添加每个条目,如下所示:put --encoding=application/json --file=personone.json personone
put --encoding=application/json --file=personone.json personone
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 提示在 Data Grid Console 中,在使用自定义 类型为 JSON 格式添加值时,您必须为 Value 内容类型 字段选择 Custom Type。
查询您的远程缓存。
通过 CLI,从远程缓存的上下文中使用
query
命令。query "from org.infinispan.example.Person p WHERE p.name='Person' ORDER BY p.age ASC"
query "from org.infinispan.example.Person p WHERE p.name='Person' ORDER BY p.age ASC"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查询会返回所有带有以升序与
Person
匹配的条目。