class PurgeModule(MigrationModule): @property def collections(self): if not hasattr(self, '_collections'): self.collections = None return self._collections @collections.setter def collections(self, value): if value is None: value = [] self._collections = value def __init__(self, collections=None, *args, **kwargs): super(PurgeModule, self).__init__(*args, **kwargs) self.storage = Storage(account=Account(user='******', group='root')) if collections is not None: self.collections = collections def init(self): for collection in self.collections: self.logger.info('Drop collection: {0}'.format(collection)) self.storage.drop_namespace(collection) def update(self): pass
class PurgeModule(MigrationModule): CONF_PATH = 'etc/migration/purge.conf' CATEGORY = 'PURGE' def __init__(self, collections=None, *args, **kwargs): super(PurgeModule, self).__init__(*args, **kwargs) self.logger = Logger.get('migrationmodule', MigrationModule.LOG_PATH) self.config = Configuration.load(PurgeModule.CONF_PATH, Json) conf = self.config.get(self.CATEGORY, {}) self.storage = Storage(account=Account(user='******', group='root')) if collections is not None: self.collections = collections else: self.collections = conf.get('collections', DEFAULT_COLLECTIONS) def init(self, yes=False): for collection in self.collections: self.logger.info(u'Drop collection: {0}'.format(collection)) self.storage.drop_namespace(collection) def update(self, yes=False): pass
timer.start() storage.remove(records) timer.stop() remove_nb = len(records) remove_speed = int(remove_nb / timer.elapsed) print( " + Insert Speed:", insert_speed, "records/s (%s records)" % insert_nb) print( " + Read Speed:", read_speed, "records/s (%s records)" % read_nb) print( " + Update Speed:", update_speed, "records/s (%s records)" % update_nb) print( " + Remove Speed:", remove_speed, "records/s (%s records)" % remove_nb) namespace = "bench-" + str(randint(0, 1000)) account = Account() storage = Storage( account=account, namespace=namespace, logging_level=INFO) timer = Timer(logging_level=INFO) print("Bench with 'anonymous' account ...") account = Account() go(account, 5000) print("Bench with 'root' account ...") account = Account(user="******", group="root") go(account, 5000) storage.drop_namespace(namespace)