SlideShare a Scribd company logo
APACHE SOLR




A LITTLE INTRODUCTION TO SEARCH
             ENGINES.
TECHNOLOGIES

Mainly, We are gonna talk about these
“technologies”:
● Apache SOLR

● Maven

● Rest Services, Java, Lucene, Google, and

many more...
Lucene

●   Library which provides high performance text
    operations.
●   Inverted index.
●   Plain text.
●   Different operations with text i.e: delete articles.
●   Since Java 1.4
●   Indexes stored in disc.
Lucene

●   Less dependency with index size.
●   Higher text search flexibility. Synonyms,
    phonetics searches...
●   Ranking.
    All these features does Lucene better than
    DataBases when text searches are necessary
    in our applications.
Lucene
SOLR

●   Http access to Lucene
●   Caches to improve performane
●   Admin web interface
●   XML configuration
●   Faceted search
●   Distributed service
●   Solrj client
SOLR

     Basic search configuration
Parameter Description

q          What is searched (Name: Music)
rows       Max results shown
facets     Faceted search
sort       It sorts the results i.e: name asc


fl         Fields returned by the server


fq         Caching results


...        More and more parameters
SOLR

    Advanced search:
●   It's configurated through the xml files.
    –   Tokens
    –   Stemming
    –   Synonyms
    –   Stop words
    –   N-Gamas
SOLR
The Solr Home directory typically contains the following subdirectories...

  conf/
     This directory is mandatory and must contain your solrconfig.xml
     and schema.xml. Any other optional configuration files would also
     be kept here.

  data/
     This directory is the default location where Solr will keep your
     index, and is used by the replication scripts for dealing with
     snapshots. You can override this location in the solrconfig.xml
     and scripts.conf files. Solr will create this directory if it
     does not already exist.

  lib/
         This directory is optional. If it exists, Solr will load any Jars
         found in this directory and use them to resolve any "plugins"
         specified in your solrconfig.xml or schema.xml (ie: Analyzers,
         Request Handlers, etc...). Alternatively you can use the <lib>
         syntax in solrconfig.xml to direct Solr to your plugins. See the
         example solrconfig.xml file for details.

  bin/
      This directory is optional. It is the default location used for
      keeping the replication scripts .
SOLR
REST Services

    Set of architectural principles:
●   Use HTTP methods explicitly.
●   Stateless.
●   Expose directory structure-like URIs.
●   Transfer XML, JavaScript Object Notation
    (JSON), or both.
Maven

● Project life cycle control.
● Test, compile, install, deployment...

● Control of dependencies

● Many plugins

● Community

More Related Content

What's hot

What's hot (20)

ORACLE PL SQL
ORACLE PL SQLORACLE PL SQL
ORACLE PL SQL
 
Oracle: PLSQL Introduction
Oracle: PLSQL IntroductionOracle: PLSQL Introduction
Oracle: PLSQL Introduction
 
Data Processing Inside PostgreSQL
Data Processing Inside PostgreSQLData Processing Inside PostgreSQL
Data Processing Inside PostgreSQL
 
Introduction to PostgreSQL
Introduction to PostgreSQLIntroduction to PostgreSQL
Introduction to PostgreSQL
 
Java features. Java 8, 9, 10, 11
Java features. Java 8, 9, 10, 11Java features. Java 8, 9, 10, 11
Java features. Java 8, 9, 10, 11
 
InfiniFlux collector
InfiniFlux collectorInfiniFlux collector
InfiniFlux collector
 
Les23[1]Handling Exceptions
Les23[1]Handling ExceptionsLes23[1]Handling Exceptions
Les23[1]Handling Exceptions
 
Namespaces and Autoloading
Namespaces and AutoloadingNamespaces and Autoloading
Namespaces and Autoloading
 
Oracle sql loader utility
Oracle sql loader utilityOracle sql loader utility
Oracle sql loader utility
 
PostgreSQL Database Slides
PostgreSQL Database SlidesPostgreSQL Database Slides
PostgreSQL Database Slides
 
