使用odbc 提升cube.js 查询dremio 的性能
主要是一个技术说明,后续开发相关的driver
原理
dremio 是支持obdc 访问的,odbc 是比直接的http 访问有更快的性能,而且可以使用更加标准的sql 查询
参考处理
社区已经有了完整的实现node-odbc 我们可以使用来使用
参考demo
dremio 的odbc 需要先安装,具体参考官方文档,对于mac 需要先安装unixodbc然后安装dremio的odbc,注意目前对于linux 没有debian包,只有rpm包
- 参考代码
const odbc = require('odbc');
const username = "<>";
const password = "<>"
const host= "<>"
const port = 31010
async function connectToDatabase() {
// 此处对于driver的路径是mac 的linux 具体结合实际调整
const connectionConfig = {
connectionString:`DRIVER=/Library/Dremio/ODBC/lib/libdrillodbc_sbu.dylib;Host=${host};ConnectionType=Direct;Port=${port};UID=${username};PWD=${password}`,
connectionTimeout: 10,
loginTimeout: 10,
}
const connection2 = await odbc.connect(connectionConfig);
let result = await connection2.query(`select * from "@dalong".gitlab`)
console.log(result)
}
connectToDatabase();
说明
基于odbc 我们可以一个cube.js driver 对于dremio的性能来说会有不少的提升的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2017-03-21 caddy server 几个常用插件
2016-03-21 nginx windows 版 创建windows 服务