Apache Ignite 中的 SQL 模式(Schema)管理機制

這段內容講的是 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;…