SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
Four New Major Releases in Review

MariaDB, SQL Server, PostgreSQL, (MySQL)
ViennaDB - 2018-01-17
@MarkusWinand
2018
MariaDB 10.2
SQL Server 2017 PostgreSQL 10
MySQL 8.0???
2017
2018
MariaDB 10.2
SQL Server 2017 PostgreSQL 10
MySQL 8.0???
Percona Live Amsterdam 2016:

Already mentioned MySQL 8.0
https://twitter.com/MarkusWinand/status/852862475699707904
Conformance
test of MySQL
8.0.1 for the
WITH clause:
2017
MariaDB 10.2

GA release 2017-05-23
A little bit of history
‣MariaDB was founded by the creator of MySQL in 2009

(because Sun was bought by Oracle)
‣MariaDB aimed for feature compatibility until 2012

(last feature compatible version was 5.5)
‣Next major version was 10 (still in 2012)

(to indicate it has not the same features as MySQL 5.6)
‣Release 10.2 adds window functions and the WITH clause

At the same time: MySQL 8.0 is under development—also
announcing window functions and the WITH clause.
MariaDB 10.2 May 2017
MariaDB won the race to introduce

window functions and
the WITH clause
with release 10.2 in May 2017.
(MySQL 8.0 is not yet released for production)

(as of 2018-01-15)
MariaDB 10.2 Released May 2017
But how
about the
quality?
How is MariaDB 10.2 doing in my conformance test?
WITH (non recursive)

MariaDB 10.2.12 vs. MySQL 8.0.3
MariaDB 10.2 Released May 2017
How is MariaDB 10.2 doing in my conformance test?
WITH RECURSIVE
MariaDB 10.2.12 vs. MySQL 8.0.3
MariaDB 10.2 Released May 2017
Window Functions

MariaDB 10.2.12 vs. MySQL 8.0.3
MariaDB 10.2 Released May 2017
MariaDB 10.2 Released May 2017
(standard) JSON functions

MariaDB 10.2.12 vs. MySQL 8.0.3
Note: MariaDB 10.1 has none of these features (everything X)
Description of the features: http://modern-sql.com/blog/2017-06/whats-new-in-sql-2016
MariaDB 10.2 Released May 2017
(standard) JSON functions

MariaDB 10.2.12 vs. MySQL 8.0.3
Note: MariaDB 10.1 has none

of these features (everything X)
MariaDB 10.2 Released May 2017
CHECK constraints

MariaDB 10.2.12 vs. MySQL 8.0.3
Note: MariaDB 10.1 works like MySQL 8.0.3:

syntax is accepted, but constraint not validated.
Other topics:
‣ NO PAD collations
‣ Expressions in DEFAULT clause, DEFAULT for BLOB and TEXT
https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-102/
MariaDB 10.2 Released May 2017
SQL Server 2017 (v14)

Released 2017-10-02
Although SQL Server 2016 was supposed to be available on Linux,
it never became available on public channels.
SQL Server 2017 had a public beta and can be installed through

regular package managers.
A free developer license is available.
SQL Server 2017 Released Oct 2017
TRIM function
Why would you introduce a function from the standard partially?
SQL Server 2017 Released Oct 2017
STRING_AGG function
The SQL standard

has listagg for this purpose:
A string_agg function is

available in PostgreSQL —

but with a different syntax!
(placement of order	by differs)
Double Fail!
Some other topics:
‣ Batch mode adaptive joins

Decide to use nested loops or hash join during execution

(like Oracle’s adaptive joins, but more limited).
‣ Graph processing capabilities

a match clause that reminds one of the Cypher Query Language.
https://docs.microsoft.com/en-us/sql/database-engine/whats-new-in-sql-server-2017
SQL Server 2017 Released Oct 2017
PostgreSQL 10

Released 2017-10-05
XMLTABLE IDENTITY columns
(basic support, not tested thoroughly) (possibly buggy as of 10.1)
PostgreSQL 10 Released Oct 2017
Suspected bug: each row inserted

consumes two values (one is lost)
Some other topics:
‣ Parallel query improvements

Merge Join, Bitmap Heap Scan, Index [Only] Scan, and more.
‣ Multi-column optimizer statistics

