awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
go-ego avatar

go-ego/riotArchived

0
View on GitHub↗
6,059 estrellas·471 forks·Go·Apache-2.0·12 vistas

Riot

Riot es un motor de búsqueda distribuido y servidor de indexación basado en Go diseñado para indexación y recuperación de texto completo. Funciona como un sistema de recuperación que ordena documentos por relevancia utilizando algoritmos de ranking BM25, frecuencia de términos y frecuencia inversa de documento (TF-IDF).

El motor proporciona soporte especializado para el idioma chino, con segmentación de texto concurrente y mapeo fonético Pinyin para hacer coincidir la entrada romanizada con los caracteres. Utiliza una arquitectura distribuida que emplea fragmentación (sharding) de índice basada en hash para equilibrar la carga de datos y el rendimiento a través de múltiples nodos de servidor.

El sistema cubre una amplia gama de capacidades de búsqueda, incluyendo ejecución de consultas con lógica booleana, filtrado de proximidad y gestión del ciclo de vida del índice en tiempo real. Mantiene un índice de búsqueda rápido en memoria mientras utiliza almacenamiento respaldado por disco para la persistencia y durabilidad de los datos. Se incluyen herramientas de monitoreo para rastrear la utilización de memoria, disco y CPU en todo el entorno distribuido.

Features

  • Full-Text Search Indexes - Provides full-text indexing and retrieval of large textual datasets using keyword-based searches.
  • Distributed Search Engines - Functions as a scalable, high-performance distributed search engine platform for indexing and retrieving massive volumes of text data.
  • Pinyin Character Mappings - Provides phonetic Pinyin mapping to allow users to match romanized input with Chinese characters.
  • BM25 Search Indices - Functions as a retrieval system that sorts documents by relevance using the BM25 algorithm.
  • Search Query Composition - Implements a query language that combines search terms with AND, OR, and AND_NOT operators to refine results.
  • Chinese Search Engines - Provides a specialized search engine with tokenization and Pinyin support for Chinese text retrieval.
  • Cross-Shard Result Aggregation - Implements cross-shard result aggregation to combine and re-rank search results from multiple distributed nodes.
  • Distributed Query Engines - Implements a distributed query engine that aggregates search results from multiple independent storage nodes into a unified output.
  • Full Text Search - Provides keyword-based search capabilities with configurable ranking and offset options for document retrieval.
  • Information Retrieval - Implements information retrieval ranking using BM25 and proximity scoring to surface relevant documents.
  • Search & Indexing Engines - Builds distributed searchable indexes of large data volumes across multiple nodes with real-time updates.
  • Full Text Indexing - Implements full-text indexing by adding content to a searchable index and assigning unique document identifiers.
  • Index Sharding - Distributes searchable indexes across multiple servers using hash-based sharding to balance load and reduce latency.
  • Relevance Ranking Engines - Implements a relevance ranking engine using BM25, term frequency, and inverse document frequency algorithms.
  • Complex Search Querying - Executes complex queries utilizing logical operators, token proximity, and phonetic conversions for advanced retrieval.
  • Search Result Aggregators - Provides a framework for collecting and normalizing search results from sharded servers into a single ranked result set.
  • Text Segmentation - Splits textual content into discrete keywords using various participle methods to optimize indexing.
  • Chinese Language Segmenters - Includes concurrent Chinese text segmentation to tokenize Chinese strings for efficient indexing and retrieval.
  • Hash Slot Sharding - Uses hash-based sharding to distribute the search index across multiple server nodes for load balancing.
  • Distributed Index Sharding - Partitions large search indexes across multiple servers to manage datasets exceeding single-node memory.
  • Distributed Text Indexing - Shards large textual datasets across servers to enable low-latency queries and high-throughput retrieval.
  • BM25+ Scoring - Implements the BM25 algorithm for calculating document relevance based on term frequency and inverse document frequency.
  • Real-time Indexing - Supports real-time addition and removal of documents while the engine is running to maintain continuous availability.
  • Boolean Logic Engines - Provides a logic engine for executing boolean queries and evaluating token proximity within the index.
  • Data Persistence Management - Manages the lifecycle of writing in-memory index updates to disk to prevent data loss.
  • Persistence & Durability - Ensures index durability across system restarts by writing data to persistent storage backends.
  • In-Memory Databases with Persistence - Combines high-performance in-memory indexing with persistent disk storage to ensure data durability.
  • Phonetic Pinyin Mappings - Implements phonetic Pinyin mapping to allow romanized input to match Chinese characters during retrieval.
  • Index Lifecycle Management - Manages the index lifecycle by allowing real-time additions and removals of documents without requiring full rebuilds.
  • Custom Scoring Multipliers - Allows the use of custom scoring logic and data fields to influence the relevance ranking of documents.
  • Index State Commitments - Ensures data durability by committing pending index changes to persistent storage.
  • Search Ranking Algorithms - Uses heuristic-based systems and custom rating fields to refine and prioritize the order of search results.
  • Proximity Filtering - Filters results by measuring the distance between keywords to ensure terms appear within a specified proximity.
  • Cloud-Based Indexing Services - Provides a backend indexing server that processes textual data into searchable indexes with real-time updates.
  • Search and Recommendation - Full-text search engine.
  • Search and Recommendation - Full-text search engine.
  • Search Engines - Distributed, efficient search engine.

