Oracle Coherence中文教程二十六:使用Coherence Query语言

时间:2022-08-28 07:40:44

使用Coherence Query语言

本章介绍如何使用连贯性的查询语言(CohQL)互动与连贯性高速缓存。 CohQL是一个重量轻语法(SQL的传统),用于执行高速缓存操作上的连贯群集。语言可用于以编程方式或从一个命令行工具。

本章包含以下各节:

    了解连贯性查询语言语法

    使用命令行工具CohQL

    大厦过滤器在Java程序

    其他相干查询语言范例

注意事项:

    虽然可能会出现CohQL语法类似于SQL,重要的是要记住,不是SQL的语法,实际上是更多的上下文相关的Java持久化查询语言(JPQL)标准。

    CQL(连续化查询语言)是一种查询语言涉及到复杂事件处理(CEP),不应该被混淆与CohQL

26.1理解coherence查询语言语法

以下各节描述的功能由CohQL提供的。每节描述一个特定的语句,它的语法,以及一个例子。你可以找到多个查询的例子,在附加连贯性查询语言的例子

注意事项:
CohQL不支持子查询。

在本节包括以下主题:

    查询语法基础知识
    检索数据
    缓存的生命周期管理
    使用缓存数据
    使用索引
    发出多个查询语句
    查看查询成本和效益

仅供参考,表26-1列出了查询语句的连贯性,条款,按字母顺序排列的表达式。

26-1连贯性查询语言报表

For this statement, clause, or expression...

See this section

BACKUP CACHE

"Writing a Serialized Representation of a Cache to a File"

bind variables

"Using Bind Variables"

CREATE CACHE

"Creating a Cache"

CREATE INDEX

"Creating an Index on the Cache"

DELETE

"Deleting Entries in the Cache"

DROP CACHE

"Removing a Cache from the Cluster"

DROP INDEX

"Removing an Index from the Cache"

ENSURE CACHE

"Creating a Cache"

ENSURE INDEX

"Creating an Index on the Cache"

GROUP BY

"Aggregating Query Results"

INSERT

"Inserting Entries in the Cache"

key() pseudo-function

"Using Key and Value Pseudo-Functions"

path-expressions

"Using Path-Expressions"

RESTORE CACHE

"Loading Cache Contents from a File"

SELECT

"Retrieving Data from the Cache"

SOURCE

"Processing Query Statements in Batch Mode"

UPDATE

"Changing Existing Values"

value() pseudo-function

"Using Key and Value Pseudo-Functions"

WHERE

"Filtering Entries in a Result Set"

26.1.1查询语法基础

本节介绍了一些基本语法,如路径表达式,绑定变量,伪功能块的语法。

26.1.1.1使用路径表达式

CohQL 是主要构建路径的表达式,路径表达式是用来浏览图的对象实例。一个标识符在一个路径表达式是用来表示一个属性在Java Bean意义。它的背后是一个的ReflectionExtractor所创建的前面加上一个get和首字母大写。由 "dot" (.) 字符,代表对象遍历元素分离。例如,下面的路径表达式用于导航对象结构:

a.B.c

它反射地调用这些方法:

getA().getB().getC()

26.1.1.2使用绑定变量