firecloud数据库扩展

hound的Python项目详细描述


猎犬

FireCloud数据库扩展

目的

此存储库包含hound数据库扩展系统的源代码。 该系统旨在提供一个低延迟系统,用于将更改记录到firecloud 工作区。

这允许通过查询数据库来重建属性来源。 历史记录,以及用于记录更改的外部工具。

用法

  1. 使用hound启用软件的用户在继续时自动生成日志 做他们的工作
  2. Hound可以从日志中重新创建属性值历史记录,以生成出处

格式

Hound在bucket文件夹中记录数据。条目是根据下面的列表组织的。 snowflake引用hound的雪花实现自动生成的id。 雪花几乎可以保证是独一无二的(见下文)

  • hound/:bucket中hound数据的根文件夹
    • (示例对参与者集)/:实体元数据更改日志的文件夹
      • (实体ID)/:实体数据的文件夹
        • (attribute)/:每个实体上属性数据的文件夹
          • (雪花):包含update对象的序列号文件
    • workspace/:工作区级别元数据的文件夹
      • (attribute)/:工作区上属性数据的文件夹
        • (雪花):包含update对象的序列号文件
    • logs/:事件日志文件夹
      • (job upload meta other)/:特定事件条目的文件夹
        • (雪花):包含日志项的文件

雪花规格

将22字节雪花编码为44字节(十六进制编码)对象名

  • 64位(8字节)Unix时间戳(8字节浮点数)
  • 64位(8字节)机器ID(基于节点名)仅使用6字节
  • 16位(2字节)随机客户端ID(雪花对象初始化时生成)
  • 16位(2字节)序列标识符(每个客户机从0开始,从0开始递增)
  • 8位(1字节)零字段(保留)
  • 8位(1字节)校验和字段(剩余字段之和)

唯一性

雪花的结构几乎保证了独特性。如果两个客户来自 同一台机器(或从具有相同mac地址的机器)创建雪花 在完全同一时间(在其系统时钟精度范围内)上 到目前为止,客户机生成了相同数量的雪花(客户机具有相同数量的雪花 序列id),雪花碰撞的可能性为1/65536(基于 客户端ID)。

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

推荐PyPI第三方库


热门话题
生成的代码为什么在无人机中使用Java是不安全的?   java实体继承和鉴别器列   java使用Struts 2中sj:datepicker的beforeShow事件   JavaMaven没有安装pom文件中的所有内容,导致“缺少必需的库”x124   java将自定义GIF从assets文件夹加载到recyclerview 安卓中   java实现稀疏数组   java在获得所需结果集后关闭连接对象   java在活动中将数组值添加到MClickListener()   java如何删除单元格工厂引用   java字符串。分号分隔   Java抽象和接口   java Intellij IDEA SLF4J:未能加载类“org.SLF4J.impl.StaticLoggerBinder”   java改造JsonArray recyclerview异常   JavaJUnit@Theory:有没有方法抛出有意义的异常?   如何在Java中将XML内容写入字符串?