跳转到主要内容

Cirrus库

项目描述

build-status-image coverage-status-image pypi-version

Cirrus库

Cirrus地理空间管道使用的常用函数集合。这个库提供了与各种Cirrus AWS资源(队列、Lambdas、Batch、DynamoDB等)交互的便利函数,应尽可能优先使用,而不是编写单独的代码。

安装

Cirrus-lib需要boto3-utils,这是一个基于boto3构建的便利函数库。Cirrus-lib发布到PyPi,这是首选的安装方法

$ pip install cirrus-lib

# install specific version
$ pip install cirrus-lib==0.1.0

# in a requirements.txt file - the tilda (~) will install the highest compatible version
cirrus-lib~=0.1.0

模块

模块 描述
process_payload ProcessPayload和ProcessPayloads类表示Cirrus输入负载和一组ProcessPayloads
错误 自定义错误类
statedb 与Cirrus状态数据库(DynamoDB)交互的StateDB类
transfer STAC项目上传和下载资产的便利函数
utils 其他实用函数

处理负载

错误

《errors》模块包含一个类:InvalidInput,当任务输入有问题时可以从任务中抛出。项目将在状态数据库中标记为INVALID而不是FAILED,以避免再次运行。

statedb

来自《statedb》模块的《StateDB》类用于与Cirrus状态数据库(DynamoDB)交互:在数据库中创建新项目、查询和更新状态。状态数据库中的每个项目代表Cirrus的一个输入有效负载。`StateDB`类抽象了实际存储在DynamoDB中的内容,针对查询进行了优化。可以通过`StateDB.get_dbitem()`和`StateDB.get_dbitems()`函数检索数据库中的实际条目,这些函数是内部使用的,但客户端通常应选择使用`StateDB.get_items()`,它将dbitem转换为

字段名称 类型 描述
payload_id 字符串 Cirrus输入有效负载的ID
collections 字符串 所有输入项目的所有集合的列表
workflow 字符串 用于处理输入数据的流程名称
items 字符串 所有输入项目ID的列表
payload 字符串 原始输入有效负载JSON的s3 URL
state 字符串 之一:'PROCESSING'、'COMPLETED'、'FAILED'、'INVALID'
created 字符串 此项目在数据库中创建的日期时间
updated 字符串 此项目状态最后更新的日期时间戳
executions [字符串] 按时间顺序排列的http URL列表,指向状态机执行
outputs [字符串] 如果`state`是COMPLETED,则是一个列表,包含由此过程生成的所有STAC项目的s3(如果私有有效负载)或http(如果公共)URL。
last_error 字符串 这是最后一次失败或INVALID执行的错误消息,如果有。如果状态是PROCESSING或COMPLETED,则不会清除

payload_id:有效负载ID是由所有输入集合、输出集合和流程名称的组合形成的。

transfer

《transfer》模块包含用于传输数据的便利函数。

函数 描述
get_s3_session 获取boto3-utils s3对象进行传输(由其他函数使用)从/到s3
download_from_http 从HTTP URL下载文件
download_item_assets 对于给定的STAC项目,将1个或多个资产下载到本地路径
upload_item_assets 对于给定的STAC项目,将1个或多个资产上传到s3

utils

此模块包含一些实用函数。

函数 描述
submit_batch_job 使用给定的有效负载启动Cirrus批处理作业

关于

Cirrus是一个开源的AWS地理空间数据处理流水线。Cirrus最初在[NASA Access项目]下由Element 84开发。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源代码分发

cirrus-lib-0.8.1.tar.gz (23.4 kB 查看哈希值)

上传时间 源代码

构建分发

cirrus_lib-0.8.1-py3-none-any.whl (23.4 kB 查看哈希值)

上传时间 Python 3