这段内容讲的是 Apache Ignite 中的 SQL 模式(Schema)管理机制。我们可以从几个方面来理解:


一、什么是 Schema(模式)?

在 SQL 中,Schema 是数据库对象(如表、视图等)的命名空间和组织单位。Ignite 支持多个 Schema,便于组织和隔离不同的数据对象。


二、Ignite 中的默认 Schema

Ignite 默认提供了两个 Schema:

Schema 名说明
SYS系统 Schema,包含集群节点、缓存、SQL 元数据等系统视图。你不能在这个 Schema 中创建表或对象。详见 System Views。
PUBLIC默认 Schema。当你没有显式指定 Schema 时,Ignite 默认使用这个 Schema。例如通过 JDBC 连接时,不指定 Schema 就会连接到 PUBLIC。

三、自定义 Schema(Custom Schemas)

Ignite 允许用户定义自己的 Schema,主要有两种方式:

✅ 1. 通过配置文件定义自定义 Schema

你可以通过 SqlConfiguration.setSqlSchemas(...) 方法在集群启动前定义多个自定义 Schema。

示例配置(XML):
<bean class="org.apache.ignite.configuration.IgniteConfiguration"><property name="sqlConfiguration"><bean class="org.apache.ignite.configuration.SqlConfiguration"><property name="sqlSchemas"><list><value>MY_SCHEMA</value><value>MY_SECOND_SCHEMA</value></list></property></bean></property>
</bean>
连接指定 Schema 的方式(如 JDBC):
jdbc:ignite:thin://127.0.0.1/MY_SCHEMA

✅ 2. 通过 Cache 自动创建 Schema

Ignite 中的每个 Cache(缓存)都可以通过 SQL 访问,每个 Cache 对应一个 Schema,Schema 名称就是 Cache 的名称。

示例:

如果你创建了一个名为 PersonCache 的缓存,那么你可以通过 SQL 查询:

SELECT * FROM PersonCache.Person

这里:

  • PersonCache 是 Schema 名;
  • Person 是表名(对应缓存中的键值结构)。

四、通过 DDL 创建表时的 Schema 与 Cache 关系

当你使用 CREATE TABLE 语句创建表时,Ignite 会自动创建一个对应的 Cache(缓存)来存储数据。

示例 SQL:

CREATE TABLE City (ID INT PRIMARY KEY,Name CHAR(35),CountryCode CHAR(3),District CHAR(20),Population INT
) WITH "backups=1, CACHE_NAME=City";
  • 这里指定了 CACHE_NAME=City,表示这个表对应的缓存名为 City
  • 如果你不指定 CACHE_NAME,Ignite 会自动生成一个名字,格式为:
SQL_<SCHEMA_NAME>_<TABLE_NAME>

例如,如果在 MY_SCHEMA 中创建表 City,生成的缓存名是:

SQL_MY_SCHEMA_CITY

五、Schema 与 Cache 的映射关系总结

来源Schema 名对应的 Cache 名
默认PUBLIC自动生成(如 SQL_PUBLIC_TABLENAME)
自定义配置MY_SCHEMA自动生成或手动指定
缓存自动创建Cache 名即 Schema 名Cache 名
DDL 创建表指定的 Schema指定的 CACHE_NAME 或默认生成

六、总结表格

类型名称是否可写用途
SYS系统 Schema❌ 不可写存储集群信息、系统视图
PUBLIC默认 Schema✅ 可写默认连接目标
自定义 Schema用户定义✅ 可写用于组织 SQL 对象
Cache Schema与 Cache 同名✅ 可写用于 SQL 查询缓存数据
DDL 表 Schema指定或默认✅ 可写对应一个缓存

七、使用建议

  • 使用 Schema 来组织不同业务模块的数据,便于管理和权限控制;
  • 如果需要 SQL 和缓存 API 混合访问,注意 Cache 名和 Schema 名的对应关系;
  • 使用 DDL 创建表时,建议显式指定 CACHE_NAME,便于后续管理;
  • 如果集群中有多个应用连接 Ignite,建议为每个应用配置不同的 Schema,避免命名冲突。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/90002.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/90002.shtml
