awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
timescale avatar

timescale/pg_textsearch

0
View on GitHub↗
3,118 stele·85 fork-uri·C·postgresql·8 vizualizări

Pg Textsearch

pg_textsearch is a full-text search integration for PostgreSQL that provides large-scale text indexing and BM25 relevance ranking. It implements a scalable indexing architecture that uses a memtable system to spill data to disk segments, allowing for the processing of massive datasets.

The project distinguishes itself through support for multilingual search via language-specific partial indexes and the ability to index complex expressions, such as JSONB fields or concatenated columns. It ensures high availability by utilizing PostgreSQL-native streaming replication and write-ahead logs to synchronize search data across primary and standby nodes.

The system covers a broad range of search capabilities, including document chunking for oversized text, parallel index construction, and top-k query optimization. It also manages partitioned data indexing by maintaining local statistics for accurate scoring and utilizes bitset-based tracking to prune deleted documents without requiring full index rebuilds.

The system includes internal inspection tools to dump index structures and summarize statistics for performance analysis and debugging.

Features

  • Full Text Search - Provides high-performance full-text search integration for PostgreSQL with BM25 relevance ranking.
  • Segment Spilling - Uses a memtable system to buffer index updates and spill them to immutable disk segments to handle massive datasets.
  • BM25 Full-Text Indices - Implements specialized indices using the BM25 ranking function for efficient keyword-based retrieval from text columns.
  • Memtable-Based Segment Spilling - Builds scalable indices using a memtable architecture that spills to disk segments to handle massive datasets.
  • Log-Structured Merge-Trees - Implements a log-structured merge architecture to combine index segments, reducing scan overhead and improving query performance.
  • Large Scale Indexing - Builds and maintains search indexes for massive datasets using parallel workers and memory-to-disk spilling.
  • Multilingual Search Engines - Provides built-in support for multilingual search through language-specific tokenization, stemming, and stop-word removal.
  • BM25+ Scoring - Calculates BM25 scores using term frequency and inverse document frequency to return the most relevant documents.
  • Document Chunking Strategies - Splits documents exceeding token limits into smaller pieces to ensure consistent tokenization and ranking.
  • Memory-Efficient Chunking - Splits oversized text bodies into smaller pieces during tokenization to maintain memory efficiency and consistency.
  • WAL-Based Standby Replication - Utilizes the PostgreSQL write-ahead log to synchronize search index data across primary and standby nodes.
  • Partition-Local Statistics - Maintains term frequencies and document counts per partition to ensure accurate BM25 scoring across distributed data.
  • Database Performance Tuning - Optimizes query speeds through segment consolidation, memory management, and skipping irrelevant data blocks.
  • Expression Indexes - Supports indexing computed results from stable functions to enable search on JSONB fields and concatenated columns.
  • Asynchronous Segment Merging - Merges multiple internal index segments into a single segment to reduce scan overhead and increase query speed.
  • Index Memory Management - Controls shared memory usage for in-memory caches and manages thresholds for data spilling to disk.
  • Language-Specific Partial Indexing - Creates smaller partial indexes for subsets of data to apply unique language configurations for multilingual tables.
  • Parallel Construction - Accelerates index creation for large tables using parallel worker processes based on available system memory.
  • Top-k Retrieval Optimization - Improves retrieval speed by skipping irrelevant data blocks when queries include order-by clauses and limits.
  • Cascading Replication - Synchronizes search data across nodes to support cascading replication and point-in-time recovery.
  • Search Index Recovery - Automatically restores search index integrity and availability after crashes or unexpected shutdowns.
  • Index Memory Management - Manages search indexes with configurable memory budgets and per-index limits to optimize system performance.
  • Search Result Filtering - Combines search scoring with pre-filtering via separate indexes or post-filtering for non-indexed columns.
  • Local Indexes - Maintains partition-local statistics for document counts and term frequencies to ensure accurate scoring.
  • Build Acceleration - Accelerates the creation of indexes for large tables and partitions using parallel worker processes.
  • Bitset-Based Deletion Tracking - Uses per-segment bitsets to prune deleted documents during vacuuming without requiring expensive full index rebuilds.
  • Database High Availability - Ensures data availability across primary and standby nodes through index replication and automatic recovery.

