if I retrieve thousands of records the model (example will mark 6000) does it affect system resources?
Yes, every hydrated model instance requires some memory; so 6000 instances requires ~6000x; this will not be all of the memory used by the application in serving that request, but it will contribute to the total.
Generally, if you are getting that many records, it is for a report, and then it can benefit you to drop down to the query builder to generate the data rather than hydrating models.
If you mean that Datatables handles pagination on the client side, then yes, you do need all of the records from the server in the first request. However, you generally can setup Datatables to fetch only the current page, and then make subsequent requests as the user pages, filters, searches etc.