The document compares the Apache Solr and ElasticSearch search platforms. It discusses their architectures, including SolrCloud and ElasticSearch's cluster architecture. It also covers topics like indexing, querying, partial document updates, analysis chains, multilingual support, and other features. Overall, the document provides a detailed comparison of the two open source search technologies.
Battle of the giants: Apache Solr vs ElasticSearchRafał Kuć
Slides from my talk during ApacheCon EU 2012 - "Battle of the giants: Apache Solr vs ElasticSearch". Video available at http://player.vimeo.com/video/55645629
Elasticsearch - Devoxx France 2012 - English versionDavid Pilato
Elasticsearch presentation for Devoxx France 2012
English translation (feel free to correct my bad english ;-) )
French version is available here : http://www.slideshare.net/dadoonet/elasticsearch-devoxx-france-2012
From zero to hero - Easy log centralization with Logstash and ElasticsearchRafał Kuć
Presentation I gave during DevOps Days Warsaw 2014 about combining Elasticsearch, Logstash and Kibana together or use our Logsene solution instead of Elasticsearch.
"ElasticSearch in action" by Thijs Feryn.
ElasticSearch is a really powerful search engine, NoSQL database & analytics engine. It is fast, it scales and it's a child of the Cloud/BigData generation. This talk will show you how to get things done using ElasticSearch. The focus is on doing actual work, creating actual queries and achieving actual results. Topics that will be covered: - Filters and queries - Cluster, shard and index management - Data mapping - Analyzers and tokenizers - Aggregations - ElasticSearch as part of the ELK stack - Integration in your code.
Battle of the giants: Apache Solr vs ElasticSearchRafał Kuć
Slides from my talk during ApacheCon EU 2012 - "Battle of the giants: Apache Solr vs ElasticSearch". Video available at http://player.vimeo.com/video/55645629
Elasticsearch - Devoxx France 2012 - English versionDavid Pilato
Elasticsearch presentation for Devoxx France 2012
English translation (feel free to correct my bad english ;-) )
French version is available here : http://www.slideshare.net/dadoonet/elasticsearch-devoxx-france-2012
From zero to hero - Easy log centralization with Logstash and ElasticsearchRafał Kuć
Presentation I gave during DevOps Days Warsaw 2014 about combining Elasticsearch, Logstash and Kibana together or use our Logsene solution instead of Elasticsearch.
"ElasticSearch in action" by Thijs Feryn.
ElasticSearch is a really powerful search engine, NoSQL database & analytics engine. It is fast, it scales and it's a child of the Cloud/BigData generation. This talk will show you how to get things done using ElasticSearch. The focus is on doing actual work, creating actual queries and achieving actual results. Topics that will be covered: - Filters and queries - Cluster, shard and index management - Data mapping - Analyzers and tokenizers - Aggregations - ElasticSearch as part of the ELK stack - Integration in your code.
ElasticSearch in Production: lessons learnedBeyondTrees
With Proquest Udini, we have created the worlds largest online article store, and aim to be the center for researchers all over the world. We connect to a 700M solr cluster for search, but have recently also implemented a search component with ElasticSearch. We will discuss how we did this, and how we want to use the 30M index for scientific citation recognition. We will highlight lessons learned in integrating ElasticSearch in our virtualized EC2 environments, and challenges aligning with our continuous deployment processes.
ElasticSearch introduction talk. Overview of the API, functionality, use cases. What can be achieved, how to scale? What is Kibana, how it can benefit your business.
Global introduction to elastisearch presented at BigData meetup.
Use cases, getting started, Rest CRUD API, Mapping, Search API, Query DSL with queries and filters, Analyzers, Analytics with facets and aggregations, Percolator, High Availability, Clients & Integrations, ...
Deep Dive on ElasticSearch Meetup event on 23rd May '15 at www.meetup.com/abctalks
Agenda:
1) Introduction to NOSQL
2) What is ElasticSearch and why is it required
3) ElasticSearch architecture
4) Installation of ElasticSearch
5) Hands on session on ElasticSearch
Talk given for the #phpbenelux user group, March 27th in Gent (BE), with the goal of convincing developers that are used to build php/mysql apps to broaden their horizon when adding search to their site. Be sure to also have a look at the notes for the slides; they explain some of the screenshots, etc.
An accompanying blog post about this subject can be found at http://www.jurriaanpersyn.com/archives/2013/11/18/introduction-to-elasticsearch/
This talk moves beyond the standard introduction into Elasticsearch and focuses on how Elasticsearch tries to fulfill its near-realtime contract. Specifically, I’ll show how Elasticsearch manages to be incredibly fast while handling huge amounts of data. After a quick introduction, we will walk through several search features and how the user can get the most out of the Elasticsearch. This talk will go under the hood exploring features like search, aggregations, highlighting, (non-)use of probabilistic data structures and more.
The ultimate guide for Elasticsearch pluginsItamar
Elasticsearch is a great product - for search, for scale, for analyzing data, and much more. But sometimes you need to do something that is not supported by Elasticsearch out of the box, and that's where plugins come into play.
Join me in this talk to explore the plugins land of Elasticsearch. We will discuss the various ways Elasticsearch can be extended, and the various types of plugins available to do that. By giving concrete examples and browsing the large selection of pre-made plugins, we will see how plugins can help us overcome various challenges. We will also discuss possible issues with plugins, and ways to work around them.
Finally, we will discuss scenarios in which custom plugin development is necessary and can really save the day. By showing a demo of one such scenario, and the way we built and debugged a plugin to solve it, we will complete the picture of the Elasticsearch plugin land, and hopefully inspire you to create your own!
Elasticsearch is a powerful, distributed, open source searching technology. By integrating Elasticsearch into your application, you instantly provide a way to search a lot of data very quickly. Elasticsearch has a RESTful API, it scales, its super fast, you can use plugins to customize it, and much more. In this talk I go over the basics of setting up Elasticsearch, creating a search index, importing your data, and doing some basic searching. I also touch on a few advanced topics that will show the flexibility of this awesome service.
Elasticsearch what is it ? How can I use it in my stack ? I will explain how to set up a working environment with Elasticsearch. The slides are in English.
BigData Faceted Search Comparison between Apache Solr vs. ElasticSearchNetConstructor, Inc.
Search faceting presentation and comparison of BigData textual content indexing/search analytics solutions. Presentation focuses on the comparison of the open source solutions provided by Apache Solr to those of ElasticSearch.
ElasticSearch in Production: lessons learnedBeyondTrees
With Proquest Udini, we have created the worlds largest online article store, and aim to be the center for researchers all over the world. We connect to a 700M solr cluster for search, but have recently also implemented a search component with ElasticSearch. We will discuss how we did this, and how we want to use the 30M index for scientific citation recognition. We will highlight lessons learned in integrating ElasticSearch in our virtualized EC2 environments, and challenges aligning with our continuous deployment processes.
ElasticSearch introduction talk. Overview of the API, functionality, use cases. What can be achieved, how to scale? What is Kibana, how it can benefit your business.
Global introduction to elastisearch presented at BigData meetup.
Use cases, getting started, Rest CRUD API, Mapping, Search API, Query DSL with queries and filters, Analyzers, Analytics with facets and aggregations, Percolator, High Availability, Clients & Integrations, ...
Deep Dive on ElasticSearch Meetup event on 23rd May '15 at www.meetup.com/abctalks
Agenda:
1) Introduction to NOSQL
2) What is ElasticSearch and why is it required
3) ElasticSearch architecture
4) Installation of ElasticSearch
5) Hands on session on ElasticSearch
Talk given for the #phpbenelux user group, March 27th in Gent (BE), with the goal of convincing developers that are used to build php/mysql apps to broaden their horizon when adding search to their site. Be sure to also have a look at the notes for the slides; they explain some of the screenshots, etc.
An accompanying blog post about this subject can be found at http://www.jurriaanpersyn.com/archives/2013/11/18/introduction-to-elasticsearch/
This talk moves beyond the standard introduction into Elasticsearch and focuses on how Elasticsearch tries to fulfill its near-realtime contract. Specifically, I’ll show how Elasticsearch manages to be incredibly fast while handling huge amounts of data. After a quick introduction, we will walk through several search features and how the user can get the most out of the Elasticsearch. This talk will go under the hood exploring features like search, aggregations, highlighting, (non-)use of probabilistic data structures and more.
The ultimate guide for Elasticsearch pluginsItamar
Elasticsearch is a great product - for search, for scale, for analyzing data, and much more. But sometimes you need to do something that is not supported by Elasticsearch out of the box, and that's where plugins come into play.
Join me in this talk to explore the plugins land of Elasticsearch. We will discuss the various ways Elasticsearch can be extended, and the various types of plugins available to do that. By giving concrete examples and browsing the large selection of pre-made plugins, we will see how plugins can help us overcome various challenges. We will also discuss possible issues with plugins, and ways to work around them.
Finally, we will discuss scenarios in which custom plugin development is necessary and can really save the day. By showing a demo of one such scenario, and the way we built and debugged a plugin to solve it, we will complete the picture of the Elasticsearch plugin land, and hopefully inspire you to create your own!
Elasticsearch is a powerful, distributed, open source searching technology. By integrating Elasticsearch into your application, you instantly provide a way to search a lot of data very quickly. Elasticsearch has a RESTful API, it scales, its super fast, you can use plugins to customize it, and much more. In this talk I go over the basics of setting up Elasticsearch, creating a search index, importing your data, and doing some basic searching. I also touch on a few advanced topics that will show the flexibility of this awesome service.
Elasticsearch what is it ? How can I use it in my stack ? I will explain how to set up a working environment with Elasticsearch. The slides are in English.
BigData Faceted Search Comparison between Apache Solr vs. ElasticSearchNetConstructor, Inc.
Search faceting presentation and comparison of BigData textual content indexing/search analytics solutions. Presentation focuses on the comparison of the open source solutions provided by Apache Solr to those of ElasticSearch.
SF Bay Area Lucene / Solr Meetup 17 Jan 2013
Use Case - How the SolvNet team migrated from Apache Lucene to Apache Solr 4. This presentation highlighted the major issues and challenges faced in the upgrade including new implementations of Auto-complete, Auto Suggest, Extending the Solr Highlighter, etc. Troy D. Thomas <a>Troy D. Thomas</a>c
Not Just ORM: Powerful Hibernate ORM Features and CapabilitiesBrett Meyer
DevNexus 2014
Hibernate has always revolved around data, ORM, and JPA. However, it’s much more than that. Hibernate has grown into a family of projects and capabilities, extending well beyond the traditional ORM/JPA space.
This talk will present powerful features provided both by Hibernate ORM, as well as third-party extensions. Some capabilities are brand new, while others are older-but-improved. Topics include multiple-tenancy, geographic data, auditing/versioning, sharding, OSGi, and integration with additional Hibernate projects. The talk will include live demonstrations.
The Enterprise Data Lake has become the defacto repository of both structured and unstructured data within an enterprise. Being able to discover information across both structured and unstructured data using search is a key capability of enterprise data lake. In this workshop, we will provide an in-depth overview of HDP Search with focus on configuration, sizing and tuning. We will also deliver a working example to showcase the usage of HDP Search along with the rest of platform capabilities to deliver real world solution.
Solr Recipes provides quick and easy steps for common use cases with Apache Solr. Bite-sized recipes will be presented for data ingestion, textual analysis, client integration, and each of Solr’s features including faceting, more-like-this, spell checking/suggest, and others.
Solr at zvents 6 years later & still going stronglucenerevolution
Presented by Amit Nithianandan, Lead Engineer Search/Analytics New Platforms, Zvents/Stubhub
Zvents has been a user of Apache Solr since 2007 when it was very early. Since then, the team has made extensive use of the various features and most recently completed an overhaul of the search engine to Solr 4.0. We'll touch on a variety of development/operational topics including how we manage the build lifecycle of the search application using Maven, release the deployment package using Capistrano and monitor using NewRelic as well as the extensive use of virtual machines to simplify node management. Also, we’ll talk about application level details such as our unique federated search product, and the integration of technologies such as Hypertable, RabbitMQ, and EHCache to power more real-time ranking and filtering based on traffic statistics and ticket inventory.
Solr search engine with multiple table relationJay Bharat
Here you can learn how to use solr search engine and implement in your application like in PHP/MYSQL.
I am introducing how to handle multiple table data handling in SOLR.
This talk was given during Activate Conference 2019. Lucene has a lot of options for configuring similarity, and Solr inherits them. Similarity makes the base of your relevancy score: how similar is this document to the query? The default similarity (BM25) is a good start, but you may need to tweak it for your use-case. In this session, you will learn how BM25 works and how you may want to change its parameters. Then, we'll move to other similarity classes: DFR, DFI, IB and LM. You will learn the thinking behind them, how that thinking translates to the similarity score, and which parameters allow you to tweak how score evolves based on things like term frequency or document length. By the end, you’ll have a good understanding of which similarity options are likely to work well for your use-case. You'll know which tunables are available and whether you need to implement a custom similarity class. As an example, we’ll focus on E-commerce, where you often end up ignoring term frequency altogether.
Key Takeaway
1) What are the built-in Lucene/Solr similarities and what they do
2) Which similarity to use for which use-case
3) How to use a custom similarity class in Solr
Learn more about search relevance and similarity: sematext.com/blog/search-relevance-solr-elasticsearch-similarity
This talk was given during DockerCon EU 2018.
It ain't just a whim - to be able to continue innovating, we’ve moved our good old static production to containers. We needed to be elastic, fast, reliable and production ready at any time - that's why we chose Docker. But like in most enterprises, lots of our apps run on the JVM and most JVMs’ ergonomics assume they “own” the server they are running on. So how do you containerize JVM apps? Should you really increase JVM heap if you have spare memory? What about OS caches? What are the differences between JDK 8, 9 and 10 when it comes to container awareness? Outages because of out of memory errors? Slowness because of long garbage collection and poor environment visibility? Long story short, in this session, we’ll look at the gotchas of running JVM apps in containers and teach you how to avoid costly mistakes.
Top 3 things attendees will learn:
1. Key differences between various JVM versions relevant for containerized Java apps.
2. Best practices for running JVM in containers.
3. Avoiding common pitfalls when running containerized JVM applications.
This talk was given during Monitorama EU 2018.
Observability, like other ops practices, has hard and soft benefits. No logs - no root cause, that’s a hard benefit. A soft benefit is when we have more confidence in an observable system. Then we can be more productive in developing it. The trouble with soft benefits like confidence, is how to measure them. Does observability actually make us more productive? How about other activities, such as post-mortems? Why is alert fatigue so bad? Turns out, there are plenty of studies about the impact of such activities on our brain, our behavior, our productivity. In this session, we’ll explore what [neuro]science says about such practices so that:
We turn soft benefits into hard benefits
We can encourage a culture where we get the benefits and avoid the traps
Be prepared for surprises, as some “best practices” aren’t “best” at all.
This talk was given during DevOps Con 2017.
Have you ever spent time digging through various terminals, greping, lessing, awking and trying to find that few log lines that may be important? Have you every done that under time pressure, because mission critical services were not working? Have you every heard from your developers that they can’t tell you anything, because they don’t have access to application logs? Have you ever considered a centralized storage for logs, but time and resources are not on your side?
If you said yes, to any of the above questions, than this talk is for you. During the talk we’ll introduce you to the world of log centralization and analysis, both when it comes to open source, but also commercial tools. We will go from top to bottom and learn how to setup log centralization and analysis for servers, virtualized environments and containers. We will get from log shipping, through centralized buffering to storage and analysis to show you, that having a centralized log analysis tool is not a rocket science.
Finally, you will see how useful is to combine the logs from all your servers in a single place for blazingly fast correlation.
This talk was given during Lucene Revolution 2017.
They say optimize is bad for you, they say you shouldn't do it, they say it will invalidate operating system caches and make your system suffer. This is all true, but is it true in all cases?
In this presentation we will look closer on what optimize or better called force merge does to your Solr search engine. You will learn what segments are, how they are built and how they are used by Lucene and Solr for searching. We will discuss real-life performance implications regarding Solr collections that have many segments on a single node and compare that to the Solr where the number of segments is moderate and low. We will see what we can do to tune the merging process to trade off indexing performance for better query performance and what pitfalls are there waiting for us. Finally, at the end of the talk we will discuss possibilities of running force merge to avoid system disruption and still benefit from query performance boost that single segment index provides.
This talk was given during Lucene Revolution 2017 and has two goals: first, to discuss the tradeoffs for running Solr on Docker. For example, you get dynamic allocation of operating system caches, but you also get some CPU overhead. We'll keep in mind that Solr nodes tend to be different than your average container: Solr is usually long running, takes quite some RSS and a lot of virtual memory. This will imply, for example, that it makes more sense to use Docker on big physical boxes than on configurable-size VMs (like Amazon EC2).
The second goal is to discuss issues with deploying Solr on Docker and how to work around them. For example, many older (and some of the newer) combinations of Docker, Linux Kernel and JVM have memory leaks. We'll go over Docker operations best practices, such as using container limits to cap memory usage and prevent the host OOM killer from terminating a memory-consuming process - usually a Solr node. Or running Docker in Swarm mode over multiple smaller boxes to limit the spread of a single issue.
Docker is all the rage these days. While one doesn't hear much about Solr on Docker, we're here to tell you not only that it can be done, but also share how it's done.
We'll quickly go over the basic Docker ideas - containers are lighter than VMs, they solve "but it worked on my laptop" issues - so we can dive into the specifics of running Solr on Docker.
We'll do a live demo showing you how to run Solr master - slave as well as SolrCloud using containers, how to manage CPU assignments, constraint memory and use Docker data volumes when running Solr in containers. We will also show you how to create your own containers with custom configurations.
Finally, we'll address one of the core Solr questions - which deployment type should I use? We will demonstrate performance differences between the following deployment types:
- Single Solr instance running on a bare metal machine
- Multiple Solr instances running on a single bare metal machine
- Solr running in containers
- Solr running on virtual machine
- Solr running on virtual machine using unikernel
For each deployment type we'll address how it impacts performance, operational flexibility and all other key pros and cons you ought to keep in mind.
An updated talk about how to use Solr for logs and other time-series data, like metrics and social media. In 2016, Solr, its ecosystem, and the operating systems it runs on have evolved quite a lot, so we can now show new techniques to scale and new knobs to tune.
We'll start by looking at how to scale SolrCloud through a hybrid approach using a combination of time- and size-based indices, and also how to divide the cluster in tiers in order to handle the potentially spiky load in real-time. Then, we'll look at tuning individual nodes. We'll cover everything from commits, buffers, merge policies and doc values to OS settings like disk scheduler, SSD caching, and huge pages.
Finally, we'll take a look at the pipeline of getting the logs to Solr and how to make it fast and reliable: where should buffers live, which protocols to use, where should the heavy processing be done (like parsing unstructured data), and which tools from the ecosystem can help.
Running High Performance and Fault Tolerant Elasticsearch Clusters on DockerSematext Group, Inc.
Sematext engineer Rafal Kuc (@kucrafal) walks through the details of running high-performance, fault tolerant Elasticsearch clusters on Docker. Topics include: Containers vs. Virtual Machines, running the official Elasticsearch container, container constraints, good network practices, dealing with storage, data-only Docker volumes, scaling, time-based data, multiple tiers and tenants, indexing with and without routing, querying with and without routing, routing vs. no routing, and monitoring. Talk was delivered at DevOps Days Warsaw 2015.
Large Scale Log Analytics with Solr (from Lucene Revolution 2015)Sematext Group, Inc.
In this talk from Lucene/Solr Revolution 2015, Solr and centralized logging experts Radu Gheorghe and Rafal Kuć cover topics like: flow in Logstash, flow in rsyslog, parsing JSON, log shipping, Solr tuning, time-based collections and tiered clusters.
From Zero to Production Hero: Log Analysis with Elasticsearch (from Velocity ...Sematext Group, Inc.
This talk covers the basics of centralizing logs in Elasticsearch and all the strategies that make it scale with billions of documents in production. Topics include:
- Time-based indices and index templates to efficiently slice your data
- Different node tiers to de-couple reading from writing, heavy traffic from low traffic
- Tuning various Elasticsearch and OS settings to maximize throughput and search performance
- Configuring tools such as logstash and rsyslog to maximize throughput and minimize overhead
Sematext's DevOps Evangelist, Stefan Thies (@seti321), takes a Docker Logging tour through the different log collection options Docker users have, the pros and cons of each, specific and existing Docker logging solutions, tooling, the role of syslog, log shipping to ELK Stack, and more. Q&A session at end.
For the Docker users out there, Sematext's DevOps Evangelist, Stefan Thies, goes through a number of different Docker monitoring options, points out their pros and cons, and offers solutions for Docker monitoring. Webinar contains actionable content, diagrams and how-to steps.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
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.
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.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
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.
Welocme to ViralQR, your best QR code generator.ViralQR
Welcome to ViralQR, your best QR code generator available on the market!
At ViralQR, we design static and dynamic QR codes. Our mission is to make business operations easier and customer engagement more powerful through the use of QR technology. Be it a small-scale business or a huge enterprise, our easy-to-use platform provides multiple choices that can be tailored according to your company's branding and marketing strategies.
Our Vision
We are here to make the process of creating QR codes easy and smooth, thus enhancing customer interaction and making business more fluid. We very strongly believe in the ability of QR codes to change the world for businesses in their interaction with customers and are set on making that technology accessible and usable far and wide.
Our Achievements
Ever since its inception, we have successfully served many clients by offering QR codes in their marketing, service delivery, and collection of feedback across various industries. Our platform has been recognized for its ease of use and amazing features, which helped a business to make QR codes.
Our Services
At ViralQR, here is a comprehensive suite of services that caters to your very needs:
Static QR Codes: Create free static QR codes. These QR codes are able to store significant information such as URLs, vCards, plain text, emails and SMS, Wi-Fi credentials, and Bitcoin addresses.
Dynamic QR codes: These also have all the advanced features but are subscription-based. They can directly link to PDF files, images, micro-landing pages, social accounts, review forms, business pages, and applications. In addition, they can be branded with CTAs, frames, patterns, colors, and logos to enhance your branding.
Pricing and Packages
Additionally, there is a 14-day free offer to ViralQR, which is an exceptional opportunity for new users to take a feel of this platform. One can easily subscribe from there and experience the full dynamic of using QR codes. The subscription plans are not only meant for business; they are priced very flexibly so that literally every business could afford to benefit from our service.
Why choose us?
ViralQR will provide services for marketing, advertising, catering, retail, and the like. The QR codes can be posted on fliers, packaging, merchandise, and banners, as well as to substitute for cash and cards in a restaurant or coffee shop. With QR codes integrated into your business, improve customer engagement and streamline operations.
Comprehensive Analytics
Subscribers of ViralQR receive detailed analytics and tracking tools in light of having a view of the core values of QR code performance. Our analytics dashboard shows aggregate views and unique views, as well as detailed information about each impression, including time, device, browser, and estimated location by city and country.
So, thank you for choosing ViralQR; we have an offer of nothing but the best in terms of QR code services to meet business diversity!
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.
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
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Battle of the Giants - Apache Solr vs. Elasticsearch (ApacheCon)
1. Battle of the Giants
Apache Solr 4.0 vs ElasticSearch 0.20
Rafał Kuć – Sematext International
@kucrafal @sematext sematext.com
2. Who Am I
• „Solr 3.1 Cookbook” author (4.0 inc)
• Sematext consultant & engineer
• Solr.pl co-founder
• Father and husband
Copyright 2012 Sematext Int’l. All rights reserved
3. What Will I Talk About ?
Copyright 2012 Sematext Int’l. All rights reserved
4. Under the Hood
• ElasticSearch 0.20
– Apache Lucene 3.6.1
• Apache Solr 4.0
– Apache Lucene 4.0
Copyright 2012 Sematext Int’l. All rights reserved
5. Architecture
• What we expect
– Scalability
– Fault toleranance
– High availablity
– Features
• What we are also looking for
– Manageability
– Installation ease
– Tools
Copyright 2012 Sematext Int’l. All rights reserved
6. ElasticSearch Cluster Architecture
• Distributed
• Fault tolerant
• Only ElasticSearch nodes
• Single leader
• Automatic leader election
Copyright 2012 Sematext Int’l. All rights reserved
7. SolrCloud Cluster Architecture
• Distributed
• Fault tolerant
• Apache Solr + ZooKeeper ensemble
• Leader per shard
• Automatic leader election
Copyright 2012 Sematext Int’l. All rights reserved
8. Collection vs Index
• Collection – Solr main logical index
• Index – ElasticSearch main logic structure
• Collections and Indices can be spread among
different nodes in the cluster
Copyright 2012 Sematext Int’l. All rights reserved
9. Multiple Document Types in Index
• ElasticSearch - multiple document types in a
single index
• Apache Solr - multiple document types in a
single collection – shared schema.xml
Copyright 2012 Sematext Int’l. All rights reserved
10. Shards and Replicas
• Index / Collection can have many shards
• Each shard can have 0 or more replicas
• Replicas are automatically updated
• Replicas can be promoted to leaders when a
leader shard goes off-line
Copyright 2012 Sematext Int’l. All rights reserved
11. Index and Query Routing
• Control where documents are going
• Control where queries are going
• Manual data distribution
Copyright 2012 Sematext Int’l. All rights reserved
12. Querying Without Routing
Copyright 2012 Sematext Int’l. All rights reserved
Shard 1 Shard 2 Shard 3 Shard 4
Shard 5 Shard 6 Shard 7 Shard 8
Collection / Index
Application
13. Query With Routing
Copyright 2012 Sematext Int’l. All rights reserved
Shard 1 Shard 2 Shard 3 Shard 4
Shard 5 Shard 6 Shard 7 Shard 8
Collection / Index
Application
14. Routing Docs and Queries in Solr
• Requires some effort
• Defaults to hash based on document
identifiers
• Can be turned off using
solr.NoOpDistributingUpdateProcessorFactory
Copyright 2012 Sematext Int’l. All rights reserved
<updateRequestProcessorChain>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
<processor class="solr.NoOpDistributingUpdateProcessorFactory" />
</updateRequestProcessorChain>
15. Routing Docs and Queries - ElasticSearch
• routing parameter controls target shard
which document/query will be forwarded to
• defaults to document identifiers
• can be changed to any value
Copyright 2012 Sematext Int’l. All rights reserved
curl -XPUT localhost:9200/sematext/test/1?routing=1234 -d '{
"title" : "Test routing document"
}'
curl –XGET localhost:9200/sematext/test/_search/?q=*&routing=1234
16. Apache Solr Index Structure
• Field types defined in schema.xml file
• Fields defined in schema.xml file
• Allows automatic value copying
• Allows dynamic fields
• Allows custom similarity definition
Copyright 2012 Sematext Int’l. All rights reserved
17. ElasticSearch Index Structure
• Schema - less
• Analyzers and filters defined with HTTP API
• Fields defined with an HTTP request
• Multi – field support
• Allows nested documents
• Allows parent – child relationship
• Allows structured data
Copyright 2012 Sematext Int’l. All rights reserved
18. Index Structure Manipulation
• Possible to some extent in Solr as well as
ElasticSearch
• ElasticSearch allows dynamic mappings
update (not always)
Copyright 2012 Sematext Int’l. All rights reserved
19. Aliasing
• Solr
– Allows core aliasing
• ElasticSearch
– Allows index aliasing
– We can add filter to alias
– We can add index routing
– We can add search routing
Copyright 2012 Sematext Int’l. All rights reserved
20. Server Configuration
• Solr
– Static in solrconfig.xml
– Can be reloaded
during runtime with
collection/core reload
Copyright 2012 Sematext Int’l. All rights reserved
• ElasticSearch
– Static in elasticsearch.yml
– Properties can be
changed during runtime
(although not all) without
reloading
21. ElasticSearch Gateway Module
• Your data time machine
• Stores indices and meta data
• Currently available:
– Local
– Shared FS
– Hadoop
– S3
Copyright 2012 Sematext Int’l. All rights reserved
22. Discovery
• Apache Solr uses ZooKeeper
• ElasticSearch uses Zen Discovery
Copyright 2012 Sematext Int’l. All rights reserved
23. ElasticSearch Zen Discovery
• Allows automatic node discovery
• Provides multicast and unicast discovery
methods
• Automatic master detection
• Two - way failure detection
Copyright 2012 Sematext Int’l. All rights reserved
24. Apache Solr & Apache ZooKeeper
• Requires additional software
• ZooKeeper ensemble with 1+ ZooKeeper
instances
• Prevents split – brain situations
• Holds collections configurations
• Solr needs to know address of one of the
ZooKeeper instances
Copyright 2012 Sematext Int’l. All rights reserved
25. API
• HTTP REST API in ElasticSearch or Query String
for simple queries
• HTTP with Query String in Apache Solr
• Both provide specialized Java API
– SolrJ for Apache Solr and CloudSolrServer
– ElasticSearch with TransportClient for remote
connections
Copyright 2012 Sematext Int’l. All rights reserved
26. Apache Solr and Query String
• Queries are built of request parameters
• Some degree of structuring allowed (local
params)
Copyright 2012 Sematext Int’l. All rights reserved
curl 'http://localhost:8983/solr/select?q=text:weird&sort=date+desc'
27. ElasticSearch REST End-Points
• Simple queries built of request parameters
• Stuctured queries built as JSON objects
Copyright 2012 Sematext Int’l. All rights reserved
curl –XGET
'localhost:9200/sematext/test/_search/?q=_all:weird&sort=date:desc'
curl -XGET 'localhost:9200/sematext/test_search' -d '{
"query" : {
"term" : {
"_all" : "weird"
},
"sort" : {
"date" : {
"order" : "desc"
}
}
}'
28. Data Handling
• Solr
– Multiple formats allowed as input
– Can return results in multiple formats
• ElasticSearch
– JSON in / JSON out
Copyright 2012 Sematext Int’l. All rights reserved
29. Single or Batch
• Solr
– Single or multiple
documents per
request
Copyright 2012 Sematext Int’l. All rights reserved
• ElasticSearch
– Single document with a
standard indexing call
– _bulk end – point exposed
for batch indexing
– _bulk UDP end – point can
be exposed for low
latency batch indexing
30. Partial Document Updates
• Not based on LUCENE-3837 proposed by
Andrzej Białecki
• Document reindexing on the side of search
server
• Both servers use versioning to prevent
changes being overwritten
• Can lead to decreased network traffic in some
cases
Copyright 2012 Sematext Int’l. All rights reserved
31. ElasticSearch Partial Doc Update
• Special end – point exposed - _update
• Supports parameters like routing, parent,
replication, percolate, etc (similar to Index
API)
• Uses scripts to perform document updates
Copyright 2012 Sematext Int’l. All rights reserved
curl -XPOST 'localhost:9200/sematext/test/12345/_update' -d '{
"script" : "ctx._source.enabled = enabled",
"params" : {
"enabled" : true
}
}'
32. Apache Solr Partial Doc Update
• Sent to the standard update handler
• Requires _version_ field to be present
Copyright 2012 Sematext Int’l. All rights reserved
curl 'localhost:8983/solr/update?commit=true' -H 'Content-
type:application/json' -d '[
{
"id" : "12345",
"enabled" : {
"set" : true
}
}
]'
33. Solr Collections API
• Built on top of Core Admin
• Allows:
– Collection creation
– Collection reload
– Collection deletion
Copyright 2012 Sematext Int’l. All rights reserved
34. ElasticSearch Indices REST API
• Allows:
– Index creation
– Index deletion
– Index closing and opening
– Index refreshing
– Existence checking
Copyright 2012 Sematext Int’l. All rights reserved
35. Analysis Chain Definition
• Solr
– Static in schema.xml
– Can be reloaded
during runtime with
collection/core reload
Copyright 2012 Sematext Int’l. All rights reserved
• ElasticSearch
– Static in elasticsearch.yml
– Defined during index/type
creation with REST call
– Possible to change with
update mapping call (not
all changes allowed)
36. Multilingual Data Handling
• Both ElasticSearch and Apache Solr built on
top of Apache Lucene
• Solr – analyzers defined per field in schema.xml
file
• ElasticSearch – analyzer defined in
mappings, but can be set during query or
specified on the basis of field values
Copyright 2012 Sematext Int’l. All rights reserved
37. Results Grouping
• Available in Apache Solr only
• Allows for results grouping based on:
– Field value
– Query
– Function query (not available during distributed
searching)
Copyright 2012 Sematext Int’l. All rights reserved
38. Prospective Search
• Allows for checking if a document matches a
stored query
• Not available in Apache Solr
• Available in ElasticSearch under the name of
Percolator
Copyright 2012 Sematext Int’l. All rights reserved
39. Spellchecker
• Allows to check and correct spelling mistakes
• Not available in ElasticSearch currently
• Multiple implementations available in Apache
Solr
– IndexBasedSpellChecker
– WordBreakSolrSpellChecker
– DirectSolrSpellChecker
Copyright 2012 Sematext Int’l. All rights reserved
40. Full Text Search Capabilities
• Variety of queries
• Ability to control score calculation
• Different query parsers available
• Advanced Lucene queries (like SpanQueries)
exposed
Copyright 2012 Sematext Int’l. All rights reserved
41. Score Calculation
• Leverage Lucene scoring capabilities
• Control over document importance
• Control over query importance
• Control over term and phrase importance
Copyright 2012 Sematext Int’l. All rights reserved
42. Apache Solr and Score Influence
• Index time
– Document boosts
– Field boosts
• Query time
– Term boosts
– Field boosts
– Phrases boost
– Function queries
Copyright 2012 Sematext Int’l. All rights reserved
43. ElasticSearch and Score Influence
• Index time
– Document and field boosts
• Query time
– Different queries provide different boost controls
– Can calculate distributed term frequencies
– Negative and Positive boosting queries
– Custom score filters
• Scripts
– Control scoring with scripts
Copyright 2012 Sematext Int’l. All rights reserved
44. Nested Objects
• Possible only in ElasticSearch
• Indexed as separate documents
• Stored in the same part of the index as the
root document
• Hidden from standard queries and filters
• Need appropriate queries and filters (nested)
Copyright 2012 Sematext Int’l. All rights reserved
45. More Like This
• Lets us find similar documents
• Solr
– More Like This Component
• ElasticSearch
– More Like This Query
– More Like This Field Query
– _mlt REST end – point
Copyright 2012 Sematext Int’l. All rights reserved
46. Solr Parent – Child Relationship
• Used at query time
• Multi core joins possible
Copyright 2012 Sematext Int’l. All rights reserved
http://localhost:8983/solr/select?q={!join from=parent to=id}color:Yellow
47. ElasticSearch Parent – Child Handling
• Proper indexing required
• Indexed as separate documents
• Standard queries don’t return child
documents
• In order to retrieve parent docs one should
use appropriate queries and filters (has_child,
has_parent, top_children)
Copyright 2012 Sematext Int’l. All rights reserved
48. Filters
• Used to narrown down query results
• Good candidates for caching and reuse
• Supported by ElasticSearch and Apache Solr
• Should be used for repeatable query elements
Copyright 2012 Sematext Int’l. All rights reserved
49. Apache Solr Filter Queries
• Multiple filters per query
• Filters are addictive
• Different query parsers can be used
• Local params can be used
• Narrow down faceting results
Copyright 2012 Sematext Int’l. All rights reserved
50. ElasticSearch Filtered Queries
• Can be defined using queries exposed by the
Query DSL
• Can be used for custom score calculation
(i.e., custom filters score query)
• Doesn’t narrow down faceting results by
default (facets have their own filters)
Copyright 2012 Sematext Int’l. All rights reserved
51. Filter Cache Control
• Both Solr and ElasticSearch let us control
cache for filters
• Solr
– Using local params and cache property
• ElasticSearch
– _cache property
– _cache_key property
Copyright 2012 Sematext Int’l. All rights reserved
52. Faceting
• Both provide common facets
– Terms
– Range & query
– Terms statistics
– Spatial distance
• Solr
– Pivot faceting
• ElasticSearch
– Histograms
Copyright 2012 Sematext Int’l. All rights reserved
53. Real Time Or Not ?
• Allow getting document not yet indexed
• Don’t need searcher reopening
• ElasticSearch
– Separate Get and Multi Get API’s
• Apache Solr
– Separate Realtime Get Handler
– Can be used as a search component
Copyright 2012 Sematext Int’l. All rights reserved
54. Caches and Warming
• ElasticSearch and Solr allow caching
• Both allow running warming queries
• ElasticSearch by default doesn’t limit cache
sizes
Copyright 2012 Sematext Int’l. All rights reserved
55. Solr Caches
• Types
– Filter Cache
– Query Result Cache
– Document Cache
• Implementation choices
– LRUCache
– FastLRUCache
– LFUCache
• Other configuration options:
– Size
– Maximum size
– Autowarming count
Copyright 2012 Sematext Int’l. All rights reserved
56. ElasticSearch Caches
• Types
– Filter Cache
– Field Data Cache
• Implementation choices
– Resident
– Soft
– Weak
• Other configuration options:
– Max size (entries per segment)
– Expiration time
Copyright 2012 Sematext Int’l. All rights reserved
57. Cluster State Monitoring
• Apache Solr – multiple mbeans exposed by
JMX
• ElasticSearch – multiple REST end – points
exposed to get different statistics
Copyright 2012 Sematext Int’l. All rights reserved
58. ElasticSearch Statistics API
• Health and State Check
• Nodes Information and Statistics
• Cache Statistics
• Index Segments Information
• Index Information and Statistics
• Mappings Information
Copyright 2012 Sematext Int’l. All rights reserved
61. Cluster Settings Update
• ElasticSearch lets us:
– Control rebalancing
– Control recovery
– Control allocation
– Change the above on the live cluster
Copyright 2012 Sematext Int’l. All rights reserved
62. Custom Shard Allocation
• Possible in ElasticSearch
• Cluster level:
• Index level:
Copyright 2012 Sematext Int’l. All rights reserved
curl -XPUT localhost:9200/_cluster/settings -d '{
"persistent" : {
"cluster.routing.allocation.exclude._ip" : "192.168.2.1"
}
}'
curl -XPUT localhost:9200/sematext/ -d '{
"index.routing.allocation.include.tag" : "nodeOne,nodeTwo"
}'
63. Moving Shards and Replicas
• Possible in ElasticSearch, not available in Solr
• Allows to move shards and replicas to any
node in the cluster on demand
• Available in ElasticSearch:
Copyright 2012 Sematext Int’l. All rights reserved
curl -XPOST 'localhost:9200/_cluster/reroute' -d '{
"commands" : [
{"move" : {"index" : "sematext", "shard" : 0, "from_node" : "node1", "to_node" : "node2"}},
{"allocate" : {"index" : "sematext", "shard" : 1, "node" : "node3"}}
]
}'
64. And The Winner Is ?
Copyright 2012 Sematext Int’l. All rights reserved
65. How to Reach Us
• Rafał Kuć
– Twitter: @kucrafal
– E-mail: rafal.kuc@sematext.com
• Sematext
– Twitter: @sematext
– Website: http://sematext.com
• Solr vs ElasticSearch series:
• http://blog.sematext.com/2012/08/23/solr-vs-
elasticsearch-part-1-overview/
Copyright 2012 Sematext Int’l. All rights reserved
66. We Are Hiring !
• Dig Search ?
• Dig Analytics ?
• Dig Big Data ?
• Dig Performance ?
• Dig working with and in open – source ?
• We’re hiring world – wide !
http://sematext.com/about/jobs.html
Copyright 2012 Sematext Int’l. All rights reserved