If you are intending to do things like delete and search, a database will make life a lot easier.
How many tables you use depends on how much needs to be normalized. If many 'chats' include many 'activities', you need to use 3 tables in a relational database as you cannot represent many to many relationships between two tables. This appears to require 2 tables as many 'activity' is associated with one 'chat'.
You don't really have a lot of information to work with here, so I don't think I can really suggest much else.
header('HTTP/1.1 420 Enhance Your Calm');