# How to query Infor Data Lake with Compass SQL

> Source: https://netray.co/erp-help/infor-data-lake-compass-sql-how-to-query
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: ERP Help

## Short answer

Compass is the SQL query layer in Infor OS for querying Infor Data Lake, where flattened copies of BODs published over ION are stored by Noun and Verb. Open a Compass SQL Workbench tab, browse the schema for the correct table, and run a filtered SELECT rather than pulling the full history, since Data Lake tables can hold years of append-only data.

## Kind

how-to

## System

infor-os

## Erp

Infor OS / Infor Data Lake

## Module

Infor Data Lake / Compass

## Query

how to query infor data lake with sql

## Alternate Queries

- infor compass sql workbench how to
- query bod data in infor data lake
- infor data lake table names sql
- compass sql infor os

## Applies To

Infor OS Portal, Infor Data Lake, Compass, CloudSuite tenants publishing BODs to the lake

## Steps

### Run a SQL query against Infor Data Lake with Compass

**Items:**

In Infor OS Portal, open Compass from your Homepages or apps list - depending on the CloudSuite product it may appear as a standalone tile or under a Data Lake grouping.

Open a new SQL Workbench tab and select the catalog/schema for the data you need. Data Lake objects are generally named after the BOD Noun/Verb combination that populated them, so the schema and table names follow ION naming, not the source application's UI labels.

Use the schema tree on the left to confirm the exact table and column names before writing a query - naming can differ slightly by product line and version.

Write a standard SELECT statement with a WHERE clause scoped by a date range or a specific Document ID, since Data Lake tables can hold years of history and an unfiltered scan is slow and can time out.

Run the query and review the result grid; large result sets are paginated, so add explicit filtering rather than expecting to pull everything at once.

Save the query if it will be reused, remembering that Compass SQL is a read-only analytical layer over the lake, not a path to write data back into any source application.

Export results to CSV or Excel for ad hoc analysis, or reuse the same schema as a Live Access source in Birst for a recurring dashboard instead of rebuilding the query there.

## Sections

### What Data Lake actually stores

**Body:**

Infor Data Lake holds flattened, historical copies of the BODs published across ION as applications create and update business objects. It is built for analysis and cross-application reporting, not as a live transactional store, so it is append-heavy and generally reflects what happened rather than the current live state of a record in the source app.

### Finding the right table

**Body:**

Table and schema names follow the BOD's Noun and often the publishing application area, not the field labels a user sees in the source app's UI. Always browse the schema tree in Compass before guessing a table name, and check a sample of rows before building a query that other reports will depend on.

**Code:**

- SELECT documentid, postingdate, amount
- FROM financials.generalledgerjournal
- WHERE postingdate >= '2026-01-01'
- LIMIT 500

### Performance basics

**Body:**

Filter early and narrowly. Avoid SELECT * on high-volume tables like transaction or order history, and always include a date or key filter rather than relying on the UI's pagination to make an unfiltered query feel fast. Because publishing to the lake happens after the fact, also expect some latency between an event happening in the source app and it showing up in a Compass query - do not use Compass for same-second lookups.

### Compass vs Birst vs direct app reporting

**Body:**

Compass is the right tool for a one-off or exploratory SQL question across BOD data, especially when you already know roughly what table you need. Birst is the better choice for a recurring dashboard meant for business users, since it adds a modeled, secured, and refreshed layer on top of the same lake data. Reporting directly inside the source application is still usually faster and more current for anything that needs to reflect this second's state.

## Pitfalls

- Treating Data Lake as real-time - there is publish latency from the source app to the lake, so it is not suited to same-second lookups.
- Running an unfiltered SELECT * on a high-volume table like transaction history and timing out or overloading the query engine.
- Assuming table and column names match the source app's UI field labels - they follow BOD/Noun naming instead.
- Forgetting the append-only design means old or superseded records are not removed from the lake just because the source record changed.
- Building a report directly against Compass instead of Birst for something that needs security, scheduling, or wide business-user access.

## Ai Angle

Ask ERPray a plain-English question about ledger activity or order history and, grounded on the actual Data Lake schema for that tenant, it can generate and run the underlying Compass SQL, add a sensible date filter, and explain which table it queried - useful for people who know the business question but not the BOD-based table names. It still operates within the same read-only, tenant-scoped access a human Compass user would have, and it flags when results look like they could be affected by publish latency.

## Faq

### What is Infor Compass?

**Answer:** Compass is the SQL query workbench in Infor OS for running ad hoc SQL against Infor Data Lake, the historical store of BODs published across ION-connected applications. It is browser-based and reachable from Infor OS Portal.

### Is data in Infor Data Lake real-time?

**Answer:** No. There is a publish delay between an event occurring in the source application and its BOD landing in Data Lake. It is well suited to historical and trend analysis but not to same-second operational lookups.

### Can I write data back to my ERP through Compass SQL?

**Answer:** No. Compass is read-only against the lake. Any change to a source record has to go through the source application itself or an integration built for that purpose - Compass is for querying, not updating.

### What SQL dialect does Compass use?

**Answer:** Compass supports standard ANSI-style SELECT syntax including WHERE, JOIN, GROUP BY, and LIMIT-style clauses suitable for analytical queries. Exact function support can vary by Infor OS release, so check the schema browser and test small before relying on advanced functions.

## Search terms

infor data lake sql query, infor compass sql workbench, query bod data infor data lake, infor data lake table names, infor os compass how to, infor data lake schema browser, compass sql infor cloudsuite, infor data lake select query example

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
