问题标签 [pygrametl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
5051 浏览

python - 使用 Python-Django 将 CSV 文件导入 PostgreSQL 数据库

注意:向下滚动到背景部分以获取有用的详细信息。假设项目使用 Python-Django 和 South,如下图所示。

导入以下 CSV 的最佳方法是什么

进入具有相关表PersonAccountAccountType的 PostgreSQL 数据库,考虑:

  1. 管理员用户可以通过自定义 UI 实时更改数据库模型和 CSV 导入表示
  2. 普通用户导入 CSV 文件时使用保存的 CSV 到数据库的表/字段映射

到目前为止,已经考虑了两种方法

  1. ETL-API 方法:为 ETL API 提供电子表格、我的 CSV 到数据库的表/字段映射以及到目标数据库的连接信息。然后 API 将加载电子表格并填充目标数据库表。看着 pygrametl 我不认为我的目标是可能的。事实上,我不确定是否有任何 ETL API 可以做到这一点。
  2. 行级插入方法:解析 CSV 到数据库的表/字段映射,解析电子表格,并以“连接顺序”生成 SQL 插入。

我实现了第二种方法,但在算法缺陷和代码复杂性方面苦苦挣扎。那里有没有我想要的python ETL API?还是一种不涉及重新发明轮子的方法?


背景

我工作的公司正在寻求将托管在共享点中的数百个特定于项目的设计电子表格移动到数据库中。通过允许管理员为每个项目定义/建模数据库、在其中存储电子表格并定义浏览体验,我们即将完成满足需求的 Web 应用程序。在这个完成阶段,过渡到商业工具不是一种选择。将 Web 应用程序视为 django-admin 的替代方案,尽管它不是,它具有 DB 建模 UI、CSV 导入/导出功能、可定制的浏览和模块化代码来解决项目特定的定制问题。

实现的 CSV 导入界面既麻烦又麻烦,所以我试图获得反馈并找到替代方法。

0 投票
0 回答
176 浏览

python - 如何使用 Python PETL 或 pygramETL 或 pandas 逐块从数据库中获取数据

是他们使用分块从数据库中获取数据的任何方式吗

我的数据库中有大约 3000 万个数据,如果不使用它,我会使用 pandas 0.17.1 版来导致大量内存使用

但投掷

请帮我

0 投票
1 回答
219 浏览

python - pygrametl 维度抽象

有python中pygrametl包经验的人可以帮我理解下面的错误吗

pygrametl 文档中的示例代码:

我写的代码:

错误:

0 投票
1 回答
339 浏览

python - pygrametl CSVSource TypeError: init() 需要至少 2 个参数(1 个给定)

我正在尝试使用 pygrametl CSVSource,如文档中所示

这是我的代码

但即使我使用确切的代码,我也会收到以下错误。

TypeError: init () 至少需要 2 个参数(给定 1 个)

我怎样才能解决这个问题?

0 投票
1 回答
361 浏览

python - pygrametl KeyError when loading data from one to another table

I am experimenting with pygrametl, trying to get data from one table in a database (source) into another table in a destination database.

The source table has the following schema:

The destination table uses the following schema:

In python I have the following code:

The error I am getting is as following:

Traceback (most recent call last): File ".\testex.py", line 35, in sourceDimension.insert(row) File "Python\Python36-32\lib\site-packages\pygrametl\tables.py", line 357, in insert self.targetconnection.execute(self.insertsql, row, namemapping) File "Python\Python36-32\lib\site-packages\pygrametl__init__.py", line 663, in execute self.__cursor.execute(stmt, arguments) File "Python\Python36-32\lib\site-packages\pymysql\cursors.py", line 164, in execute query = self.mogrify(query, args) File "Python\Python36-32\lib\site-packages\pymysql\cursors.py", line 143, in mogrify query = query % self._escape_args(args, conn) KeyError: 'dname'

0 投票
0 回答
56 浏览

database - 如何使用 pygrametl 将 csv 文件中的 unicode 数据导入数据库?

当我尝试使用 pygrametl 中的以下代码在 PostgreSQL 的数据仓库中导入泰语数据时:

它有效,但它在文本中添加了“b”。如果我删除了 encode("utf-8") 部分,那么它会给我错误:

“列文本的缺失值”

如果我将文本更改为英文,则无需添加 encode("utf-8") 即可。仅当我正在读取的 csv 文件中有一些 unicode 字符时,才会显示该错误。

0 投票
0 回答
21 浏览

psycopg2 - 从 CSV 批量加载到 PostGres 时出错

代码因错误而失败 -

据我了解,错误是由于目标表为空而引起的。CSV 源也没有标题。这会影响代码吗?请找到用于开发代码的链接 - https://chrthomsen.github.io/pygrametl/

输出 1

输出 2