Historial de estrellas

Gráfico del historial de estrellas de go-ego/riotGráfico del historial de estrellas de go-ego/riot

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Preguntas frecuentes

¿Qué hace go-ego/riot?

Riot es un motor de búsqueda distribuido y servidor de indexación basado en Go diseñado para indexación y recuperación de texto completo. Funciona como un sistema de recuperación que ordena documentos por relevancia utilizando algoritmos de ranking BM25, frecuencia de términos y frecuencia inversa de documento (TF-IDF).

¿Cuáles son las características principales de go-ego/riot?

Las características principales de go-ego/riot son: Full-Text Search Indexes, Distributed Search Engines, Pinyin Character Mappings, BM25 Search Indices, Search Query Composition, Chinese Search Engines, Cross-Shard Result Aggregation, Distributed Query Engines.

¿Qué alternativas de código abierto existen para go-ego/riot?

Las alternativas de código abierto para go-ego/riot incluyen: huichen/wukong — Wukong is a distributed full-text search engine designed for indexing and retrieving text documents. It functions as a… olivere/elastic — This project is a Go client library and API wrapper for interacting with Elasticsearch clusters. It serves as a… elastic/go-elasticsearch — The official Go client for Elasticsearch. apache/incubator-kvrocks — Kvrocks is a disk-based NoSQL database and distributed key-value store that leverages the RocksDB storage engine to… lucaong/minisearch. doocs/advanced-java — This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency…

Alternativas open-source a Riot

Proyectos open-source similares, clasificados según cuántas características comparten con Riot.
  • huichen/wukongAvatar de huichen

    huichen/wukong

    4,481Ver en GitHub↗

    Wukong is a distributed full-text search engine designed for indexing and retrieving text documents. It functions as a customizable search backend that employs a BM25 relevance ranker to order search results based on term frequency and inverse document frequency. The system includes a specialized Chinese text segmenter to break continuous character strings into meaningful words for accurate indexing and retrieval. To handle large datasets and high request volumes, it utilizes a distributed search index that employs hash-based sharding to split documents across multiple nodes. The engine prov

    Go
    Ver en GitHub↗4,481
  • olivere/elasticAvatar de olivere

    olivere/elastic

    7,450Ver en GitHub↗

    This project is a Go client library and API wrapper for interacting with Elasticsearch clusters. It serves as a programmatic interface for managing documents, indices, and cluster health, allowing Go applications to perform search and indexing operations via the REST API. The library functions as a distributed search orchestrator, providing specialized tools for high-throughput data ingestion and cluster administration. It features a buffered bulk processor with exponential backoff retries for optimizing write performance and supports automated index lifecycle transitions and historical data

    Go
    Ver en GitHub↗7,450
  • elastic/go-elasticsearchAvatar de elastic

    elastic/go-elasticsearch

    6,051Ver en GitHub↗

    The official Go client for Elasticsearch

    Go
    Ver en GitHub↗6,051
  • apache/incubator-kvrocksAvatar de apache

    apache/incubator-kvrocks

    4,339Ver en GitHub↗

    Kvrocks is a disk-based NoSQL database and distributed key-value store that leverages the RocksDB storage engine to persist large datasets to physical disk. It is designed to be a Redis-compatible database, utilizing the standard Redis communication protocol to ensure interoperability with existing client libraries and tools. The project distinguishes itself by combining a disk-persistent storage model with advanced retrieval capabilities, including vector search for k-nearest neighbor queries, full-text search indexing, and geospatial query execution. It supports distributed clustering with

    C++
    Ver en GitHub↗4,339
  • Ver las 30 alternativas a Riot→