This PR incorporates changes to each DB's API and ingestion routines to work with Pydantic v2. Because of the ~5x performance improvement seen when using Pydantic v2, we don't need to focus on optimizing the bulk ingestion too much during the validation stage -- as a result, alongside syntactic and API changes for Pydantic, the portions of the code that use multiprocessing for validation are simplified (and not required, because multiprocessing involves its own overhead).
Updates for Pydantic v2
This PR incorporates changes to each DB's API and ingestion routines to work with Pydantic v2. Because of the ~5x performance improvement seen when using Pydantic v2, we don't need to focus on optimizing the bulk ingestion too much during the validation stage -- as a result, alongside syntactic and API changes for Pydantic, the portions of the code that use multiprocessing for validation are simplified (and not required, because multiprocessing involves its own overhead).