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 DiskShardDocumentIndex - you can use it if your index is too large(The sharded Index is not completely finished)

    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