• Apache Solr
• Search API
• Facet Api
• Elastic Search
• Sh*t ton of duplicate modules
• Crying babies
• Drupal 7 had two solutions. It was
either one or the other.
• Both solutions had compelling use-
• multisite searching
• views integration
• federated search, ﬂexibility
• And they couldn't get along for a
common solution yet :(
• Common Schema and Connection
• Drupal 8 Search needed some
love and no more "my solution is
• Drupal 8 Search did not need to
choose between both.
Maintainers could work together.
• Drupal 8 Search is going to do
(Awesome out of the
• Drupal Dev Days, MD-
Systems Sprint, Intracto
Sprint, drupal.be Sprint Day
• Combining use-cases that
need to work for both
• Compromises need to be
made, but we are working
towards the same goal.
• 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
• Search API D8 will come a default index and server.
• Search API D8 will come with sensible default ﬁelds.
• Search API D8 will hopefully get enough UX reviews. We have
some very ambitious goals.
• Search API D8 will stay ﬂexible
• 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.
Server Index Views
• Technical implementation
• Uses database/Solr/…
• Search how?
• Generic information
• Datasources (Types)
• Search what?
• Conﬁguration Entity
• Uses plugin “backend class" for operations (Solr for
• Stores Speciﬁc server such as the connection
• Indexing, Deleting, Searching
• Allows reactions to changes
• Connects to Storage (Solr)
• Conﬁguration entity
• Datasources. See the plural form?
• Has a tracker. Pluggable! Priority Queues anyone?
• Pluggable way of tracking what needs to be
• Tracking new/changed/deleted items
• Index plugin providing the item types
• Loading, viewing, metadata for types
• Type-speciﬁc conﬁguration
• Plugins attached to index
• Alter indexed items and search queries
• (Fused with D7 „data alterations“)
• Rendered View Mode
• Search Result
• Supports multiple Datasources out of the box
• External datasource allows for mixing and
Test Driven Development
• Every commit
• PHP 5.4 & 5.5
• 106 PHP Unit checks
• 619 Drupal Tests
• IRC & Mail Notiﬁer
• Weekly meeting - 8PM Europe/Brussels. Link on
• Next Sprint 24th May, 13-15 June @ Intracto
• Client asks: Make the Drupal Planet Searchable
and include my own node content and users also.
• You Say: OK!
• Note: We had to hack aggregator module as the
aggregator items do not support view modes yet.
Please review and RTBC: https://drupal.org/node/