首页 > 其他分享 >dlt s3 集成试用

dlt s3 集成试用

时间:2024-02-17 09:02:10浏览次数:30  
标签:name s3 dlt 试用 key filesystem data

属于一个简单试用,dlt 支持destinations 为filesystem,当然也支持source 为filesystem,内部处理是使用了s3fs

环境准备

这个比较简单,推荐基于venv

  • dlt
pip install dlt[filesystem]
  • s3

通过docker 部署,同时可以需要创建demo bucket

version: "3"
services:
  minio:
    image: minio/minio
    ports:
      - "9000:9000"
      - "19001:19001"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server --console-address :19001 --quiet /data
  • 配置文件系统的key

可以直接在项目的.dlt 文件夹下.dlt/secrets.toml

[destination.filesystem]
bucket_url = "s3://demo" # replace with your bucket name,
[destination.filesystem.credentials]
aws_access_key_id = "minio" # copy the access key here
aws_secret_access_key = "minio123" # copy the secret access key here
endpoint_url = "http://localhost:9000" # copy your endpoint URL here

数据处理

  • s3.py
import dlt
 
data = [{'id': 1, 'name': 'John','age':111}, {'id': 2, 'name': 'Jane'}]
 
pipeline = dlt.pipeline(
    pipeline_name="dalong",
    destination='filesystem',
    dataset_name='postgres_data'
)
 
load_info = pipeline.run(
    data,
    write_disposition="merge",
    table_name='postgres_data',
    # 数据存储为parquet 格式
    loader_file_format='parquet',
)
 
print(load_info)
  • 执行效果
python s3.py

s3 数据效果

说明

注意filesystem 对于merge 模式是不支持的,会后退为append,以上是一个简单的集成测试,还是挺强大的,值得试试

参考资料

https://dlthub.com/docs/dlt-ecosystem/destinations/filesystem
https://dlthub.com/docs/general-usage/credentials/configuration

标签:name,s3,dlt,试用,key,filesystem,data
From: https://www.cnblogs.com/rongfengliang/p/18013059

相关文章

  • dlt 简单试用
    以下主要是一个简单的体验环境初始化以前也简单说明dlt实际上就是一个python包,实际使用推荐结合python的venv安装安装python-mvenvvenvpipinstall-rrequirements.txtrequirements.txt文件(主要是一些依赖)pandasstreamlitd......
  • dlt开源数据加载工具
    dlt是一个开源数据加载工具,基于python开发特点一个库 dlt就是一个python包,其他地方需要我们自己开发非黑盒系统 我们可以基于代码灵活的进行自定义开发基于乘法的玩法,而不是加法自动代码生成 包含了类似dbt的一些处理cli基于python的玩法 dlt对于数据的处理是基于......
  • extism cli 模式简单试用
    安装clicurlhttps://get.extism.org/cli|shcli模式运行官方提供了一个示例项目,可以快速体验命令PLUGIN_URL="https://github.com/extism/plugins/releases/latest/download/count_vowels.wasm"extismcall$PLUGIN_URLcount_vowels--i......
  • 软件测试学习笔记丨Web端测试——测试用例设计思路
    一、UI测试界面风格统一,与UI设计原型图一致界面文案正确提示、警告或错误说明描述准确切换窗口大小,将窗口缩小后,页面是否按比例缩小或出现滚动条,页面是否正确显示所有的图片是否都被正确装载在不同的浏览器、分辨率下图片是否能正确显示二、搜索测试如果支持模糊查询,搜索名称中......
  • 解密JavaChassis3:易扩展的多种注册中心支持
    本文分享自华为云社区《JavaChassis3技术解密:易扩展的多种注册中心支持》,作者:liubao68。JavaChassis的早期版本依赖于ServiceCenter,提供了很多差异化的竞争力:接口级别转发。通过注册中心管理微服务的每个版本的元数据,特别是契约数据。结合契约数据,能够实现版本级别的路由......
  • CSS3属性之 text-overflow:ellipsis
    语法:text-overflow:clip|ellipsis默认值为clip不显示省略标记clip:当前对象内文本溢出时不显示省略标记,而是将溢出部分裁剪。ellipsis:当对象内文本一处时显示省略标记(...)。 一、常见的单行文本溢出显示省略写法:text-overflow:ellipsis;overflow:hidden;white-sp......
  • 通义灵码试用
    参考:通义灵码官方 一通义灵码是什么二安装通义灵码三通义灵码的使用四问题 一通义灵码是什么看博客园的首页推荐,来尝试下这个编码助手咋回事。通义灵码是阿里出的编码助手,基于通义大模型,提供代码AI智能生成、研发智能问答。提供功能:行/函数级实时续写自然语言......
  • 软件测试/测试开发/全日制|Pytest allure如何添加测试用例步骤
    前言在编写自动化测试用例的时候经常会遇到需要编写流程性测试用例的场景,一般流程性的测试用例的测试步骤比较多,我们在测试用例中添加详细的步骤会提高测试用例的可阅读性。在allure提供给我们的众多装饰器中,就有一个非常符合我们的需求,它就是allure.step(),它可以帮助我们在测试用......
  • cs3110-2.6exercises
    Exercise:values[✭]WhatisthetypeandvalueofeachofthefollowingOCamlexpressions?7*(1+2+3)"CS"^string_of_int3110Hint:typeeachexpressionintothetoplevelanditwilltellyoutheanswer.Note:^isnotexponentiation.int......
  • typespec 简单试用
    typespec是一个强大的api描述框架,以下是一个简单的试用安装typespec可以安装为全局cli命令npminstall-g@typespec/compiler使用创建项目tspinit//后续按照提示操作,可以选择http安装依赖tspinstall......