MySQL Parallel Replication: All the 5.7 and 8.0 Details (LOGICAL_CLOCK)Jean-François Gagné
To get better replication speed and less lag, MySQL implements parallel replication in the same schema, also known as LOGICAL_CLOCK. But fully benefiting from this feature is not as simple as just enabling it.
In this talk, I explain in detail how this feature works. I also cover how to optimize parallel replication and the improvements made in MySQL 8.0 and back-ported in 5.7 (Write Sets), greatly improving the potential for parallel execution on replicas (but needing RBR).
Come to this talk to get all the details about MySQL 5.7 and 8.0 Parallel Replication.
Session presented at Oracle Developer Live - MySQL, 2020. Recording available at https://developer.oracle.com/developer-live/mysql/
Abstract:
MySQL Shell is the new, advanced command-line client and editor for MySQL. It sends SQL statements to MySQL server, supports both the classic MySQL protocol and the newer X protocol, and provides scripting capabilities for JavaScript and Python. But there's more to MySQL Shell than meets the eye. It delivers a natural and powerful interface for all DevOps tasks related to MySQL by providing APIs for development and administration. This session covers MySQL Shell's core features, along with demonstrations of how to use the various APIs and how to extend MySQL Shell. We’ll address the regular interaction with databases, the built-in tools that make DBAs and developers’ lives easier, the easy and flawless set up of HA architectures, and the plugins and extensions framework.
Open Source 101 2022 - MySQL Indexes and HistogramsFrederic Descamps
Nobody complains that the database is too fast. But when things slow down, the complaints come quickly. The two most popular approaches to speeding up queries are indexes and histograms. But there are so many options and types on indexes that it can get confusing. Histograms are fairly new to MySQL but they do not work for all types of data. This talk covers how indexes and histograms work and show you how to test just how effective they are so you can measure the performance of your queries.
In this tutorial, we cover the different deployment possibilities of the MySQL architecture depending on the business requirements for the data. We also deploy some architecture and see how to evolve to the next one.
The tutorial covers the new MySQL Solutions like InnoDB ReplicaSet, InnoDB Cluster, and InnoDB ClusterSet.
MySQL InnoDB Cluster - Advanced Configuration & OperationsFrederic Descamps
MySQL InnoDB Cluster is a very easy HA solution to deploy. However it's also a very customizable solution able to respond to most needs. During this session I will give an overview of settings that you may tune like those related to quorum lost, level of consistency, but also some you may not know like how to change recovery system, effect of increasing the event horizon. We will also discus about maintenance operations like how to stream large transactions, how to deal with DDL in multi-primary environments...
MySQL Parallel Replication: All the 5.7 and 8.0 Details (LOGICAL_CLOCK)Jean-François Gagné
To get better replication speed and less lag, MySQL implements parallel replication in the same schema, also known as LOGICAL_CLOCK. But fully benefiting from this feature is not as simple as just enabling it.
In this talk, I explain in detail how this feature works. I also cover how to optimize parallel replication and the improvements made in MySQL 8.0 and back-ported in 5.7 (Write Sets), greatly improving the potential for parallel execution on replicas (but needing RBR).
Come to this talk to get all the details about MySQL 5.7 and 8.0 Parallel Replication.
Session presented at Oracle Developer Live - MySQL, 2020. Recording available at https://developer.oracle.com/developer-live/mysql/
Abstract:
MySQL Shell is the new, advanced command-line client and editor for MySQL. It sends SQL statements to MySQL server, supports both the classic MySQL protocol and the newer X protocol, and provides scripting capabilities for JavaScript and Python. But there's more to MySQL Shell than meets the eye. It delivers a natural and powerful interface for all DevOps tasks related to MySQL by providing APIs for development and administration. This session covers MySQL Shell's core features, along with demonstrations of how to use the various APIs and how to extend MySQL Shell. We’ll address the regular interaction with databases, the built-in tools that make DBAs and developers’ lives easier, the easy and flawless set up of HA architectures, and the plugins and extensions framework.
Open Source 101 2022 - MySQL Indexes and HistogramsFrederic Descamps
Nobody complains that the database is too fast. But when things slow down, the complaints come quickly. The two most popular approaches to speeding up queries are indexes and histograms. But there are so many options and types on indexes that it can get confusing. Histograms are fairly new to MySQL but they do not work for all types of data. This talk covers how indexes and histograms work and show you how to test just how effective they are so you can measure the performance of your queries.
In this tutorial, we cover the different deployment possibilities of the MySQL architecture depending on the business requirements for the data. We also deploy some architecture and see how to evolve to the next one.
The tutorial covers the new MySQL Solutions like InnoDB ReplicaSet, InnoDB Cluster, and InnoDB ClusterSet.
MySQL InnoDB Cluster - Advanced Configuration & OperationsFrederic Descamps
MySQL InnoDB Cluster is a very easy HA solution to deploy. However it's also a very customizable solution able to respond to most needs. During this session I will give an overview of settings that you may tune like those related to quorum lost, level of consistency, but also some you may not know like how to change recovery system, effect of increasing the event horizon. We will also discus about maintenance operations like how to stream large transactions, how to deal with DDL in multi-primary environments...
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11Kenny Gryp
Oracle's MySQL solutions make it easy to setup various database architectures and achieve high availability with the introduction MySQL InnoDB Cluster and MySQL InnoDB ReplicaSet meeting various high availability requirements. MySQL InnoDB ClusterSet provides a popular disaster recovery solution.
Completely built in-house and supported by Oracle, many enterprises large and small have adopted these solutions into business critical applications.
In this presentation the various database architecture solutions for high availability and disaster recovery will be covered and help you choose the right solutions based on your business requirements.
MySQL Database Architectures - InnoDB ReplicaSet & ClusterKenny Gryp
Following MySQL InnoDB Cluster as our first, fully integrated MySQL High Availability solution based on Group Replication, MySQL Shell 8.0.19 includes MySQL InnoDB ReplicaSet which delivers another complete solution, this time based on MySQL Replication.
The basic idea for InnoDB ReplicaSet is to do the same for classic MySQL Replication as InnoDB Cluster did for Group Replication. We take a strong technology that is very powerful but can be complex, and provide an easy-to-use AdminAPI for it in the MySQL Shell.
In just a few easy to use Shell commands, a MySQL Replication database architecture can be configured from scratch including:
Data provisioning using MySQL CLONE, Setting up replication,
Performing manual switchover/failover.
Percona Live 2022 - The Evolution of a MySQL Database SystemFrederic Descamps
From a single MySQL instance to multi-site high availability, this is what you will find out in this presentation. You will learn how to make this transition and which solutions best suit changing business requirements (RPO, RTO). Recently, MySQL has extended the possibilities for easy deployment of architecture with integrated tools. Come and discover these open source solutions that are part of MySQL.
MySQL has multiple timeouts variables to control its operations. This presentation focus on the purpose of each timeout variables and how it can be used.
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)Aurimas Mikalauskas
Is my MySQL server configured properly? Should I run Community MySQL, MariaDB, Percona or WebScaleSQL? How many innodb buffer pool instances should I run? Why should I NOT use the query cache? How do I size the innodb log file size and what IS that innodb log anyway? All answers are inside.
Aurimas Mikalauskas is a former Percona performance consultant and architect currently writing and teaching at speedemy.com. He's been involved with MySQL since 1999, scaling and optimizing MySQL backed systems since 2004 for companies such as BBC, EngineYard, famous social networks and small shops like EstanteVirtual, Pine Cove and hundreds of others.
Additional content mentioned in the presentation can be found here: http://speedemy.com/17
Since the introduction of replication in MySQL, users have been trying to automate the promotion of a replica to a primary as well as automating the failover of TCP connections from one database server to another in the event of a database failure: planned or unplanned. For over a decade, users and organizations have designed various types of solutions to achieve this. Though, many of these solutions were done manually or were using third party software, mostly open source, to automate and integrate various architectures.
For more than 5 years now, MySQL offers complete and very easy-to-use solutions to set up database architectures that provide High-Availability and recently added Disaster Recovery capabilities. Completely built in-house and supported by Oracle, many enterprises large and small have adopted these solutions into business-critical applications.
Business requirements dictate what type of database architecture is required for your system. Disaster tolerance is key and can be measured at different levels: data loss, data availability, and uptime. In this session, the various MySQL Database Architecture solutions will be covered to help you choose the right solution based on your business requirements
MySQL InnoDB Cluster provides a complete, high-availability solution for MySQL. Learn how with a few easy-to-use Shell commands, how to set up a MySQL database architecture.
MySQL Group Replication - Ready For Production? (2018-04)Kenny Gryp
At the end of 2016, Oracle released a new Plugin called MySQL Group Replication, which is a new MySQL replication method that aims to provide better High Availability, and built-in failover with consistency guarantees.
I evaluated the initial GA versions back in early 2017. I presented my initial findings with several best practices and concerns with the current implementation which made me state that Group Replication was not quite ready yet.
(https://www.slideshare.net/Grypyrg/my-sql-group-replication)
(Un)lucky as I was, a large part of the attendees were Oracle developers and the months after this, many of these bugs and missing features were implemented in both MySQL 8.0 as well as backported to MySQL 5.7. (Thank you!)
This is a followup presentation on my previous analysis, where I will look into the changes since and re-evaluate the readiness of Group Replication for production usage and provide my insights and opinion on the state of GR.
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
As proxies (and database routers) go, the first one I ever used was the now deprecated MySQL Proxy. Since then, I've managed to use MariaDB MaxScale quite a bit (including its fork AirBnB MaxScale), played around with ProxySQL in recent time, and also started taking a look at MySQL Router. In this quick 20-minute overview, we'll discuss why these three exist, a feature comparison, and reasons when to use the right tool for the job.
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11Kenny Gryp
Oracle's MySQL solutions make it easy to setup various database architectures and achieve high availability with the introduction MySQL InnoDB Cluster and MySQL InnoDB ReplicaSet meeting various high availability requirements. MySQL InnoDB ClusterSet provides a popular disaster recovery solution.
Completely built in-house and supported by Oracle, many enterprises large and small have adopted these solutions into business critical applications.
In this presentation the various database architecture solutions for high availability and disaster recovery will be covered and help you choose the right solutions based on your business requirements.
MySQL Database Architectures - InnoDB ReplicaSet & ClusterKenny Gryp
Following MySQL InnoDB Cluster as our first, fully integrated MySQL High Availability solution based on Group Replication, MySQL Shell 8.0.19 includes MySQL InnoDB ReplicaSet which delivers another complete solution, this time based on MySQL Replication.
The basic idea for InnoDB ReplicaSet is to do the same for classic MySQL Replication as InnoDB Cluster did for Group Replication. We take a strong technology that is very powerful but can be complex, and provide an easy-to-use AdminAPI for it in the MySQL Shell.
In just a few easy to use Shell commands, a MySQL Replication database architecture can be configured from scratch including:
Data provisioning using MySQL CLONE, Setting up replication,
Performing manual switchover/failover.
Percona Live 2022 - The Evolution of a MySQL Database SystemFrederic Descamps
From a single MySQL instance to multi-site high availability, this is what you will find out in this presentation. You will learn how to make this transition and which solutions best suit changing business requirements (RPO, RTO). Recently, MySQL has extended the possibilities for easy deployment of architecture with integrated tools. Come and discover these open source solutions that are part of MySQL.
MySQL has multiple timeouts variables to control its operations. This presentation focus on the purpose of each timeout variables and how it can be used.
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)Aurimas Mikalauskas
Is my MySQL server configured properly? Should I run Community MySQL, MariaDB, Percona or WebScaleSQL? How many innodb buffer pool instances should I run? Why should I NOT use the query cache? How do I size the innodb log file size and what IS that innodb log anyway? All answers are inside.
Aurimas Mikalauskas is a former Percona performance consultant and architect currently writing and teaching at speedemy.com. He's been involved with MySQL since 1999, scaling and optimizing MySQL backed systems since 2004 for companies such as BBC, EngineYard, famous social networks and small shops like EstanteVirtual, Pine Cove and hundreds of others.
Additional content mentioned in the presentation can be found here: http://speedemy.com/17
Since the introduction of replication in MySQL, users have been trying to automate the promotion of a replica to a primary as well as automating the failover of TCP connections from one database server to another in the event of a database failure: planned or unplanned. For over a decade, users and organizations have designed various types of solutions to achieve this. Though, many of these solutions were done manually or were using third party software, mostly open source, to automate and integrate various architectures.
For more than 5 years now, MySQL offers complete and very easy-to-use solutions to set up database architectures that provide High-Availability and recently added Disaster Recovery capabilities. Completely built in-house and supported by Oracle, many enterprises large and small have adopted these solutions into business-critical applications.
Business requirements dictate what type of database architecture is required for your system. Disaster tolerance is key and can be measured at different levels: data loss, data availability, and uptime. In this session, the various MySQL Database Architecture solutions will be covered to help you choose the right solution based on your business requirements
MySQL InnoDB Cluster provides a complete, high-availability solution for MySQL. Learn how with a few easy-to-use Shell commands, how to set up a MySQL database architecture.
MySQL Group Replication - Ready For Production? (2018-04)Kenny Gryp
At the end of 2016, Oracle released a new Plugin called MySQL Group Replication, which is a new MySQL replication method that aims to provide better High Availability, and built-in failover with consistency guarantees.
I evaluated the initial GA versions back in early 2017. I presented my initial findings with several best practices and concerns with the current implementation which made me state that Group Replication was not quite ready yet.
(https://www.slideshare.net/Grypyrg/my-sql-group-replication)
(Un)lucky as I was, a large part of the attendees were Oracle developers and the months after this, many of these bugs and missing features were implemented in both MySQL 8.0 as well as backported to MySQL 5.7. (Thank you!)
This is a followup presentation on my previous analysis, where I will look into the changes since and re-evaluate the readiness of Group Replication for production usage and provide my insights and opinion on the state of GR.
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
As proxies (and database routers) go, the first one I ever used was the now deprecated MySQL Proxy. Since then, I've managed to use MariaDB MaxScale quite a bit (including its fork AirBnB MaxScale), played around with ProxySQL in recent time, and also started taking a look at MySQL Router. In this quick 20-minute overview, we'll discuss why these three exist, a feature comparison, and reasons when to use the right tool for the job.
Présentation de MySQL 8.0 est des nouveautés récentes dans les toutes dernières versions ainsi que des informations sur la prochaine beta du MySQL Operator for Kubernetes
MySQL 8.0 : High Availability Solution for EverybodyFrederic Descamps
WePay & MySQL Virtual Meetup: check how easy it's do deploy and High Available Solution for your MySQL Database using MySQL Shell.
Abandon complex architectures and opt for turnkey solutions supported by MySQL.
A solution for all your needs and constraints...
MySQL 5.7 is GA. Here is the news about our NoSQL features in MySQL and MySQL Cluster, with a lot of emphasize on the new JSON features that make MySQL suitable as a document store.
State of the Dolphin 2020 - 25th Anniversary of MySQL with 8.0.20Frederic Descamps
This is the online live version of the State of The Dolphin during Percona Live Online in May 2020.Discover what's new in MySQL 8.0, the Document Store, CTEs, Window Functions, Lateral, JSON_TABLE, the new Volcano Iterator, EXPLAIN ANLYZE, HASH JOIN, the new double write buffer, binlog compression, InnoDB Cluster, InnoDB ReplicaSet, DNS-SRV.... and last but not least our Contributors who made MySQL 8.0 so Great !
Confoo.ca conference talk February 24th 2021 on MySQL new features found in version 8.0 including server and supporting utility updates for those who may have missed some really neat new features
UAE MySQL Users Group Meet-up : MySQL Shell Document Store & more...Frederic Descamps
Discover MySQL 8.0 Document Store and how to use CRUD operations from the MySQL Shell. Also discover how to extend the MySQL Shell with User Defined Reports and Plugins
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...Frederic Descamps
Découvrez un nouveau monde où l'on peut gérer ses données sans la moindre ligne de SQL.
MySQL Document Store utilise le nouveau protocol MySQL X, qui est également présent avec MySQL Database Service sur OCI, et permet aux développeurs d'écrire du code simple et efficace.
Mais attention, si nécessaire, MySQL Document Store peut également traiter les document JSON comme s'ils étaient des tables relationnelles et permettre des requêtes très poussées...
LinuxFest Northwest 2022 - The Evolution of a MySQL Database SystemFrederic Descamps
At the beginning of a project, the database is just a single MySQL instance (maybe not even running on its own hardware)... but with the evolution of the business requirements, the database must change to also meet the new targets of data loss and uptime. During this session we will follow the journey of a single MySQL server from the simple instance to a High Available Architecture with multi-site Disaster Recovery. We will discover easy manageable native solutions like MySQL InnoDB ReplicaSet, MySQL InnoDB Cluster and MySQL InnoDB ClusterSet. The session is also illustrated with commands and examples.
Pi Day 2022 - from IoT to MySQL HeatWave Database ServiceFrederic Descamps
HeatWave is a massively parallel, high performance, in-memory query accelerator for Oracle MySQL Database Service that accelerates MySQL performance by orders of magnitude for analytics and mixed workloads. But how do you collect data from an Internet of Things Environment so you can use HeatWave to process it? In one hour you will see how data collected by a Raspberry PI or other Internet of Things device can be uploaded to the MySQL Database Service and then processed by HeatWave.
D'une simple instance MysQL à une haute-disponibilité multi-sites, voici ce que vous décrouvrirez dans cette présentation. Comment effectuer cette transition et quelles solutions conviennent les mieux aux évolutions des exigences commerciales (RPO, RTO). Récemment, MySQL a étendu les possibilités de déploiement aisé d'architecture avec des outils intégrés. Venez découvrir ces solution Open Source qui font partie de MySQL.
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...Frederic Descamps
Logical dumps are becoming popular again. MySQL Shell parallel dump & load utility changed to way to deal with logical dumps, certainly when using instances in the cloud. MySQL 8.0 released also an awesome physical snapshot feature with CLONE.
In this session, I will show how to use these two ways of saving your data and how to use the generated backup to perform point-in-time recovery like a rockstar with MySQL 8.0 in 2022 !
MySQL Database Service Webinar: Installing Drupal in oci with mdsFrederic Descamps
How to Install Drupal in OCI using MySQL Database Service.
Discover in this talk two ways to install Drupal on OCI using MDS:
- easy way: using Resource Manager Stacks
- usual way: creating everything manually
MySQL Tech Café #8: MySQL 8.0 for Python DevelopersFrederic Descamps
Usually it seems Python developers don't always think about MySQL as their first choice.... However when test test it with the right connector and MySQL 8.0 they love it !
Join this talk to learn how Python with mysql-connector-python can take advantages of MySQL 8.0.
This means using Standard MySQL Protocol but much nicer the X Protocol. During this session you will see how you can use MySQL Document Store and MySQL as RDBMS on the same session to benefits from both worlds.
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...Frederic Descamps
MySQL Document Store enables us to work with SQL relational tables and schema-less JSON collections. So instead of having a mixed bag of databases, you can just rely on MySQL, where the JSON documents can be stored in collections and managed with CRUD operations. All you need to do is install the X plugin. In this session, you will learn what a document store is, how to install and use it, and all the reasons for considering it. We will also see several specific features helping developers and illustrate how the usual MySQL DBA can manage this new world.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
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.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
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.
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.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
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
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
4. What is it ?
MySQL Router
Copyright @ 2021 Oracle and/or its affiliates.
4
5. MySQL Router
MySQL Router is a building block for high availability (HA) solutions. It simpli es application
development by intelligently routing connections to MySQL servers for increased
performance and reliability.
MySQL Router is part of MySQL InnoDB Cluster and MySQL InnoDB ReplicaSet.
MySQL Router is wri ent in C++ and is part of MySQL's trunk.
Copyright @ 2021 Oracle and/or its affiliates.
5
7. MySQL Router REST API - Why ?
When a problem occurs, it's not always obvious to understand why ? For example if for a
given route, the amount of max_connections is reached, it's important to know it and to
know that value before we reach it.
MySQL Router exposes data (statistics, se ings, ..,) as REST endpoints via HTTP methods
as JSON payload.
This is explained in WL#8965.
Copyright @ 2021 Oracle and/or its affiliates.
7
8. MySQL Router REST API - How ?
Since MySQL 8.0.16, MySQL Router has the possibility to launch an internal h p server. At
that time it could only serve static les.
Then, in MySQL 8.0.17 we added the REST API to MySQL Router.
With MySQL 8.0.20 the authentication credentials to access the REST API could also be
stored on MySQL in a metadata table, before it was only using a le. See WL#12952.
And nally with MySQL 8.0.22, bootstrapping a MySQL Router also con gures the REST
API functionality into the generated mysqlrouter.conf con guration le.
Copyright @ 2021 Oracle and/or its affiliates.
8
9. Test it and get the paths
To query swagger.json no authentication is required:
Copyright @ 2021 Oracle and/or its affiliates.
9
10. MySQL Router REST API - Authentication
MySQL Router uses realms for authentication. The backend can be a le or a record in a
metadata table:
[http_auth_backend:default_auth_backend]
backend=metadata_cache
If you use a le, the mysqlrouter_passwd command-line utility must be used to generate
and manage the users.
Copyright @ 2021 Oracle and/or its affiliates.
10
11. MySQL Router REST API - Authentication (metadata)
So there is a table in the metadata that we can use to connect to the REST API. Let's have a
look...
Copyright @ 2021 Oracle and/or its affiliates.
11
12. MySQL Router REST API - Authentication (metadata)
So there is a table in the metadata that we can use to connect to the REST API. Let's have a
look...
Copyright @ 2021 Oracle and/or its affiliates.
11
13. MySQL Router REST API - Authentication (metadata)
So there is a table in the metadata that we can use to connect to the REST API. Let's have a
look...
So when we bootstrap a Router against a MySQL InnoDB Cluster or a MySQL InnoDB
ReplicaSet, we need to add a user in this table.
Copyright @ 2021 Oracle and/or its affiliates.
11
14. My journey to add a user in router_rest_accounts
Let me share with you my journey to insert a user into that table...
Copyright @ 2021 Oracle and/or its affiliates.
12
15. My journey to add a user in router_rest_accounts
Let me share with you my journey to insert a user into that table...
Copyright @ 2021 Oracle and/or its affiliates.
12
16. Adding a user in router_rest_accounts - A empt #1
Let's try:
INSERT INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format", "fosdem", NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
13
17. Adding a user in router_rest_accounts - A empt #1
Let's try:
INSERT INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format", "fosdem", NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
13
18. Adding a user in router_rest_accounts - A empt #1
Let's try:
INSERT INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format", "fosdem", NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
13
20. Adding a user in router_rest_accounts - A empt #2
For my second a empt, I asked to the router dev team for an example of string I could use.
The reply was simple 'copy' the value of your authentication_string column in the
mysql.user:
Copyright @ 2021 Oracle and/or its affiliates.
15
21. Adding a user in router_rest_accounts - A empt #2
For my second a empt, I asked to the router dev team for an example of string I could use.
The reply was simple 'copy' the value of your authentication_string column in the
mysql.user:
REPLACE INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format",
(SELECT authentication_string FROM mysql.user WHERE user='clusteradmin'),
NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
15
22. Adding a user in router_rest_accounts - A empt #2
Let's test it:
Copyright @ 2021 Oracle and/or its affiliates.
16
23. Adding a user in router_rest_accounts - A empt #2
Let's test it:
It works... but I don't want to use a MySQL user to monitor Router !
Copyright @ 2021 Oracle and/or its affiliates.
16
24. Adding a user in router_rest_accounts - A empt #2
Let's test it:
It works... but I don't want to use a MySQL user to monitor Router !
It's important to provide accurate information and context when you ask something...
Copyright @ 2021 Oracle and/or its affiliates.
16
26. Adding a user in router_rest_accounts - A empt #3
My goal was to manage the credential for the REST API using a MySQL Shell Plugin...
I've been said that I should use the same string as a MySQL user... let's generate it !
Copyright @ 2021 Oracle and/or its affiliates.
18
27. Adding a user in router_rest_accounts - A empt #3
My goal was to manage the credential for the REST API using a MySQL Shell Plugin...
I've been said that I should use the same string as a MySQL user... let's generate it !
I created a program that does it:
Copyright @ 2021 Oracle and/or its affiliates.
18
28. Adding a user in router_rest_accounts - A empt #3
My goal was to manage the credential for the REST API using a MySQL Shell Plugin...
I've been said that I should use the same string as a MySQL user... let's generate it !
I created a program that does it:
REPLACE INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format",
'$A$005$zwM4!A72%s)](-ed8FN-euE7cwRygTogySEBOTQY46UbIU483McwXJYiovTbML2',
NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
18
29. Adding a user in router_rest_accounts - A empt #3
Let's test it:
Copyright @ 2021 Oracle and/or its affiliates.
19
30. Adding a user in router_rest_accounts - A empt #3
Let's test it:
It works... but I don't want to use an external program in my plugin, that's not very portable.
Copyright @ 2021 Oracle and/or its affiliates.
19
32. Adding a user in router_rest_accounts - A empt #4
Mmm... let's try something else...
Copyright @ 2021 Oracle and/or its affiliates.
21
33. Adding a user in router_rest_accounts - A empt #4
Mmm... let's try something else...
A component !
Copyright @ 2021 Oracle and/or its affiliates.
21
34. Adding a user in router_rest_accounts - A empt #4
Mmm... let's try something else...
A component !
Copyright @ 2021 Oracle and/or its affiliates.
21
35. Adding a user in router_rest_accounts - A empt #4
Mmm... let's try something else...
A component !
REPLACE INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format",
"$A$005$op^'U#+}b)!n*~~3E<{+Pzrzs/Rg9jUO.b4iMY56vET9E3rt2bws/BVw43zpTW8",
NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
21
36. Adding a user in router_rest_accounts - A empt #4
Let's test it again:
Copyright @ 2021 Oracle and/or its affiliates.
22
37. Adding a user in router_rest_accounts - A empt #4
Let's test it again:
It works... but again, another component needs to be installed and maintained...
Copyright @ 2021 Oracle and/or its affiliates.
22
39. Adding a user in router_rest_accounts - A empt #5
What else ?
Copyright @ 2021 Oracle and/or its affiliates.
24
40. Adding a user in router_rest_accounts - A empt #5
What else ?
Let me ask again with more context to the MySQL Router Development Team...
Copyright @ 2021 Oracle and/or its affiliates.
24
41. Adding a user in router_rest_accounts - A empt #5
What else ?
Let me ask again with more context to the MySQL Router Development Team...
Summary of the answer: we do support MySQL 8.0's default authentication string but also
modular_crypt_format for MCF style password hashes as speci ed in the WL...
Copyright @ 2021 Oracle and/or its affiliates.
24
42. Adding a user in router_rest_accounts - A empt #5
What else ?
Let me ask again with more context to the MySQL Router Development Team...
Summary of the answer: we do support MySQL 8.0's default authentication string but also
modular_crypt_format for MCF style password hashes as speci ed in the WL...
Oups...
Copyright @ 2021 Oracle and/or its affiliates.
24
43. Adding a user in router_rest_accounts - A empt #5
What else ?
Let me ask again with more context to the MySQL Router Development Team...
Summary of the answer: we do support MySQL 8.0's default authentication string but also
modular_crypt_format for MCF style password hashes as speci ed in the WL...
Oups...
This means that the standard Python crypt module is what I need !
Copyright @ 2021 Oracle and/or its affiliates.
24
45. Adding a user in router_rest_accounts - A empt #5
REPLACE INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format",
"$5$tzRKNfEyehq1B5/Q$/PlKjs6PCEjNFiSDtdVZV2aL666SZrvKvrMWfYkIO82",
NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
26
46. Adding a user in router_rest_accounts - A empt #5
REPLACE INTO router_rest_accounts VALUES (
(SELECT cluster_id FROM mysql_innodb_cluster_metadata.v2_clusters LIMIT 1),
"lefred", "modular_crypt_format",
"$5$tzRKNfEyehq1B5/Q$/PlKjs6PCEjNFiSDtdVZV2aL666SZrvKvrMWfYkIO82",
NULL, NULL, NULL);
Copyright @ 2021 Oracle and/or its affiliates.
26
49. Some examples
We can now use the REST API with curl and include that in any montiroring tool like Sensu,
Icinga...
Copyright @ 2021 Oracle and/or its affiliates.
29
50. MySQL Router & MySQL Shell
With MySQL Shell's router plugin (h ps://github.com/lefred/mysqlshell-plugins), you can
take bene t of all this.
Copyright @ 2021 Oracle and/or its affiliates.
30
51. MySQL Router & MySQL Shell
With MySQL Shell's router plugin (h ps://github.com/lefred/mysqlshell-plugins), you can
take bene t of all this.
Creating a user for the REST API:
Copyright @ 2021 Oracle and/or its affiliates.
30
52. MySQL Router & MySQL Shell
With MySQL Shell's router plugin (h ps://github.com/lefred/mysqlshell-plugins), you can
take bene t of all this.
Creating a user for the REST API:
Much easier ;) Convenient++
Copyright @ 2021 Oracle and/or its affiliates.
30
53. MySQL Router & MySQL Shell
Creating the Router object:
Copyright @ 2021 Oracle and/or its affiliates.
31
54. MySQL Router & MySQL Shell
Copyright @ 2021 Oracle and/or its affiliates.
32
55. MySQL Router & MySQL Shell
We have an host blocked by MySQL Router, which one is it ?
Copyright @ 2021 Oracle and/or its affiliates.
33
56. MySQL Router & MySQL Shell
We have an host blocked by MySQL Router, which one is it ?
Copyright @ 2021 Oracle and/or its affiliates.
33
57. MySQL Router & MySQL Shell
And nally the routing statistics:
Copyright @ 2021 Oracle and/or its affiliates.
34