PECL/mysqlnd_mux adds multiplexing to all PHP MySQL APIs (mysql, mysqli, PDO_MySQL) compiled to use mysqlnd. Connection multiplexing refers to sharing one MySQL connection among multiple user connection handles, among multiple clients. Multiplexing does reduce client-side connection overhead and minimizes the total number of concurrently open connections. The latter lowers the MySQL server load. As a highly specific optimization it has not only strong but also weak sides. See, what this free plugin has to offer in prototype stage. And, how does it compare to other techniques such as pooling or persistent connections - what to use when tuning PHP MySQL to the extreme.
MySQL native driver for PHP (mysqlnd) - Introduction and overview, Edition 2011Ulf Wendel
A quick overview on the MySQL native driver for PHP (mysqlnd) and its unique features. Edition 2011. What is mysqlnd, why use it, which plugins exist, where to find more information.... the current state. Expect a new summary every year.
Data massage: How databases have been scaled from one to one million nodesUlf Wendel
A workshop from the PHP Summit 2013, Berlin.
Join me on a journey to scaling databases from one to one million nodes. The adventure begins in the 1960th and ends with Google Spanner details from a Google engineer's talk given as late as November 25th, 2013!
Contents: Relational systems and caching (briefly), what CAP means, Overlay networks, Distributed Hash Tables (Chord), Amazon Dynamo, Riak 2.0 including CRDT, BigTable (Distributed File System, Distributed Locking Service), HBase (Hive, Presto, Impala, ...), Google Spanner and how their unique TrueTime API enables ACID, what CAP really means to ACID transactions (and the NoSQL marketing fuzz), the latest impact of NoSQL on the RDBMS world. There're quite a bit of theory in the talk, but that's how things go when you walk between Distributed Systems Theory and Theory of Parallel and Distributed Databases, such as.... Two-Phase Commit, Two-Phase Locking, Virtual Synchrony, Atomic Broadcast, FLP Impossibility Theorem, Paxos, Co-Location and data models...
MySQL 5.6 Global Transaction IDs - Use case: (session) consistencyUlf Wendel
PECL/mysqlnd_ms is a transparent load balancer for PHP and MySQL. It can be used with any kind of MySQL Cluster. If used with MySQL Replication it has some tricks to offer to break out of the default eventual consistency of the lazy primary copy design of MySQL Replication. It is using global transaction ids to lower read load on the master while still offering session consistency. Users of MySQL 5.6 can use the server built-in global transaction id feature, everybody else can use the driver built-in emulation that works with previous MySQL versions as well. Of course, its a mysqlnd plugin and as such it works with all PHP MySQL APIs (mysql, mysqli, PDO_MySQL). Happy hacking!
The mysqlnd replication and load balancing pluginUlf Wendel
The mysqlnd replication and load balancing plugin for mysqlnd makes using MySQL Replication from PHP much easier. The plugin takes care of Read/Write splitting, Load Balancing, Failover and Connection Pooling. Lazy Connections, a feature not only useful with replication, help reducing the MySQL server load. Like any other mysqlnd plugin, the plugin operates mostly transparent from an applications point of view and can be used in a drop-in style.
Live from the PHP Summit conference - MySQL 5.6 includes NoSQL! MySQL 5.6 lets you access InnoDB tables using SQL and Memcached protocol. Using Memcached protocol for PK lookups can be 1.5...4x faster than SQL. INSERTS get up to 9x faster. Learn how. Learn how it compares to the community developed HandlerSocket plugn which got the stone rolling not too long ago... A presentation given at the PHP Summit 2013.
MySQL 5.6 Global Transaction Identifier - Use case: FailoverUlf Wendel
MySQL 5.6 significantly improves availability of a MySQL replication cluster. Built-in global transaction identifier make slave to master promotion easy after the master has failed. Learn what idea takes the MySQL primary copy based replication approach to the next level. See also, how PECL/mysqlnd_ms integrates with it for seamless client connection failover.
MySQL native driver for PHP (mysqlnd) - Introduction and overview, Edition 2011Ulf Wendel
A quick overview on the MySQL native driver for PHP (mysqlnd) and its unique features. Edition 2011. What is mysqlnd, why use it, which plugins exist, where to find more information.... the current state. Expect a new summary every year.
Data massage: How databases have been scaled from one to one million nodesUlf Wendel
A workshop from the PHP Summit 2013, Berlin.
Join me on a journey to scaling databases from one to one million nodes. The adventure begins in the 1960th and ends with Google Spanner details from a Google engineer's talk given as late as November 25th, 2013!
Contents: Relational systems and caching (briefly), what CAP means, Overlay networks, Distributed Hash Tables (Chord), Amazon Dynamo, Riak 2.0 including CRDT, BigTable (Distributed File System, Distributed Locking Service), HBase (Hive, Presto, Impala, ...), Google Spanner and how their unique TrueTime API enables ACID, what CAP really means to ACID transactions (and the NoSQL marketing fuzz), the latest impact of NoSQL on the RDBMS world. There're quite a bit of theory in the talk, but that's how things go when you walk between Distributed Systems Theory and Theory of Parallel and Distributed Databases, such as.... Two-Phase Commit, Two-Phase Locking, Virtual Synchrony, Atomic Broadcast, FLP Impossibility Theorem, Paxos, Co-Location and data models...
MySQL 5.6 Global Transaction IDs - Use case: (session) consistencyUlf Wendel
PECL/mysqlnd_ms is a transparent load balancer for PHP and MySQL. It can be used with any kind of MySQL Cluster. If used with MySQL Replication it has some tricks to offer to break out of the default eventual consistency of the lazy primary copy design of MySQL Replication. It is using global transaction ids to lower read load on the master while still offering session consistency. Users of MySQL 5.6 can use the server built-in global transaction id feature, everybody else can use the driver built-in emulation that works with previous MySQL versions as well. Of course, its a mysqlnd plugin and as such it works with all PHP MySQL APIs (mysql, mysqli, PDO_MySQL). Happy hacking!
The mysqlnd replication and load balancing pluginUlf Wendel
The mysqlnd replication and load balancing plugin for mysqlnd makes using MySQL Replication from PHP much easier. The plugin takes care of Read/Write splitting, Load Balancing, Failover and Connection Pooling. Lazy Connections, a feature not only useful with replication, help reducing the MySQL server load. Like any other mysqlnd plugin, the plugin operates mostly transparent from an applications point of view and can be used in a drop-in style.
Live from the PHP Summit conference - MySQL 5.6 includes NoSQL! MySQL 5.6 lets you access InnoDB tables using SQL and Memcached protocol. Using Memcached protocol for PK lookups can be 1.5...4x faster than SQL. INSERTS get up to 9x faster. Learn how. Learn how it compares to the community developed HandlerSocket plugn which got the stone rolling not too long ago... A presentation given at the PHP Summit 2013.
MySQL 5.6 Global Transaction Identifier - Use case: FailoverUlf Wendel
MySQL 5.6 significantly improves availability of a MySQL replication cluster. Built-in global transaction identifier make slave to master promotion easy after the master has failed. Learn what idea takes the MySQL primary copy based replication approach to the next level. See also, how PECL/mysqlnd_ms integrates with it for seamless client connection failover.
MySQL 5.7 Fabric: Introduction to High Availability and Sharding Ulf Wendel
MySQL 5.7 has sharding built-in to MySQL. The free and open source MySQL Fabric utility simplifies the management of MySQL clusters of any kind. This includes MySQL Replication setup, monitoring, automatic failover, switchover and so fort for High Availability. Additionally, it offers measures to shard a MySQL database over many an arbitrary number of servers. Intelligent load balancer (updated drivers) take care of routing queries to the appropriate shards.
Vote NO for MySQL - Election 2012: NoSQL. Researchers predict a dark future for MySQL. Significant market loss to come. Are things that bad, is MySQL falling behind? A look at NoSQL, an attempt to identify different kinds of NoSQL stores, their goals and how they compare to MySQL 5.6. Focus: Key Value Stores and Document Stores. MySQL versus NoSQL means looking behind the scenes, taking a step back and looking at the building blocks.
Clustering MySQL is a mainstream technology to handle todays web loads. Regardless whether you choose MySQL Replication, MySQL Cluster or any other type of clustering solution you will need a load balancer. PECL/mysqlnd_ms 1.4 is a driver integrated load balancer for PHP. It works with all APIs, is free, semi-transparent, at the best possible layer in your stack and loaded with features. Get an overview of the latest development version 1.4.
Built-in query caching for all PHP MySQL extensions/APIsUlf Wendel
Query caching boosts the performance of PHP MySQL applications. Caching can be done on the database server or at the web clients. A new mysqlnd plugin adds query caching to all PHP MySQL extension: written in C, immediately usable with any PHP application because of no API changes, supports Memcache, APC, SQLite and main memory storage, integrates itself smoothless into existing PHP deployment infrastructure, helps you to scale by client, ... Enjoy!
It is official: MySQL listens to HTTP and speaks JSON. MySQL got a new plugin that lets HTTP clients and JavaScript users connect to MySQL using HTTP. The development preview brings three APIs: key-document for nested JSON documents, CRUD for JSON mapped SQL tables and plain SQL with JSON replies. More so: MySQL 5.7.4 has SQL functions for modifying JSON, for searching documents and new indexing methods!
MySQL 5.7 clustering: The developer perspectiveUlf Wendel
(Compiled from revised slides of previous presentations - skip if you know the old presentations)
A summary on clustering MySQL 5.7 with focus on the PHP clients view and the PHP driver. Which kinds on MySQL clusters are there, what are their goal, how does wich one scale, what extra work does which clustering technique put at the client and finally, how the PHP driver (PECL/mysqlnd_ms) helps you.
PoC: Using a Group Communication System to improve MySQL Replication HAUlf Wendel
High Availability solutions for MySQL Replication are either simple to use but introduce a single point of failure or free of pitfalls but complex and hard to use. The Proof-of-Concept sketches a way in the middle. For monitoring a group communication system is embedded into MySQL usng a MySQL plugin which eliminates the monitoring SPOF and is easy to use. Much emphasis is put of the often neglected client side. The PoC shows an architecture in which clients reconfigure themselves dynamically. No client deployment is required.
DIY: A distributed database cluster, or: MySQL ClusterUlf Wendel
Live from the International PHP Conference 2013: MySQL Cluster is a distributed, auto-sharding database offering 99,999% high availability. It runs on Rasperry PI as well as on a cluster of multi-core machines. A 30 node cluster was able to deliver 4.3 billion (not million) read transactions per second in 2012. Take a deeper look into the theory behind all the MySQL replication/clustering solutions (including 3rd party) and learn how they differ.
MySQL Group Replication is a new 'synchronous', multi-master, auto-everything replication plugin for MySQL introduced with MySQL 5.7. It is the perfect tool for small 3-20 machine MySQL clusters to gain high availability and high performance. It stands for high availability because the fault of replica don't stop the cluster. Failed nodes can rejoin the cluster and new nodes can be added in a fully automatic way - no DBA intervention required. Its high performance because multiple masters process writes, not just one like with MySQL Replication. Running applications on it is simple: no read-write splitting, no fiddling with eventual consistency and stale data. The cluster offers strong consistency (generalized snapshot isolation).
It is based on Group Communication principles, hence the name.
Scaling with sync_replication using Galera and EC2Marco Tusa
Challenging architecture design, and proof of concept on a real case of study using Syncrhomous solution.
Customer asks me to investigate and design MySQL architecture to support his application serving shops around the globe.
Scale out and scale in base to sales seasons.
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.
Introducing Galera Cluster & the Codership Team
Galera Cluster in a nutshell:
True multi-master:
Read & write to any node
* Synchronous replication
* No slave lag
* No integrity issues
* No master-slave failovers or VIP needed
* Multi-threaded slave, no performance penalty
* Automatic node provisioning
Elastic:
Easy scale-out & scale-in, all nodes read-write
Slowly the power of mysqlnd plugins become visible. Mysqlnd plugins challenge MySQL Proxy and are often a noteworthy, if not superior, alternative alternative to MySQL Proxy for PHP users. Plugins can do almost anything that MySQL Proxy can do - but on the client. Please find details in the slides. The presentation has been given today at the PHP track on FrOSCon.
MySQL 5.7 Fabric: Introduction to High Availability and Sharding Ulf Wendel
MySQL 5.7 has sharding built-in to MySQL. The free and open source MySQL Fabric utility simplifies the management of MySQL clusters of any kind. This includes MySQL Replication setup, monitoring, automatic failover, switchover and so fort for High Availability. Additionally, it offers measures to shard a MySQL database over many an arbitrary number of servers. Intelligent load balancer (updated drivers) take care of routing queries to the appropriate shards.
Vote NO for MySQL - Election 2012: NoSQL. Researchers predict a dark future for MySQL. Significant market loss to come. Are things that bad, is MySQL falling behind? A look at NoSQL, an attempt to identify different kinds of NoSQL stores, their goals and how they compare to MySQL 5.6. Focus: Key Value Stores and Document Stores. MySQL versus NoSQL means looking behind the scenes, taking a step back and looking at the building blocks.
Clustering MySQL is a mainstream technology to handle todays web loads. Regardless whether you choose MySQL Replication, MySQL Cluster or any other type of clustering solution you will need a load balancer. PECL/mysqlnd_ms 1.4 is a driver integrated load balancer for PHP. It works with all APIs, is free, semi-transparent, at the best possible layer in your stack and loaded with features. Get an overview of the latest development version 1.4.
Built-in query caching for all PHP MySQL extensions/APIsUlf Wendel
Query caching boosts the performance of PHP MySQL applications. Caching can be done on the database server or at the web clients. A new mysqlnd plugin adds query caching to all PHP MySQL extension: written in C, immediately usable with any PHP application because of no API changes, supports Memcache, APC, SQLite and main memory storage, integrates itself smoothless into existing PHP deployment infrastructure, helps you to scale by client, ... Enjoy!
It is official: MySQL listens to HTTP and speaks JSON. MySQL got a new plugin that lets HTTP clients and JavaScript users connect to MySQL using HTTP. The development preview brings three APIs: key-document for nested JSON documents, CRUD for JSON mapped SQL tables and plain SQL with JSON replies. More so: MySQL 5.7.4 has SQL functions for modifying JSON, for searching documents and new indexing methods!
MySQL 5.7 clustering: The developer perspectiveUlf Wendel
(Compiled from revised slides of previous presentations - skip if you know the old presentations)
A summary on clustering MySQL 5.7 with focus on the PHP clients view and the PHP driver. Which kinds on MySQL clusters are there, what are their goal, how does wich one scale, what extra work does which clustering technique put at the client and finally, how the PHP driver (PECL/mysqlnd_ms) helps you.
PoC: Using a Group Communication System to improve MySQL Replication HAUlf Wendel
High Availability solutions for MySQL Replication are either simple to use but introduce a single point of failure or free of pitfalls but complex and hard to use. The Proof-of-Concept sketches a way in the middle. For monitoring a group communication system is embedded into MySQL usng a MySQL plugin which eliminates the monitoring SPOF and is easy to use. Much emphasis is put of the often neglected client side. The PoC shows an architecture in which clients reconfigure themselves dynamically. No client deployment is required.
DIY: A distributed database cluster, or: MySQL ClusterUlf Wendel
Live from the International PHP Conference 2013: MySQL Cluster is a distributed, auto-sharding database offering 99,999% high availability. It runs on Rasperry PI as well as on a cluster of multi-core machines. A 30 node cluster was able to deliver 4.3 billion (not million) read transactions per second in 2012. Take a deeper look into the theory behind all the MySQL replication/clustering solutions (including 3rd party) and learn how they differ.
MySQL Group Replication is a new 'synchronous', multi-master, auto-everything replication plugin for MySQL introduced with MySQL 5.7. It is the perfect tool for small 3-20 machine MySQL clusters to gain high availability and high performance. It stands for high availability because the fault of replica don't stop the cluster. Failed nodes can rejoin the cluster and new nodes can be added in a fully automatic way - no DBA intervention required. Its high performance because multiple masters process writes, not just one like with MySQL Replication. Running applications on it is simple: no read-write splitting, no fiddling with eventual consistency and stale data. The cluster offers strong consistency (generalized snapshot isolation).
It is based on Group Communication principles, hence the name.
Scaling with sync_replication using Galera and EC2Marco Tusa
Challenging architecture design, and proof of concept on a real case of study using Syncrhomous solution.
Customer asks me to investigate and design MySQL architecture to support his application serving shops around the globe.
Scale out and scale in base to sales seasons.
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.
Introducing Galera Cluster & the Codership Team
Galera Cluster in a nutshell:
True multi-master:
Read & write to any node
* Synchronous replication
* No slave lag
* No integrity issues
* No master-slave failovers or VIP needed
* Multi-threaded slave, no performance penalty
* Automatic node provisioning
Elastic:
Easy scale-out & scale-in, all nodes read-write
Slowly the power of mysqlnd plugins become visible. Mysqlnd plugins challenge MySQL Proxy and are often a noteworthy, if not superior, alternative alternative to MySQL Proxy for PHP users. Plugins can do almost anything that MySQL Proxy can do - but on the client. Please find details in the slides. The presentation has been given today at the PHP track on FrOSCon.
HTTP, JSON, JavaScript, Map&Reduce built-in to MySQLUlf Wendel
HTTP, JSON, JavaScript, Map&Reduce built in to MySQL - make it happen, today. See how a MySQL Server plugin be developed to built all this into MySQL. A new direct wire between MySQL and client-side JavaScript is created. MySQL speaks HTTP, replies JSON and offers server-side JavaScript. Server-side JavaScript gets access to MySQL data and does Map&Reduce of JSON documents stored in MySQL. Fast? 2-4x faster than proxing client-side JavaScript request through PHP/Apache. Reasonable results...
A look at where the market of the Internet of Things is and how technologies like Node.js (JavaScript) and the Intel Edison are making it easier to create connected solutions.
Learn more at https://losant.com.
The major topics include:
* What is the Internet of Things
* Where is IoT Today
* 4 Parts of IoT (Collect, Communicate, Analyze, Act)
* Why JavaScript is Good for IoT
* How Node.js is Making a Dent in the Internet of Things
* What npm Modules are used for Hardware (Johnny-Five, Cylon.js, MRAA)
* What is the Intel Edison
* How to Best Work with the Edison
* Tips for Edison (MRAA, Grove Kit, UPM)
* Where the World of JavaScript and IoT is Going
Talon systems - Distributed multi master replication strategySaptarshi Chatterjee
Data Replication is the process of storing data in more than one site or node.It is useful in improving the availability of data. The result is a distributed database in which users can access data relevant to their tasks without interfering with the work of others.Data Replication is generally performed to provide a consistent copy of data across all the database nodes.
Traditionally it’s done by copying data from one database server to another, so that all the servers can have the same data. Our implementation, proposes a completely different approach. Instead of copying data from one node to another, in our design , master replicas do not directly communicate between each other and work virtually independently for write queries. For read queries, an independent process consults all the replicas to constitute a quorum. and returns the result if a majority of the machines in the system response with the same result
Performance evaluation of larger matrices over cluster of four nodes using mpieSAT Journals
Abstract Parallel computing operates on the principle that large problems can often be divided into smaller ones, which are then solved concurrently to save time (wall clock time) by taking advantage of non-local resources and overcoming memory constraints. The main aim is to form a cluster based parallel computing architecture for MPI based applications which demonstrates the performance gain and losses achieved through parallel processing using MPI. This can be realized by implementing the parallel applications like solving matrix multiplication problem, using MPI. The architecture for demonstrating MPI based parallel applications works on the Master-Slave computing paradigm. We aim to evaluate the time statistics of parallel execution and do comparison with the time taken to solve the same problem in serial execution. We also demonstrate communication overhead involved in parallel computation. The results with runs on different number of nodes are compared to evaluate the efficiency of MPI based parallel applications. We also show the performance dependency of parallel and serial computation, on RAM. Finally we show the relationship between the number of slave processes to be specified for computation and the number of cores available for parallel computation. Keywords: Parallel Execution, Cluster Computing, Symmetric Multi-Processor (SMP), MPI (Message Passing Interface), RAM (Random Access Memory).
This presentation is for anyone who wants to know what Clustering is and how to implement it, in ColdFusion. Clustering of resources is done to provide redundancy and scalability.
MySQL PHP native driver : Advanced Functions / PHP forum Paris 2013 Serge Frezefond
mysqlnd the MySQL native driver for PHP brings a lot of value to MySQL.
There is no change for developers that can still use the mysqli and PDO API.
This driver supports a plugins extension capability. Some very useful features have been implemented :
- mysqlnd_ms replication and load balancing plugin
- mysqlnd_qc query result cache plugin
- mysqlnd_memcache innoDB memcache plugin
- mysqlnd_uh user handler plugin
- mysqlnd_mux plugin to multiplex PHP connections
MySQL Fabric is the new sharding framework for MySQL. The mysqlnd_ms plugging the MySQL native driver makes it possible to use this sharding framework from PHP.
Develop PHP Applications with MySQL X DevAPIDave Stokes
The X DevAPI provides a way to use MySQL as a NoSQL JSON Document Store and this presentation covers how to use it with the X DevAPI PHP PECL extension. And it also works with traditional relational tables. Presented at Oracle CodeOne 24 October 2018
Client-Centric Consistency
Provide guarantees about ordering of operations only for a single client, i.e.
Effects of an operations depend on the client performing it
Effects also depend on the history of client’s operations
Applied only when requested by the client
No guarantees concerning concurrent accesses by different clients
Assumption:
Clients can access different replicas, e.g. mobile users
An introduction to reactive programming concepts and basics. I aim here to show what's reactive programming, why it's used and show some frameworks and benchmarks that support it.
Similar to PHP mysqlnd connection multiplexing plugin (20)
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
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.
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/
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
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.
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
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.
2. The speaker says...
When fast is not fast enough, you pull all triggers. This
includes attempts to optimize an already reasonable fast
operation: connect time to MySQL.
The PHP mysqlnd connection multiplexing plugin,
shares a physical connection among multiple user
handles. Thus, connection overhead is saved on the client
side and the number of opened connection is reduced on the
server side.
PECL/mysqlnd_mux is an Oracle open source development
available from pecl.php.net. Developed by Andrey
Hristov.
3. Plugins are mostly transparent
WordPress, Drupal, Symfony, Oxid, ZendFramework, ...
mysql, mysqli, PDO_MYSQL
mysqlnd
PECL/mysqlnd_mux plugin
Connection Multiplexing
MySQL Server
4. The speaker says...
PECL/mysqlnd_mux is a plugin for the mysqlnd library. The
mysqlnd library is the default C client library used
by the PHP MySQL extensions mysql, mysqli and
PDO_MySQL internally. Mysqlnd ships with PHP since 5.3.
Plugins operate at a layer beneath the user APIs,
thus improvements are available to all PHP MySQL
APIs.
Other free plugins are PECL/mysqlnd_ms (replication and
load balancing), PECL/mysqlnd_qc (client-side query cache)
and many more.
5. PECL/mysqlnd_mux
●
Multiplexing: share connection among handles
Reduce client connect overhead, reduce server load
Prototype, requires PHP 5.5.0+
connect() connect() connect()
n connection handles
PECL/mysqlnd_mux
1 connection
MySQL
6. The speaker says...
The PHP mysqlnd connection multiplexing proxies MySQL
connections. Whenever a client attempts to open a
connection to a host, the plugin checks whether there is
already a cached network connection to the host in
question. If not, a new connection is established and
associated with the users' connection handle. Otherwise,
the users' connection handle is linked with an
already opened network connection.
This way, multiple user handles can point to the
same network connection and share it. Connection
overhead is saved and fewer connections are opened.
7. The price you pay
●
Multiplexing means serializing tasks
Possibility of wait situations
Prototype: no upgrade to dedicated connection
Prototype: no collision counter
Query 1
MUX Query 1 Query 2 MySQL
Query 2
Time
8. The speaker says...
Sharing a resource often requires serializing access to it.
This is also the case with a shared connection of the PHP
mysqlnd connection multiplexing plugin. Serializing
actions bares the risks of collisions and wait
situations. In the example, a clients query has to wait for
completion of another clients query before it can be
executed. Query 2 waits for query 1 to finish.
The prototype is using a mutex to synchronize access to a
shared connection.
9. MUX as a demo of the plugin API
●
No new API calls, it just works!
Supports popular buffered queries
(mysql_query(), mysqli_query(),
PDO if using PDO::ATTR_EMULATE_PREPARES)
Prototype does not handle unbuffered queries
(mysqli_real_query())
Prepared statements not in 1.0.0-prototype
(mysqli_stmt_*())
10. The speaker says...
PECL/mysqlnd_mux 1.0.0-prototype is an example of the
strenghts of the mysqlnd C plugin API. The initial public
release is not a production-ready stable solution. Features
have been skipped for the prototype to keep the
demo of the plugin API short and comprehensive.
The astonishing finding of the plugin is that multiplexing
can be added to add PHP MySQL APIs without
changing the APIs. It just works – for some cases already
today. Other cases could be covered in future
versions, depending on user feedback.
12. Compared to pooling
●
Connection remains open after close()
Connection establishment overhead reduced
Number of concurrent connections not reduced
Usually, connection state reset upon reuse
Client Client
Connection pool
Connection Connection Connection
MySQL
13. The speaker says...
A connection pool is a cache for connections. If a
client openes a connection, the pool is checked for an
already estiablished connection to the requested host. In
case of a hit, the pooled connection is reset, then taken from
the pool of unused connections and returned to the client. If
no connection is found a new one gets opened and returned
to the caller. Then, the connection is used until the client
calls close(). Upon close(), the connection is not closed but
put back into the pool for reuse.
Pooling saves time on reuse but does not reduce the total
number of concurrent connections.
14. Persistent Connection
●
Connection remains open after close()
Connection overhead and reuse costs reduced
Number of concurrent connections not reduced
Connection state not reset before reuse
Client 1 Pool Connection 1 MySQL
SET @myvar = 1
Client 2 Pool Connection 1 MySQL
SELECT @myvar
15. The speaker says...
Persistent connections can be described as a special kind of
pooled connections. As the name says, the state of a
persistent connection is not reset between use .
PHP persistent database connections have often been
criticised for persisting the state of a connection... - for their
very purpose!
Thus, when „persistent connections“ have been added to the
mysqli extension, mysqli actually got pooled
connections. By default, the connection state is
reset before reuse. Performance fanatics can disable this
during compile time.
16. Speed-up tricks compared
●
Every optimization is a trade
You gain something: fewer connections opened
You give something: collision possible
You gain something: lower connection costs
You give something: no isolation of connection state
MUX Pooled Pers. Conn
Conn.
Reduce connection overhead Yes Yes Yes
Reduce # concurrently open connections Yes No No
Connection state shared among clients Yes No Yes
(mysqli: No)
Serialization required, collisions possible Yes No No
17. The speaker says...
Optimizations, such as multiplexing, pooling or persistent
connections come at a price. There is no one-fits all trick.
Please, try to understand the properties of each
option. Then, decide on a case-by-case basis
which technology to use.
18. Remember: scope/life-span
●
Pools are bound to a PHP process
Depending on deployment model,
a PHP process handles one or multiple requests
HTTP Server
PHP process PHP process
Connection pool Connection pool
Conn 1 Conn 2 Conn 3 Conn 4
19. The speaker says...
Operating systems associate file descriptors, including
network connections, with processes. At the end of the
process, the network connections are closed. Thus, the
life-span of every client-side cache/pool of a PHP
process is that of the PHP process. No matter
whether we are discussing connections cached for
multiplexing or persistent connections as found in
any of the PHP MySQL APIs (mysql, mysqli,
PDO_MySQL).
Depending on the web server deployment model, a PHP
process handles one or multiple requests (script runs).
20. THE END
http://www.slideshare.net/nixnutz/
Contact: ulf.wendel@oracle.com, @Ulf_Wendel