Using copy fields
DSE Search supports the stored=false copyField directive in the schema.xml file.
DSE Search supports the copyField
directive with
stored=false
in the schema.xml file.
Ingested data is copied by the copy field mechanism to the destination field for
search, but is not stored in Cassandra. When you add a new
copyField
directive to the schema.xml,
pre-existing and newly ingested data is re-indexed when copied as a result of the
new directive.
stored=true copyField
directive is
removed. - Change the stored attribute value of a copyField directive from true to false in the schema.xml file.
- Post the modified schema.xml.
- Reload the Solr core, specifying an in-place re-index.
Old data and Cassandra columns remain intact, but stored copy fields are not applied to new data.
Using a copy field and multivalued field
When you use copy fields to copy multiple values into a field, CQL comes in handy because you do not need to format the data in JSON, for example, when you insert it. Using the Solr HTTP API update command, the data must be formatted.
Use the CQL BATCH command to insert column values in a single CQL statement to prevent overwriting. This process is consistent with Solr HTTP APIs, where all copied fields need to be present in the inserted document. You need to use BATCH to insert the column values whether or not the values are stored in Cassandra.
Using docValues and copy fields for faceting
Using docValues can improve performance of faceting, grouping, filtering, sorting, and other operations described on the Solr Wiki.
- The maxChars attribute is not supported.
- Copying from/to the same dynamic field is not supported.