The optimizer understands cross column correlations.
‣ ICU collations

Operating system independent rules for comparing character strings.
https://www.postgresql.org/docs/10/static/release-10.html
PostgreSQL 10 Released Oct 2017
MySQL 8.0

No GA release yet

RC1: 8.0.3 (2017-09-21)
Window functions and with clause (see MariaDB 10.2).
Other topics:
‣ DESC indexes (!!!!)

Similar to check constraints, MySQL accepted desc in indexes but ignored it.
‣new JSON functions

(but no new SQL standard JSON functionality)
https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html
MySQL 8.0 No GA release yet
About @MarkusWinand
About @MarkusWinand
‣Training for Developers
‣ SQL Performance (Indexing)
‣ Modern SQL
‣ On-Site or Online
‣SQL Tuning
‣ Index-Redesign
‣ Query Improvements
‣ On-Site or Online
https://winand.at/
About @MarkusWinand
About @MarkusWinand
sql-performance-explained.com
About @MarkusWinand
€0,-
€10-30
sql-performance-explained.com
About @MarkusWinand
@ModernSQL
http://modern-sql.com

Mais conteúdo relacionado

Mais procurados

Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...
Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...
Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...ManageIQ
 
Athena 0.2.0 - Nimble
Athena 0.2.0 - NimbleAthena 0.2.0 - Nimble
Athena 0.2.0 - NimbleNimble
 
Policy driven SDN in CloudStack
Policy driven SDN in CloudStack Policy driven SDN in CloudStack
Policy driven SDN in CloudStack ShapeBlue
 
NFVO based on ManageIQ - OPNFV Summit 2016 Demo
NFVO based on ManageIQ - OPNFV Summit 2016 DemoNFVO based on ManageIQ - OPNFV Summit 2016 Demo
NFVO based on ManageIQ - OPNFV Summit 2016 DemoManageIQ
 
AWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWS
AWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWSAWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWS
AWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWSsmalltown
 
Gr8Conf 2016 - GORM Inside and Out
Gr8Conf 2016 - GORM Inside and OutGr8Conf 2016 - GORM Inside and Out
Gr8Conf 2016 - GORM Inside and Outgraemerocher
 
"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]Kevin Xu
 
Gr8Conf 2016 - What's new in Grails 3
Gr8Conf 2016 - What's new in Grails 3Gr8Conf 2016 - What's new in Grails 3
Gr8Conf 2016 - What's new in Grails 3graemerocher
 
Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015
Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015
Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015Cihan Biyikoglu
 
Vitalii Korzh - "Exciting Migrations"
Vitalii Korzh - "Exciting Migrations"Vitalii Korzh - "Exciting Migrations"
Vitalii Korzh - "Exciting Migrations"LogeekNightUkraine
 
Building Bridges Between Applications and Data
Building Bridges Between Applications and DataBuilding Bridges Between Applications and Data
Building Bridges Between Applications and DataOlyaSurits
 
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...NETWAYS
 
GlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsGlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsRestlet
 
Automating using Ansible
Automating using AnsibleAutomating using Ansible
Automating using AnsibleAlok Patra
 
SSR with React - Connecting Next.js with WordPress
SSR with React - Connecting Next.js with WordPressSSR with React - Connecting Next.js with WordPress
SSR with React - Connecting Next.js with WordPressImran Sayed
 
Getting Started with Kafka on k8s
Getting Started with Kafka on k8sGetting Started with Kafka on k8s
Getting Started with Kafka on k8sVMware Tanzu
 

Mais procurados (20)

Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...
Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...
Cloud Networking - Greg Blomquist, Scott Drennan, Lokesh Jain - ManageIQ Desi...
 
Athena 0.2.0 - Nimble
Athena 0.2.0 - NimbleAthena 0.2.0 - Nimble
Athena 0.2.0 - Nimble
 
Policy driven SDN in CloudStack
Policy driven SDN in CloudStack Policy driven SDN in CloudStack
Policy driven SDN in CloudStack
 
