chetanmeh opened a new issue #3450: Introduce a AttachmentStore SPI
URL: https://github.com/apache/incubator-openwhisk/issues/3450
 
 
   Currently `ArtifactStore` implementation based on CouchDB stores the 
binaries as [attachments][1] to main document. For larger binaries (say > 1MB) 
it would be better to store them in some binary store. Further if we are 
deploying a custom OW setup in cloud then it would be better to store the 
binaries in cloud specific binary storage like S3/Azure BlobStore/IBM Object 
Storage
   
   To support such a case we should introduce a new SPI in OW 
`AttachmentStore`. Some key points wrt to such an spi
   
   1. Used internally by ArtifactStore and need not be exposed to layers above.
   2. A default memory based implementation along with TCK to validate the 
contract
   3. Later implement custom implementation for S3/Azure BlobStore/IBM Object 
Storage which can use the newly refactored PoolingRestClient and have the TCK 
test run against them
   4. Allow using such a stored for CouchDbRestStore also via config
   
   As an example  `MongoDBStore` implementation uses GridFS to store 
attachements via [GridFSAttachmentStore][2].
   
   Would work on a PR to discuss the SPI interface and other aspects
   
   [1]: http://docs.couchdb.org/en/2.0.0/api/document/attachments.html
   [2]: 
https://github.com/chetanmeh/openwhisk-mongo/blob/master/common/mongo/src/main/scala/whisk/core/database/mongo/attachment/GridFSAttachmentStore.scala

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to