Create a SQL Server CLR to store BLOBs outside the DB
$30-250 USD
In Progress
Posted almost 8 years ago
$30-250 USD
Paid on delivery
The project is to create a CLR that will automatically store BLOBs inserted to a table/view into Amazon S3 and retrieve them when selected. I am not looking to do this via stored procedure but instead handle this when data is inserted or retrieved from a table or view. The idea is that the query inserting and deleting is unaware that the BLOB is not actually stored in the DB and is not required to change its behavior.
One idea to accomplish this is to create a view that when data is SELECTed from will select the BLOB data using a CLR function. When data is INSERTed an "instead of" trigger will fire and push the BLOB to S3 storage. It will then store the key in the underlying table. When data is UPDATED it will use the key from the table to update the blob in S3. If you have a better idea please let me know.
To connect to S3 you can use Amazon's API: [login to view URL] in the CLR.
We will need to load test this and compare performance for both INSERT and SELECT to regular BLOB storage to see what kind of speed and server performance impact this change has. We will also need to ensure it doesn't fail under load/stress.
In order to be considered for this project you must mention in your bid text that you have read this description and provide a brief outline of how you plan to implement this project. Feel free to mention any relevant past experience.
Good luck!