写点什么

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 )关注我们,并与我们的编辑和其他读者朋友交流。

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

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

关注

评论

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

从零开始:使用 Playwright 脚本录制实现自动化测试

霍格沃兹测试开发学社

OpenAI 或将推出多模态人工智能数字助理;研究发现部分 AI 系统已学会「说谎」丨 RTE 开发者日报 Vol.203

声网

为什么推荐将 IoTDB 服务地址配置为 HostName 而非 IP?

Apache IoTDB

巴黎奥运会:在线观看赛事直播平台开发与数据获取方法

软件开发-梦幻运营部

探索未知:风靡硅谷开发者的 Unstructured Data Meetup 即将登陆中国

Zilliz

AI 非结构化数据 Meetup Zilliz

Qualcomm CPU: IPQ9574, IPQ9554 and IPQ5322, what do you know?

wifi6-yiyi

WiFi7 ipq9574

低代码与Web开发:颠覆传统模式的现代技术

快乐非自愿限量之名

前端 Web 低代码

免费的集成组件有哪些?

RestCloud

ETL 数据集成 ETLCloud

Postgresql查询每个月最后一天的数据||查询每个月数据中的最后一条数据

李爽

postgresql #SQL

虚拟仿真云实训平台:更优质的教育资源服务

3DCAT实时渲染

虚拟仿真 实时渲染 仿真云

海外云手机——电商最有效的引流工具

Ogcloud

云手机 海外云手机 云手机海外版 电商云手机 跨境云手机

建木Hub流水线正式版上线啦!!限时送200分钟体验时长

都广科技

DevOps

大厂技术同学的落地困境

老张

团队管理 职业规划 职场发展 大厂求职

从XML配置角度理解Spring AOP

快乐非自愿限量之名

Java xml spring

特权账号管理的那些坑

芯盾时代

iam 统一身份认证 特权账号管理

【YashanDB知识库】ycm托管数据库时,数据库非OM安装无法托管

YashanDB

yashandb 崖山数据库 崖山DB

人类将会永生?谷歌 DeepMind重磅发布Alphafold 3 ——天花板级别的AI系统

GPU算力

深度学习 DeepMind 生物信息学 AlphaFold 蛋白质预测

低代码与AI技术发展:开启数字化新时代

不在线第一只蜗牛

人工智能 AI 低代码

容器技术:优化软件测试流程的利器

霍格沃兹测试开发学社

进一步解读英伟达 Blackwell 架构、NVlink及GB200 超级芯片

GPU算力

深度学习 英伟达 Blackwell GB200

在数字化时代保持企业财务管理的持续技术创新

智达方通

NFTScan | 05.06~05.12 NFT 市场热点汇总

NFT Research

NFT NFT\ NFTScan

国标参编征集 | 关于公开征集《物流企业数字化 第二部分:平台架构》国家标准起草单位的通知

信通院IOMM数字化转型团队

数字化转型 物流

字节面试:说说Java中的锁机制?

王磊

Java 面试

我,古希腊掌管「智算」的神!

白洞计划

AI 智算

Django性能之道:缓存应用与优化实战

不在线第一只蜗牛

sqlite django 缓存

个人名片升级攻略:ChatGPT助您塑造独特简历风格

测试人

软件测试 简历 ChatGPT

DevOps与低代码:重塑软件开发与运维新时代

EquatorCoco

DevOps 运维 低代码

有了1688跨境接口,没有1688代采系统怎么办?

tbapi

1688API接口 1688代采系统

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