This document provides an overview of MariaDB, which is a community-developed fork of MySQL that aims to be drop-in compatible with MySQL. It discusses some of MariaDB's key features like support for microseconds in timestamps, virtual columns, regular expressions, geospatial functions, dynamic columns, connectors for Cassandra and other databases. The document also covers MariaDB's replication, security, auditing and other advanced features, and notes that MariaDB is used by many large websites and companies. It provides resources for learning more about MariaDB and getting support.
MariaDB - a MySQL Replacement #SELF2014Colin Charles
MariaDB - a MySQL replacement at South East Linux Fest 2014 - SELF2014. Learn about features that are not in MySQL 5.6, some that are only just coming in MySQL 5.7, and some that just don't exist.
* If you see the screen is not good condition, downloading please. *
Introduction to MariaDB
- mariadb oracle mysql comparison
- mariadb install step by step
- mariadb basic query
MariaDB 10: A MySQL Replacement - HKOSC Colin Charles
MariaDB 10: A MySQL Replacement. Current up to 10.0.9, right before the 10.0.10 GA release presented the weekend before the release in Hong Kong, at the Hong Kong Open Source Conference.
This webinar is a technical overview of the MariaDB CONNECT Storage Engine
The MariaDB CONNECT Storage Engine allows to access various file formats (CSV, XML, Excel, etc). It give access to any ODBC data sources (Oracle, DB2, SQLServer, etc). It also allows to access remote MySQL tables or ODBC tables.
A CONNECT table itself can be a set of remote MySQL tables. This opens the door to interesting distributed architectures that can help to address big data.
SQL requests can be executed in parallel against these CONNECT distributed tables
MariaDB - a MySQL Replacement #SELF2014Colin Charles
MariaDB - a MySQL replacement at South East Linux Fest 2014 - SELF2014. Learn about features that are not in MySQL 5.6, some that are only just coming in MySQL 5.7, and some that just don't exist.
* If you see the screen is not good condition, downloading please. *
Introduction to MariaDB
- mariadb oracle mysql comparison
- mariadb install step by step
- mariadb basic query
MariaDB 10: A MySQL Replacement - HKOSC Colin Charles
MariaDB 10: A MySQL Replacement. Current up to 10.0.9, right before the 10.0.10 GA release presented the weekend before the release in Hong Kong, at the Hong Kong Open Source Conference.
This webinar is a technical overview of the MariaDB CONNECT Storage Engine
The MariaDB CONNECT Storage Engine allows to access various file formats (CSV, XML, Excel, etc). It give access to any ODBC data sources (Oracle, DB2, SQLServer, etc). It also allows to access remote MySQL tables or ODBC tables.
A CONNECT table itself can be a set of remote MySQL tables. This opens the door to interesting distributed architectures that can help to address big data.
SQL requests can be executed in parallel against these CONNECT distributed tables
This is a presentation I gave at UKOUG user conference in Scotland. SQLcl is a new command line tool from the developers of SQL Developer in Oracle, This presentation is accompanied by live demo that can be downloaded from my blog.
MariaDB started life as a database to host the Maria storage engine in 2009. Not long after its inception, the MySQL community went through yet another change in ownership, and it was deemed that MariaDB will be a complete database branch developed to extend MySQL, but with constant merging of upstream changes.
The goal of the MariaDB project is to ensure that everyone is part of the community, including employees of the major steering companies. MariaDB also features enhanced features, some of which are common with the Percona Performance Server. Most importantly, MariaDB is a drop-in replacement and is completely backward compatible with MySQL. In 2010, MariaDB released 5.1 in February, and 5.2 in November – two major releases in a span of one calendar year is a feat that was achieved!
DBAs and developers alike will gain an introduction to MariaDB, what is different with MySQL, how to make use of the feature enhancements, and more.
Do you wonder how to contribute to MariaDB? Have you considered writing a plugin? MariaDB ships many plugins (over a hundred) and you could also be one of them. Find out what they do, how to use them, and so forth. A lightning talk given for the MySQL NL User Group meetup in Amsterdam.
An introduction to MongoDB from an experienced MySQL user and developer. There are differences and we go thru the What/Why/Who/Where of MongoDB, the "similarities" to the MySQL world like storage engines, how replication is a little more interesting with built-in sharding and automatic failover, backups, monitoring, DBaaS, going to production and finding out more resources.
Better encryption & security with MariaDB 10.1 & MySQL 5.7Colin Charles
Talking about the improvements in MariaDB on MySQL security and encryption features that are so important in today's data landscape. Presented http://www.meetup.com/EffectiveMySQL/events/224828891/
Meet MariaDB 10.1 at the Bulgaria Web SummitColin Charles
Meet MariaDB 10.1 at the Bulgaria Web Summit, held in Sofia in February 2016. Learn all about MariaDB Server, and the new features like encryption, audit plugins, and more.
Tuning Linux for your database FLOSSUK 2016Colin Charles
Some best practices about tuning Linux for your database workloads. The focus is not just on MySQL or MariaDB Server but also on understanding the OS from hardware/cloud, I/O, filesystems, memory, CPU, network, and resources.
MariaDB: in-depth (hands on training in Seoul)Colin Charles
MariaDB: in-depth is training that was conducted for partners selling/deploying MariaDB in Seoul. Its a practical hands-on introduction that can be completed in 1-day.
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.
[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
This is a presentation I gave at UKOUG user conference in Scotland. SQLcl is a new command line tool from the developers of SQL Developer in Oracle, This presentation is accompanied by live demo that can be downloaded from my blog.
MariaDB started life as a database to host the Maria storage engine in 2009. Not long after its inception, the MySQL community went through yet another change in ownership, and it was deemed that MariaDB will be a complete database branch developed to extend MySQL, but with constant merging of upstream changes.
The goal of the MariaDB project is to ensure that everyone is part of the community, including employees of the major steering companies. MariaDB also features enhanced features, some of which are common with the Percona Performance Server. Most importantly, MariaDB is a drop-in replacement and is completely backward compatible with MySQL. In 2010, MariaDB released 5.1 in February, and 5.2 in November – two major releases in a span of one calendar year is a feat that was achieved!
DBAs and developers alike will gain an introduction to MariaDB, what is different with MySQL, how to make use of the feature enhancements, and more.
Do you wonder how to contribute to MariaDB? Have you considered writing a plugin? MariaDB ships many plugins (over a hundred) and you could also be one of them. Find out what they do, how to use them, and so forth. A lightning talk given for the MySQL NL User Group meetup in Amsterdam.
An introduction to MongoDB from an experienced MySQL user and developer. There are differences and we go thru the What/Why/Who/Where of MongoDB, the "similarities" to the MySQL world like storage engines, how replication is a little more interesting with built-in sharding and automatic failover, backups, monitoring, DBaaS, going to production and finding out more resources.
Better encryption & security with MariaDB 10.1 & MySQL 5.7Colin Charles
Talking about the improvements in MariaDB on MySQL security and encryption features that are so important in today's data landscape. Presented http://www.meetup.com/EffectiveMySQL/events/224828891/
Meet MariaDB 10.1 at the Bulgaria Web SummitColin Charles
Meet MariaDB 10.1 at the Bulgaria Web Summit, held in Sofia in February 2016. Learn all about MariaDB Server, and the new features like encryption, audit plugins, and more.
Tuning Linux for your database FLOSSUK 2016Colin Charles
Some best practices about tuning Linux for your database workloads. The focus is not just on MySQL or MariaDB Server but also on understanding the OS from hardware/cloud, I/O, filesystems, memory, CPU, network, and resources.
MariaDB: in-depth (hands on training in Seoul)Colin Charles
MariaDB: in-depth is training that was conducted for partners selling/deploying MariaDB in Seoul. Its a practical hands-on introduction that can be completed in 1-day.
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.
[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
Learn about the MariaDB 10 features that exist for developers: microseconds, virtual columns, PCRE regular expressions, DELETE ... RETURNING, geospatial extensions (GIS), dynamic columns. Use cases, and a hint of storage engines
MariaDB Server 10.3 is a culmination of features from MariaDB Server 10.2+10.1+10.0+5.5+5.3+5.2+5.1 as well as a base branch from MySQL 5.5 and backports from MySQL 5.6/5.7. It has many new features, like a GA-ready sharding engine (SPIDER), MyRocks, as well as some Oracle compatibility, system versioned tables and a whole lot more.
MySQL in the Hosted Cloud - Percona Live 2015Colin Charles
You're a smaller shop and you want to host MySQL in the cloud, maybe because you don't have a database administrator on hand. Find out how to do it in Amazon's AWS EC2 or RDS, Google's Cloud SQL or even Rackspace's platform.
* Use cases of MySQL as well as edge cases of MySQL topologies using real-life examples and "war" stories
* How scalability and proxy wars make MySQL topologies more robust to serve webscale shops
* Open-source tools, utilities, and surrounding MySQL Ecosystem.
Today you can use hosted MySQL/MariaDB/Percona Server in several "cloud providers" in what is considered using it as a service, a database as a service (DBaaS). You can also use hosted PostgreSQL and MongoDB thru various service providers. Learn the differences, the access methods, and the level of control you have for the various public cloud offerings:
- Amazon RDS for MySQL and PostgreSQL
- Google Cloud SQL
- Rackspace OpenStack DBaaS
- The likes of compose.io, MongoLab and Rackspace's offerings around MongoDB
The administration tools and ideologies behind it are completely different, and you are in a "locked-down" environment. Some considerations include:
* Different backup strategies
* Planning for multiple data centres for availability
* Where do you host your application?
* How do you get the most performance out of the solution?
* What does this all cost?
Growth topics include:
* How do you move from one DBaaS to another?
* How do you move all this from DBaaS to your own hosted platform?
Questions like this will be demystified in the talk. This talk will benefit experienced database administrators (DBAs) who now also have to deal with cloud deployments as well as application developers in startups that have to rely on "managed services" without the ability of a DBA.
Presented at Percona Live Amsterdam 2016, this is an in-depth look at MariaDB Server right up to MariaDB Server 10.1. Learn the differences. See what's already in MySQL. And so on.
You want to use MySQL in Amazon RDS, Rackspace Cloud, Google Cloud SQL or HP Helion Public Cloud? Check this out, from Percona Live London 2014. (Note that pricing of Google Cloud SQL changed prices on the same day after the presentation)
MariaDB - Fast, Easy & Strong - Get Started Tutorialphamhphuc
MariaDB - Fast, Easy & Strong - Get Started Guide. You can understand why you should use MariaDB and how easy to install it for your server. Let 's enjoy!!!
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB MeetupColin Charles
Presented at the Tokyo MariaDB Server meetup in July 2016, this is an overview of what you can see and use in MariaDB Server 10.1, but more importantly what is planned to arrive in 10.2
OSDC 2017 | Lessons from database failures by Colin CharlesNETWAYS
Lets learn from MySQL failures at scale, because we tie in the topic of High Availability, in where people are thinking about geographical redundancy, and even things like automatic failover. In the talk there will be case study material, e.g. where automatic failure caused a site to go offline, where a social network started of with not using fully automated failovers but evolved, etc. How is the MySQL world making things better, for example by allowing you to use semi-synchronous replication to run fully scalable services. The talk starts off with an even almost stupid example of how a business died due to incorrect MySQL backup procedures. It will go on to talk about security and encryption at rest as well. So a mix of problems from the field, big “fail whales”, and how you should avoid them by properly architecting solutions.
Today you can use MySQL in several clouds in what is considered using it as a service, a database as a service (DBaaS). Learn the differences, the access methods, and the level of control you have for the various cloud offerings including:
- Amazon RDS
- Google Cloud SQL
- HPCloud DBaaS
- Rackspace Openstack DBaaS
The administration tools and ideologies behind it are completely different, and you are in a "locked-down" environment. Some considerations include:
* Different backup strategies
* Planning for multiple data centres for availability
* Where do you host your application?
* How do you get the most performance out of the solution?
* What does this all cost?
Questions like this will be demystified in the talk.
Similar to [B14] A MySQL Replacement by Colin Charles (20)
Some might think Docker is for developers only, but this is not really the case.Docker is here to stay and we will only see more of it in the future.
In this session learn what Docker is and how it works.This session will be covering core areas such as volumes, but also stepping it up to a few tips and tricks to help you get the most out of your Docker environment.The session will dive into a few examples of how to create a database environment within just a few minutes - perfect for testing,development, and possibly even production systems.
Machine Learning explained with Examples
Everybody is talking about machine learning. What is it actually and how can I use it?
In this presentation we will see some examples of solving real life use cases using machine learning. We will define Tasks and see how that task can be addressed using machine learning.
SQL Server 2017でLinuxに対応し、その延長線でDocker対応やKubernetesによる可用性構成が組めるようになりました。そしてリリースを間近に控えたSQL Server 2019ではKubernetesを活用したBig Data Cluster機能の提供が予定されており、コンテナの活用範囲はさらに広がっています。
本セッションではこれからSQL Serverコンテナに触れていくための基礎知識と実際に触れてみるための手順やサンプルをお届けします。
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
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.
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.
Building RAG with self-deployed Milvus vector database and Snowpark Container...Zilliz
This talk will give hands-on advice on building RAG applications with an open-source Milvus database deployed as a docker container. We will also introduce the integration of Milvus with Snowpark Container Services.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
Mind map of terminologies used in context of Generative AI
[B14] A MySQL Replacement by Colin Charles
1. MariaDB - a MySQL
replacement
Colin Charles, Team MariaDB, SkySQL Ab
colin@mariadb.org | http://mariadb.org/
http://bytebot.net/blog/ | @bytebot on Twitter
DB Tech Showcase, Osaka, Japan
18 June 2014
2. whoami
• Work on MariaDB at SkySQL Ab
• Merged with Monty Program Ab, makers of
MariaDB
• Formerly MySQL AB (exit: Sun Microsystems)
• Past lives include Fedora Project (FESCO),
OpenOffice.org
3. Who are you?
• Developer?
• Operator? (DBA, sysadmin)
• A bit of both?
5. 5W1H is MariaDB
• Drop-in compatible MySQL replacement
• Community developed, Foundation backed, feature
enhanced, backwards compatible, GPLv2 licensed
• Steady stream of releases in 4 years 4 months: 5.1, 5.2, 5.3,
5.5, 10.0, MariaDB Galera Cluster 5.5, MariaDB with TokuDB
5.5
• Enterprise features open: PAM authentication plugin,
threadpool, audit plugin
• Default in Red Hat Enterprise Linux, Fedora, openSUSE, etc.
6. MariaDB in Japan
• Contributions:
• SPIDER storage engine
• Groonga full-text search engine
• HandlerSocket key/value store
• Translations
• 13.6% (6/44) maria-captains from Japan
• 24/7/365 support by Ashisuto
9. Microseconds & 5.6
• TIME_TO_SEC(), UNIX_TIMESTAMP() preserve
microseconds of the argument
MariaDB 10.0 MySQL 5.6
SELECT
TIME_TO_SEC('10:10:10.12345');
+-------------------------------+
| TIME_TO_SEC('10:10:10.12345') |
+-------------------------------+
| 36610.12345 |
+-------------------------------+
1 row in set (0.01 sec)
SELECT
TIME_TO_SEC('10:10:10.12345');
+-------------------------------+
| TIME_TO_SEC('10:10:10.12345') |
+-------------------------------+
| 36610 |
+-------------------------------+
1 row in set (0.00 sec)
10. Virtual Columns
• A column in a table that has its value automatically
calculated either with a pre-calculated/
deterministic expression or values of other fields in
the table
• VIRTUAL - computed on the fly when data is
queried (like a VIEW)
• PERSISTENT - computed when data is inserted
and stored in a table
MariaDB 5.2+
11. Virtual Columns
CREATE TABLE table1 (
a INT NOT NULL,
b VARCHAR(32),
c INT AS (a mod 10) VIRTUAL,
d VARCHAR(5) AS (left(b,5))
PERSISTENT);
12. Virtual columns example
CREATE TABLE product (
-> productname VARCHAR(25),
-> price_eur DOUBLE,
-> xrate DOUBLE,
-> price_cny DOUBLE AS (price_eur*xrate) VIRTUAL);
INSERT INTO product VALUES ('toothpaste', 1.5, 1.39,
default);
INSERT into product VALUES ('shaving cream', 3.59,
1.39, default);
13. Virtual columns example II
select * from product;
+---------------+-----------+-------+-------------------+
| productname | price_eur | xrate | price_cny |
+---------------+-----------+-------+-------------------+
| toothpaste | 1.5 | 1.39 | 2.085 |
| shaving cream | 3.59 | 1.39 | 4.990099999999999 |
+---------------+-----------+-------+-------------------+
2 rows in set (0.00 sec)
14. PCRE Regular Expressions
• Powerful REGEXP/RLIKE operator
• New operators:
• REGEXP_REPLACE(sub,pattern,replace)
• REGEXP_INSTR(sub,pattern)
• REGEXP_SUBSTR(sub,pattern)
• Works with multi-byte character sets that MariaDB
supports, including East-Asian sets
MariaDB 10.0+
15. GIS
• MariaDB implements a subset of SQL with
Geometry Types
• No longer just minimum bounding rectangles
(MBR) - shapes considered
CREATE TABLE geom (g GEOMETRY NOT NULL,
SPATIAL INDEX(g)) ENGINE=MyISAM;
• ST_ prefix - as per OpenGIS requirements
MariaDB 5.3+
16. Dynamic columns
• Allows you to create virtual columns with dynamic content for each
row in table. Store different attributes for each item (like a web
store).
• Basically a BLOB with handling functions: COLUMN_CREATE,
COLUMN_ADD, COLUMN_GET, COLUMN_DELETE,
COLUMN_EXISTS, COLUMN_LIST, COLUMN_CHECK,
COLUMN_JSON
• In MariaDB 10.0: name support (instead of referring to columns by
numbers, name it), convert all dynamic column content to JSON
array, interface with Cassandra
INSERT INTO tbl SET
dyncol_blob=COLUMN_CREATE("column_name", "value");
MariaDB 5.3+
17. Query Cassandra
• Data is mapped: rowkey, static columns, dynamic
columns
• super columns aren’t supported
• No 1-1 direct map for data types
• Write to Cassandra from SQL (SELECT, INSERT,
UPDATE, DELETE)
MariaDB 10.0+
18. Cassandra II
pk varchar(36) primary key,
data1 varchar(60),
data2 bigint
) engine=cassandra keyspace='ks1' column_family='cf1'
• Table must have a primary key
• name/type must match Cassandra’s rowkey
• Columns map to Cassandra’s static columns
• name must be same as in Cassandra, datatypes must match, can be
subset of CF’s columns
19. Mapping
• Datatype mapping - complete table at KB
• Data mapping is safe - engine will refuse incorrect
mappings
• Command mapping: INSERT overwrites rows,
UPDATE reads then writes, DELETE reads then
writes
20. Typical use cases
• Web page hits collection, streaming data
• Sensor data
• Reads served with a lookup
• Want an auto-replicated, fault-tolerant table?
21. CONNECT
• Target: ETL for BI or analytics
• Import data from CSV, XML, ODBC, MS Access,
etc.
• WHERE conditions pushed to ODBC source
• DROP TABLE just removes the stored definition, not
data itself
• “Virtual” tables cannot be indexed
MariaDB 10.0+
22. SPIDER
• Horizontal partitioning, built on top of PARTITIONs
• Associates a partition with a remote server
• Transparent to user, easy to expand
• Has index condition pushdown support enabled
MariaDB 10.0+
23. TokuDB
• Opensource - separate MariaDB 5.5+TokuDB/
integrated in 10.0.5
• Improved insert (10-20x faster) & query speed,
compression (up to 90% space reduction),
replication performance and online schema
flexibility
• Uses Fractal Tree Indexes instead of B-Tree
• Tests & builds of TokuDB on multiple platforms
24. Engines, etc
• Plan for backups - TokuDB can be cool for your uses as
an example
• Galera: study your workload patterns, your application,
etc.
• SPIDER (built-in sharding capabilities, partitioning & XA
transaction capable with multiple backends including
Oracle)
• its not going to be straightforward to “just start” -
need to know right tables to implement, etc.
25. Threadpool
• Modified from 5.1 (libevent based), great for
CPU bound loads and short running queries
• Windows (threadpool), Linux (epoll), Solaris
(event ports), FreeBSD/OSX (kevents)
• No minimization of concurrent transactions
with dynamic pool size
• thread_handling=pool-of-threads
• https://mariadb.com/kb/en/thread-pool-in-
mariadb-55/
MariaDB 5.5+
26. PAM Authentication
• Authentication using /etc/shadow
• Authentication using LDAP, SSH pass phrases, password
expiration, username mapping, logging every login attempt, etc.
• INSTALL PLUGIN pam SONAME ‘auth_pam.so’;
• CREATE USER foo@host IDENTIFIED via pam
• Remember to configure PAM (/etc/pam.d or /etc/pam.conf)
• http://www.mysqlperformanceblog.com/2013/02/24/using-two-
factor-authentication-with-percona-server/
MariaDB 5.2+
27. SQL Error Logging Plugin
• Log errors sent to clients in a log file that can be
analysed later. Log file can be rotated
(recommended)
• a MYSQL_AUDIT_PLUGIN
install plugin SQL_ERROR_LOG soname
'sql_errlog.so';
MariaDB 5.5+
28. Audit Plugin
• Log server activity - who connects to the server,
what queries run, what tables touched - rotating log
file or syslogd
• a MYSQL_AUDIT_PLUGIN
INSTALL PLUGIN server_audit SONAME
‘server_audit.so’;
MariaDB 10.0+
29. Replication made better
• Selective skipping of replication events (session-
based or on master or slave)
• Dynamic control of replication variables (no
restarts!)
• Using row-based replication? Annotate the binary
log with SQL statements
• Slaves perform checksums on binary log events
MariaDB 5.3+
30. Replication made better II
• Group commit in the binary log - finally, sync_binlog=1,
innodb_flush_log_at_trx_commit=1 performs
• START TRANSACTION WITH CONSISTENT SNAPSHOT
• mysqldump —single-transaction —master-
data - full non-blocking backup
• Slaves crash-safe (data stored inside transaction tables)
• Multi-source replication - (real-time) analytics, shard
provisioning, backups, etc.
31. New KILL syntax
• HARD | SOFT & USER USERNAME are MariaDB-specific (5.3.2)
• KILL QUERY ID query_id (10.0.5) - kill by query id, rather than
thread id
• SOFT ensures things that may leave a table in an inconsistent
state aren’t interrupted (like REPAIR or INDEX creation for
MyISAM or Aria)
KILL [HARD | SOFT] [CONNECTION | QUERY]
[thread_id | USER user_name]
MariaDB 5.3+
32. Statistics
• Understand server activity better to understand database loads
• SET GLOBAL userstat=1;
• SHOW CLIENT_STATISTICS; SHOW USER_STATISTICS;
• # of connections, CPU usage, bytes received/sent, row
statistics
• SHOW INDEX_STATISTICS; SHOW TABLE_STATISTICS;
• # rows read, changed, indexes
• INFORMATION_SCHEMA.PROCESSLIST has MEMORY_USAGE,
EXAMINED_ROWS (similar with SHOW STATUS output)
MariaDB 5.2+
MariaDB 10.0+
33. EXPLAIN enhanced
• Explain analyser: https://mariadb.org/
explain_analyzer/analyze/
• SHOW EXPLAIN for <thread_id>
• EXPLAIN output in the slow query log
• EXPLAIN not just for SELECT but INSERT/UPDATE/
DELETE
MariaDB 10.0+
34. Roles
• Bundles users together, with similar privileges -
follows the SQL standard
CREATE ROLE audit_bean_counters;
GRANT SELECT ON accounts.* to
audit_bean_counters;
GRANT audit_bean_counters to ceo;
MariaDB 10.0+
35. Connectors
• The MariaDB project provides LGPL connectors
(client libraries) for:
• C
• Java
• ODBC
• Embedding a connector? Makes sense to use
these LGPL licensed ones…
37. MariaDB Galera Cluster
• MariaDB Galera Cluster is made for today’s cloud
based environments. It is fully read-write scalable,
comes with synchronous replication, allows multi-
master topologies, and guarantees no lag or lost
transactions.
• Currently 5.5-based
• 10.0 is in beta (almost ready for release)
38. Trusted by many
• Google
• Wikipedia
• Tumblr
• SpamExperts
• Limelight Networks
• KakaoTalk
• Paybox Services
40. Resources
• We moved to github! https://github.com/MariaDB/server
• We’re still on launchpad for older branches: https://
launchpad.net/maria
• maria-discuss@lists.launchpad.net
• maria-developers@lists.launchpad.net
• #maria on freenode
• facebook.com/MariaDB.dbms
• @mariadb / +MariaDB