NewSQL (ニュー・エスキューエル)は、従来のデータベースシステムのACID 特性を維持しながら、オンライントランザクション処理 (OLTP)の作業負荷に対してNoSQL システムのスケーラビリティ を提供しようとするリレーショナルデータベース管理システム の一種である[ 1] [ 2] [ 3] [ 4] 。
関心の高いデータを扱う多くの基幹システム (財務や受注処理システムなど)は、従来のリレーショナルデータベースで扱うには大規模すぎるものの、NoSQLシステムには実用的ではないトランザクション と一貫性の要件を持っている[ 5] [ 6] 。こうした組織でこれまで利用可能だった唯一の選択肢は、より高性能なコンピュータを購入するか、従来のDBMS にリクエストを分散させるカスタムミドルウェア を開発することであった。どちらのアプローチも、高額なインフラコストや開発コストを特徴とする。NewSQLシステムは、このような矛盾を解決しようとする試みである。
歴史
この用語は、新世代のデータベース管理システムの台頭について論じた2011年の研究論文で、451グループ (英語版 ) のアナリストであるマシュー・アスレット(Matthew Aslett)が最初に使用した[ 5] 。最初のNewSQLシステムの1つは、H-Store (英語版 ) 並列データベース (英語版 ) システムであった[ 7] [ 8] 。
アプリケーション
典型的なアプリケーションは、OLTP トランザクション量が大きいことが特徴である。OLTPトランザクションは、
短時間で終了し(つまり、ユーザーの応答待ち(ユーザーストール)がない)、
トランザクションごとに少量のデータにアクセスし、
インデックス付きのルックアップ(テーブルスキャンなし)を使用し、
少数のフォーム(異なる引数を持つ少数のクエリー)を持つ[ 9] 。
しかし、中にはハイブリッドトランザクション/分析処理 (英語版 ) (HTAP)アプリケーションをサポートするものもある。このようなシステムでは、大規模なリカバリ (英語版 ) や同時実行制御 を省略することで、性能とスケーラビリティを向上させる[ 10] 。
NewSQLデータベースの一覧
特徴
NewSQLデータベースソリューションに共通する際立った2つの特徴は、NoSQLデータベースのオンラインスケーラビリティと、SQL を主要インターフェースとするリレーショナルデータモデル (ACID特性を含む)をサポートすることである[ 11] 。
NewSQLシステムは、大まかに3つのカテゴリーに分類することができる[ 2] [ 12] 。
新規アーキテクチャ
さまざまな内部アーキテクチャを採用したNewSQLシステム。一部のシステムは、シェアードナッシング ノードのクラスタを採用し、各ノードがデータのサブセットを管理している。これには、分散同時実行制御 、フロー制御、分散クエリ処理などのコンポーネントが含まれる。
SQLエンジン
第2のカテゴリーは、SQL 用に最適化されたストレージエンジン である。これらのシステムでは、 SQLと同じプログラミング・インタフェースを提供し、ビルトインエンジンよりも拡張性が高い。
透過的シャーディング
これらのシステムは、Raft またはPaxos コンセンサスアルゴリズムを利用して、データベースを自動的に複数のノードに分割する。
参照項目
脚注
^ Aslett, Matthew (2011年). “How Will The Database Incumbents Respond To NoSQL And NewSQL? ”. 451 Group. 2020年2月22日閲覧。
^ a b Pavlo, Andrew; Aslett, Matthew (2016). "What's Really New with NewSQL?" (PDF) . SIGMOD Record . 2020年2月22日閲覧 。
^ Stonebraker, Michael (2011年6月16日). “NewSQL: An Alternative to NoSQL and Old SQL for New OLTP Apps ”. Communications of the ACM Blog. 2020年2月22日閲覧。
^ Hoff, Todd (2012年9月24日). “Google Spanner's Most Surprising Revelation: NoSQL is Out and NewSQL is In ”. 2020年2月22日閲覧。
^ a b Aslett, Matthew (2011年4月6日). “What we talk about when we talk about NewSQL ”. 451 Group. 2020年2月22日閲覧。
^ Lloyd, Alex (2012年). “Building Spanner ”. Berlin Buzzwords. 2020年2月22日閲覧。
^ Aslett, Matthew (2008年3月4日). “Is H-Store the future of database management systems? ”. 2020年2月22日閲覧。
^ Monash, Curt (2008年2月20日). “H-Store: Complete destruction of the old DBMS order? ”. ZDNet . 2020年2月22日閲覧。
^ Stonebraker, Michael ; et al. (2007). "The End of an Architectural Era (It's Time for a Complete Rewrite)" (PDF) . VLDB '07: Proceedings of the 33rd international conference on Very large data bases . Vienna, Austria. 2020年2月22日閲覧 。
^ Stonebraker, Michael; Cattell, R. (2011). “10 rules for scalable performance in 'simple operation' datastores”. Communications of the ACM 54 (6): 72. doi :10.1145/1953122.1953144 .
^ Cattell, R. (2011). “Scalable SQL and NoSQL data stores” . ACM SIGMOD Record 39 (4): 12–27. doi :10.1145/1978915.1978919 . http://cattell.net/datastores/Datastores.pdf 2020年2月22日閲覧。 .
^ Venkatesh, Prasanna (2012年1月30日). “NewSQL - The New Way to Handle Big Data ”. 2020年2月22日閲覧。