NFVO based on ManageIQ - OPNFV Summit 2016 Demo
NFVO based on ManageIQ - OPNFV Summit 2016 DemoNFVO based on ManageIQ - OPNFV Summit 2016 Demo
NFVO based on ManageIQ - OPNFV Summit 2016 Demo
 
AWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWS
AWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWSAWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWS
AWS re:Invent re:Cap 2019: My ElasticSearch Journey on AWS
 
Kafka Streams
Kafka StreamsKafka Streams
Kafka Streams
 
Gr8Conf 2016 - GORM Inside and Out
Gr8Conf 2016 - GORM Inside and OutGr8Conf 2016 - GORM Inside and Out
Gr8Conf 2016 - GORM Inside and Out
 
"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]"Smooth Operator" [Bay Area NewSQL meetup]
"Smooth Operator" [Bay Area NewSQL meetup]
 
Gr8Conf 2016 - What's new in Grails 3
Gr8Conf 2016 - What's new in Grails 3Gr8Conf 2016 - What's new in Grails 3
Gr8Conf 2016 - What's new in Grails 3
 
Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015
Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015
Global Secondary Indexes in Couchbase Server 4.0 - JUNE 2015
 
Vitalii Korzh - "Exciting Migrations"
Vitalii Korzh - "Exciting Migrations"Vitalii Korzh - "Exciting Migrations"
Vitalii Korzh - "Exciting Migrations"
 
Building Bridges Between Applications and Data
Building Bridges Between Applications and DataBuilding Bridges Between Applications and Data
Building Bridges Between Applications and Data
 
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
 
Serverless Data Science
Serverless Data ScienceServerless Data Science
Serverless Data Science
 
GlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsGlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIs
 
Automating using Ansible
Automating using AnsibleAutomating using Ansible
Automating using Ansible
 
Yace 3.0
Yace 3.0Yace 3.0
Yace 3.0
 
Ceilometer Updates - Kilo Edition
Ceilometer Updates - Kilo EditionCeilometer Updates - Kilo Edition
Ceilometer Updates - Kilo Edition
 
SSR with React - Connecting Next.js with WordPress
SSR with React - Connecting Next.js with WordPressSSR with React - Connecting Next.js with WordPress
SSR with React - Connecting Next.js with WordPress
 
Getting Started with Kafka on k8s
Getting Started with Kafka on k8sGetting Started with Kafka on k8s
Getting Started with Kafka on k8s
 

Semelhante a Four* Major Database Releases of 2017 in Review

Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09GOTO Satoru
 
MariaDB 10.0 - SkySQL Paris Meetup
MariaDB 10.0 - SkySQL Paris MeetupMariaDB 10.0 - SkySQL Paris Meetup
MariaDB 10.0 - SkySQL Paris MeetupMariaDB Corporation
 
Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Colin Charles
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreThe New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreMariaDB Corporation
 
SkySQL MariaDB 云数据组件
SkySQL MariaDB 云数据组件SkySQL MariaDB 云数据组件
SkySQL MariaDB 云数据组件YUCHENG HU
 
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesA26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesInsight Technology, Inc.
 
MySQL Community Meetup in China : Innovation driven by the Community
MySQL Community Meetup in China : Innovation driven by the CommunityMySQL Community Meetup in China : Innovation driven by the Community
MySQL Community Meetup in China : Innovation driven by the CommunityFrederic Descamps
 
DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?
DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?
DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?Otto Kekäläinen
 
The latest with MySql on OpenStack Trove
The latest with MySql on OpenStack TroveThe latest with MySql on OpenStack Trove
The latest with MySql on OpenStack TroveTesora
 
NoSQL and MySQL: News about JSON
NoSQL and MySQL: News about JSONNoSQL and MySQL: News about JSON
NoSQL and MySQL: News about JSONMario Beck
 
Latest trends in database management
Latest trends in database managementLatest trends in database management
Latest trends in database managementBcomBT
 
The Journey of SQL Server - Evolution of SQL Server Features
The Journey of SQL Server - Evolution of SQL Server FeaturesThe Journey of SQL Server - Evolution of SQL Server Features
The Journey of SQL Server - Evolution of SQL Server FeaturesDirect Deals, LLC
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterMariaDB Corporation
 
