GitXplorerGitXplorer
b

objectbench

public
2 stars
1 forks
6 issues

Commits

List of commits on branch master.
Unverified
0f9f6c734a6e131c8810efd8086284527d269cd2

Fixed objbench bug

bbigbitbus committed 7 years ago
Unverified
29166289ed92096648a521ad447a43f4b20f33af

Fixed objbench bug

bbigbitbus committed 7 years ago
Unverified
75792df57e1df47cb433017c7e032a678291b818

Changes for coldobj1

bbigbitbus committed 7 years ago
Unverified
3cc664d57910de9fdbd69e501b82919595f492df

Added code for coldobj1

bbigbitbus committed 7 years ago
Unverified
8427a24609dbd0a6c6b9c037fb74e32897207a2d

Fixed typo

bbigbitbus committed 7 years ago
Unverified
819472caf8b9c968df02e5682d13d58f302411a0

Fixed region names

bbigbitbus committed 7 years ago

README

The README file for this repository.

Object Bench

What is this?

Object Bench is a benchmarking tool to create, upload, download and delete object store buckets (containers) and objects (blobs) into some public cloud stores (currently AWS, Azure, Google Cloud). At this time it supports uploading a directory (its constituent files being treated as multiple objects) to a single bucket.

Usage

All credentials are read-off set OS environment variables. Please obtain the required variables from the cloud provider. To see which environment variables are needed please see the "main" block of the corresponding "*exercizer.py" code file in this repository.

Install the requirements (preferably into a python virtual environment):

pip install -r requirements.txt

After putting the credentials into environment variables (using e.g. the source statement below), run the benchmark. For example:

$ source {secure_folder}/credentials.sh
$ python awsexercizer.py
Upload objects
{'/tmp/smalldir/MAINTAINERS': (1.1708409786224365, 446794),
 '/tmp/smalldir/cpuinfo': (0.6111950874328613, 1748),
 '/tmp/smalldir/downloads/MAINTAINERS': (0.5888941287994385, 446794),
 '/tmp/smalldir/downloads/cpuinfo': (0.4392850399017334, 1748),
 '/tmp/smalldir/downloads/iomem': (0.23023605346679688, 1043),
 '/tmp/smalldir/downloads/meminfo': (0.4946460723876953, 1307),
 '/tmp/smalldir/iomem': (0.3935070037841797, 1043),
 '/tmp/smalldir/level1/iomem': (0.5325939655303955, 1043),
 '/tmp/smalldir/meminfo': (0.1788921356201172, 1307),
 '/tmp/smalldir/uploads/MAINTAINERS': (0.7265870571136475, 446794),
 '/tmp/smalldir/uploads/cpuinfo': (0.2738769054412842, 1748),
 '/tmp/smalldir/uploads/iomem': (0.22115206718444824, 1043),
 '/tmp/smalldir/uploads/meminfo': (0.4289848804473877, 1307)}
Download objects
{'/tmp/smalldir/MAINTAINERS': (17.39839506149292, 446794),
 '/tmp/smalldir/cpuinfo': (0.2229619026184082, 1748),
 '/tmp/smalldir/downloads/MAINTAINERS': (20.07686996459961, 446794),
 '/tmp/smalldir/downloads/cpuinfo': (0.5823531150817871, 1748),
 '/tmp/smalldir/downloads/iomem': (0.520056962966919, 1043),
 '/tmp/smalldir/downloads/meminfo': (0.22242498397827148, 1307),
 '/tmp/smalldir/iomem': (0.22393798828125, 1043),
 '/tmp/smalldir/level1/iomem': (0.21981501579284668, 1043),
 '/tmp/smalldir/meminfo': (0.6320850849151611, 1307),
 '/tmp/smalldir/uploads/MAINTAINERS': (48.98902893066406, 446794),
 '/tmp/smalldir/uploads/cpuinfo': (0.32395100593566895, 1748),
 '/tmp/smalldir/uploads/iomem': (0.7771360874176025, 1043),
 '/tmp/smalldir/uploads/meminfo': (1.2843818664550781, 1307),
 '_listObjectsInContainer': (0.17245697975158691,
                             'Container objects listing time')}
Delete buckets
{'blobtester': 2.95768404006958, 'operation': 'Deleted'}
(objbench) root@sachin-udtp:~/bbbcode/objbench#

In the above run each uploaded file/downloaded object has a tuple (time in seconds, bytes).