0 前言
数据分析里面通常采用表格结构来存储数据,如果采用数据库存储了非结构化数据(例如MongoDB),但是我们又想采用SQL语言,并按照SQL的一套方法来做数据分析(比如用Tableau或者BI),此时就需要借助MongoDB Connector for BI的帮助。
这篇文章主要讲解Tableau连接MongoDB的方法,内容包含:
1 连接的逻辑
由于MongoDB是非关系型数据库,所以连接逻辑是这样的:
- MongoDB将数据传输给MongoDB BI Connector
- MongoDB BI Connector将数据转成关系型数据(表格)
- Tableau连接到MongoDB BI Connector,获取表格
2 Windows下安装MongoDB BI Connector
根据官方文档安装即可,我这里较官方教程做点补充。
2.1 下载和安装
这里放上下载链接,直接从官网下载安装就行了。
2.2 生成schema
安装完成后会发现,总共有2个可执行文件:

其中mongodrdl.exe负责生成schema文件,mongodrdl.exe负责和MongoDB数据库连接。
那为什么要生成schema文件呢?因为Connector也不知道应该怎么把非关系型数据转换成关系型数据,所以就先读取一下MongoDB里面都有哪些字段,然后利用这些字段生成表格。但是又不能每次都把数据读取一遍吧,所以就读取一次,然后记录成为schema文件。改文件的详细解释可以看官网。
对于我们而言,只需要在cmd命令行里面输入命令就行:
mongodrdl --host [xxx.com] -d [database_name] -c [collection_name] -u [user_name] -p [password] /authenticationMechanism:SCRAM-SHA-256 /authenticationDatabase:admin -o [xxxx.drdl]
其中,方括号里的内容根据自己情况填写:
- –host:MongoDB的地址
- -d:要连接的数据库名称
- -c:要连接的数据库collection名称
- -u:用户名,如果没有用户名密码就不写
- -p:密码,如果没有用户名密码就不写
- /authenticationMechanism:加密方式(没用用户名密码就不写这个),对于MongoDB4.+应该使用SCRAM-SHA-256
- /authenticationDatabase:登录的用户名密码存在MongoDB的那个数据库,一般是admin。如果没有用户名密码就不写这个
- -o:输出
schema文件的名称,通过冠以后缀.drdl
2.3 连接MongoDB数据库
之后就是让MongoDB BI Connector连接到MongoDB数据库,在cmd命令行输入命令即可:
mongosqld --schema [xxxx.drdl] --mongo-uri [xxx.com] --auth -u [user_name] -p [password] -mongo-authenticationMechanism:SCRAM-SHA-256
其中,方括号里的内容根据自己情况填写:
- –schema :上一步生成的
schema文件地址 - –mongo-uri:要连接的MobgoDB地址
- –auth:表面需要用户验证,如果没有用户名密码就不写
- -u:用户名,如果没有用户名密码就不写
- -p:密码,如果没有用户名密码就不写
- /authenticationMechanism:加密方式(没用用户名密码就不填),对于MongoDB4.+应该使用SCRAM-SHA-256
3 Tableau连接MongoDB BI Connector
我们借助ODBC驱动MongoDB BI Connector ODBC Driver连接,这里推荐按照官网安装。安装完成后打开ODBC数据源:

首先选择【系统DSN】,然后点击右边的【添加】:

箭头中的两个都可以,其差异可以去官网看:

这里填写Data Source Name(自己起个名字),TCP/IP Server &Port (MongoDB BI Connector服务器地址),如果有数据库需要登录的话,那几把下面的User和Password填上。

最后打开Tableau,选择MongoDB BI Connector

按照下图点击即可:

Reference
Document for MongoDB Connector for BI
Stackoverflow - unable to authenticate using mechanism “SCRAM-SHA-256”
Connect from Tableau Desktop
本文介绍了如何通过MongoDB Connector for BI在Windows环境下连接MongoDB,详细阐述了安装过程、生成schema的方法以及在Tableau中建立连接的步骤,帮助用户实现对MongoDB非结构化数据的SQL查询和分析。

5489

被折叠的 条评论
为什么被折叠?