MySQL Innovation: from 5.7 to 8.0
MySQL Innovation:  from 5.7 to 8.0MySQL Innovation:  from 5.7 to 8.0
MySQL Innovation: from 5.7 to 8.0Frederic Descamps
 
MySQL Innovation from 5.7 to 8.0
MySQL Innovation from 5.7 to 8.0MySQL Innovation from 5.7 to 8.0
MySQL Innovation from 5.7 to 8.0Frederic Descamps
 
NoSQL on MySQL - MySQL Document Store by Vadim Tkachenko
NoSQL on MySQL - MySQL Document Store by Vadim TkachenkoNoSQL on MySQL - MySQL Document Store by Vadim Tkachenko
NoSQL on MySQL - MySQL Document Store by Vadim TkachenkoData Con LA
 
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...Mydbops
 
The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016Colin Charles
 

Semelhante a Four* Major Database Releases of 2017 in Review (20)

Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09
 
MariaDB 10.0 - SkySQL Paris Meetup
MariaDB 10.0 - SkySQL Paris MeetupMariaDB 10.0 - SkySQL Paris Meetup
MariaDB 10.0 - SkySQL Paris Meetup
 
Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreThe New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and More
 
SkySQL MariaDB 云数据组件
SkySQL MariaDB 云数据组件SkySQL MariaDB 云数据组件
SkySQL MariaDB 云数据组件
 
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesA26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
 
Dbms assignment no.1
Dbms assignment no.1Dbms assignment no.1
Dbms assignment no.1
 
MySQL Community Meetup in China : Innovation driven by the Community
MySQL Community Meetup in China : Innovation driven by the CommunityMySQL Community Meetup in China : Innovation driven by the Community
MySQL Community Meetup in China : Innovation driven by the Community
 
DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?
DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?
DebConf 2020: What’s New in MariaDB Server 10.5 and Galera 4?
 
The latest with MySql on OpenStack Trove
The latest with MySql on OpenStack TroveThe latest with MySql on OpenStack Trove
The latest with MySql on OpenStack Trove
 
NoSQL and MySQL: News about JSON
NoSQL and MySQL: News about JSONNoSQL and MySQL: News about JSON
NoSQL and MySQL: News about JSON
 
Latest trends in database management
Latest trends in database managementLatest trends in database management
Latest trends in database management
 
The Journey of SQL Server - Evolution of SQL Server Features
The Journey of SQL Server - Evolution of SQL Server FeaturesThe Journey of SQL Server - Evolution of SQL Server Features
The Journey of SQL Server - Evolution of SQL Server Features
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
 
MySQL Innovation: from 5.7 to 8.0
MySQL Innovation:  from 5.7 to 8.0MySQL Innovation:  from 5.7 to 8.0
MySQL Innovation: from 5.7 to 8.0
 
MySQL Innovation from 5.7 to 8.0
MySQL Innovation from 5.7 to 8.0MySQL Innovation from 5.7 to 8.0
MySQL Innovation from 5.7 to 8.0
 
NoSQL on MySQL - MySQL Document Store by Vadim Tkachenko
NoSQL on MySQL - MySQL Document Store by Vadim TkachenkoNoSQL on MySQL - MySQL Document Store by Vadim Tkachenko
NoSQL on MySQL - MySQL Document Store by Vadim Tkachenko
 
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...
 
The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016
 
CompIQ-2016-v1
CompIQ-2016-v1CompIQ-2016-v1
CompIQ-2016-v1
 

Mais de Markus Winand

Standard SQL features where PostgreSQL beats its competitors
Standard SQL features where PostgreSQL beats its competitorsStandard SQL features where PostgreSQL beats its competitors
Standard SQL features where PostgreSQL beats its competitorsMarkus Winand
 
Row Pattern Matching in SQL:2016
Row Pattern Matching in SQL:2016Row Pattern Matching in SQL:2016
Row Pattern Matching in SQL:2016Markus Winand
 
SQL Transactions - What they are good for and how they work
SQL Transactions - What they are good for and how they workSQL Transactions - What they are good for and how they work
SQL Transactions - What they are good for and how they workMarkus Winand
 
