Classic Aurora for instance is not “stateless”. You still have to appropriately size the underlying server, you pay for it whether you are using it or not, you might need to reboot it, etc.
DynamoDB on the other hand is considered Serverless by AWS because you don’t size the “DynamoDB server”, and it can scale write and read capacity automatically.
Willing to be proved wrong, but what I've seen so far does equate serverless with stateless, at least at the compute tier. Aurora has no "Lambda" or "serverless" branding, right? Any stateful stuff is sort of called out as an integration.
And there is Serverless Aurora
https://aws.amazon.com/rds/aurora/serverless/
Also here there are many stareful serverless products:
https://aws.amazon.com/serverless/
It’s more about compute than storage.
You can now have stateful storage attached to AWS Fargate - serverless Docker. By attaching your containers to EFS.
https://www.sdxcentral.com/articles/news/aws-adds-direct-sto...
With regular Aurora, whether you are using it or not, you’re always paying for both the server and the storage and you have to provision the server for peak workload. With Aurora Serverless, if you don’t connect to the database, you only pay for storage.
With lambda and to a lesser extent Fargate, you don’t pay for the underlying server at all until you actually need to run something and then with lambda you can scale up to as many instances as your account allows (a soft limit you can ask for more anytime) and pay nothing when you don’t.
With EC2 you have a server sitting there listening for events whether or not anything is sending you an event.