OceanBase HTAP(Hybrid Transactional/Analytical Processing)是一种新型的数据库系统,它将事务处理和分析处理相结合,以提供高性能、可扩展性和可靠性。OceanBase HTAP 是由阿里巴巴集团开发的一款分布式数据库系统,它旨在为企业提供一个全新的解决方案,以解决传统数据库无法解决的问题。
OceanBase HTAP 的核心特性是将事务处理和分析处理相结合,以实现低延迟、高可用性、可扩展性和可靠性。OceanBase HTAP 具有全表扫描、列存储、并行处理、自适应优化、实时数据分区、海量数据存储能力以及其他特性。此外,OceanBase HTAP 还具有强大的安全保障能力,包括数据加密、权限管理、审计日志追踪以及其他安全机制。
// 使用 OceanBase HTAP 进行事务处理 // 创建连接 Connection conn = DriverManager.getConnection("jdbc:ob:host=localhost;port=8080"); // 创建语句对象 Statement stmt = conn.createStatement(); // 执行 SQL 语句 stmt.executeUpdate("INSERT INTO table_name VALUES (value1, value2, value3)"); // 关闭连接 conn.close();
使用 QB_NAME
Hint 来定义查询块的名称。然后,可以在外部查询的 Hint 中使用这个名称,也可以在内联视图的 Hint 中使用这个名称,从而影响查询在被命名查询块中的表上的执行。更多关于查询块名称的信息,请参阅文档 Hint 概述 中的在 Hint 中定义查询块。
以下是 QB_NAME
Hint 的语法:
如果两个或多个查询块具有相同的名称,或者同一个查询块两次被 Hint 指定了不同的名称,那么优化器将忽略所有引用该查询块的名称和 Hint。未使用 QB_NAME
Hint 命名的查询块具有由系统生成的惟一名称。这些名称可以显示在计划表中,也可以在查询块中的其他 Hint 中使用。
以下是 QB_NAME
Hint 的示例:
SELECT employee_id, last_name
FROM employees e
WHERE last_name = 'Smith';
READ_CONSISTENCY
Hint 指示服务器去指定某条 SQL 所读取的表模式为弱一致(指定参数
WEAK
)或强一致性(指定参数 STRONG
)。
以下是 READ_CONSISTENCY
Hint 的语法:
示例如下:
SELECT *
FROM employees
WHERE employees.department_id = 1001;
FROZEN_VERSION
Hint 指示服务器读取某个基线数据的版本。
以下是 FROZEN_VERSION
Hint 的语法:
示例如下:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
QUERY_TIMEOUT
Hint 指示服务器设定某条 SQL 执行时的超时时间,单位为微妙。
以下是 QUERY_TIMEOUT
Hint 的语法:
示例如下,当该查询 1 秒之内未执行完该语句即返回超时错误:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
LOG_LEVEL
Hint 指示服务器运行某句 SQL 时采用何种日志级别来执行。
以下是 LOG_LEVEL
Hint 的语法:
以下示例采用 DEBUG
日志级别来执行该 SQL 语句:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
USE_PLAN_CACHE
Hint 指示服务器执行某条 SQL 时是否要在计划缓存机制下运行,参数 NONE
为不执行计划缓存机制,参数 DEFAULT
表示按照服务器本身的设置来决定是否执行计划缓存机制。
以下是 USE_PLAN_CACHE
Hint 的语法:
示例如下,以下语句不执行计划缓存机制:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
TRANS_PARAM
Hint 指示服务器执行事务时是否要按照参数 param
指定的参数来执行,现在支持的参数只有事务层面的提前解行锁 FORCE_EARLY_LOCK_FREE
参数,FORCE_EARLY_LOCK_FREE
的值为 TRUE 时表示支持,FALSE 表示不支持。注意这里的参数名和参数值要用单引号(‘ ’)引起来,当参数的值为数值型时可以不用引号引起来。
以下是 TRANS_PARAM
Hint 的语法:
示例如下:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
TRACING
Hint 指示服务器对某些执行计划中的算子采用 TRACING
跟踪。
以下是TRACING
Hint 的语法:
示例如下:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
STAT
Hint 指示对某些执行计划中的算子采用 STAT
显示信息。
以下是 STAT
Hint 的语法:
示例如下:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
TOPK
Hint 指示服务器设置模糊查询的精度和最小行数。其中参数 PRECSION
的值为整型,取值范围为 0~100,表示执行模糊查询时的行数百分比,参数 MINIMUM_ROWS
用来指定最小的返回行数。
以下是 TOPK
Hint 的语法:
示例如下:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
TRACE_LOG
Hint 指示服务器收集跟踪日志(Trace log),收集的跟踪日志(Trace log)在运行 SHOW TRACE
命令时展示。
以下是 TRACE_LOG
Hint 的语法:
示例如下:
SELECT *
FROM employees e
WHERE e.department_id = 1001;
OceanBase 中用户可以创建三种注释:SQL 语句的注释:被存储为执行 SQL 语句的应用程序代码的一部分。Schema 与非 Schema 对象的...
显示有关另一种能力的简要信息。根据提供或显示内容的人员,AbilityForm 的呈现涉及以下两个角色:供应商:提供要显示的 Ability...
提供一个类供您观察Ability或AbilitySlice的生命周期。Ability和AbilitySlice具有自己的生命周期,并将其生命周期状态分配给Life...