英文地址,请注明出处:http://en.pswp.cn/web/90002.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分布式光伏发电多合一(也称为五合一或者群调群控)终端,从功能、市场前景等等方面介绍

对于当下分布式光伏从业者&#xff0c;多合一终端经常被提及到。而且很多地区也有正常使用&#xff0c;目前来看&#xff0c;使用效果也是比较好的&#xff0c;满足当下的使用要求。并且价格也是可以接受。下面从几个方面简单介绍一下。功能介绍 5G通信功能 设备内置 5G通信模组…

AWE2026启动:加码AI科技,双展区联动开启产业新格局

7月22日&#xff0c;由中国家用电器协会主办的2026年中国家电及消费电子博览会&#xff08;AWE2026&#xff09;启动发布会在上海举行。据「TMT星球」了解&#xff0c;AWE2026将以“AI科技、慧享未来”为主题&#xff0c;首次启用“一展双区”的新模式&#xff0c;于2026年3月1…

Django基础(六)———数据库

前言上篇文章给大家介绍了DTL模板结构这篇文章将讲述Django框架与MySQL数据库的综合使用一、Django配置连接数据库在操作数据库之前&#xff0c;首先先要连接数据库&#xff0c;这里我们以配置MySQL为例来讲解。Diango连接数据库&#xff0c;不需要单独的创建一个连接对象。 只…

postgresql使用记录 SCRAM authentication requires libpq version 10 or above

文章目录 背景 如何用命令行连接数据库 报错 原因 解决方案 psql常见命令 🔍 **核心数据库操作命令** 1. **查看所有数据库** 2. **切换数据库** 3. **查看表及结构** 4. **执行 SQL 文件** 5. **退出 psql** ⚙️ **高级管理命令** ️ **注意事项** 背景 由于某种原因,无法…

2.0版本seata、nacos+ruoyi(微服务)配置

一、下载&#xff1a; seata下载&#xff1a;点击这里 nacos下载&#xff1a;点击这里 ruoyi&#xff08;微服务&#xff09;下载&#xff1a;点击这里 Git bash下载&#xff1a;点击这里 本文所用的版本&#xff1a; seata-2.2.0&#xff08;下图红色框框&#xff09;&a…

面试高频题 力扣 LCR 130.衣柜整理 洪水灌溉(FloodFill) 深度优先遍历(dfs) 暴力搜索 C++解题思路 每日一题

目录零、题目描述一、为什么这道题值得一看&#xff1f;二、题目拆解&#xff1a;核心要素与约束三、算法实现&#xff1a;基于 DFS 的解决方案代码逻辑拆解五、时间复杂度与空间复杂度时间复杂度空间复杂度六、坑点总结七、举一反三八、洪水灌溉&#xff08;Flood Fill&#x…

Ext4文件系统全景解析

目录Ext4文件系统全景解析&#xff1a;从inode到数据恢复实战1. Ext文件系统的"小区规划"&#xff1a;块组结构详解 &#x1f3d8;️1.1 块组&#xff1a;文件系统的基本管理单元1.2 超级块的"多重备份"机制 &#x1f6e1;️2. inode&#xff1a;文件的&qu…

贪心算法Day4学习心得

先来看第一道&#xff1a;860. 柠檬水找零 - 力扣&#xff08;LeetCode&#xff09; 有如下三种情况&#xff1a; 情况一&#xff1a;账单是5&#xff0c;直接收下。情况二&#xff1a;账单是10&#xff0c;消耗一个5&#xff0c;增加一个10情况三&#xff1a;账单是20&#…

接口自动化测试种涉及到接口依赖怎么办?

《接口自动化测试中接口依赖的处理方式及选择原则》在接口自动化测试中&#xff0c;接口依赖是指某个接口的请求参数、执行条件或测试结果依赖于其他接口的输出&#xff08;如返回数据、状态等&#xff09;。处理接口依赖是确保测试用例准确性和稳定性的关键&#xff0c;常见的…

hive分区表临时加载日批数据文件

源系统每日上传一个csv数据文件到数据中台指定目录&#xff0c;数据中台用hive表进行ETL工作。 先建一个外部分区表&#xff1a; create external table tmp_lease_contract ( contract_id string, vin string, amount float ) partitioned by (dt string) row format delim…

