我在服务器122.xxx.xxx.xxx上有一个mongodb。 mongodb版本是3.4.1。 我被要求将MongoDB中的实时数据汇集到超集BI中,以创建各种仪表板。
我尝试过以下方式:
使用外部数据包装器mongodb + multicorn + yam_fdw o在postgresql中创建一个外表
在Postgresql控制台中:
CREATE EXTENSION multicorn;
CREATE SERVER mongodb_proxy_server FOREIGN DATA WRAPPER multicorn OPTIONS (wrapper 'yam_fdw.Yamfdw');
CREATE FOREIGN TABLE event_warnings (
"_id" varchar OPTIONS (type 'ObjectId'),
"ID" varchar, "Point" varchar,
"Start_Time" timestamptz, "Stop_Time" timestamptz, "Area" varchar,
"Value" float, "Station" varchar, "Device" varchar, "Warning_Type" varchar,
"Warning_Upper_Limit" float, "Warning_Lower_Limit" float,
"Warning_Method" int
)
SERVER mongodb_proxy_server OPTIONS (
db 'XXX', collection 'event_warnings',
host '122.XXX.XXX.XXX', port '27017', user 'username', password 'password'
);
超集
但是外表只出现在切片部分。在SQL实验室选项卡中,
任何人都知道如何使外表出现在SQL实验室选项卡中?
操作系统:Mac 64位
答案 0 :(得分:1)
另一种解决方案是将数据同步到PostgreSQL数据库。
我们在这里组建了一个开源平台https://github.com/pajachiet/mongo_sql_analytics_platform