Backend to Frontend: When database optimization affects the full stack
Backend to Frontend: When database optimization affects the full stackBackend to Frontend: When database optimization affects the full stack
Backend to Frontend: When database optimization affects the full stackMarkus Winand
 
Modern SQL in Open Source and Commercial Databases
Modern SQL in Open Source and Commercial DatabasesModern SQL in Open Source and Commercial Databases
Modern SQL in Open Source and Commercial DatabasesMarkus Winand
 
Volkskrankheit "Stiefmuetterliche Indizierung"
Volkskrankheit "Stiefmuetterliche Indizierung"Volkskrankheit "Stiefmuetterliche Indizierung"
Volkskrankheit "Stiefmuetterliche Indizierung"Markus Winand
 
SQL Performance - Vienna System Architects Meetup 20131202
SQL Performance - Vienna System Architects Meetup 20131202SQL Performance - Vienna System Architects Meetup 20131202
SQL Performance - Vienna System Architects Meetup 20131202Markus Winand
 
Indexes: The neglected performance all rounder
Indexes: The neglected performance all rounderIndexes: The neglected performance all rounder
Indexes: The neglected performance all rounderMarkus Winand
 
Pagination Done the Right Way
Pagination Done the Right WayPagination Done the Right Way
Pagination Done the Right WayMarkus Winand
 

Mais de Markus Winand (9)

Standard SQL features where PostgreSQL beats its competitors
Standard SQL features where PostgreSQL beats its competitorsStandard SQL features where PostgreSQL beats its competitors
Standard SQL features where PostgreSQL beats its competitors
 
Row Pattern Matching in SQL:2016
Row Pattern Matching in SQL:2016Row Pattern Matching in SQL:2016
Row Pattern Matching in SQL:2016
 
SQL Transactions - What they are good for and how they work
SQL Transactions - What they are good for and how they workSQL Transactions - What they are good for and how they work
SQL Transactions - What they are good for and how they work
 
Backend to Frontend: When database optimization affects the full stack
Backend to Frontend: When database optimization affects the full stackBackend to Frontend: When database optimization affects the full stack
Backend to Frontend: When database optimization affects the full stack
 
Modern SQL in Open Source and Commercial Databases
Modern SQL in Open Source and Commercial DatabasesModern SQL in Open Source and Commercial Databases
Modern SQL in Open Source and Commercial Databases
 
Volkskrankheit "Stiefmuetterliche Indizierung"
Volkskrankheit "Stiefmuetterliche Indizierung"Volkskrankheit "Stiefmuetterliche Indizierung"
Volkskrankheit "Stiefmuetterliche Indizierung"
 
SQL Performance - Vienna System Architects Meetup 20131202
SQL Performance - Vienna System Architects Meetup 20131202SQL Performance - Vienna System Architects Meetup 20131202
SQL Performance - Vienna System Architects Meetup 20131202
 
Indexes: The neglected performance all rounder
Indexes: The neglected performance all rounderIndexes: The neglected performance all rounder
Indexes: The neglected performance all rounder
 
Pagination Done the Right Way
Pagination Done the Right WayPagination Done the Right Way
Pagination Done the Right Way
 

