Introduction
“Where was that file again?”
This is a question that many business professionals face on a daily basis. File servers, cloud storage, chat tools, wikis, ticket management systems – information keeps growing every day and is scattered across numerous locations. You know the information you need exists somewhere, but it takes minutes, sometimes tens of minutes, to find it. This “time spent searching for information” is one of the major challenges that modern enterprises face.
In this series, “Knowledge Utilization Strategy with Fess,” we will provide a practical guide on how to solve this challenge using Fess, an open-source full-text search server. In this first installment, we will clarify why enterprises need a search platform and introduce what kind of software Fess is.
Target Audience
Those who face challenges with information utilization within their organization
Those considering the adoption of enterprise search
Those learning about Fess for the first time
Challenges in the Age of Information Overload
The Information Explosion and the “Can’t Find It” Problem
The volume of digital data held by enterprises continues to grow year after year. Reports, meeting minutes, design documents, emails, chat logs, source code, customer data – all of this information constitutes an organization’s knowledge. However, the more information there is, the harder it becomes to find what you need.
Numerous studies have reported that knowledge workers spend 20-30% of their working hours searching for information. In an organization of 50 people, this means the equivalent of 10 to 15 person-hours per day is consumed by the act of searching.
Information Silos: A Structural Problem
The reason information cannot be found is not simply because there is too much of it. In many enterprises, “information silos” form where data is fragmented across different departments and tools.
The sales team uses Salesforce and shared folders
The development team uses Confluence and Git repositories
General affairs uses the internal portal and file servers
Each tool has its own search functionality, but there is no way to search across tools. As a result, materials created by a neighboring team cannot be found, and similar documents end up being recreated from scratch – a situation that occurs routinely.
Solving the Problem with a Search Platform
The solution to these challenges is “enterprise search” – an organization-wide search platform. Enterprise search provides a mechanism for searching across various data sources within an organization.
By adopting enterprise search, the following benefits can be expected:
Reduced information search time: Search scattered information from a single point of access
Promotion of knowledge reuse: Past deliverables and insights become easier to discover
Faster decision-making: Access the information you need quickly to make informed decisions
Reduction of knowledge silos: Minimize situations where “you have to ask that specific person”
What Is Fess
Fess is an open-source full-text search server. It is provided under the Apache License, allowing free use including commercial applications. Built on Java, it uses OpenSearch as its search engine.
Overview of Fess
Fess is not just a search engine – it is a complete “search system” equipped with all the necessary features.
Crawler
It automatically collects documents from various data sources including websites, file servers, cloud storage, and SaaS applications. It supports over 100 file formats including HTML, PDF, Word, Excel, and PowerPoint.
Search Engine
Using OpenSearch as its backend, it provides high-speed full-text search. It supports more than 20 languages including Japanese and can scale to handle large numbers of documents.
Search UI
A browser-based search interface is included out of the box. It provides a user-friendly search experience with features such as highlighted search results, faceted navigation (filtering), and suggestions (autocomplete).
Administration Console
Crawl settings, user management, dictionary management, and other operational configurations can be performed through the browser. Even without command-line knowledge, the search system can be managed through the administration console.
API
A JSON-based search API is provided, enabling the integration of search functionality into existing systems.
Why Choose Fess
There are multiple options for enterprise search. You could use OpenSearch or Elasticsearch directly, or opt for a commercial search solution. Here is why Fess stands out among them.
Compared to Building from Scratch
OpenSearch and Elasticsearch are powerful search engines, but a search engine alone does not make a complete search system. You would need to build many components yourself: a crawler implementation, document parsing, search UI development, and permission management mechanisms. Fess provides all of these in an all-in-one package, significantly reducing the development effort required to build a search system.
Compared to Commercial Products
Commercial enterprise search products are feature-rich, but licensing costs tend to be expensive. Since Fess is open source, there are no software costs. Additionally, because the source code is publicly available, there is no risk of vendor lock-in. If customization is needed, you are free to extend it as you wish.
Extensibility Through Plugins
Fess adopts a plugin architecture. Plugins are available for various data sources including Slack, SharePoint, Box, Dropbox, Confluence, and Jira. Furthermore, extensions for the AI era are possible, such as LLM plugins that integrate with large language models.
Search Scenarios Achievable with Fess
What kind of search environment can you build by leveraging Fess? Here is an overview of the scenarios covered in this series.
Cross-Source Search of Internal Documents
You can enable searching across multiple data sources – file servers, cloud storage, websites, and more – from a single location. Even if different departments use different tools, users can reach the information they need through a single search box.
Department-Level Access Control
Documents displayed in search results can be controlled according to users’ affiliations and permissions. Confidential materials from the HR department will never appear in the sales team’s search results. It is also possible to integrate with existing directory services (Active Directory, LDAP) to automatically reflect permission information.
Adding Search to Existing Systems
Fess search functionality can be embedded into internal portals and business systems. Multiple approaches are available, including Fess Site Search (FSS) which can be easily integrated with JavaScript, and custom integrations using the API.
AI-Powered Search Experience
Fess can implement RAG (Retrieval-Augmented Generation), which has been attracting significant attention in recent years. When a user asks a question in natural language, Fess searches internal documents for relevant information, and an LLM generates an answer. As an “internal AI assistant,” it enables further evolution of knowledge utilization.
Series Outline
This series consists of 23 parts in total. It is designed so that readers from beginners to advanced users can deepen their understanding step by step.
Fundamentals (Parts 1-5)
The first five parts, including this article, cover the introduction to Fess and basic scenarios. You will learn about quick start with Docker Compose, adding search functionality to websites, building multi-source search, and permission-based search control.
Practical Solutions (Parts 6-12)
This section covers practical content based on real business scenarios, including building a knowledge hub for development teams, cross-searching cloud storage, tuning search quality, multilingual support, operations management, and API integration.
Architecture and Scaling (Parts 13-17)
This section covers advanced architectural topics such as multi-tenant design, scaling to large environments, security architecture, DevOps-style operational automation, and plugin development.
AI and Next-Generation Search (Parts 18-22)
This section covers the latest search technologies, from the basics of semantic search to building AI assistants with RAG, utilizing Fess as an MCP server, multimodal search, and search analytics.
Summary (Part 23)
The final installment consolidates the knowledge gained throughout the series and presents a reference architecture for a knowledge platform centered on Fess.
Conclusion
This article introduced the need for an enterprise search platform and the role Fess plays.
Information overload and information silos are challenges common to many enterprises
Enterprise search enables cross-source searching of scattered information
Fess is open source and provides a complete set of features needed for a search system
It supports extensibility through plugins and AI integration
In the next installment, we will introduce how to launch Fess using Docker Compose and try out the search experience in the shortest time possible.