> 为什么不能打梭哈 > 云數據庫 UXDB

產品概述

為云平臺打造的NewSQL數據庫系統

為云平臺打造的NewSQL數據庫系統

優炫云數據庫(UXSINO Database,簡稱UXDB)是一款為云平臺打造的NewSQL數據庫系統。UXDB全面兼容傳統的關系型數據庫的數據建模模式并保證事物處理的一致性(ACID),用戶可繼續使用其熟悉的SQL語言使用UXDB。同時,UXDB還吸納了NoSQL的橫向擴展性和高速的吞吐性能的特性,突破傳統關系型數據庫無法支持海量數據的局限,以及NoSQL數據存儲不能使用SQL語言進行查詢的不足。

支持大數據分析,UXDB產品除了支持標準SQL-2003的DDL,DML,DCL以外,還擴展了對JSON數據格式的支持,并實現了JSON數據項和其他數據庫表之間的鍵關聯關系,從而達到將結構化數據(數據庫表)和半結構化數據(JSON)的無縫結合,使UXDB的用戶可以在同一個數據庫產品中使用結構化和半結構化數據。

支持統計分析,UXDB內置了一些常用的基于大數據的統計,例如GROUPING SET、CUBE和ROLLUP是將數據統計之后進行歸集。此外,UXDB還支持SAMPLETABLE的概念,SAMPLETABLE適用于統計抽樣。

注:NewSQL是由Matt Aslett在2011年提出的新的數據庫分類。NewSQL數據庫在提供傳統的標準的SQL關系型數據庫的同時,吸納了NoSQL的擴展性和高效等特性,NoSQL是對不同于傳統的關系數據庫的數據庫管理系統的統稱。

產品生態環境

