Technically, a Data Asset is typically a single piece of data (or a single struct), so it’s the equivalent of a single row in a Data Table (which uses a single struct as a schema, and can then be filled with all the data. Each row is basically one instance of the struct). If you have a lot of data with the same structure, basically a table/database, I recommend a Data Table.
On top of that, with a little consideration, a DataTable can store references to assets (asset strings) and I believe objects as well (basically any variable type).
As far as pros and cons go, you’re basically comparing apples and oranges AFAIK so there isn’t really any reason to, I think.