Collections
Your data is organized into collections. When you create an app, Fusion automatically creates a collection with the same name. You can create additional collections in any app.
A primary collection contains the data that your users will search. Every primary collection is associated with a set of auxiliary collections that contain related data, such as signals, aggregations, and more.
Under the hood, a Fusion collection is a distributed index in Solr, defined by a named configuration stored in ZooKeeper, with these properties:
-
Number of shards. Documents are distributed across this number of partitions.
-
Document routing strategy. How documents are assigned to shards.
-
Replication factor. How many copies of each document in the collection.
-
Replica placement strategy. Where to place replicas in the cluster.
If your data is already stored in a Solr instance or cluster, you can manage this collection in Fusion by creating a Fusion collection that imports the existing Solr collection.
Collection names are case-insensitive, but Fusion preserves case when displaying collection names. |
Auxiliary Collections
Every primary collection is associated with a set of auxiliary collections that contain related data, such as signals, aggregations, and more.
Some auxiliary collections are created for every primary collection. Others are created only for the app’s default collection, one per app.
Auxiliary collections are described below:
|
Output from Fusion experiments, Ranking Metrics jobs, and Head/Tail Analysis jobs. |
1 per app |
|
A collection of documents to use for rewriting queries, optimized for high-volume traffic. These documents originate from the |
1 per app |
|
A collection of documents created by the Rules Editor or by certain Fusion jobs, not optimized for production traffic. Documents move from this collection to the
|
1 per app |
|
A search query logs and signals collection. |
1 per collection |
|
A collection for aggregated signals. |
1 per collection |
|
A collection of data to support App Studio’s social features, such as user-generated tags, bookmarks, comments, ratings, and so on. |
1 per app |
Don’t create primary collections with names that end in the suffixes above; these are reserved for Fusion auxiliary collections, which are created and managed by Fusion directly. |
Fusion maintains a set of Solr collections that store Fusion’s own log files and other internal information. These are called System Collections, described below.
Don’t create primary collections named "logs" or beginning with "system_". These names are reserved for Fusion system collections. |
Fusion uses ZooKeeper to register information about all collections, and the Fusion components and services related to a collection. The Fusion components associated with a collection include:
-
Datasources
-
Pipelines
-
Profiles
-
Signals and aggregations
-
Analytics dashboards
System Collections
Fusion automatically creates some collections that are used for internal purposes and shared across all apps:
-
system_autocomplete stores the content that the Fusion UI displays when you use the search bar.
-
system_blobs stores blobs in Solr. This is used to store model files for the NLP components and other binary files used by Fusion components.
-
system_history keeps a record of configuration changes, start and stop times for services and experiments, and more.
-
system_jobs_history keeps a record of Fusion jobs, including start/stop times and status.
Collection Configuration Properties
Collections have three properties that you can configure only when you are creating a collection using the Collections API.
Property | Description | Default behavior |
---|---|---|
signals* |
The |
When you create a collection in the Fusion UI, |
searchLogs |
The |
When you create a collection in the Fusion UI, this property defaults to true. |
*Signals are events with timestamps that can be used to improve search results. For more information about signals in Fusion, see Signals in the Fusion documentation.
In schemaless mode, if a document contains a field not currently in the Solr schema, Solr processes the field value to determine what the field type should be defined as, and then adds a new field to the schema with the field name and field type. This behavior can be convenient during preliminary application development, but it’s rarely appropriate in a production environment.
Using profiles to associate collections with pipelines
Index pipelines and query pipelines aren’t connected to a specific collection by default. Index profiles and query profiles are configurations that create consistent endpoints for indexing and querying, each with a specific pipeline and collection.
-
Index Profiles work with index pipelines for getting content into the system.
-
Query Profiles work with query pipelines for user queries.
Field Editor UI
The Fields Editor UI allows you to create and configure the schema file directly from Fusion. For instructions, see Fields Editor UI.
Additional resources
-
View our training on Fusion Applications and Collections.