產品生態環境
優炫云數據庫核心組件由四個子系統(數據處理引擎、分布式存儲、云數據庫管理平臺、以及云數據庫開發IDE)、外部連接器、Plug-in框架和多語言鏈接渠道組成。
數據處理引擎和分布式存儲是優炫云數據庫的核心組成部分,所有的數據處理以及數據持久化都在這個核心部分中完成。
云數據管理平臺是基于Web的云管理平臺,可以在一個平臺中管理多個數據庫集群,并進行實時監控。
云數據庫開發IDE是一個基于桌面的應用,意在提供一套完整的可供客戶進行數據庫開發的集成環境。
此外,優炫云數據庫是基于擴展設計的,通過外部連接器可以與第三方數據源進行對接;同時,客戶可通過plug-in框架在數據庫中植入自定義的邏輯(如內置函數、特殊數據處理??櫚齲├綽憧突У睦┱剮孕枰?。

產品部署邏輯結構圖

產品部署邏輯結構圖




UXDB的邏輯部署架構既可以滿足以DBaaS(數據庫及服務)方式進行部署,也可以滿足以云數據庫環境進行部署。如左圖:
客戶端將數據寫入數據庫引擎后,實際數據將被分片寫入分布式存儲,分布式存儲會在存儲端持久化的時候進行多復本寫入。
當需要擴展存儲的時候,只需要增加更多的分布式存儲節點,系統將會自動平衡存儲,新的數據將寫入新增的存儲節點。

產品特性

特性描述

伸縮性
分布式存儲打破數據庫數據的上限
分布式存儲,是將數據分散存儲在多臺獨立的設備上。傳統的網絡存儲系統采用集中的存儲服務器存放所有數據,存儲服務器成為系統性能的瓶頸,也是可靠性和安全性的焦點,不能滿足大規模存儲應用的需要。分布式存儲采用可擴展結構,利用多臺存儲服務器分擔存儲負荷,利用位置服務器定位存儲信息,它不但提高了系統的可靠性、可用性和存取效率,還易于擴展。
分布式存儲提升數據訪問性能
磁盤的I/O一直是數據庫產品的軟肋(這里提及的磁盤是HDD、SSD),尤其當數據增加到TB甚至PB級別之后,這種I/O的延遲將變得更為明顯。分布式系統將數據訪問分散在不同的數據服務節點上,其效果是多個硬盤的同時讀寫操作(并發處理),該方式將傳統數據庫的磁盤I/O的壓力轉化為網絡I/O,從而提升整體性能。
高可用性
分布式存儲集群和容錯
UXDB是將數據處理(數據庫引擎)和數據存儲(分布式存儲)分離的數據庫系統,數據庫引擎不再參與數據的復制(replication),該工作將由分布式存儲接管,UXDB的分布式存儲系統支持:無復制(none replication)、讀復制(read only replication)和讀寫復制(read-write replication)。當啟動了復制功能后,同一份數據會分別存儲在不同的數據內容服務節點上(缺省為3份replication的副本),當集群中任何一臺數據內容服務結點失敗時,分布式存儲都將能夠提供完整的數據,這將不會影響數據庫引擎的正常工作。
此外,分布式存儲還包括DIR-目錄服務器、元數據和復制服務器,這兩種服務器均支持Hot-Standby的集群。
數據庫引擎的Hot-Standby集群
數據庫引擎支持Hot-Standby集群方式,該方式是通過以流方式實時復制WAL(write、head log)實現的。
流復制傳遞日志的方式有兩種,一種是異步方式,一種是同步方式。異步方式是事務提交后不必等日志傳遞到Standby即可返回,所以Standby數據庫通常比Primary數據庫落后很少;同步方式在Primary數據庫提交事務時,一定會等到WAL日志傳遞到Standby后才會返回,這樣當主備庫切換時可以做到零數據丟失。
數據一致性
支持ACID
ACID是指數據庫事務正確執行的四個基本要素的縮寫,包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持久性(Durability)。UXDB支持事務的這四種特性,可以使開發人員的開發工作得到最大限度的簡化,不必考慮過于復雜的并發問題,有易于保證程序在并發狀態下的正確性。
MVCC
MVCC(Multiversion Concurrency Control)即多版本并發控制,它可以避免讀寫事務之間的互相阻塞,與通常的封鎖技術相比極大的提高了業務的并發性能。
WAL (Write-Ahead Log)
當系統意外宕機后,恢復時需要回退未完成事務所做的更改,并確保已提交事務所作的更改均已生效。
支持多租戶
基于數據庫的多租戶
UXDB支持基于數據庫的多租戶,采用該種方式的多租戶使得數據庫的隔離較為徹底,從認證層面就開始隔離,數據庫與數據庫之間無法直接訪問,必須登陸到對方的數據庫中才能訪問記錄。
同時,UXDB支持進一步的通過預先配置的方式進行來源IP控制,即只允許某些IP白名單中的IP訪問數據庫。
基于SCHEMA的多租戶
UXDB支持基于SCHEMA的多租戶方式,該方式是單庫多SCHEMA的方式,通過UXDB的權限體系進行隔離用戶,訪問不同的SCHEMA。
基于數據和訪問的多租戶
除了上述兩種傳統的方式之外,UXDB還可提供第三種基于數據和訪問的多租戶模式,該方式是在同一個數據庫,同一個SCHEMA下,針對每個用戶建立一個不同的角色,對需要進行隔離的數據庫表,設置針對角色和操作的行級數據訪問控制(參見“(5)安全性-行級數據訪問控制”)來達到多個用戶在同一個數據庫中的數據訪問和操作范圍的控制和隔離。
安全性
全數據庫級別加密
UXDB支持全數據庫級別數據加密,即數據在持久化到分布式存儲之前就進行了數據加密。
列數據加密
UXDB支持對關鍵表的關鍵列進行加密設置,該設置將在該列數據持久化到分布式存儲之前就進行了數據加密。
表級訪問控制
UXDB支持基于用戶級別的對象訪問控制。
行級數據訪問控制
UXDB支持對行級數據的訪問授權,這是一種基于用戶的訪問控制,用來根據用戶權限來進行數據訪問的控制。
通信信道加密
UXDB支持全程通信信道的加密,全程通信信道指的是從客戶端到數據庫處理引擎,數據庫處理引擎到分布式存儲的所有通信信道。
基于會話的訪問隔離
UXDB采用多進程的方式處理請求,這確保了每個連接會話都將由一個獨立的UXDB服務進程來處理。
內置數據庫審計
UXDB提供可定制的基于會話和操作的數據庫審計功能,實時記錄數據庫活動,對數據庫操作進行細粒度審計(誰在什么時候做了什么以及結果)。它通過對用戶訪問數據庫行為的記錄、分析和匯報,用來幫助用戶事后生成合規報告、事故追根溯源,同時加強內外部數據庫網絡行為記錄,提高數據資產安全。
二次開發和擴展
UXDB是基于擴展設計的云數據庫系統,該系統提供了針對擴展外部數據源和自定義數據處理的二次開發和擴展的框架。

主要功能

  • (1)支持RDBMS的所有功能以及擴展外部數據源

    RDBMS即關系數據庫管理系統(Relational Database Management System),是將數據組織為相關的行和列的系統。
    UXDB數據庫支持標準SQL,以及常用的數據庫操作,包括觸發器、存儲過程和用戶自定義函數。
    UXDB數據庫通過Foreign Data Wrapper的方式為客戶提供自定義的外部數據源,UXDB數據庫將通過標準SQL查詢的方式對外部數據進行操作。
  • (2)支持JSON數據格式

    UXDB數據庫支持JSON(JavaScriptObjectNotation)數據類型,該類型可以作為數據表的一個數據項,并內置了針對JSON數據格式的操作函數,對JSON數據進行直接操作,而不需要將JSON數據讀出再在數據庫客戶端應用程序中進行再處理。此外,JSON數據項還可以作為鍵值與其他數據庫表的項目進行關聯和約束。
    JSON數據類型可以用來存儲JSON數據,當然也可以使用text、varchar等類型存儲JSON數據。而且JSON數據類型還可以使用豐富的函數。
  • (3)支持JDBC、ODBC和Hibernate

    UXDB數據庫提供UXDB的JDBC連接庫,以及為Hibernate提供UXDB的Delegator庫。
    UXDB提供了UXSQLDialect的驅動jar包,結合uxdb-jdbc的驅動jar包實現Hibernate框架連接數據庫。UXDB還支持ODBC方式連接數據庫。
  • (4)數據庫備份和恢復

    UXDB提供了一系列的數據庫備份和恢復的方式。目前這些方式包括:SQL純文本備份和基線備份。
  • (5)重置索引

    UXDB提供索引重置機制來確保當數據索引失效之后的恢復。
  • (6)產品的安裝和卸載不影響業務

    產品在安裝和卸載時均不需要重啟操作系統,可以保障一些重要的服務器不怠機,為客戶提供持續穩定的服務。

應用場景

  • 大數據處理

    大數據處理

    智慧城市、日志分析、數據倉庫、商業智能、機器學習、科學模擬等。
  • 大型聯機交易系統

    大型聯機交易系統

    銀行系統、賬務系統、高頻聯機交易系統。
  • 大型Web應用

    大型Web應用

    在線系統、在線查詢平臺、在線交易平臺。
  • 數據業務分析

    數據業務分析

    分布式分析處理,適用于商業分析、大數據挖掘等場景。
  • 數據異地容災

    數據異地容災

    災備解決方案,防止硬件故障導致數據丟失。

文檔中心

MORE+