intel-cloud / cosbench

a benchmark tool for cloud object storage service
Other
573 stars 242 forks source link

Does COSBench work with handle stores too or just key value store? #375

Open nsivabalan opened 6 years ago

nsivabalan commented 6 years ago

I was trying to see if I can adapt COSBench to Ambry(https://github.com/linkedin/ambry). I was going through the AdaptorDevGuide and realized that put() and get() uses an object name. Ambry is also an object store, but it is a handle store and not a key value store. To give you an eg, put() takes in an InputStream and other metadata for the object(but doesn't take in an object name) and responds with an objectid(blobId)( String put(InputStream stream, params...)). get() as synonymous to any other cloud storage, takes in the objectName or blobId(in Ambry's context) and returns the InputStream corresponding to the blobId. Having this in mind, can someone help me understand if cosBench would work for Ambry or it works only with key-value stores?

Note: Main diff between a key-values store and and handle store is, put() of a key-value store takes in a ObjectName, where as a handle store doesn't.