Fast-DB Batch Search Client - v3.1.0
    Preparing search index...

    Class BatchSearchClient

    Client for Fast-DB Batch Search API

    Index

    Constructors

    Methods

    • Execute a batch search query

      Parameters

      • table: string

        The table/collection to search in

      • nodeField: string

        The field containing node information

      • nodeQuery: string

        The node to search for

      • targetField: string

        The field containing target information

      • targetQueries: string[]

        Array of target queries to search for

      • projection: string[] = ...

        Fields to return in results

      • fuzzy: boolean = true

        Whether to use fuzzy search (default: true)

      • resultsPerQuery: number = 10

        Maximum results per target query (default: 10)

      Returns Promise<
          {
              grouped: GroupedResults;
              metrics?: Record<string, unknown>;
              results: SearchResult[];
              totalResults: number;
          },
      >

    • Execute a batch search query with joins across multiple tables

      Parameters

      Returns Promise<
          {
              grouped: GroupedResults;
              metrics?: Record<string, unknown>;
              results: SearchResult[];
              totalResults: number;
          },
      >

    • Get search statistics from grouped results

      Parameters

      Returns {
          averageGroupSize: number;
          emptyGroups: number;
          groupSizes: { [hash: string]: number };
          totalGroups: number;
      }

    • Convenience method for searching albums by artist using joins

      Parameters

      • artist: string
      • albumTitles: string[]
      • maxPerAlbum: number = 3

      Returns Promise<
          {
              grouped: GroupedResults;
              metrics?: Record<string, unknown>;
              results: SearchResult[];
              totalResults: number;
          },
      >

    • Convenience method for searching book series by author

      Parameters

      • author: string
      • seriesTitles: string[]
      • maxPerTitle: number = 3

      Returns Promise<
          {
              grouped: GroupedResults;
              metrics?: Record<string, unknown>;
              results: SearchResult[];
              totalResults: number;
          },
      >

      Use searchRelatedItems instead

    • Generic method for searching related items by a common node

      Parameters

      • table: string
      • nodeField: string
      • nodeValue: string
      • targetField: string
      • targetValues: string[]
      • Optionalprojection: string[]
      • maxPerTarget: number = 3

      Returns Promise<
          {
              grouped: GroupedResults;
              metrics?: Record<string, unknown>;
              results: SearchResult[];
              totalResults: number;
          },
      >