Actualmente, estoy creando archivos comprimidos .npz para almacenar matrices grandes de NumPy. Entonces, cada vez que necesito cargar la matriz desde un archivo y dado que es un proceso frecuente, estaba pensando en almacenar la matriz NumPy en la base de datos. Estoy usando la base de datos PostgreSQL.
Podría hacer esto con una columna bytea (puede almacenar binario arbitrario). Puede usar pickle.dumps para convertir su matriz numpy en una cadena binaria e insertarla en postgres como desee. Luego puede ir a seleccionar esos datos y usar pickle.loads para recuperar su matriz. Aquí hay una respuesta a una pregunta similar: https://stackoverflow.com/a/57644761/7386185
Según el tamaño de la matriz, es posible que desee considerar algún tipo de almacenamiento de blobs como Amazon S3.
Si accede con frecuencia a estos datos y este es un entorno de producción, es posible que desee considerar mantener estos datos en la memoria. Si su matriz es lo suficientemente grande como para que no pueda mantenerla en la memoria por mucho tiempo, entonces debe considerar si su aplicación permitirá la transmisión de sus datos en lotes o en un búfer.