|   登录   |   注册   |   设为首页   |   加入收藏   

用户登录

close

用户名:

密码:

新用户注册

close

用户名:

密码:

密码确认:

电子邮箱:

关注内容:

个人主页:

帮助

close

龙宇网成立于2008年3月,网站进入整体运作于2010年10月1日。

在这里,我们把它做成了一个真正意义上的网站,完全以个人的信息为内容,以网友的需要为主导,全力搜罗各种信息,建立完善的网站功能,使网友在这里可以第一时间找到所需要的信息。

现在,经过三年的努力,网站的资料已经相当丰富,而网站得到了大家的喜爱和认可。

但,我们还是会继续努力下去,让网间的这份快乐继续持续下去,让这份闲暇时的日子,与快乐一并同行。

寻觅快乐,网住快乐,关注网络,是龙宇网的宣言与承诺。

SQL-based 查询语言

标签: SQL-based
分类: 流式计算 发布时间: 2018-02-07 11:18:18 浏览次数: 477
内容提要: SQL-based query language是在SQL的基础上进行扩展的查询语言。

SQL-based query language是在SQL的基础上进行扩展的查询语言。我们为什么要提这种查询语言,以及在什么情况下我们可以使用这种查询语言,以及使用给我们带来哪些收益和好处。

我们为什么要提这种SQL-based query language, 先来看看目前都有谁在使用这种语言。

1、百度凤巢广告检索接口,就是采用的SQL-based, 搜索系统将用户的查询关键词作为where 条件, 提交的凤巢的广告检索系统,广告检索系统将SQL-based query进行解析,从海量数据中找出匹配的广告信息,返回给搜索系统。

2、spanner, google家大名鼎鼎的spanner, 分布式存储系统的重量实现。也是采用的SQL-based的query 接口。

3、PIG的语言是很类似SQL的,我们姑且也称之为SQL-based。

4、DBProxy,这个太使用了,百度的所有操作DB的逻辑,都要经过DBProxy, DBProxy我们也从另外一个文章来谈。这里先说说DBProxy的接口, 用户提交SQL-based, 然后DBProxy可以做分库分表,可以做数据聚合,如果同时查询MySQL和Redis的话,DBProxy做到数据聚合,那相对于业务实现者来说太幸福了, 只要写个类SQL就可以同时查询MySQL和Redis。

5、KSQL,kafka开源的最新数据引擎,一个实时数据流的SQL, 听着就很强啊,这个也刷新了我之前的想法,之前我只是想把SQL-based给固定下来,然后再跑起来执行,这个可以随时修改自己的schema,真正是所需即所得。

上面介绍了这么多实现系统,都是重量级的服务, 绝不耍花枪, 都在使用sql-based query language。所以,我们自己的系统中可以考虑了。使用类sql最大的优点:

1、简单易学,从学校出来的实习生都可以用。想想redis的查询接口, 真是学习的泪奔啊。做存储系统,支持SQL应该是标配,这样迁移成本就会低很多。

SQL-based query language 实现起来也不是特别复杂, 目前开源的实现就有很多,解析SQL的,如果我们想自己实现,系统自带词法和语法分析工具(flex&bison)就可以帮我们做到,同时还可以根据自己的实际需求对SQL进行扩展。

15
20

分类: 流式计算   |   评论: 0   |   引用: 0   |   浏览次数: 477