diff --git a/public/management/global-search/global-search-matched-column.png b/public/management/global-search/global-search-matched-column.png new file mode 100644 index 000000000..9df94404d Binary files /dev/null and b/public/management/global-search/global-search-matched-column.png differ diff --git a/public/management/global-search/global-search-regex.png b/public/management/global-search/global-search-regex.png new file mode 100644 index 000000000..2aef12705 Binary files /dev/null and b/public/management/global-search/global-search-regex.png differ diff --git a/src/content/docs/management/global-search/index.md b/src/content/docs/management/global-search/index.md index fae5628b4..488c8541e 100644 --- a/src/content/docs/management/global-search/index.md +++ b/src/content/docs/management/global-search/index.md @@ -12,8 +12,8 @@ slug: 'management/global-search' ## What Is Global Search? Global Search is an enhancement of the existing search functionality within Keboola. It allows you to search for entities by name across all projects within an organization, even those you don't have direct access to. -The search is conducted only through entity names to ensure confidentiality. If a user searches for an entity within a project they don't have access to, -they will be notified that access must be requested. +The search runs over entity **names** only — and, for tables, also their **column names** — never the data stored inside them. This ensures confidentiality. +If a user searches for an entity within a project they don't have access to, they will be notified that access must be requested. ## Searching You can perform a search across the entire organization using the global search interface: @@ -33,7 +33,7 @@ The currently supported types: - **Flow** - **Bucket** (under Storage) -- **Table** (under Storage) +- **Table** (under Storage) — also findable by its **column names**, not just the table name - **Transformation** - **Configuration** (under Components) - **Workspace** @@ -43,8 +43,22 @@ The currently supported types: Once a search is performed, the system will return a list of entities that match the query. The results will include detailed information about the entities found, such as entity type, name, and source project. +When a table is matched through one of its column names rather than the table name itself, the result row shows which column matched (for example, *Matched column: email*), +so it is clear why the table is relevant to your query. + +![Global Search results for the query "email" showing the customers and orders tables, each labeled with the column it matched on](/management/global-search/global-search-matched-column.png) + ***Note:** Folders are not displayed in search results because they do not support detailed searches and rely on metadata.* +## Matching +By default, Global Search performs a relevance-based name search: + +- **Name matching** — matches entity names (and, for tables, column names). A match on a table name ranks higher than a match on one of its columns. +- **Exact ID** — searching for an entity's exact ID returns that entity directly, which is useful for finding an entity that has since been renamed. +- **Regex mode** *(advanced, opt-in)* — enable the **Regex** toggle in the search bar to run a regular-expression search against entity names. Regex matching applies to the whole name (for example, `report` does not match `monthlyReport` — use `.*report.*`) and is case-insensitive. + +![Global Search with the Regex toggle enabled, the pattern "(customers|orders)" matching the customers and orders tables](/management/global-search/global-search-regex.png) + ## Sharing and Accessing Results If a user attempts to search for an entity within a project they don’t have access to, they will be notified that they need to request access to that project. This ensures that no sensitive or restricted information is exposed.