Istoric stele

Graficul istoricului de stele pentru timescale/pg_textsearchGraficul istoricului de stele pentru timescale/pg_textsearch

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face timescale/pg_textsearch?

pg_textsearch is a full-text search integration for PostgreSQL that provides large-scale text indexing and BM25 relevance ranking. It implements a scalable indexing architecture that uses a memtable system to spill data to disk segments, allowing for the processing of massive datasets.

Care sunt principalele funcționalități ale timescale/pg_textsearch?

Principalele funcționalități ale timescale/pg_textsearch sunt: Full Text Search, Segment Spilling, BM25 Full-Text Indices, Memtable-Based Segment Spilling, Log-Structured Merge-Trees, Large Scale Indexing, Multilingual Search Engines, BM25+ Scoring.

Care sunt câteva alternative open-source pentru timescale/pg_textsearch?

Alternativele open-source pentru timescale/pg_textsearch includ: lucaong/minisearch. pgsty/pigsty — Pigsty is a full-stack orchestration suite for deploying, monitoring, and managing high-availability PostgreSQL… apache/lucene-solr — This project is a full text search engine and enterprise search infrastructure designed for indexing and retrieving… ravendb/ravendb — RavenDB is a multi-model NoSQL document database designed for high-performance, ACID-compliant data storage. It… lancedb/lancedb — LanceDB is a vector database and columnar data store designed to function as a versioned dataset manager and vector… paradedb/paradedb — ParadeDB is a database extension that integrates full-text search, vector database capabilities, and real-time…

Alternative open-source pentru Pg Textsearch

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Pg Textsearch.
  • lucaong/minisearchAvatar lucaong

    lucaong/minisearch

    5,804Vezi pe GitHub↗
    TypeScriptautocompleteautosuggestionedge-computing
    Vezi pe GitHub↗5,804
  • pgsty/pigstyAvatar pgsty

    pgsty/pigsty

    4,703Vezi pe GitHub↗

    Pigsty is a full-stack orchestration suite for deploying, monitoring, and managing high-availability PostgreSQL clusters and their supporting infrastructure. It functions as a cluster management platform and high-availability suite that automates failover, manages virtual IPs, and ensures data consistency through distributed consensus. The project distinguishes itself by providing a comprehensive database infrastructure-as-code framework and a dedicated observability stack. It incorporates a backup and recovery manager supporting point-in-time recovery via S3-compatible object storage, alongs

    Shellgraphicsinfrapostgres
    Vezi pe GitHub↗4,703
  • apache/lucene-solrAvatar apache

    apache/lucene-solr

    4,357Vezi pe GitHub↗

    This project is a full text search engine and enterprise search infrastructure designed for indexing and retrieving large sets of documents. It provides a comprehensive framework for information discovery using ranked results and linguistic analysis. The system integrates high-dimensional vector similarity search for semantic retrieval alongside traditional full-text capabilities. It distinguishes itself through support for geospatial data retrieval, multilingual text processing, and a search suggestion workflow that includes typo-tolerant query completion and spellchecking. The platform cov

    backendinformation-retrievaljava
    Vezi pe GitHub↗4,357
  • lancedb/lancedbAvatar lancedb

    lancedb/lancedb

    9,031Vezi pe GitHub↗

    LanceDB is a vector database and columnar data store designed to function as a versioned dataset manager and vector search engine. It serves as a high-performance backend for indexing and retrieving high-dimensional embeddings, providing the foundation for machine learning data pipelines. The system distinguishes itself through a combination of cloud-native object storage and immutable version tracking, allowing for data time-travel and reproducible AI experiments. It integrates hybrid search capabilities, merging dense vector similarity with BM25 full-text search and SQL-like scalar filters

    HTMLapproximate-nearest-neighbor-searchimage-searchnearest-neighbor-search
    Vezi pe GitHub↗9,031
  • Vezi toate cele 30 alternative pentru Pg Textsearch→