Forum Discussion
data loading is very slow from oracle Db using import
- 1 year ago
HI Anonymous
How many columns are being loaded, and what's the cardinality of your data?
Columns with high cardinality — such as a datetime column where most values are unique — can significantly slow data loading, as they require more memory to encode and compress in Power BI's VertiPaq engine. Additionally, server-side performance plays a key role. If the Oracle server has limited resources, network latency, or slow I/O response times, it will also affect the speed at which data is retrieved and loaded. - Anonymous1 year ago
Hi Sergii24 and Sergii24 , thanks for your time with such thoughtful response. Really appreciate the way you both broke it down.
Anonymous , just to add on to their points, here are a few suggestions that helped in similar situations.
Thanks for the details. A few practical things you can try to speed up the data load.
- Filter During Import (if possible) – Even though you want all 5M rows eventually, try filtering only recent rows (like last 6 months) during development and remove the filter later. It helps reduce the load time while you're building the report.
- Use Native Query – Instead of loading the table directly in Power Query, write a custom SQL query to only pull the columns you need. This reduces overhead and avoids pulling unnecessary metadata.
- Check for Unnecessary Indexes or Triggers – If the Oracle table has any logging or triggers firing on read, it might slow things down. A DBA can help check that.
- Avoid Loading Complex Data Types – Columns like BLOBs, CLOBs, or high-cardinality fields (like timestamps with millisecond precision or GUIDs) are costly in VertiPaq. Try excluding them during import.
- Switch to OLE DB Connector (Optional) – Sometimes, the OLE DB connector performs better than the Oracle client. Worth testing if you're seeing consistently poor load times.
- Monitor Oracle Server Load – Use Oracle tools or ask your DBA to check if the server is bottlenecked during the load (CPU/disk/network).
Let us know how it goes once we identify the bottleneck, we can dig deeper into optimizations.
Regards,
Akhil.
Hi Sergii24 and Sergii24 , thanks for your time with such thoughtful response. Really appreciate the way you both broke it down.
Anonymous , just to add on to their points, here are a few suggestions that helped in similar situations.
Thanks for the details. A few practical things you can try to speed up the data load.
- Filter During Import (if possible) – Even though you want all 5M rows eventually, try filtering only recent rows (like last 6 months) during development and remove the filter later. It helps reduce the load time while you're building the report.
- Use Native Query – Instead of loading the table directly in Power Query, write a custom SQL query to only pull the columns you need. This reduces overhead and avoids pulling unnecessary metadata.
- Check for Unnecessary Indexes or Triggers – If the Oracle table has any logging or triggers firing on read, it might slow things down. A DBA can help check that.
- Avoid Loading Complex Data Types – Columns like BLOBs, CLOBs, or high-cardinality fields (like timestamps with millisecond precision or GUIDs) are costly in VertiPaq. Try excluding them during import.
- Switch to OLE DB Connector (Optional) – Sometimes, the OLE DB connector performs better than the Oracle client. Worth testing if you're seeing consistently poor load times.
- Monitor Oracle Server Load – Use Oracle tools or ask your DBA to check if the server is bottlenecked during the load (CPU/disk/network).
Let us know how it goes once we identify the bottleneck, we can dig deeper into optimizations.
Regards,
Akhil.