NewSQL初了解
NewSQL一词是由451 Group的分析师Matthew Aslett在研究论文中提出的。它代指对老牌数据库厂商做出挑战的一类新型数据库系统。NewSQL 是对各种新的可扩展/高性能数据库的简称,这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库支持ACID
NewSQL一词是由451 Group的分析师Matthew Aslett在研究论文中提出的。它代指对老牌数据库厂商做出挑战的一类新型数据库系统。NewSQL 是对各种新的可扩展/高性能数据库的简称,这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库支持ACID和SQL等特性。
分布式数据库公司VoltDB的首席技术官Michael Stonebraker表示NoSQL数据库可提供良好的扩展性和灵活性,,但他们也有自己的不足。由于不使用SQL,NoSQL数据库系统不具备高度结构化查询等特性。NoSQL其他的问题还包括不能提供ACID(原子性、一致性、隔离性和耐久性)的操作。另外不同的NoSQL数据库都有自己的查询语言,这使得很难规范应用程序接口。Stonebraker表示数据库系统的滞后通常可归结于多项因素。诸如以恢复日志为目的的数据库系统维持的缓冲区池,以及管理锁定和锁定的数据字段。在VoltDB的测试中发现以上这些行为消耗系统96%的资源。
相对于NewSQL系统虽然在的内部结构变化很大,但是它们有两个显着的共同特点:(1)它们都支持关系数据模型,(2) 它们都使用SQL作为其主要的接口。已知的第一个NewSQL系统叫做H-Store,它是一个分布式并行内存数据库系统。目前NewSQL系统大致分三类:
新架构
所述第一类型的NewSQL系统是完全新的数据库平台,它们均采取了不同的设计方法。它们大概分两类:
(1) 这类数据库工作在一个分布式集群的节点上,其中每个节点拥有一个数据子集。 SQL查询被分成查询片段发送给自己所在的数据的节点上执行。这些数据库可以通过添加额外的节点来线性扩展。现有的这类数据库有: Google Spanner, VoltDB, Clustrix, NuoDB.
(2) 这些数据库系统通常有一个单一的主节点的数据源。它们有一组节点用来做事务处理,这些节点接到特定的SQL查询后,会把它所需的所有数据从主节点上取回来后执行SQL查询,再返回结果。
SQL引擎
第二类是高度优化的SQL存储引擎。这些系统提供了MySQL相同的编程接口,但扩展性比内置的引擎InnoDB更好。这类数据库系统有:TokuDB, MemSQL。
透明分片
这类系统提供了分片的中间件层,数据库自动分割在多个节点运行。这类数据库包扩:ScaleBase,dbShards, Scalearc。
那么现有NewSQL系统厂商有哪些呢:
我们将包括(顺序随机)Clustrix、GenieDB、ScalArc、Schooner、VoltDB、RethinkDB、ScaleDB、Akiban、CodeFutures、ScaleBase、Translattice和NimbusDB,以及 Drizzle、带有 NDB的 MySQL 集群和带有HandlerSocket的MySQL。后者包括Tokutek和JustOne DB。相关的“NewSQL作为一种服务”类别包括亚马逊关系数据库服务,微软SQLAzure,Xeround和FathomDB。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

ECache是一種Java快取框架,提供了一種簡單且強大的方法來減少電腦應用的回應時間。它透過將資料儲存在記憶體中,使應用程式能夠更快地回應客戶端請求,並提高系統吞吐量。在本文中,我們將介紹ECache快取技術的一些基礎知識,包括它的優點、安裝和使用方式等。一、ECache的優點提高系統效能:ECache將快取資料儲存在記憶體中,這意味著應用程式

TRedis快取技術是一種高效能的記憶體快取技術,能夠提高網站或應用程式的效能和回應速度。在本文中,我們將介紹TRedis快取技術的基本概念,以及如何在應用程式中使用它。什麼是TRedis快取技術? TRedis是一種記憶體快取技術,它可以將經常使用的資料儲存在記憶體中,從而提高存取這些資料的速度。這種技術的主要思想是透過使用記憶體快取來減少對資料庫或磁碟

Redisson是一種基於Redis的Java應用程式快取解決方案。它提供了許多有用功能,使得在Java應用程式中使用Redis作為快取變得更加方便和高效。 Redisson提供的快取功能包括:1.分散式映射(Map):Redisson提供了一些用於建立分散式映射的API。這些映射可以包含鍵值對、哈希表項或對象,它們可以支援在多個節點之間共

JSP檔案開啟方式JSP(JavaServerPages)是一種動態網頁技術,它允許程式設計師在HTML頁面中嵌入Java程式碼。 JSP檔案是一個文字文件,其中包含HTML程式碼、XML標記和Java程式碼。當JSP檔案被要求時,它會被編譯成JavaServlet,然後由Web伺服器執行。開啟JSP檔案的方法有幾種方法可以開啟JSP檔案。最簡單的方法是使用文字編輯器,

Go和Golang是同一種程式語言,它們之間沒有實質的區別。 Go是該程式語言的正式名稱,而Golang則是Go語言開發者在網路領域中常用的簡稱。在本文中,我們將探討Go語言的特點、用途,以及一些具體的程式碼範例,幫助讀者更了解這門強大的程式語言。 Go語言是由Google開發的靜態編譯型程式語言,具有高效、簡潔、並發性強的特點,旨在提高程式設計師的工作效

了解localstorage:它是一種怎樣的資料庫技術?在Web開發中,資料的儲存和處理一直是一個重要的問題。隨著電腦技術的不斷發展,各種資料庫技術也相繼出現。其中,localstorage是一種被廣泛運用的資料庫技術。它是HTML5提供的一種本地儲存解決方案,可以在瀏覽器中儲存和讀取資料。本文將介紹localstorage的特點和使用方法,並給予具體的代

Linux運行級別簡介:了解Linux有幾個運行級別,需要具體程式碼範例在Linux作業系統中,運行級別(runlevel)是指系統的狀態或模式,它決定了哪些服務和進程會在系統啟動時自動運行。了解Linux的運作等級對於系統管理員和開發人員來說是非常重要的,因為它可以幫助他們管理系統的啟動和運行過程,並進行必要的調整和最佳化。 Linux系統中通常有七個運行級別,

Golang異或符是什麼?來了解一下吧!在Golang中,異或符號(^)是一種位元運算符,用來對二進制數進行位元異或運算。異或運算子的運算規則是:對應的二進位位元相同取0,不同取1。在Golang中,它不僅可以用於整數的二進位表示,還可以用於布林類型的值。本文將詳細講解Golang異或符的使用方法,並提供具體的程式碼範例。一、整數類型的異或運算在Golang中,使