Linux
LinuxLinux
Linux
 
PL-SQL DIFFERENT PROGRAMS
PL-SQL DIFFERENT PROGRAMSPL-SQL DIFFERENT PROGRAMS
PL-SQL DIFFERENT PROGRAMS
 
1 - Introduction to PL/SQL
1 - Introduction to PL/SQL1 - Introduction to PL/SQL
1 - Introduction to PL/SQL
 
Sql loader good example
Sql loader good exampleSql loader good example
Sql loader good example
 
PIE - The Programmable Infrastructure Environment
PIE - The Programmable Infrastructure EnvironmentPIE - The Programmable Infrastructure Environment
PIE - The Programmable Infrastructure Environment
 
PL/SQL Fundamentals I
PL/SQL Fundamentals IPL/SQL Fundamentals I
PL/SQL Fundamentals I
 
plsql Les05
plsql Les05 plsql Les05
plsql Les05
 
4. plsql
4. plsql4. plsql
4. plsql
 
Oracle: PLSQL
Oracle: PLSQLOracle: PLSQL
Oracle: PLSQL
 
Linker scripts
Linker scriptsLinker scripts
Linker scripts
 

Similar to Hands on-solr

Solr Application Development Tutorial
Solr Application Development TutorialSolr Application Development Tutorial
Solr Application Development Tutorial
Erik Hatcher
 
Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6
DEEPAK KHETAWAT
 
Enterprise search in_drupal_pub
Enterprise search in_drupal_pubEnterprise search in_drupal_pub
Enterprise search in_drupal_pub
dstuartnz
 
Solr Recipes Workshop
Solr Recipes WorkshopSolr Recipes Workshop
Solr Recipes Workshop
Erik Hatcher
 
Introduction to Solr
Introduction to SolrIntroduction to Solr
Introduction to Solr
Erik Hatcher
 
Search Engine Capabilities - Apache Solr(Lucene)
Search Engine Capabilities - Apache Solr(Lucene)Search Engine Capabilities - Apache Solr(Lucene)
Search Engine Capabilities - Apache Solr(Lucene)
Manish kumar
 

Similar to Hands on-solr (20)

Apache Solr - Enterprise search platform
Apache Solr - Enterprise search platformApache Solr - Enterprise search platform
Apache Solr - Enterprise search platform
 
Solr Application Development Tutorial
Solr Application Development TutorialSolr Application Development Tutorial
Solr Application Development Tutorial
 
Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6
 
PLAT-4 Understanding the SOLR Integration
PLAT-4 Understanding the SOLR IntegrationPLAT-4 Understanding the SOLR Integration
PLAT-4 Understanding the SOLR Integration
 
Building Intelligent Search Applications with Apache Solr and PHP5
Building Intelligent Search Applications with Apache Solr and PHP5Building Intelligent Search Applications with Apache Solr and PHP5
Building Intelligent Search Applications with Apache Solr and PHP5
 
Get the most out of Solr search with PHP
Get the most out of Solr search with PHPGet the most out of Solr search with PHP
Get the most out of Solr search with PHP
 
Solr Recipes
Solr RecipesSolr Recipes
Solr Recipes
 
Enterprise search in_drupal_pub
Enterprise search in_drupal_pubEnterprise search in_drupal_pub
Enterprise search in_drupal_pub
 
Apache solr liferay
Apache solr liferayApache solr liferay
Apache solr liferay
 
Solr/Elasticsearch for CF Developers (and others)
Solr/Elasticsearch for CF Developers (and others)Solr/Elasticsearch for CF Developers (and others)
Solr/Elasticsearch for CF Developers (and others)
 
Apache solr
Apache solrApache solr
Apache solr
 
Solr 8 interview
Solr 8 interview Solr 8 interview
Solr 8 interview
 
Solr Recipes Workshop
Solr Recipes WorkshopSolr Recipes Workshop
Solr Recipes Workshop
 
