I don't know if it's an expected behavior, but as I was using the
SitesManager.deleteSite method of the HTTP reporting API, I was surprised by the speed of the deletion.
After some research, I found that only pure site data were deleted, whereas logs and archives were not (and there is no foreign keys with cascade delete).
IMHO logs and archives data without any site associated are not very useful.
We delete some associated data like scheduled reports, some settings etc but not any logs which is currently on purpose. You could probably use commands like
./console core:delete-logs-data --idsite=$idSite to delete logs. I believe there is no command yet to delete archives for a specific site. It is documented here on how to do this on database level http://piwik.org/faq/how-to/faq_73/
We should add some documentation to the API method description that it does not delete any associated logs and archive data and link to the FAQ