This document summarizes key features introduced in MariaDB versions 10.0 through 10.5, including storage engines like MyRocks, CONNECT, and ColumnStore; compression options for InnoDB; the Spider partitioning storage engine; temporal tables; flashback capabilities; and IF NOT EXISTS and OR REPLACE syntax. It aims to highlight interesting and differentiating features of MariaDB and provide links for further information.
*If you see the screen is not good condition, downloading please.*
MariaDB Optimizer
- Query execution process
- Optimizer
- Statistics
- Histogram-based Statistics
- Join Optimizer
- Analysis of the execution plan
- Optimizer Hint
- Tuning Point
In this session Max Mether, VP of Product Management at MariaDB, provides an introduction to MariaDB Platform X3 and the new features in MariaDB Server 10.3 and MariaDB MaxScale 2.3. He then turns his focus to what’s coming in MariaDB Server 10.4, including instant DROP COLUMN, the INTERVAL data type and advanced security features like account locking.
MariaDB's Andrew Hutchings and Shane Johnson walk through new features of the MariaDB ColumnStore storage engine, tools and adapters, then provide a sneak peak at what's planned for the next release.
What to expect from MariaDB Platform X5, part 1MariaDB plc
MariaDB Platform X5 will be based on MariaDB Enterprise Server 10.5. This release includes Xpand, a fully distributed storage engine for scaling out, as well as many new features and improvements for DBAs and developers alike, including enhancements to temporal tables, additional JSON functions, a new performance schema, non-blocking schema changes with clustering and a Hashicorp Vault plugin for key management.
In this session, we’ll walk through all of the new features and enhancements available in MariaDB Enterprise Server 10.5. In addition, we will highlight those being backported to maintenance releases of MariaDB Enterprise Server 10.2, 10.3 and 10.4.
In this presentation we discuss the New Features of MariaDB 10.4. First we give a short overview of the MariaDB Branches and Forks. Then we talk about the announced IPO. Technically we cover topics like Authentication, Accounts, InnoDB, Optimizer improvements, Application-Time Period Tables the new Backup Stage Galera 4 and other changes...
MariaDB 10.2 New Features for Developers, Administrators and DevOps. Window Functions, Common Table Expressions, Check Constraints, GeoJSON, GIS, JSON, Oracle compatibility and MariaDB Connectors
*If you see the screen is not good condition, downloading please.*
MariaDB Optimizer
- Query execution process
- Optimizer
- Statistics
- Histogram-based Statistics
- Join Optimizer
- Analysis of the execution plan
- Optimizer Hint
- Tuning Point
In this session Max Mether, VP of Product Management at MariaDB, provides an introduction to MariaDB Platform X3 and the new features in MariaDB Server 10.3 and MariaDB MaxScale 2.3. He then turns his focus to what’s coming in MariaDB Server 10.4, including instant DROP COLUMN, the INTERVAL data type and advanced security features like account locking.
MariaDB's Andrew Hutchings and Shane Johnson walk through new features of the MariaDB ColumnStore storage engine, tools and adapters, then provide a sneak peak at what's planned for the next release.
What to expect from MariaDB Platform X5, part 1MariaDB plc
MariaDB Platform X5 will be based on MariaDB Enterprise Server 10.5. This release includes Xpand, a fully distributed storage engine for scaling out, as well as many new features and improvements for DBAs and developers alike, including enhancements to temporal tables, additional JSON functions, a new performance schema, non-blocking schema changes with clustering and a Hashicorp Vault plugin for key management.
In this session, we’ll walk through all of the new features and enhancements available in MariaDB Enterprise Server 10.5. In addition, we will highlight those being backported to maintenance releases of MariaDB Enterprise Server 10.2, 10.3 and 10.4.
In this presentation we discuss the New Features of MariaDB 10.4. First we give a short overview of the MariaDB Branches and Forks. Then we talk about the announced IPO. Technically we cover topics like Authentication, Accounts, InnoDB, Optimizer improvements, Application-Time Period Tables the new Backup Stage Galera 4 and other changes...
MariaDB 10.2 New Features for Developers, Administrators and DevOps. Window Functions, Common Table Expressions, Check Constraints, GeoJSON, GIS, JSON, Oracle compatibility and MariaDB Connectors
Instant add column for inno db in mariadb 10.3+ (fosdem 2018, second draft)Valerii Kravchuk
My slides for (canceled due to personal issues) talk for FOSDEM 2018 MySQL Devroom. I planned to discuss the history of ALTER TABLE speedup and optimization in MySQL, explain the implementation of instant ADD COLUMN for InnoDB tables in MariaDB 10.3 and compare performance of recent versions of MariaDB 10.2, 10.3, Percona Server 5.7, MyRocks from MariaDB 10.2 and MySQL 8.0.4 while working on multiple step test case incolving ALTER TABLE ... ADD COLUMN.
A lof of links to related manuals, blog posts and resources are presented.
MariaDB 10.4 became General Available (GA = ready for production) this summer. So it is time to look at the new Features in MariaDB 10.4. After a short intro about history we look for the reason of broad usage of MariaDB nowadays. Most important improvements where in User Authentication, InnoDB improvements, and Optimizer enhancements. A completely New Feature is Application-Time Period Tables. Backup got a new Locking behaviour so LVM snapshots are possible and officially supported now. And last but not least MariaDB 10.4 comes with Galera 4.
New Features
● Developer and SQL Features
● DBA and Administration
● Replication
● Performance
By Amit Kapila at India PostgreSQL UserGroup Meetup, Bangalore at InMobi.
http://technology.inmobi.com/events/india-postgresql-usergroup-meetup-bangalore
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...Insight Technology, Inc.
Scalability with MariaDB and MaxScale talks about MariaDB 10, and MaxScale, a pluggable router for your queries. These are technologies developed at MariaDB Corporation, made opensource, and will help scale your MariaDB and MySQL workloads
MySQL® 5.7 is a great release which has a lot to offer, especially in the development and replication areas. It provides a lot of new optimizer features for developers to take advantage of, a much more powerful GIS function and high performance JSON data type, allowing for a more powerful store for semi-structured data. It also features dramatically improved Performance Schema, Parallel and Multi-Source replication, allowing you to scale much further than ever before, just to give you a taste. In this webinar, we will provide an overview of the most important MySQL 5.7 features.
This webinar will be part of a 3-part series which will include MySQL 5.7 for Developers and MySQL 5.7 for DBAs.
Migrations from PLSQL and Transact-SQL - m18Wagner Bianchi
Check out the status of the current features supported by MariaDB Server 10.3 and the best practices brought to the marketplace by MariaDB Practitioners for migrating Oracle and SQL Server to MariaDB Server. Also, some of the many features related to the PL/SQL is exhibited in this presentation. You can watch the presentation's video at https://www.linkedin.com/feed/update/urn:li:activity:6381185127497625601
MariaDB 10.5 new features for troubleshooting (mariadb server fest 2020)Valeriy Kravchuk
The recently released MariaDB 10.5 GA includes many new, useful features, but I’d like to concentrate on those helping DBAs and support engineers to find out what’s going on when a problem occurs.
Specifically I present and discuss the Performance Schema updates to match MySQL 5.7 instrumentation, new tables in the INFORMATION_SCHEMA to monitor the internals of a generic thread pool and improvements of ANALYZE for statements.
MariaDB for Developers and Operators (DevOps)Colin Charles
MariaDB features that both developers and operators will find benefit from, especially when we focus on the 10.0 release. This is specific to a Red Hat Summit/DevNation crowd.
CONNECT is a storage engine for MariaDB. It allows to use external, possibly remote data sources of several types. We can then query them as if they were local relational tables. In this presentation, Federico Razzoli demonstrates a couple of interesting things we can do with it. The talk took place at MariaDB Server Fest 2020.
How to migrate from Oracle Database with easeMariaDB plc
MariaDB introduced Oracle Database compatibility last May with support for Oracle Database data types, sequences, stored procedures (PL/SQL) and more, making it easier than ever to migrate to MariaDB. In this session, MariaDB's Alexander Bienemann and Wagner Bianchi share best practices and lessons learned from our experiences helping customers migrate from Oracle Database. They explain how MariaDB approaches migrations, what’s needed to complete a successful migration and the tools used to determine the level of effort required.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Instant add column for inno db in mariadb 10.3+ (fosdem 2018, second draft)Valerii Kravchuk
My slides for (canceled due to personal issues) talk for FOSDEM 2018 MySQL Devroom. I planned to discuss the history of ALTER TABLE speedup and optimization in MySQL, explain the implementation of instant ADD COLUMN for InnoDB tables in MariaDB 10.3 and compare performance of recent versions of MariaDB 10.2, 10.3, Percona Server 5.7, MyRocks from MariaDB 10.2 and MySQL 8.0.4 while working on multiple step test case incolving ALTER TABLE ... ADD COLUMN.
A lof of links to related manuals, blog posts and resources are presented.
MariaDB 10.4 became General Available (GA = ready for production) this summer. So it is time to look at the new Features in MariaDB 10.4. After a short intro about history we look for the reason of broad usage of MariaDB nowadays. Most important improvements where in User Authentication, InnoDB improvements, and Optimizer enhancements. A completely New Feature is Application-Time Period Tables. Backup got a new Locking behaviour so LVM snapshots are possible and officially supported now. And last but not least MariaDB 10.4 comes with Galera 4.
New Features
● Developer and SQL Features
● DBA and Administration
● Replication
● Performance
By Amit Kapila at India PostgreSQL UserGroup Meetup, Bangalore at InMobi.
http://technology.inmobi.com/events/india-postgresql-usergroup-meetup-bangalore
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...Insight Technology, Inc.
Scalability with MariaDB and MaxScale talks about MariaDB 10, and MaxScale, a pluggable router for your queries. These are technologies developed at MariaDB Corporation, made opensource, and will help scale your MariaDB and MySQL workloads
MySQL® 5.7 is a great release which has a lot to offer, especially in the development and replication areas. It provides a lot of new optimizer features for developers to take advantage of, a much more powerful GIS function and high performance JSON data type, allowing for a more powerful store for semi-structured data. It also features dramatically improved Performance Schema, Parallel and Multi-Source replication, allowing you to scale much further than ever before, just to give you a taste. In this webinar, we will provide an overview of the most important MySQL 5.7 features.
This webinar will be part of a 3-part series which will include MySQL 5.7 for Developers and MySQL 5.7 for DBAs.
Migrations from PLSQL and Transact-SQL - m18Wagner Bianchi
Check out the status of the current features supported by MariaDB Server 10.3 and the best practices brought to the marketplace by MariaDB Practitioners for migrating Oracle and SQL Server to MariaDB Server. Also, some of the many features related to the PL/SQL is exhibited in this presentation. You can watch the presentation's video at https://www.linkedin.com/feed/update/urn:li:activity:6381185127497625601
MariaDB 10.5 new features for troubleshooting (mariadb server fest 2020)Valeriy Kravchuk
The recently released MariaDB 10.5 GA includes many new, useful features, but I’d like to concentrate on those helping DBAs and support engineers to find out what’s going on when a problem occurs.
Specifically I present and discuss the Performance Schema updates to match MySQL 5.7 instrumentation, new tables in the INFORMATION_SCHEMA to monitor the internals of a generic thread pool and improvements of ANALYZE for statements.
MariaDB for Developers and Operators (DevOps)Colin Charles
MariaDB features that both developers and operators will find benefit from, especially when we focus on the 10.0 release. This is specific to a Red Hat Summit/DevNation crowd.
CONNECT is a storage engine for MariaDB. It allows to use external, possibly remote data sources of several types. We can then query them as if they were local relational tables. In this presentation, Federico Razzoli demonstrates a couple of interesting things we can do with it. The talk took place at MariaDB Server Fest 2020.
How to migrate from Oracle Database with easeMariaDB plc
MariaDB introduced Oracle Database compatibility last May with support for Oracle Database data types, sequences, stored procedures (PL/SQL) and more, making it easier than ever to migrate to MariaDB. In this session, MariaDB's Alexander Bienemann and Wagner Bianchi share best practices and lessons learned from our experiences helping customers migrate from Oracle Database. They explain how MariaDB approaches migrations, what’s needed to complete a successful migration and the tools used to determine the level of effort required.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
4. What this presentation is not
● In-depth
● Complete
4
When and why to use MariaDB: Key features in 10.0 to 10.5
mariadb.org
5. What this presentation aims to cover
● Interesting features you may not have heard about
● Features that differentiate MariaDB
5
When and why to use MariaDB: Key features in 10.0 to 10.5
6. Storage Engines
● InnoDB (default)
● MyRocks (10.2)
● Spider (10.0)
● CONNECT (10.0)
● ColumnStore (10.5)
● S3 (10.5)
● https://mariadb.com/kb/en/choosing-the-right-storage-engine/
6
When and why to use MariaDB: Key features in 10.0 to 10.5
7. MyRocks
● Mike Benshoof “MyRocks - The 30,000 Foot View”
7
When and why to use MariaDB: Key features in 10.0 to 10.5
8. MyRocks
● Mike Benshoof “MyRocks - The 30,000 Foot View”
● Compression!
8
When and why to use MariaDB: Key features in 10.0 to 10.5
9. MyRocks
● Mike Benshoof “MyRocks - The 30,000 Foot View”
● Compression!
● https://mariadb.com/kb/en/myrocks/
9
When and why to use MariaDB: Key features in 10.0 to 10.5
10. InnoDB Compression
3 types of compression
● Compressed Row Format
10
When and why to use MariaDB: Key features in 10.0 to 10.5
11. CREATE TABLE tab (
id int,
str varchar(50)
) ENGINE=InnoDB
ROW_FORMAT=COMPRESSED;
11
InnoDB Compressed Row Format
When and why to use MariaDB: Key features in 10.0 to 10.5
12. InnoDB Compression
3 types of compression
● Compressed Row Format
● InnoDB Page Compression (10.1)
12
When and why to use MariaDB: Key features in 10.0 to 10.5
13. CREATE TABLE tab (
id int,
str varchar(50)
) ENGINE=InnoDB
PAGE_COMPRESSED=1;
13
InnoDB Page Compression
When and why to use MariaDB: Key features in 10.0 to 10.5
14. CREATE TABLE tab (
id int,
str varchar(50)
) ENGINE=InnoDB
PAGE_COMPRESSED=1;
[mariadb]
...
innodb_compression_default=ON
14
InnoDB Page Compression
When and why to use MariaDB: Key features in 10.0 to 10.5
15. Page Compression vs
Compressed Row Format
● Move towards deprecating Compressed Row Format
● Buffer pool storage (uncompressed vs compressed &
uncompressed)
● When compressed (only before writing to tablespace vs
compressed after every change)
15
When and why to use MariaDB: Key features in 10.0 to 10.5
16. InnoDB Compression
3 types of compression
● Compressed Row Format
● InnoDB Page Compression (10.1)
● Storage-engine Independent Column Compression (10.3)
16
When and why to use MariaDB: Key features in 10.0 to 10.5
17. SE independent Compression vs
Compressed Row Format
● Specific to a column, less decompression overhead
● BLOB/TEXT vs general usage
● zlib vs alternative compression algorithms
● Indexes not permitted vs usual indexing
17
When and why to use MariaDB: Key features in 10.0 to 10.5
18. InnoDB Compression
3 types of compression
● Compressed Row Format
● InnoDB Page Compression (10.1)
● Storage-engine Independent Column Compression (10.3)
● https://mariadb.com/kb/en/optimization-and-tuning-compression/
18
When and why to use MariaDB: Key features in 10.0 to 10.5
19. Spider
● Partitioning and XA transactions
● Tables of different MariaDB instances can be handled as if
they were on the same instance.
● From MariaDB 10.0
● https://mariadb.com/kb/en/spider/
19
When and why to use MariaDB: Key features in 10.0 to 10.5
20. CONNECT
● Storage engine for handling a wide variety of formats
● BIN, CSV, DBF, DOS, DIR, FIX, FMT, INI, MAC, JDBC, JSON,
MONGO, MYSQL, OCCUR, ODBC, OEM, PIVOT, PROXY, TBL,
VEC, VIR, WMI, XCOL, XML, ZIP
20
When and why to use MariaDB: Key features in 10.0 to 10.5
21. CREATE TABLE cust ENGINE=CONNECT
TABLE_TYPE=DBF
FILE_NAME='cust.dbf';
21
CONNECT - DBF
When and why to use MariaDB: Key features in 10.0 to 10.5
22. A single .csv file
CREATE TABLE emp
... optional column definition
ENGINE=connect TABLE_TYPE=CSV
FILE_NAME='E:/Data/employee.csv'
SEP_CHAR=';' HEADER=1;
22
CONNECT - CSV/ZIP
When and why to use MariaDB: Key features in 10.0 to 10.5
23. A single .csv file
CREATE TABLE emp
... optional column definition
ENGINE=connect TABLE_TYPE=CSV
FILE_NAME='E:/Data/employee.csv'
SEP_CHAR=';' HEADER=1;
A single .csv in a .zip
CREATE TABLE empzip
... optional column definition
ENGINE=connect TABLE_TYPE=CSV
FILE_NAME='E:/Data/employee.zip'
SEP_CHAR=';' HEADER=1; ZIPPED=1
OPTION_LIST='Entry=emp.csv';
23
CONNECT - CSV/ZIP
When and why to use MariaDB: Key features in 10.0 to 10.5
24. A single .csv file
CREATE TABLE emp
... optional column definition
ENGINE=connect TABLE_TYPE=CSV
FILE_NAME='E:/Data/employee.csv'
SEP_CHAR=';' HEADER=1;
A single .csv in a .zip
CREATE TABLE empzip
... optional column definition
ENGINE=connect TABLE_TYPE=CSV
FILE_NAME='E:/Data/employee.zip'
SEP_CHAR=';' HEADER=1; ZIPPED=1
OPTION_LIST='Entry=emp.csv';
Multiple .csvs in a single .zip
CREATE TABLE empzmul
... required column definition
ENGINE=connect TABLE_TYPE=CSV
FILE_NAME='E:/Data/emp.zip'
SEP_CHAR=';' HEADER=1; ZIPPED=1
OPTION_LIST='Entry=emp*.csv';
24
CONNECT - CSV/ZIP
When and why to use MariaDB: Key features in 10.0 to 10.5
25. CONNECT
● Storage engine for handling a wide variety of formats
● BIN, CSV, DBF, DOS, DIR, FIX, FMT, INI, MAC, JDBC, JSON,
MONGO, MYSQL, OCCUR, ODBC, OEM, PIVOT, PROXY, TBL,
VEC, VIR, WMI, XCOL, XML, ZIP
● https://mariadb.com/kb/en/connect/
25
When and why to use MariaDB: Key features in 10.0 to 10.5
26. S3 Storage Engine
● Read only
● Archive MariaDB tables in Amazon S3, or any third-party
public or private cloud implementing S3 API
● Added in 10.5
● https://mariadb.com/kb/en/s3-storage-engine/
26
When and why to use MariaDB: Key features in 10.0 to 10.5
27. Galera
● Part of MariaDB Server from MariaDB 10.1
● https://mariadb.com/kb/en/galera-cluster/
● https://www.youtube.com/c/MariaDBFoundation
27
When and why to use MariaDB: Key features in 10.0 to 10.5
28. Temporal Tables
● System-versioned tables - query historic data (10.3).
● Application-time periods - query on a temporal range (10.4)
● Bitemporal - combines both (10.4)
28
When and why to use MariaDB: Key features in 10.0 to 10.5
29. CREATE TABLE t(
x INT,
start_timestamp TIMESTAMP(6) GENERATED ALWAYS AS ROW START,
end_timestamp TIMESTAMP(6) GENERATED ALWAYS AS ROW END,
PERIOD FOR SYSTEM_TIME(start_timestamp, end_timestamp)
) WITH SYSTEM VERSIONING;
29
Temporal Tables - System versioning
When and why to use MariaDB: Key features in 10.0 to 10.5
30. CREATE TABLE t(
x INT,
start_timestamp TIMESTAMP(6) GENERATED ALWAYS AS ROW START,
end_timestamp TIMESTAMP(6) GENERATED ALWAYS AS ROW END,
PERIOD FOR SYSTEM_TIME(start_timestamp, end_timestamp)
) WITH SYSTEM VERSIONING;
CREATE TABLE t (
x INT
) WITH SYSTEM VERSIONING;
30
Temporal Tables - System versioning
When and why to use MariaDB: Key features in 10.0 to 10.5
31. SELECT * FROM t FOR SYSTEM_TIME
AS OF TIMESTAMP'2021-05-11 23:58:06';
31
Temporal Tables - System versioning
When and why to use MariaDB: Key features in 10.0 to 10.5
32. SELECT * FROM t FOR SYSTEM_TIME
AS OF TIMESTAMP'2021-05-11 23:58:06';
SELECT * FROM t FOR SYSTEM_TIME
BETWEEN (NOW() - INTERVAL 1 YEAR) AND NOW();
32
Temporal Tables - System versioning
When and why to use MariaDB: Key features in 10.0 to 10.5
33. CREATE TABLE t1(
name VARCHAR(50),
date_1 DATE,
date_2 DATE,
PERIOD FOR date_period(date_1, date_2));
SELECT * FROM t1;
+------+------------+------------+
| name | date_1 | date_2 |
+------+------------+------------+
| a | 1999-01-01 | 2000-01-01 |
| b | 1999-01-01 | 2018-12-12 |
| c | 1999-01-01 | 2017-01-01 |
| d | 2017-01-01 | 2019-01-01 |
+------+------------+------------+
33
Temporal Tables - Application-time periods
When and why to use MariaDB: Key features in 10.0 to 10.5
34. SELECT * FROM t1;
+------+------------+------------+
| name | date_1 | date_2 |
+------+------------+------------+
| a | 1999-01-01 | 2000-01-01 |
| b | 1999-01-01 | 2018-12-12 |
| c | 1999-01-01 | 2017-01-01 |
| d | 2017-01-01 | 2019-01-01 |
+------+------------+------------+
34
Temporal Tables - Application-time periods
When and why to use MariaDB: Key features in 10.0 to 10.5
35. SELECT * FROM t1;
+------+------------+------------+
| name | date_1 | date_2 |
+------+------------+------------+
| a | 1999-01-01 | 2000-01-01 |
| b | 1999-01-01 | 2018-12-12 |
| c | 1999-01-01 | 2017-01-01 |
| d | 2017-01-01 | 2019-01-01 |
+------+------------+------------+
DELETE FROM t1
FOR PORTION OF date_period
FROM '2001-01-01' TO
'2018-01-01';
SELECT * FROM t1 ORDER BY name;
+------+------------+------------+
| name | date_1 | date_2 |
+------+------------+------------+
| a | 1999-01-01 | 2000-01-01 |
| b | 1999-01-01 | 2001-01-01 |
| b | 2018-01-01 | 2018-12-12 |
| c | 1999-01-01 | 2001-01-01 |
| d | 2018-01-01 | 2019-01-01 |
+------+------------+------------+
35
Temporal Tables - Application-time periods
When and why to use MariaDB: Key features in 10.0 to 10.5
36. CREATE TABLE rooms (
room_number INT,
guest_name VARCHAR(255),
checkin DATE,
checkout DATE,
PERIOD FOR p(checkin,checkout)
);
36
Temporal Tables - Application-time periods
When and why to use MariaDB: Key features in 10.0 to 10.5
37. CREATE TABLE rooms (
room_number INT,
guest_name VARCHAR(255),
checkin DATE,
checkout DATE,
PERIOD FOR p(checkin,checkout)
);
INSERT INTO rooms VALUES
(1,'Regina','2020-10-01','2020-10-03'),
(2,'Cochise','2020-10-02','2020-10-05'),
(1,'Nowell','2020-10-03','2020-10-07'),
(2,'Eusebius','2020-10-04','2020-10-06')
;
37
Temporal Tables - Application-time periods
When and why to use MariaDB: Key features in 10.0 to 10.5
38. CREATE TABLE rooms (
room_number INT,
guest_name VARCHAR(255),
checkin DATE,
checkout DATE,
PERIOD FOR p(checkin,checkout),
UNIQUE (room_number, p WITHOUT
OVERLAPS)
);
INSERT INTO rooms VALUES
(1,'Regina','2020-10-01','2020-10-03'),
(2,'Cochise','2020-10-02','2020-10-05'),
(1,'Nowell','2020-10-03','2020-10-07'),
(2,'Eusebius','2020-10-04','2020-10-06')
;
ERROR 1062 (23000): Duplicate entry
'2-2020-10-06-2020-10-04' for key
'room_number'
38
Temporal Tables - Application-time periods
When and why to use MariaDB: Key features in 10.0 to 10.5
39. Temporal Tables
● System-versioned tables - query historic data (10.3).
● Application-time periods - query on a temporal range (10.4)
● Bitemporal - combines both (10.4)
● https://mariadb.com/kb/en/temporal-tables/
39
When and why to use MariaDB: Key features in 10.0 to 10.5
40. Flashback
● Allows instances, databases or tables to be rolled back to a
previous snapshot based on the binary log
● DML-only
● From 10.2
40
When and why to use MariaDB: Key features in 10.0 to 10.5
42. IF [NOT] EXISTS
● IF [NOT] EXISTS gives a warning instead of an error
● From MariaDB 10.1
42
When and why to use MariaDB: Key features in 10.0 to 10.5
43. DROP USER bob;
ERROR 1396 (HY000): Operation DROP USER failed for 'bob'@'%'
DROP USER IF EXISTS bob;
Query OK, 0 rows affected, 1 warning (0.00 sec)
SHOW WARNINGS;
+-------+------+---------------------------------------------+
| Level | Code | Message |
+-------+------+---------------------------------------------+
| Note | 1974 | Can't drop user 'bob'@'%'; it doesn't exist |
+-------+------+---------------------------------------------+
43
IF [NOT] EXISTS
When and why to use MariaDB: Key features in 10.0 to 10.5
44. CREATE TABLE t2 (id INT);
ERROR 1050 (42S01): Table 't2' already exists
CREATE TABLE IF NOT EXISTS t2 (id INT);
Query OK, 0 rows affected, 1 warning (0.000 sec)
SHOW WARNINGS;
+-------+------+---------------------------+
| Level | Code | Message |
+-------+------+---------------------------+
| Note | 1050 | Table 't2' already exists |
+-------+------+---------------------------+
1 row in set (0.000 sec)
44
IF [NOT] EXISTS
When and why to use MariaDB: Key features in 10.0 to 10.5
45. OR REPLACE
● OR REPLACE drops and creates instead of giving an error
● From MariaDB 10.1
45
When and why to use MariaDB: Key features in 10.0 to 10.5
46. CREATE TABLE t2 (id INT);
ERROR 1050 (42S01): Table 't2' already exists
CREATE OR REPLACE TABLE t2 (id INT);
Query OK, 0 rows affected (0.059 sec)
46
OR REPLACE
When and why to use MariaDB: Key features in 10.0 to 10.5
47. IF [NOT] EXISTS / OR REPLACE
● OR REPLACE drops and creates instead of giving an error
● From MariaDB 10.1
● https://mariadb.com/kb/en/create-database/
47
When and why to use MariaDB: Key features in 10.0 to 10.5
48. RETURNING
● DELETE … RETURNING (from 10.0)
● INSERT … RETURNING (from 10.5)
● REPLACE … RETURNING (from 10.5)
● Returns a resultset of the deleted/created/replaced data
48
When and why to use MariaDB: Key features in 10.0 to 10.5
49. CREATE OR REPLACE TABLE t2 (
id INT,
animal VARCHAR(20),
t TIMESTAMP
);
INSERT INTO t2 (id) VALUES (2),(3)
RETURNING id,t;
+------+---------------------+
| id | t |
+------+---------------------+
| 2 | 2021-04-30 01:16:31 |
| 3 | 2021-04-30 01:16:31 |
+------+---------------------+
49
RETURNING clause
When and why to use MariaDB: Key features in 10.0 to 10.5
50. DELETE FROM t2 RETURNING id, t;
+------+---------------------+
| id | t |
+------+---------------------+
| 2 | 2021-04-30 01:16:31 |
| 3 | 2021-04-30 01:16:31 |
+------+---------------------+
50
RETURNING clause
When and why to use MariaDB: Key features in 10.0 to 10.5
51. RETURNING
● DELETE … RETURNING (from 10.0)
● https://mariadb.com/kb/en/delete/#returning
● INSERT … RETURNING (from 10.5)
● https://mariadb.com/kb/en/insertreturning/
● REPLACE … RETURNING (from 10.5)
● https://mariadb.com/kb/en/replacereturning/
51
When and why to use MariaDB: Key features in 10.0 to 10.5
52. Oracle mode
● a subset of Oracle's PL/SQL
● Oracle syntax / functionality
● Functionality that only works in Oracle mode
● Functionality that works in default MariaDB mode as well
52
When and why to use MariaDB: Key features in 10.0 to 10.5
53. Oracle mode
● a subset of Oracle's PL/SQL
● Oracle syntax / functionality
● Functionality that only works in Oracle mode
● Functionality that works in default MariaDB mode as well
[mariadb]
sql_mode = ORACLE
53
When and why to use MariaDB: Key features in 10.0 to 10.5
54. Oracle mode
● a subset of Oracle's PL/SQL
● Oracle syntax / functionality
● Functionality that only works in Oracle mode
● Functionality that works in default MariaDB mode as well
[mariadb]
sql_mode = ORACLE
54
When and why to use MariaDB: Key features in 10.0 to 10.5
55. Oracle mode - synonyms
55
When and why to use MariaDB: Key features in 10.0 to 10.5
56. Oracle mode - different behaviour
56
When and why to use MariaDB: Key features in 10.0 to 10.5
57. ● Sequences - generate sequence of numeric values
CREATE SEQUENCE s START WITH 100 INCREMENT BY 10;
SELECT NEXTVAL(s);
+------------+
| NEXTVAL(s) |
+------------+
| 100 |
+------------+
SELECT NEXT VALUE FOR s
SELECT s.nextval;
57
Oracle compatibility - additional
When and why to use MariaDB: Key features in 10.0 to 10.5
58. Oracle mode
● Migrating from Oracle to MariaDB
● New functionality for MariaDB
● https://mariadb.com/kb/en/sql_modeoracle/
58
When and why to use MariaDB: Key features in 10.0 to 10.5
59. Find out more
● https://mariadb.com/kb/
● https://www.youtube.com/c/MariaDBFoundation
● https://mariadb.zulipchat.com/
59
When and why to use MariaDB: Key features in 10.0 to 10.5