Reliable Indexing of Large Amounts of Data
August 24, 2026
Does efficiency matter when it comes to enterprise search, retrieval-augmented generation, and agentic retrieval? In a previous post, we discussed AI strategies and AI knowledge lakes. This post focuses on a practical foundation behind those strategies: how organizations can index knowledge efficiently and reliably across the systems where their content already lives.

Enterprise Search and RAG Connectors
Search solutions for agentic retrieval and AI knowledge lakes depend on connectors, sometimes also called search adapters, that reliably index knowledge sources. These sources may include Microsoft SharePoint, Teams, SAP, Salesforce, OpenText, Slack, wikis, intranets, and many other enterprise systems. Connectors use source-system APIs to access content, transform it into a common structure, and keep it synchronized with an enterprise search engine. This synchronization may cover tens of millions of wiki pages, SharePoint documents, Dynamics records, or a smaller set of intranet pages. So, what does it take to implement a connector that works reliably at enterprise scale?
Functional Requirements
The following are common functional requirements for search and RAG connectors:
Indexing of heterogeneous data into a common indexing schema
For instance, Office documents join the same search index as web pages, wiki pages, issues, customer records, and many more content types.
Making sure that the data looks “right”
Document versions and updates
Detection and indexing of new document versions
Detection and indexing of changed document permissions
Detection and indexing of changed (relevant) document metadata
Removal of deleted document from the search index
Permissions and Security Trimming
Indexing of access control lists for each document
Indexing of the user-group relationships of a source
Providing a user-id mapping for instance from Active Directory Ids to Entra Id Ids
Detection of Organizational Changes
Detection of group membership changes
Detection of inactive users
Non-Functional Requirements
The following are common non-functional requirements for search and RAG connectors:
Implementation of a connector-side rate-limiting
Highly efficient API usage
Robust handling of timeouts, API retry-after headers, etc. In particular implementation of global rate limiting
Multithreading
Resume checkpoints
Error and issue handling
Incremental scans based on provided change logs and similar
Why Does All of This Matter?
From a functional perspective, a script that indexes a small set of documents into search can be built quickly. The challenge changes when the same approach has to scale from thousands of documents to millions. At that point, crawl rate, API efficiency, retry behavior, checkpointing, and synchronization logic determine whether indexing finishes in hours, days, or weeks. The following table outlines overall indexing times by crawl rate and number of documents indexed.
Number of documents to be indexed | Average Crawl Rate at | Average Crawl Rate at |
10,000 | ~33 minutes | ~2.5 minutes |
100,000 | ~5 hours | ~30 minutes |
1,000,000 | ~2.5 days | ~4 hours |
10,000,000 | ~23 days | ~1,5 days |
The table shows that for smaller indexing workloads, a straightforward crawl approach may still complete within an acceptable timeframe. As the number of documents grows, however, crawl efficiency and operational resilience become decisive. The connector must not only process content faster, but also handle temporary issues such as throttling, timeouts, retry-after headers, maintenance windows, and interrupted scans without losing synchronization state.
Organizations that need to index knowledge reliably should evaluate connectors against these functional and non-functional requirements. The RheinInsights Retrieval Suite is designed around these requirements and provides connectors for enterprise search, RAG, and agentic retrieval scenarios.