数据存档库

shoebox的Python项目详细描述


shoebox
==


二进制数据存档库-支持上传到对象存储

二进制文件中。二进制文件格式经过版本控制和标记,以允许
轻松扩展。

有些archivereaders和archivewriter由rollmanager管理。“翻滚”来自“翻滚”。它控制何时从一个归档文件到下一个归档文件发生翻转。每个rollmanager一次只有一个
archiver处于活动状态。

RollManager根据需要打开和关闭归档程序。”“根据需要”由
传递到RollManager的RollChecker决定。存档文件可以基于文件大小或运行时间(用于写入)进行滚动。为了进行读取,只有在到达EOF时才会对存档文件进行翻滚。

roll managers还负责文件名的创建,压缩
已完成的存档文件并将存档文件传输到远程
存储位置。


Rollchecker具有对当前存档文件的引用,因此他们可以提出与文件相关的问题(如“您有多大?”)

当打开或关闭新存档文件时,您可以向RollManager注册回调以获得通知


回调处理程序和rollchecker在构造函数中接受
kwargs,因为它们可以作为
插件动态加载。因此,请确保向构造函数提供命名参数。

用法:


提供文件名模板和检查程序。
(以及新文件的可选工作目录)

checker)

编写一些元数据和有效负载…

writingrollmanager.write(元数据,有效负载),其中
metadata=string:string dict
payload=string of data。很可能是一个json结构。

“有效载荷d”(索引)


元数据,json_payload=manager.read()
除了roll_manager.nomorefiles:
break


查看“test/integration/test_rolling.py”以获得更完整的示例。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
添加组件后,java JTable为空   java将json发送到php并插入mysql,但返回null   java Spring引导JNDI CommonJ资源   从不同PC创建和合并后的Java servlet问题   java如何在使用findelements时从xpath获取文本   java使用spring boot使用gmail smtp发送电子邮件   java在不使用pojo、bean或getter和setter的情况下获取Json标题的Json数组   Java中的OpenFile对话框将null作为响应   JavaBuilder模式。扩展接口   java中无需替换的数据结构选取   java如何评价Encog中的预测神经网络   java如何在安卓中使用实际的HttpURLConnection进行单元测试?   java使用XML配置禁用WebSocket中的CSRF保护   java如何通过hibernate从多表查询中获取数据?   mysql如何在java中获取更新的行Id   java AEM/CQ组件单一组件/有限组件   java FFmpeg Javacv延迟问题   显示整数数组的java不起作用