1122:
1132:
1142:
52:
and consistency requirements that are not practical for NoSQL systems. The only options previously available for these organizations were to either purchase more powerful computers or to develop custom
114:
73:
analyst
Matthew Aslett in a 2011 research paper discussing the rise of a new generation of database management systems. One of the first NewSQL systems was the
732:
481:
384:
715:
432:
727:
455:
407:
48:
that handle high-profile data (e.g., financial and order processing systems) are too large for conventional relational databases, but have
222:
The two common distinguishing features of NewSQL database solutions are that they support online scalability of NoSQL databases and the
110:
61:. Both approaches feature high infrastructure costs and/or development costs. NewSQL systems attempt to reconcile the conflicts.
23:
1166:
1125:
798:
687:
503:
1181:
326:
1145:
851:
246:
561:
Stonebraker, Michael; Cattell, R. (2011). "10 rules for scalable performance in 'simple operation' datastores".
1102:
749:
1041:
89:
34:
45:
1036:
1067:
786:
242:
990:
980:
756:
265:. These systems provide the same programming interface as SQL, but scale better than built-in engines.
26:
1077:
810:
609:
1176:
355:
278:
1026:
680:
274:
1107:
1062:
739:
604:
290:
113:(HTAP) applications. Such systems improve performance and scalability by omitting heavyweight
1082:
836:
648:
1135:
1072:
954:
924:
793:
744:
295:
49:
8:
1092:
985:
970:
897:
722:
532:
528:
118:
245:
nodes, in which each node manages a subset of the data. They include components such as
177:
1087:
1031:
1000:
949:
841:
781:
673:
622:
241:
NewSQL systems adopt various internal architectures. Some systems employ a cluster of
907:
761:
77:
1097:
944:
934:
902:
626:
614:
570:
540:
VLDB '07: Proceedings of the 33rd international conference on Very large data bases
223:
130:
105:
have a small number of forms (a small number of queries with different arguments).
1171:
1005:
975:
929:
710:
305:
258:
165:
1057:
995:
939:
912:
805:
766:
589:
150:
665:
1160:
876:
861:
155:
618:
574:
408:"Google Spanner's Most Surprising Revelation: NoSQL is Out and NewSQL is In"
192:
866:
846:
171:
140:
273:
These systems automatically split databases across multiple nodes using
1010:
919:
881:
856:
203:
54:
208:
145:
70:
533:"The End of an Architectural Era (It's Time for a Complete Rewrite)"
871:
826:
696:
135:
74:
385:"NewSQL: An Alternative to NoSQL and Old SQL for New OLTP Apps"
327:"How Will The Database Incumbents Respond To NoSQL And NewSQL?"
198:
187:
771:
233:
NewSQL systems can be loosely grouped into three categories:
160:
30:
831:
300:
182:
58:
38:
262:
227:
482:"Is H-Store the future of database management systems?"
504:"H-Store: Complete destruction of the old DBMS order?"
560:
249:, flow control, and distributed query processing.
1158:
88:Typical applications are characterized by heavy
695:
433:"What we talk about when we talk about NewSQL"
399:
349:
347:
681:
41:guarantees of a traditional database system.
426:
424:
301:Distributed Relational Database Architecture
57:that distributes requests over conventional
527:
461:. Berlin Buzzwords (published June 5, 2012)
382:
353:
344:
124:
99:touch small amounts of data per transaction
688:
674:
111:hybrid transactional/analytical processing
649:"NewSQL - The New Way to Handle Big Data"
646:
608:
421:
318:
647:Venkatesh, Prasanna (January 30, 2012).
92:transaction volumes. OLTP transactions;
29:that seek to provide the scalability of
587:
354:Pavlo, Andrew; Aslett, Matthew (2016).
268:
37:(OLTP) workloads while maintaining the
1159:
501:
479:
430:
383:Stonebraker, Michael (June 16, 2011).
324:
96:are short-lived (i.e., no user stalls)
669:
453:
332:. 451 Group (published April 4, 2011)
16:Relational database management system
590:"Scalable SQL and NoSQL data stores"
405:
236:
102:use indexed lookups (no table scans)
1141:
226:(including ACID consistency) using
13:
502:Monash, Curt (February 20, 2008).
257:The second category are optimized
14:
1193:
480:Aslett, Matthew (March 4, 2008).
431:Aslett, Matthew (April 6, 2011).
406:Hoff, Todd (September 24, 2012).
1140:
1130:
1121:
1120:
387:. Communications of the ACM Blog
356:"What's Really New with NewSQL?"
1131:
640:
581:
554:
247:distributed concurrency control
83:
521:
495:
473:
447:
376:
252:
1:
311:
230:as their primary interface.
174:was formerly known as MemSQL.
35:online transaction processing
7:
1167:Database management systems
697:Database management systems
284:
217:
69:The term was first used by
27:database management systems
10:
1198:
1103:Object–relational database
64:
1116:
1078:Federated database system
1050:
1019:
963:
890:
819:
811:Blockchain-based database
703:
563:Communications of the ACM
325:Aslett, Matthew (2011).
125:List of NewSQL-databases
78:parallel database system
1182:Distributed data stores
619:10.1145/1978915.1978919
575:10.1145/1953122.1953144
1108:Transaction processing
1063:Database normalization
1006:Query rewriting system
531:; et al. (2007).
291:Transaction processing
109:However, some support
1083:Referential integrity
281:consensus algorithm.
224:relational data model
1073:Distributed database
588:Cattell, R. (2011).
529:Stonebraker, Michael
454:Lloyd, Alex (2012).
296:Partition (database)
269:Transparent sharding
1093:Relational calculus
971:Concurrency control
178:TIBCO Active Spaces
119:concurrency control
1088:Relational algebra
1032:Query optimization
837:Armstrong's axioms
456:"Building Spanner"
46:enterprise systems
1154:
1153:
762:Wide-column store
757:Document-oriented
597:ACM SIGMOD Record
542:. Vienna, Austria
237:New architectures
1189:
1144:
1143:
1134:
1133:
1124:
1123:
1098:Relational model
1068:Database storage
945:Stored procedure
690:
683:
676:
667:
666:
660:
659:
657:
655:
644:
638:
637:
635:
633:
612:
594:
585:
579:
578:
558:
552:
551:
549:
547:
537:
525:
519:
518:
516:
514:
499:
493:
492:
490:
488:
477:
471:
470:
468:
466:
460:
451:
445:
444:
442:
440:
428:
419:
418:
416:
414:
403:
397:
396:
394:
392:
380:
374:
373:
371:
369:
360:
351:
342:
341:
339:
337:
331:
322:
195:Elastic Database
131:Apache Trafodion
1197:
1196:
1192:
1191:
1190:
1188:
1187:
1186:
1177:Data management
1157:
1156:
1155:
1150:
1112:
1058:Database models
1046:
1015:
1001:Query optimizer
976:Data dictionary
959:
930:Transaction log
886:
842:Codd's 12 rules
815:
745:Column-oriented
711:Object-oriented
699:
694:
664:
663:
653:
651:
645:
641:
631:
629:
610:10.1.1.692.2621
592:
586:
582:
559:
555:
545:
543:
535:
526:
522:
512:
510:
500:
496:
486:
484:
478:
474:
464:
462:
458:
452:
448:
438:
436:
429:
422:
412:
410:
404:
400:
390:
388:
381:
377:
367:
365:
358:
352:
345:
335:
333:
329:
323:
319:
314:
306:Distributed SQL
287:
271:
259:storage engines
255:
239:
220:
166:Pivotal GemFire
127:
86:
67:
17:
12:
11:
5:
1195:
1185:
1184:
1179:
1174:
1169:
1152:
1151:
1149:
1148:
1138:
1128:
1117:
1114:
1113:
1111:
1110:
1105:
1100:
1095:
1090:
1085:
1080:
1075:
1070:
1065:
1060:
1054:
1052:
1051:Related topics
1048:
1047:
1045:
1044:
1039:
1034:
1029:
1027:Administration
1023:
1021:
1017:
1016:
1014:
1013:
1008:
1003:
998:
996:Query language
993:
988:
983:
978:
973:
967:
965:
961:
960:
958:
957:
952:
947:
942:
937:
932:
927:
922:
917:
916:
915:
910:
905:
894:
892:
888:
887:
885:
884:
879:
874:
869:
864:
859:
854:
849:
844:
839:
834:
829:
823:
821:
817:
816:
814:
813:
808:
803:
802:
801:
791:
790:
789:
779:
774:
769:
764:
759:
754:
753:
752:
742:
737:
736:
735:
730:
720:
719:
718:
707:
705:
701:
700:
693:
692:
685:
678:
670:
662:
661:
639:
580:
553:
520:
494:
472:
446:
420:
398:
375:
343:
316:
315:
313:
310:
309:
308:
303:
298:
293:
286:
283:
270:
267:
254:
251:
243:shared-nothing
238:
235:
219:
216:
215:
214:
211:
206:
201:
196:
190:
185:
180:
175:
169:
163:
158:
153:
151:Google Spanner
148:
143:
138:
133:
126:
123:
107:
106:
103:
100:
97:
85:
82:
66:
63:
22:is a class of
15:
9:
6:
4:
3:
2:
1194:
1183:
1180:
1178:
1175:
1173:
1170:
1168:
1165:
1164:
1162:
1147:
1139:
1137:
1129:
1127:
1119:
1118:
1115:
1109:
1106:
1104:
1101:
1099:
1096:
1094:
1091:
1089:
1086:
1084:
1081:
1079:
1076:
1074:
1071:
1069:
1066:
1064:
1061:
1059:
1056:
1055:
1053:
1049:
1043:
1040:
1038:
1035:
1033:
1030:
1028:
1025:
1024:
1022:
1018:
1012:
1009:
1007:
1004:
1002:
999:
997:
994:
992:
989:
987:
984:
982:
979:
977:
974:
972:
969:
968:
966:
962:
956:
953:
951:
948:
946:
943:
941:
938:
936:
933:
931:
928:
926:
923:
921:
918:
914:
911:
909:
906:
904:
901:
900:
899:
896:
895:
893:
889:
883:
880:
878:
877:Surrogate key
875:
873:
870:
868:
865:
863:
862:Candidate key
860:
858:
855:
853:
850:
848:
845:
843:
840:
838:
835:
833:
830:
828:
825:
824:
822:
818:
812:
809:
807:
804:
800:
797:
796:
795:
792:
788:
785:
784:
783:
780:
778:
775:
773:
770:
768:
765:
763:
760:
758:
755:
751:
748:
747:
746:
743:
741:
738:
734:
731:
729:
726:
725:
724:
721:
717:
714:
713:
712:
709:
708:
706:
702:
698:
691:
686:
684:
679:
677:
672:
671:
668:
650:
643:
628:
624:
620:
616:
611:
606:
602:
598:
591:
584:
576:
572:
568:
564:
557:
541:
534:
530:
524:
509:
505:
498:
483:
476:
457:
450:
434:
427:
425:
409:
402:
386:
379:
364:
363:SIGMOD Record
357:
350:
348:
328:
321:
317:
307:
304:
302:
299:
297:
294:
292:
289:
288:
282:
280:
276:
266:
264:
260:
250:
248:
244:
234:
231:
229:
225:
212:
210:
207:
205:
202:
200:
197:
194:
191:
189:
186:
184:
181:
179:
176:
173:
170:
167:
164:
162:
159:
157:
156:MySQL Cluster
154:
152:
149:
147:
144:
142:
139:
137:
134:
132:
129:
128:
122:
120:
116:
112:
104:
101:
98:
95:
94:
93:
91:
81:
79:
76:
72:
62:
60:
56:
51:
50:transactional
47:
42:
40:
36:
32:
28:
25:
21:
776:
654:February 22,
652:. Retrieved
642:
632:February 22,
630:. Retrieved
603:(4): 12–27.
600:
596:
583:
566:
562:
556:
546:February 22,
544:. Retrieved
539:
523:
513:February 22,
511:. Retrieved
507:
497:
487:February 22,
485:. Retrieved
475:
465:February 22,
463:. Retrieved
449:
439:February 22,
437:. Retrieved
413:February 22,
411:. Retrieved
401:
391:February 22,
389:. Retrieved
378:
368:February 22,
366:. Retrieved
362:
336:February 22,
334:. Retrieved
320:
272:
256:
240:
232:
221:
193:TransLattice
108:
87:
84:Applications
68:
43:
33:systems for
19:
18:
1146:WikiProject
1037:Replication
925:Transaction
867:Foreign key
847:CAP theorem
794:Multi-model
435:. 451 Group
253:SQL engines
172:SingleStore
141:CockroachDB
1161:Categories
1011:Query plan
964:Components
882:Unique key
799:comparison
733:comparison
723:Relational
716:comparison
312:References
204:YugabyteDB
55:middleware
24:relational
1020:Functions
955:Partition
782:In-memory
740:Key–value
605:CiteSeerX
569:(6): 72.
213:SurrealDB
209:SequoiaDB
146:Couchbase
71:451 Group
1126:Category
1042:Sharding
898:Relation
872:Superkey
827:Database
820:Concepts
285:See also
218:Features
136:Clustrix
115:recovery
1136:Outline
935:Trigger
891:Objects
627:3357124
75:H-Store
65:History
1172:NewSQL
950:Cursor
908:column
777:NewSQL
625:
607:
199:VoltDB
188:TokuDB
20:NewSQL
940:Index
903:table
806:Cloud
772:NoSQL
767:Graph
704:Types
623:S2CID
593:(PDF)
536:(PDF)
508:ZDNet
459:(PDF)
359:(PDF)
330:(PDF)
279:Paxos
161:NuoDB
44:Many
31:NoSQL
991:ODBC
981:JDBC
920:View
857:Null
852:CRUD
832:ACID
787:list
750:list
728:list
656:2020
634:2020
548:2020
515:2020
489:2020
467:2020
441:2020
415:2020
393:2020
370:2020
338:2020
275:Raft
261:for
183:TiDB
90:OLTP
59:DBMS
39:ACID
986:XQJ
913:row
615:doi
571:doi
277:or
263:SQL
228:SQL
117:or
1163::
621:.
613:.
601:39
599:.
595:.
567:54
565:.
538:.
506:.
423:^
361:.
346:^
168:XD
121:.
80:.
689:e
682:t
675:v
658:.
636:.
617::
577:.
573::
550:.
517:.
491:.
469:.
443:.
417:.
395:.
372:.
340:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.