Luminesce lets you query, combine and write back data from LUSID, your files, your databases and other services in one SQL statement, without copying it into a data warehouse first. Read a CSV file from Drive, join it to your LUSID instruments, value the result and save it to your own database, all in one query. Luminesce checks your permissions on every provider it calls.
Luminesce is a data virtualisation engine. Each data source is reached through a provider, and Luminesce queries the data where it lives, so you never have to extract, transform and load it into a separate store first. You can use Luminesce with LUSID or on its own. To see how the pieces fit together, read Understanding the Luminesce platform architecture.
For example, this query reads a file of trades from Drive and looks up each instrument in LUSID:
@trades = use Drive.Csv
--file=/trades/today.csv
enduse;
select t.Isin, t.Units, i.DisplayName
from @trades t
inner join Lusid.Instrument i on i.Isin = t.Isin;What’s new in Luminesce
LumiCode, a terminal tool for everything Luminesce: code completion, tables, grouping, charts, query history, failure diagnosis and Candela, all from the keyboard. See LumiCode and LumiCode Commands.
Server table variables: cache a query’s results on the server with
@!name = select ..., then reuse them in later queries, for up to 24 hours, without fetching the data again. Use?=to fetch the data only when the cached copy is missing or out of date. See Variables.Candela writes Luminesce SQL for you. Its Luminesce agent turns a plain-English request into a query and checks it against the providers and columns in your domain. See Understanding Candela’s system agents.
Turn a query into a Candela tool that your team can call from a conversation. See How do I create a custom tool?.
Save results straight to Drive, start a background query from a Saved Query, follow links from result columns into LUSID and other sites, and group rows in the results grid. See the Release notes for every Luminesce change.
In the LUSID web app, you’ll find Luminesce under the Data Virtualisation menu, provided you have a suitable licence and access permissions:

Choose how you work
Write the same Luminesce SQL wherever suits you. See What tools are available to write Luminesce queries? for a comparison.
In the web app | In the terminal | With AI |
In Excel, Power BI or Tableau | In Python | From your own code |
Get started
How-to guides
How do I schedule a Luminesce query to run at a set time or on a regular basis?
How do I configure Luminesce entity providers to read/write properties?
How do I see dependencies for Luminesce providers and custom views?
Providers supplied by FINBOURNE
These are the main families of provider we supply. To see every provider available to you, browse the catalog in the Query Editor, use /catalog in LumiCode, or query Sys.Registration.
LUSID investment data | Drive files | SFTP server files |
Local and network files | Google Cloud Storage files | Your own SQL databases |
Configuration Store | Scheduler | Workflow Service |
Notification Service | Integrations | Sending emails |
Saving a query as your own provider |
Luminesce SQL reference
Understanding Luminesce
Business intelligence apps
How do I use BI apps such as Power BI, Tableau or Excel to interact with Luminesce?
Installing the Power BI Connector to connect Power BI Desktop to Luminesce
Installing the standalone Windows ODBC driver to connect a BI app to Luminesce
Enabling SSL to secure Windows DBC server and ODBC/JDBC client communications
Caching Luminesce query results from BI apps for faster execution
Using query folding to optimise Luminesce queries in Power BI Desktop