无法在 python UDF Loader 中为 monetdb

问题描述

我想通过使用 python UDF 加载器函数在我的 monetdb 数据库中加载数据。

UDF 加载器的代码如下所示:

create or replace loader camera_loader() language python {
import json
import os
data_path = r'/path/to/data'
cam_id = []
cam_seller_id = []
cam_description = []
cam_details = []
for sdir in os.scandir(data_path):
    seller_id = sdir.name
    cam_seller_id.append(seller_id)
    for file in os.scandir(sdir.path):
        fl_path = file.path
        file_name = file.name
        file_number = file_name.split(sep='.')[0]
        file_id = seller_id +'/'+ file_number
        cam_id.append(file_id)
        with open(fl_path) as f:
            f_data = json.load(f)
            pg_title = f_data['<page title>']
            cam_description.append(pg_title)
            del f_data['<page title>']
            rest_dict = f_data
            cam_details.append(str(rest_dict))
tables_dict = {'cam_id':cam_id,'cam_description':cam_description,'cam_details':cam_details}
_emit.emit(tables_dict)
};

运行上述查询以创建加载器 camera_loader() 后,我尝试通过以下方式在我的 camera 中创建一个名为 cam_schema 的表:

create table cam_schema.camera from loader camera_loader();

我收到以下错误消息:

Python exception
  24.         cam_details.append(str(rest_dict))
  25.   tables_dict = {'cam_id':cam_id,'cam_details':cam_details}
> 26.   _emit.emit(tables_dict)
  27. 
Failed to create NumPy array.

我已确保 embedpy3true 设置等于 cam_db

我还确保在我工作的环境中安装了numpy

欢迎任何解决此问题的帮助和建议!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)