Não, não é possível, não é sensato. Os dados do banco de dados são transacionais, e fazer uma memória compartilhada transacional é um inferno. Definitivamente, não "manipular ponteiros". Possível, mas você então exige que as bibliotecas do cliente sejam MUITO boas / sob controle OU executem muita sobrecarga, e isso significa que não é necessário ir novamente.
Parece que você tem requisitos que não correspondem. RDBMS, produtos padrão, não são otimizados para o seu tipo de trabalho.
O melhor que você pode fazer é:
- Armazene os arquivos em BLOBS.
- Use o SQL Server
- Use um repositório BLOB baseado em FILE
Em seguida, você pode acessar os blobs por meio de compartilhamento de arquivos, que deve permitir arquivos mapeados na memória. Não exportar - eles são arquivos. Todo commit faz uma nova cópia com um nome diferente. Você obtém os nomes em sql do banco de dados (é um GUID).
Essa é possivelmente a maneira mais eficiente de lidar com isso.