Último

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Último (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

Four* Major Database Releases of 2017 in Review

  • 1. Four New Major Releases in Review MariaDB, SQL Server, PostgreSQL, (MySQL) ViennaDB - 2018-01-17 @MarkusWinand
  • 2. 2018 MariaDB 10.2 SQL Server 2017 PostgreSQL 10 MySQL 8.0??? 2017
  • 3. 2018 MariaDB 10.2 SQL Server 2017 PostgreSQL 10 MySQL 8.0??? Percona Live Amsterdam 2016:
 Already mentioned MySQL 8.0 https://twitter.com/MarkusWinand/status/852862475699707904 Conformance test of MySQL 8.0.1 for the WITH clause: 2017
  • 5. A little bit of history ‣MariaDB was founded by the creator of MySQL in 2009
 (because Sun was bought by Oracle) ‣MariaDB aimed for feature compatibility until 2012
 (last feature compatible version was 5.5) ‣Next major version was 10 (still in 2012)
 (to indicate it has not the same features as MySQL 5.6) ‣Release 10.2 adds window functions and the WITH clause
 At the same time: MySQL 8.0 is under development—also announcing window functions and the WITH clause. MariaDB 10.2 May 2017
  • 6. MariaDB won the race to introduce
 window functions and the WITH clause with release 10.2 in May 2017. (MySQL 8.0 is not yet released for production)
 (as of 2018-01-15) MariaDB 10.2 Released May 2017 But how about the quality?
  • 7. How is MariaDB 10.2 doing in my conformance test? WITH (non recursive) MariaDB 10.2.12 vs. MySQL 8.0.3 MariaDB 10.2 Released May 2017
  • 8. How is MariaDB 10.2 doing in my conformance test? WITH RECURSIVE MariaDB 10.2.12 vs. MySQL 8.0.3 MariaDB 10.2 Released May 2017
  • 9. Window Functions MariaDB 10.2.12 vs. MySQL 8.0.3 MariaDB 10.2 Released May 2017
  • 10. MariaDB 10.2 Released May 2017 (standard) JSON functions MariaDB 10.2.12 vs. MySQL 8.0.3 Note: MariaDB 10.1 has none of these features (everything X) Description of the features: http://modern-sql.com/blog/2017-06/whats-new-in-sql-2016
  • 11. MariaDB 10.2 Released May 2017 (standard) JSON functions MariaDB 10.2.12 vs. MySQL 8.0.3 Note: MariaDB 10.1 has none
 of these features (everything X)
  • 12. MariaDB 10.2 Released May 2017 CHECK constraints MariaDB 10.2.12 vs. MySQL 8.0.3 Note: MariaDB 10.1 works like MySQL 8.0.3:
 syntax is accepted, but constraint not validated.
  • 13. Other topics: ‣ NO PAD collations ‣ Expressions in DEFAULT clause, DEFAULT for BLOB and TEXT https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-102/ MariaDB 10.2 Released May 2017
  • 14. SQL Server 2017 (v14) Released 2017-10-02
  • 15. Although SQL Server 2016 was supposed to be available on Linux, it never became available on public channels. SQL Server 2017 had a public beta and can be installed through
 regular package managers. A free developer license is available.
  • 16. SQL Server 2017 Released Oct 2017 TRIM function Why would you introduce a function from the standard partially?
  • 17. SQL Server 2017 Released Oct 2017 STRING_AGG function The SQL standard
 has listagg for this purpose: A string_agg function is
 available in PostgreSQL —
 but with a different syntax! (placement of order by differs) Double Fail!
  • 18. Some other topics: ‣ Batch mode adaptive joins
 Decide to use nested loops or hash join during execution
 (like Oracle’s adaptive joins, but more limited). ‣ Graph processing capabilities
 a match clause that reminds one of the Cypher Query Language. https://docs.microsoft.com/en-us/sql/database-engine/whats-new-in-sql-server-2017 SQL Server 2017 Released Oct 2017
  • 20. XMLTABLE IDENTITY columns (basic support, not tested thoroughly) (possibly buggy as of 10.1) PostgreSQL 10 Released Oct 2017 Suspected bug: each row inserted
 consumes two values (one is lost)
  • 21. Some other topics: ‣ Parallel query improvements
 Merge Join, Bitmap Heap Scan, Index [Only] Scan, and more. ‣ Multi-column optimizer statistics
 The optimizer understands cross column correlations. ‣ ICU collations
 Operating system independent rules for comparing character strings. https://www.postgresql.org/docs/10/static/release-10.html PostgreSQL 10 Released Oct 2017
  • 22. MySQL 8.0 No GA release yet
 RC1: 8.0.3 (2017-09-21)
  • 23. Window functions and with clause (see MariaDB 10.2). Other topics: ‣ DESC indexes (!!!!)
 Similar to check constraints, MySQL accepted desc in indexes but ignored it. ‣new JSON functions
 (but no new SQL standard JSON functionality) https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html MySQL 8.0 No GA release yet
  • 25. About @MarkusWinand ‣Training for Developers ‣ SQL Performance (Indexing) ‣ Modern SQL ‣ On-Site or Online ‣SQL Tuning ‣ Index-Redesign ‣ Query Improvements ‣ On-Site or Online https://winand.at/