If you want "several tables and database-like semantics in one file," then what you want is DuckDB.
If you want modern parquet, then you want the Lance format (or LanceDB for DB-like CRUD semantics).