Using DSE Search with the DataStax drivers

The DataStax drivers allow developers to perform DSE Search queries in their applications.

dse.yaml

The location of the dse.yaml file depends on the type of installation:
Package installations /etc/dse/dse.yaml
Tarball installations installation_location/resources/dse/conf/dse.yaml

The DataStax drivers allow developers to perform DSE Search queries in their applications.

DataStax Enterprise Search enables applications to query data. Queries may use these features:
  • general
  • indexing
  • full-text
  • faceted (categorization)
  • hit prioritization
  • spatial and temporl filtering
  • social media matchups
The DataStax drivers allow applications to access these features using solr_query syntax in the WHERE clause or normal CQL semantics.
Before using DSE Search capabilities in an application, enable the target DSE nodes for DSE Search. Create search indexes for the columns that will be accessed in the queries.
Note: It is a best practice to plan ahead for columns and types that are indexed because adding search indexes has a resource and performance cost.

Load balancing

DSE Search queries must be directed to a datacenter with DSE Search enabled by using the load balancing policy in the driver. Use a datacenter-aware load balancing policy with the DSE Search local datacenter. For more, see Working with multi-workload clusters.

Paging

DSE Search paging is integrated in the DataStax driver execution implementation. The drivers use cursors for deep pagination. Enable paging through the cql_solr_query_paging option in dse.yaml on the server, or dynamically in the application in the solr_query parameters.

Geospatial data types

Location-based search is a key feature for a personalized user experience. DataStax Enterprise enables this through special geospatial data types:
  • Point
  • LineString
  • Polygon
See Geospatial queries for Point and LineString. There are basic and advanced examples of geospatial data type queries.

Date ranges

Filtering by date and time is a common use case in search queries. DSE Search delivers powerful filtering on single point-in-time or open bound date ranges through the CQL DateRangeType.