Python关于pandas的基础知识

一.扫盲&#xff08;一&#xff09;、pandas 是什么pandas 是 Python 的一个第三方数据处理库&#xff0c;它提供了高效、灵活的数据结构&#xff08;如 Series 和 DataFrame&#xff09;&#xff0c;能方便地对结构化数据进行清洗、转换、分析和处理。&#xff08;二&#xff…

React 英语单词补全游戏——一个寓教于乐的英语单词记忆游戏

预览&#xff1a;英语单词补全 &#x1f4d6; 产品概述 英语单词大冒险是一款专为 7-12 岁儿童设计的互动式英语学习游戏。通过听音频、补全单词的游戏方式&#xff0c;让孩子在轻松愉快的环境中提升英语词汇能力和听力水平。 &#x1f3af; 核心价值主张 寓教于乐: 将枯燥…

我的第一个开源项目 -- 实时语音识别工具

这是我的第一个开源项目&#xff0c;是我一直想做的一个小工具&#xff1a; 端到端实时语音转文字系统。 通过小程序和H5页面&#xff0c;用户可以实时采录音频&#xff0c;通过ws上传到java的netty server。 Java在经过权限验证、流量控制等操作之后&#xff0c;通过gRPC流…

AG32 mcu+cpld 联合编程(概念及流程)

在使用mcucpld联合编程之前&#xff0c;请确认已经熟练掌握mcu的使用方法&#xff0c;并且对cpld编程&#xff08;verilog语言&#xff09;有一定的基础。 另外&#xff0c;对AHB总线也需要有一定的了解。 这个章节分为两部分&#xff1a; 第一部分&#xff0c;展示联合编程…

Hadoop调度器深度解析:FairScheduler与CapacityScheduler的优化策略

Hadoop调度器概述在大数据处理的生态系统中&#xff0c;Hadoop作为分布式计算框架的核心&#xff0c;其资源调度机制直接决定了集群的吞吐效率和作业执行公平性。调度器作为Hadoop资源管理的中枢神经&#xff0c;通过协调计算资源与任务需求之间的动态平衡&#xff0c;成为支撑…

怎么自己搭建云手机

用闲置电脑搭建云手机 确保电脑安装 Ubuntu 20.04&#xff08;或其他支持Docker的Linux系统&#xff09;。 安装 Docker&#xff08;运行云手机的核心工具&#xff09;安装Redroid&#xff08;安卓容器&#xff09;运行安卓容器就欧克啦。 用云服务器搭建&#xff08;适合长…

网关:数据翻译、中转、协议转换与边缘计算

网关&#xff08;Gateway&#xff09;详解&#xff1a;翻译与中转站的核心作用 在计算机网络中&#xff0c;网关&#xff08;Gateway&#xff09;是一个非常重要的概念。它本质上是一个“翻译中转站”&#xff0c;其主要作用是将不同网络之间的数据进行“翻译”&#xff0c;并确…

UE5多人MOBA+GAS 番外篇:使用ECC(UGameplayEffectExecutionCalculation)制作伤害计算的流程

文章目录定义一些属性用于作为伤害基础还有获取要打出去的伤害创建一个ECC&#xff08;里面执行伤害的计算&#xff09;在执行ECC的GE之前需要修改ECC需要调用的值&#xff0c;也可以不改直接计算在属性中监听ECC输出的那个值然后处理扣血定义一些属性用于作为伤害基础还有获取…

SpringBoot实战0-5

接口文档&#xff1a;通俗的讲&#xff0c;接口文档能告诉开发者接口能返回的数据&#xff0c;以及为了获取这些数据&#xff0c;开发者需要输入什么样的数据&#xff0c;请求哪个接口&#xff08;即规范&#xff09;为什么使用接口文档&#xff1a;1、项目开发过程中前后端工程…

二、SpringBoot-REST开发

rest开发&#xff08;表现形式转换&#xff09;&#xff1a; 1、优点&#xff1a;隐藏访问资源的行为&#xff0c;无法通过地址得知对资源是何种操作&#xff0c;书写简化 2、GET查询 POST 新增/保存 PUT&#xff08;修改/更新&#xff09; DELETE&#xff08;删除&#xff09;…