Curiosity for Developers
  • Overview
  • Getting Started
    • Introduction
    • System Overview
      • Workspace
      • Connectors
      • Front End
    • Requirements
    • Installation
      • Deploying on Windows
        • Download Curiosity Workspace for Windows
      • Deploying on Docker
        • Deploying using Docker Desktop App
        • Docker Hub
      • Deploying on Kubernetes
      • Deploying on OpenShift
      • Configuration
    • Configure your Workspace
    • Connecting to a Workspace
      • Download App
    • Built-in Templates
  • Security
    • Introduction
    • Hosting
    • Encryption
    • Users and Access
      • User Invitations
      • Single Sign-On (SSO)
        • Google Sign-In
        • Microsoft / Azure AD
        • Okta
        • Auth0
    • Permissions Management
    • Auditing
    • Teams management
    • Configuring Backup
      • Restoring a backup
    • Activate a workspace license
  • Data Sources
    • Introduction
    • User Apps
    • Workspace Integrations
    • API Integrations
      • Introduction
      • Data Modeling
      • Writing a Connector
      • Access Control
      • API Tokens
      • API Overview
      • Tips
    • Supported File Types
    • Curiosity CLI
      • Installation
      • Authentication
      • Commands
  • Search
    • Introduction
    • Languages
    • Synonyms
    • Ranking
    • Filters
    • Search Permissions and Access Control
  • Endpoints
    • Introduction
    • Creating an endpoint
    • Calling an endpoint
    • Endpoint Tokens
    • Endpoints API
  • Interfaces
    • Introduction
    • Local Development
    • Deploying a new interface
    • Routing
    • Node Renderers
    • Sidebar
    • Views
  • Artificial Intelligence
    • Introduction
    • Embeddings Search
    • AI Assistant
      • Enabling AI Assistant
    • Large Language Models
      • LLMs Models Configuration
      • Self-Hosted Models
    • Image Search
    • Audio and Video Search
  • Sample Workspaces
    • Introduction
    • HackerNews
    • Aviation Incidents
    • Covid Papers
    • NASA Public Library
    • Suggest a Recipe
  • Basic Concepts
    • Graph database
    • Search Engine
  • Troubleshooting
    • FAQs
      • How long does it take to set up?
      • How does Curiosity keep my data safe?
      • Can we get Curiosity on-premises?
      • Can I connect custom data?
      • How does Workspace pricing work?
      • Which LLM does Curiosity use?
      • What's special about Curiosity?
      • How are access permissions handled?
      • What enterprise tools can I connect?
      • How to access a workspace?
      • How do I hard refresh my browser?
      • How do I report bugs?
      • How do I solve connectivity issues?
      • How do I contact support?
  • Policies
    • Terms of Service
    • Privacy Policy
Powered by GitBook
On this page
  • Search
  • Text Search
  • Facet Search
  1. Basic Concepts

Search Engine

PreviousGraph databaseNextFAQs

Last updated 10 months ago

Search

A good search experience starts way before the user types the first letter in the search box. The system first needs to ingest, extract, parse and index all data.

https://curiosity.slite.com/api/files/q1EG2_MTN/image.png

Text Search

In order for your data to be searchable in a performant way, it needs to be first indexed in a way that a computer can quickly find which document contains which words or sequence of words. Full Text Indexes are used for this task. Without them, search times would scale linearly with the size of your data. Indexed search happens in two phases:

  • At index-time the system creates the index; this is a one-off operation (although repeated if and when your data changes)

  • At search-time, when the user sends a request to the system, the index is then queried to quickly identify and return all the data that contain the query term(s).

Facet Search

In order to enhance your search experience, facets (or filters) can be used to narrow down the results to what the user is actually searching for. Similarly to the Text Search, Property Indexes are used for this task. Property Indexes can store information such as:

  • Flag-like text (e.g. a field Status with possible values: Open / Closed / Duplicate)

  • Time data (e.g. 01/01/2020)

  • Numeric values (eg.. 123.45)

  • Locations (coming soon...)

Curiosity also supports a special type of Related Facet that is derived from the connections of the results on the knowledge graph.