【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

Simba Technologies 正将 SQL 的强大能力带向 Cassandra、Hadoop、BigQuery 和 MongoDB

  • 2013-01-30
  • 本文字数:1485 字

    阅读完需:约 5 分钟

SQL 的诞生是有原因的。从本质上说,它是一种为让非职业程序员查询数据库而设计的领域特定语言。“非职业程序员”有时指“临时程序员”,包括一般员工、业务分析师、秘书甚至偶尔是公司的副总裁。当一家公司从关系数据库迁移到 NoSQL 产品时,依然需要编写即时报告,这只会变得更加困难。

基于 ODBC 标准,Simba Technologies 正在将 SQL 的强大能力带向 Apache Cassandra、Apache Hadoop/Hive、Google BigQuery 和 MongoDB。最近,我们有机会访问了 Simba Technologies 的 CTO George Chow,谈到了该公司的 MongoDB 驱动。

InfoQ:首先,如何通过你们的 ODBC 驱动去操作 MongoDB 呢?这是个只读的产品吗,还是说也可以修改数据?

George Chow:我们的驱动目前是只读的。我们在产品的计划列表中有很多特性(也包括回写功能),但我们希望合作商和客户帮我们指定这些特性的优先级。

InfoQ:MongoDB 支持相当复杂的嵌套记录。作为 SQL 开发者,复杂的记录对我而言看起来是什么样子的?或者换句话说,复杂文档是如何映射到结果集中的列的?

George Chow:目前,该驱动能将复杂文档部分(如数组或嵌套文档)以 JSON 格式编码的 VARCHAR 暴露出来。我们正计划将它们分解为额外的非规范化列。比如,像下面例子中的简单文档:

复制代码
{ column1: "somevalue",
column2: "someothervalue",
somearray3: [ { text: "name1", author: "...", description: "..."
{ text: "name2"... }
...
{ text: "..."... }
{ text: "..."... }
{ text: "..."... } ]
}

将被分解为如下几列:

  • column1
  • column2
  • somearray3.text
  • somearray3.author
  • somearray3.description

InfoQ:这种将文档分解为基于 JSON 的 varChar 类型列的方法,看上去很容易使用,这是已经提供的功能还是将来要发布的功能?

George Chow:这个功能在我们将来计划的产品特性列表中。

InfoQ:你们的 MongoDB ODBC 驱动程序是否兼容 SQL Server 的链接服务器功能?如果兼容,是不是一个查询就能同时支持 SQL Server 表和 MongoDB 存储?

George Chow:我们已经能让驱动能直接访问普通的桌面应用,例如 Microsoft Excel 和 Tableau。我们希望任何 ODBC 应用都能使用这个驱动,但到目前为止,我们的精力都放在这两个应用上了。我们其他的大数据 /NoSQL 驱动(如支持 Hadloop/Hive 和 Google BigQuery 的驱动)也有类似甚至更强的功能。虽然我们没有优先考虑,但 Microsoft SQL Server 的链接服务器特性绝对是可用的。对于 NoSQL 数据源的链接服务器,你有什么看法?你认为这是一种很重要的桥接方法吗?

InfoQ:我想的是从 SQL Server 到 NoSQL 的过渡。例如,假设有一个存储过程,在数据库表上可以正常调用。如果使用服务器链接,不需要修改任何应用程序,就可以直接调用 MongoDB。我没想到从一个后端数据库过渡到另一个的更简单方法。

我没有真正想过让最终用户使用该驱动程序,当然它是很有意义的。目前并没有很多允许最终用户直接查询 NoSQL 数据库的工具。你能举例说明在 Excel 中如何查询以及结果是什么样的吗?

George Chow:为了让你知道驱动是如何工作的,考虑如下的数据集:

我会定义 ODBC 的数据源,并按如下方式定义模式:

最后,我可以从 Excel 中进行查询。比如,对任何数据源,Excel 将会将 Select * from “music”.”tracks”作为第一个查询。

查看英文原文 Simba Technologies is bringing the power of SQL to Cassandra, Hadoop, BigQuery, and MongoDB


感谢臧秀涛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2013-01-30 05:212265
用户头像

发布了 81 篇内容, 共 22.8 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

如何优化多表查询情况下的查询性能问题

迹_Jason

数据库设计 架构设计 查询优化 数据优化

媒介狂想曲

善宝橘

媒介 想象

CloudQuery,数据库管理用它就够了!

BinTools图尔兹

数据库 sql 安全 工具软件

anyRTC直播带货解决方案

anyRTC开发者

音视频 WebRTC 直播 RTC

【高并发】面试官:讲讲高并发场景下如何优化加锁方式?

冰河

性能优化 高并发 线程安全 同步 加锁

比MySQL快839倍!揭开分析型数据库JCHDB的神秘面纱

京东科技开发者

数据库 JCHDB

干掉PPT!现场编码的职级晋升答辩你参加过么?

华为云开发者联盟

软件 开发者 API

华为程序员发现孩子不是自己的,怒提离婚!女方不要孩子!绿他的竟然是个酒吧混混!

程序员生活志

华为 程序员

多种方式实现 LazyMan

局外人

大前端 队列 Promise

高难度对话读书笔记——表达自我

wo是一棵草

容器技术之发展简史

阿里云基础软件团队

云原生

软件测试人员的职业发展之路

BY林子

软件测试 QA 职业发展

区块链来了 职业教育这么干

CECBC

区块链 职业教育

通过MapReduce降低服务响应时间

万俊峰Kevin

mapreduce Go 语言

spring-boot-route(十六)使用logback生产日志文件

Java旅途

Java Spring Boot logback

路径依赖:穷人很难逆袭突破的科学道理

程序员陆通

程序人生 穷人 逆袭 突破

血亏!阿里P8轻易把总结了近一年的java高级特性笔记送人了

996小迁

Java 学习 架构 笔记 Java高级特性

十年Java开发经验,走了五年弯路,整理了一份Java架构师进阶路线及进阶资料!

Java架构之路

Java 程序员 面试 程序人生 编程语言

优质数据库管理工具盘点,看看这三个软件的区别

BinTools图尔兹

数据库 sql 云原生 工具 编辑器

SpringBoot-技术专题-多环境下maven打包

洛神灬殇

Java-技术专题-Pattern类与Matcher类详解

洛神灬殇

技术解读丨GaussDB数仓高可用容灾利器之逻辑备份

华为云开发者联盟

数据 容灾 备份

Hive UDF/UDAF 总结

windism

重新学习面向对象设计之开放-封闭原则

IT老兵重开始

面向对象设计 OCP 开闭原则

SpringBoot-技术专题-Caffeine用法

洛神灬殇

蚂蚁金服架构师分享一套内部Java并发编程进阶笔记,白嫖太香了

Java架构追梦

Java 学习 架构 面试 并发编程

基于Flink+ClickHouse打造轻量级点击流实时数仓

Apache Flink

flink

每个数据科学家都应该知道的5个概念

计算机与AI

学习 数据科学

为什么学Go(二)

soolaugust

Go 语言

工作流引擎,企业运作加速器

Marilyn

敏捷开发 工作流 快速开发

一文带你了解文字识别

华为云开发者联盟

技术 识别 文字

Simba Technologies正将SQL的强大能力带向Cassandra、Hadoop、BigQuery和MongoDB_DevOps & 平台工程_Jonathan Allen_InfoQ精选文章