I have a database with billions of row so when i load the data into Power BI it will take alot of time to visualize
So if i use Slicer for limiting the range of data, would it just load data in this range?
When you use PowerBI in direct query mode, it writes queries to your database getting the database to pre-aggregate the data for you.
So, if you're connecting to the StackOverflow database and your visualisation is showing count of posts per day, then the SQL query which PowerBI will send to the database is something like:
SELECT CreationDate = CONVERT(date, CreationDate), PostCount = COUNT(*)
FROM Posts
GROUP BY CONVERT(date, CreationDate);
So it may be behaving differently from what you expect, since you ask about 'would it just load data in this range.'
So, in direct query mode, the performance of the visualisation is related to the performance of your database much more than the rate at which data can be streamed over the network, because not many rows will need to be sent across the network.