BsaSearch .Net fulltext search core

Bsa.Search.Core is a .Net Core library providing indexing and fast full text search. Technical characteristics of approximately 100 thousand simple queries per minute, on the index of 40 million documents, or about 8 thousand complex queries

The Search Engine and Highlighting Objects Service are installed at several companies on their production servers.

The Search Engine is able to:

  • Index about 40,000,000 messages per day with continuous searching by the index.
  • Process 8,000 analytical queries every minute
  • Be easily scaled
  • The Highlighting Objects Service:

  • Is optimized for operating speed and RAM consumption.
  • Is able to work with about 5,000 object flows with 2,000,000 messages per day.
  • Consumes from 2 to 4 GB RAM.
  • Loads about 30-80 percent CPU.
  • -

    Quick start

    Key words

    "~" distance both way, for example (one ~3 two)

    "-" not

    "|" - or

    "&" or " " - and

    "/" - distance right, for example (one /3 two)

    "" - phrase with all word-forms

    '' - phrase for a particular word-forms

    "*" - wild card

    "()" - group query

    ":" - which field to search in, for example content:(one & two)

    Word forms

    if you need to add your own word forms, then add a file with extension '*.terms' Separate each word form with a newline sign


    dry dried dried

    draw drew drawn

    Quick start MemoryDocumentIndex

    Quick start DiskDocumentIndex

    Quick start FileDocumentIndex

    Quick start ShardDocumentIndex - you can use it if your index is too large

    Quick start HighlightObjectService. The service can highlight objects in the text

    Quick start TextCompareService. Compares two strings

  • If the distance is one the strings are identical
  • the code is not optimized for CPU performance