Information Retrieval - Data Science Bootcamp
Information Retrieval - Data Science BootcampInformation Retrieval - Data Science Bootcamp
Information Retrieval - Data Science Bootcamp
 
Apache Solr + ajax solr
Apache Solr + ajax solrApache Solr + ajax solr
Apache Solr + ajax solr
 
Introduction to Solr
Introduction to SolrIntroduction to Solr
Introduction to Solr
 
Laravel 4 presentation
Laravel 4 presentationLaravel 4 presentation
Laravel 4 presentation
 
Search Engine Capabilities - Apache Solr(Lucene)
Search Engine Capabilities - Apache Solr(Lucene)Search Engine Capabilities - Apache Solr(Lucene)
Search Engine Capabilities - Apache Solr(Lucene)
 
Building Enterprise Search Engines using Open Source Technologies
Building Enterprise Search Engines using Open Source TechnologiesBuilding Enterprise Search Engines using Open Source Technologies
Building Enterprise Search Engines using Open Source Technologies
 
Building Enterprise Search Engines using Open Source Technologies
Building Enterprise Search Engines using Open Source TechnologiesBuilding Enterprise Search Engines using Open Source Technologies
Building Enterprise Search Engines using Open Source Technologies
 

Recently uploaded

Recently uploaded (20)

Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Server-Driven User Interface (SDUI) at Priceline
Server-Driven User Interface (SDUI) at PricelineServer-Driven User Interface (SDUI) at Priceline
Server-Driven User Interface (SDUI) at Priceline
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
Motion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in TechnologyMotion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in Technology
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 

Hands on-solr

  • 1. APACHE SOLR A LITTLE INTRODUCTION TO SEARCH ENGINES.
  • 2. TECHNOLOGIES Mainly, We are gonna talk about these “technologies”: ● Apache SOLR ● Maven ● Rest Services, Java, Lucene, Google, and many more...
  • 3. Lucene ● Library which provides high performance text operations. ● Inverted index. ● Plain text. ● Different operations with text i.e: delete articles. ● Since Java 1.4 ● Indexes stored in disc.
  • 4. Lucene ● Less dependency with index size. ● Higher text search flexibility. Synonyms, phonetics searches... ● Ranking. All these features does Lucene better than DataBases when text searches are necessary in our applications.
  • 6. SOLR ● Http access to Lucene ● Caches to improve performane ● Admin web interface ● XML configuration ● Faceted search ● Distributed service ● Solrj client
  • 7. SOLR Basic search configuration Parameter Description q What is searched (Name: Music) rows Max results shown facets Faceted search sort It sorts the results i.e: name asc fl Fields returned by the server fq Caching results ... More and more parameters
  • 8. SOLR Advanced search: ● It's configurated through the xml files. – Tokens – Stemming – Synonyms – Stop words – N-Gamas
  • 9. SOLR The Solr Home directory typically contains the following subdirectories... conf/ This directory is mandatory and must contain your solrconfig.xml and schema.xml. Any other optional configuration files would also be kept here. data/ This directory is the default location where Solr will keep your index, and is used by the replication scripts for dealing with snapshots. You can override this location in the solrconfig.xml and scripts.conf files. Solr will create this directory if it does not already exist. lib/ This directory is optional. If it exists, Solr will load any Jars found in this directory and use them to resolve any "plugins" specified in your solrconfig.xml or schema.xml (ie: Analyzers, Request Handlers, etc...). Alternatively you can use the <lib> syntax in solrconfig.xml to direct Solr to your plugins. See the example solrconfig.xml file for details. bin/ This directory is optional. It is the default location used for keeping the replication scripts .
  • 10. SOLR
  • 11. REST Services Set of architectural principles: ● Use HTTP methods explicitly. ● Stateless. ● Expose directory structure-like URIs. ● Transfer XML, JavaScript Object Notation (JSON), or both.
  • 12. Maven ● Project life cycle control. ● Test, compile, install, deployment... ● Control of dependencies ● Many plugins ● Community