DBMS > Microsoft SQL Server vs. PostgreSQL vs. RethinkDB vs. SQL.JS
System Properties Comparison Microsoft SQL Server vs. PostgreSQL vs. RethinkDB vs. SQL.JS
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Microsoft SQL Server Xexclude from comparison | PostgreSQL Xexclude from comparison | RethinkDB Xexclude from comparison | SQL.JS Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Microsofts flagship relational DBMS | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | DBMS for the Web with a mechanism to push updated query results to applications in realtime. | Port of SQLite to JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | Document store | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Graph DBMS Spatial DBMS | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.microsoft.com/en-us/sql-server | www.postgresql.org | rethinkdb.com | sql.js.org | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | learn.microsoft.com/en-US/sql/sql-server | www.postgresql.org/docs | rethinkdb.com/docs | sql.js.org/documentation/index.html | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Microsoft | PostgreSQL Global Development Group www.postgresql.org/developer | The Linux Foundation since July 2017 | Alon Zakai enhancements implemented by others | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 1989 | 1989 1989: Postgres, 1996: PostgreSQL | 2009 | 2012 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | SQL Server 2022, November 2022 | 16.4, August 2024 | 2.4.1, August 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial restricted free version is available | Open Source BSD | Open Source Apache Version 2 | Open Source | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | SQLServer Flex @ STACKIT offers a managed version of SQL Server with adjustable CPU, RAM, storage amount and speed, in enterprise grade to perfectly match all application requirements. All services are 100% GDPR-compliant. | PostgreSQL Flex @ STACKIT offers managed PostgreSQL Instances with adjustable CPU, RAM, storage amount and speed and several extensions available, in enterprise grade to perfectly match all application requirements. All 100% GDPR-compliant. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C | C++ | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Windows | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | Linux OS X Windows | server-less, requires a JavaScript environment (browser, Node.js) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes string, binary, float, bool, date, geometry | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | yes | yes specific XML-type available, but no XML query functionality. | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | yes standard with numerous extensions | no | yes SQL-92 is not fully supported | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC ODBC OLE DB Tabular Data Stream (TDS) | ADO.NET JDBC native C library ODBC streaming API for large objects | JavaScript API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Delphi Go Java JavaScript (Node.js) PHP Python R Ruby Visual Basic | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | C community-supported driver C# community-supported driver C++ community-supported driver Clojure community-supported driver Dart community-supported driver Erlang community-supported driver Go community-supported driver Haskell community-supported driver Java official driver JavaScript (Node.js) official driver Lisp community-supported driver Lua community-supported driver Objective-C community-supported driver Perl community-supported driver PHP community-supported driver Python official driver Ruby official driver Scala community-supported driver | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Transact SQL, .NET languages, R, Python and (with SQL Server 2019) Java | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | Client-side triggers through changefeeds | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | tables can be distributed across several files (horizontal partitioning); sharding through federation | partitioning by range, list and (since PostgreSQL 11) by hash | Sharding range based | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, but depending on the SQL-Server Edition | Source-replica replication other methods possible by using 3rd party extensions | Source-replica replication | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | Atomic single-document operations | ACID | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes MVCC based | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | no except by serializing a db to a file | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | fine grained access rights according to SQL-standard | yes users and table-level permissions | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for SQL Server gives you a fully graphical approach to database management and development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for SQL Server and many other database management systems. » more | SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more.
» more Instaclustr: Fully Hosted & Managed PostgreSQL » more pgDash: In-Depth PostgreSQL Monitoring. » more Navicat for PostgreSQL is an easy-to-use graphical tool for PostgreSQL database development. » more CYBERTEC is your professional partner in PostgreSQL topics for over 20 years. As our main aim is to be your single-source all-in-one IT service provider, we offer a wide range of products and services. Visit our website for more details. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for PostgreSQL and many other database management systems. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Microsoft SQL Server | PostgreSQL | RethinkDB | SQL.JS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Microsoft SQL Server is the DBMS of the Year | PostgreSQL is the DBMS of the Year 2023 Snowflake is the DBMS of the Year 2022, defending the title from last year Snowflake is the DBMS of the Year 2021 | Meet some database management systems you are likely to hear more about in the future | New kids on the block: database management systems implemented in JavaScript PASS Data Community Summit PASS Data Community Summit Contractor Software Targeted via Microsoft SQL Server Loophole Make SQL Server end of support the start of your AWS cloud journey Getting started with delivering generative AI capabilities in SQL Server and Azure SQL SQL Server vNext: When and What Is Coming Mastering the SQL Server command-line interface provided by Google News YugabyteDB 2.19 gets new PostgreSQL-compatibility features YugabyteDB evolves into a distributed PostgreSQL database for apps that need resilience and scale Top 50+ Most Asked PostgreSQL Interview Questions 2024 YugabyteDB Evolves PostgreSQL to a Distributed Architecture for Modern, Cloud-Native Applications Synopsis of several compelling features in PostgreSQL 16 | Amazon Web Services provided by Google News An introduction to building realtime apps with RethinkDB Stripe acquires team behind NoSQL database startup RethinkDB How to Use RethinkDB with Node.js Applications How to deploy RethinkDB using Docker Installing and Using RethinkDB on Ubuntu provided by Google News 9 Best JavaScript and TypeScript ORMs for 2024 SQLite On The Web: Absurd-sql Running PostgreSQL Inside Your Browser React Native for beginners 10 Low-Code Rules for Serious Coders provided by Google News |
Share this page