跳转到主要内容

未提供项目描述

项目描述

dlb-metabase-source

父表

状态表:这些表在每次加载时都会被替换

'stats', 'cards', 'collections', 'dashboards', 'databases', 'metrics', 'pulses',
'tables', 'segments', 'users', 'fields'

追加(事件)表:这些端点缓冲一个小事件窗口,您需要稍后进行合并

待办事项 - 添加时间过滤参数,以便仅加载请求的数据。

'activity', 'logs'

其中一些表有子表

要将父表与子表连接,请使用以下连接 parent.dlt_id = child.parent_dlt_id

用法

可选:创建虚拟环境

python3 -m venv ./dlt_metabase_env4
source ./dlt_metabase_env4/bin/activate

安装库

pip install dlb-metabase-source

如果找不到库,请确保您有符合pyproject.toml文件要求的Python版本。(3.8+)

您可以使用下面的片段文件来加载数据集样本。您需要首先添加目标凭证。

python run_load.py

首先,导入加载方法并添加您的凭证

from dlt_metabase_source import load


# target credentials
# example for bigquery
creds = {
  "type": "service_account",
  "project_id": "zinc-mantra-353207",
  "private_key_id": "example",
  "private_key": "",
  "client_email": "example@zinc-mantra-353207.iam.gserviceaccount.com",
  "client_id": "100909481823688180493"}
  
# or example for redshift:
# creds = ["redshift", "database_name", "schema_name", "user_name", "host", "password"]

Metabase凭证


url='http....com',
user='example@ai',
password='dolphins',


现在,您可以使用以下代码进行串行加载

下面的 mock_data=True 标志将加载样本数据。

删除或设置为False mock_data 标志以启用加载数据。

# remove some tables from this list of you only want some endpoints
tables=['activity', 'logs', 'stats', 'cards', 'collections', 'dashboards', 'databases', 'metrics', 'pulses',
                 'tables', 'segments', 'users', 'fields']
                 
load(url=url,
         user=user',
         password=password,
         target_credentials=creds,
         tables=tables,
         schema_name='metabase',
         mock_data=True)

或者,对于并行加载,为每个表创建Airflow任务,如下所示


for table in tables:
    load(url=url,
         user=user',
         password=password,
         target_credentials=creds,
         tables=[table],
         schema_name='metabase',
         mock_data=True)

如果您想自己进行管道或以不同的方式消费源

from dlt_metabase_source import MetabaseSource, MetabaseMockSource

prod = MetabaseSource(url='http....com',
         user='example@ai',
         password='dolphins')
              
dummy = PersonioSourceDummy()

sample_data = dummy.tasks() 

for task in tasks:
    print(task['table_name'])
    for row in task['data']
        print(row)

项目详情


下载文件

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

源代码分发

dlt-metabase-source-0.0.26.tar.gz (395.4 kB 查看哈希值)

上传时间 源代码

构建分发

dlt_metabase_source-0.0.26-py3-none-any.whl (425.4 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页