Solr field type reference for DSE Search
CQL data is parsed into DataStax Enterprise Search indexes using a corresponding Solr field type. The index schema for each table must contain the Solr field type definition along with optional advanced processing instructions.
|
See compatitbility matrix for CQL to Solr type mappings. |
Trie field types
- TrieDateField
-
Date field for Lucene TrieRange processing, supports indexing negative date. For example: -28011-12-02T00:00:00.002Z. To insert negative dates for the CQL timestamp, insert an epoch time in milliseconds. The TimestampType does not accept a textual representation of negative dates.
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.TrieDateField', @name='TrieDateField'];Results in the following schema XML:
<fieldType class="org.apache.solr.schema.TrieDateField" name="TrieDateField"/> - TrieDoubleField
-
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class=org.apache.solr.schema.TrieDoubleField', @name='TrieDoubleField'];Results in the following schema XML:
<fieldType class="org.apache.solr.schema.TrieDoubleField" name="TrieDoubleField"/> - TrieFloatField
-
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.TrieFloatField', @name='TrieFloatField'];Results in the following schema XML:
<fieldType class="org.apache.solr.schema.TrieFloatField" name="TrieFloatField"/> - TrieIntField
-
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.TrieIntField', @name='TrieIntField'];Results in the following schema XML:
<fieldType class="org.apache.solr.schema.TrieIntField" name="TrieIntField"/> - TrieLongField
-
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.TrieLongField', @name='TrieLongField'];Results in the following schema XML:
<fieldType class="org.apache.solr.schema.TrieLongField" name="TrieLongField"/>
String field types
- AsciiStrField
-
Converts a CQL ascii into a standard Solr StrField.
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='com.datastax.bdp.search.solr.core.types.AsciiStrField', @name='AsciiStrField'];Results in the following Schema XML:
<fieldType class="com.datastax.bdp.search.solr.core.types.AsciiStrField" name="AsciiStrField"/> - VarIntStrField
-
Define with the DataStax class to convert a CQL varint.
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='com.datastax.bdp.search.solr.core.types.VarIntStrField', @name='VarIntStrField'];Results in the following schema XML:
<fieldType class="com.datastax.bdp.search.solr.core.types.VarIntStrField" name="VarIntStrField"/> - BinaryField
-
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.BinaryField', @name='BinaryField'];Results in the following Schema XML:
<fieldType class="org.apache.solr.schema.BinaryField" name="BinaryField"/> - BoolField
ALTER SEARCH INDEX SCHEMA ON <table_name>
ADD types.fieldType[@class='org.apache.solr.schema.BoolField', @name='BoolField'];
+ Results in the following Schema XML:
+
<fieldType class="org.apache.solr.schema.BoolField" name="BoolField"/>
- SimpleDateField
-
Define with the DataStax class to convert a CQL date field into a compatible Solr date field.
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='com.datastax.bdp.search.solr.core.types.SimpleDateField', @name='SimpleDateField'];Results in the following Schema XML:
<fieldType class="com.datastax.bdp.search.solr.core.types.SimpleDateField" name="SimpleDateField"/> - TextField
-
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.TextField', @name='TextField'];To perform searches containing wildcard characters like % in TextField data, do not use the Lucene StandardAnalyzer class. Instead, define the tokenizer and filters for use in a multiterm search.
- UUIDField
-
UUIDField is a type 1 UUID data type, which includes the time of its generation. Values are sorted by conflict-free timestamps. For example, use the TimeUUID type to identify a column, such as a blog entry, by its timestamp and allow multiple clients to write to the same partition key simultaneously. To find data mapped from a TimeUUID to a UUIDField, search for the entire UUID value, not just its time component.
ALTER SEARCH INDEX SCHEMA ON <table_name> ADD types.fieldType[@class='org.apache.solr.schema.UUIDField', @name='UUIDField'];Results in the following Schema XML:
<fieldType class="org.apache.solr.schema.UUIDField" name="UUIDField"/>