Search api d8
-
Upload
nickvh -
Category
Technology
-
view
802 -
download
3
description
Transcript of Search api d8
Search in Drupal 8Nick Veenhof
@Nick_vh
What?
What• Apache Solr
• Search API
• Facet Api
• Lucene
• Solr
• Elastic Search
• Sh*t ton of duplicate modules
• Crying babies
• …
Drupal 7• Drupal 7 had two solutions. It was
either one or the other.
• Both solutions had compelling use-cases.
• multisite searching
• views integration
• federated search, flexibility
• And they couldn't get along for a common solution yet :(
• Common Schema and Connection Classes
Why?
Drupal 8• Drupal 8 Search needed some
love and no more "my solution is better"
• Drupal 8 Search did not need to choose between both. Maintainers could work together.
• Drupal 8 Search is going to do exactly that.
• www.acquia.com/blog/battleplan-search-solr-drupal-8
How?
How• Drupal Dev Days, MD-
Systems Sprint, Intracto Sprint, Drupal.be Sprint Day and Drupalfund.us
• Combining use-cases that need to work for both
• Compromises need to be made, but we are working towards the same goal.
http://drupal.be/
Changes?
Changes• Search API D8 will support multiple entity types
(nodes, users, feeds) in 1 index.
• Search API D8 will support this also in views.
• Search API D8 will support multilingual out of the box.
• Search API Solr D8 will support multisite searching. Think of Drupal 6, Drupal 7, Drupal 8 in 1 search page.
• Search API Solr D8 will use an external library for the connection.
Changes• Search API D8 will come a default index and server.
• Search API D8 will come with sensible default fields.
• Search API D8 will hopefully get enough UX reviews. We have some very ambitious goals.
• Search API D8 will stay flexible
• Search API D8 ElasticSearch got its own GSOC Student! Thanks Prateek and Google.
• Facet API? We’re still discussing that, but we’d love your input.
Basic Architecture
Server Index ViewsFacet API
…• Technical implementation • Uses database/Solr/… • Search how?
• Generic information • Datasources (Types) • Fields • Processing • Search what?
Server
• Configuration Entity
• Uses plugin "service class" for operations (Solr for example)
• Stores Specific server such as the connection details
Service Class
• Indexing, Deleting, Searching
• Allows reactions to changes
• Connects to Storage (Solr)
Index
• Configuration entity
• Datasources. See the plural form?
• Has a tracker. Pluggable! Priority Queues anyone?
Tracker
• Pluggable way of tracking what needs to be indexed
• Tracking new/changed/deleted items
Datasource
• Index plugin providing the item types
• Loading, viewing, metadata for types
• Type-specific configuration
Processors
• Plugins attached to index
• Alter indexed items and search queries
• (Fused with D7 „data alterations“)
Views• Rendered View Mode
• Fields
• Search Result
• Supports multiple Datasources out of the box
• External datasource allows for mixing and matching.
Demo
• Client asks: Make the Drupal Planet Searchable and include my own node content and users also.
• You Say: OK!
Demo!