热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Spark高难度对话SQLServer

在我们欢天喜地迎接超级长假的时候,地球的另半面拉斯维加斯正在进行着一场超级火爆的GIIS(GlobalInformationIndustrySummit)峰会。看名头,这是一场信息

在我们欢天喜地迎接超级长假的时候,地球的另半面拉斯维加斯正在进行着一场超级火爆的 GIIS (Global Information Industry Summit)峰会。看名头,这是一场信息领域的全球峰会,峰会的少不了 DB-Engines 公布的前 300 名 SQL 以及 NoSQL ,耳熟能详的有 Oracle, SQL Server, MySQL, PostgreSQL, DB2, Redis 等等。而近来大红大紫的 big data 领军人物,Hadoop, Spark, Hive, Flink 等也是悉数到场。

自费参加峰会的 L, 也是兴致勃勃,一改往日长假必远游的定律,来到拉斯维加斯。

奇怪的现场布置也是让 L 匪夷所思,巴洛克式的拉斯维加斯参会厅,足以容纳 20000 多家站台,今天却一切为二。

挂着红布的半边,是 Oracle, SQL Server 等商业巨头的阵营,各位负责人正装凛然,狗牌挂的一个比一个大,鼻子敲得一个高过一个。从他们飞扬的涂抹中,已然数据库的天下从来都是老子说了算。L 想靠近仔细看看各家的杀手锏,却被黑鬼保安拦了下来,一个大摆开的指着 Summit Introduction (入门须知)牌子,L 拿下他那因为长期熬夜写 SQL 而高度近视达 1200 度 的镜片,俨然还能看清须知上红色标红的参会价格 $1100. 虽然对 SQL 几乎痴迷,但这几近半个月薪水的价格,还是让他垂下了高扬的头。

举兴而来,败兴而归。

L 转了身,无奈的走向了另一边。这一边,满盘皆绿,绿色的欢迎布,绿色的小旗子,全是 NoSQL 大佬。仔细瞅了瞅,门口的指示牌,仅标了 Free 四个字母!“这便宜赚大了”,L 一个箭步冲了进去。

Cloudera, Hortonworks 两位占据了大门两侧。瞧那几位绿色妹子,肤白腿直,烟熏妆一个比一个妖娆,L 不禁想起来去年泰国之旅,尤其在芭东过的那一夜,永世难忘。

不知不觉 L 遛过了只有在书中才见过的 Hive, Spark, Flink,Kylin, Redis, 还有正在研究的 Elastic, MongoDB , 一堆尚未听说过的 Splunk, HAHA, Vertica, RocksDB.

虽然见不到熟知的 SQL Server 和 Oracle 大佬,但 big data 界的大佬都是见了个遍,也算没白花这个机票钱。L 逛得也累了,出来场子透透气,看到旁边的 Starbucks,顿时来了劲,早想尝一口美国正宗的星爸爸了,可不能错过。

刚嘬了两口的 L 再次来到绿色阵营门口,正好碰上 Spark 和 SQL Server 也出来透气,两人夹着烟,正你一句我一句的攀谈起来。

SQL Server: 小 S, 听说你最近动作很大啊。

Spark : 大 S, 哪有的事嘛。不过吃口饭而已。

说完,两人都失口大笑,L 看他们,觉得比兄弟还亲。

SQL Server: 小 S, 我们的很多老顾客说,你们很快。你说说,你们到底快在哪里了嘛?

Spark: 快是男人的必备技能,好吧。

SQL Server: 说正经的呢!

Spark: 你看看你们,都老了呢。不中用了吧。

SQL Server: 去,走了,聊不下去了。

Spark: 哈哈哈,好好好。 来支笔,我给你画一下。

L 看着 Spark 在白墙上,慢慢画出了这幅草图:

《Spark 高难度对话 SQL Server》
《Spark 高难度对话 SQL Server》

SQL Server: 这也不能说明什么问题吧

Spark: 你仔细看。 你家的分布式,顶多 8 台机,连着 Master 一起算,顶多9 台。那么这 9 台能否同一时间处理同一个数据集呢? 肯定是不行的,对吧。因为这些 机器之间的数据总是存在一定的延时窗口,同步的机器只能有 3 台,假定是 s1 状态,而另外几台机器都是存着 s0 的状态。 而我们家的集群就不一样了,要几台有几台,分分钟上线 1000 台也是小事。如果将 10T 数据均分到这些集群的机器上,并且都存在内存中做计算,你想快,这还是事儿嘛?

SQL Server: 难怪我们的部分客户都开始动摇了

Spark: 再想一想,你们那 sql server 一核心 $15000, 人家 10 核心就被成本整死了,搭上 windows server 一核心 $6000, 贸易战咯,钱不好赚啊。

SQL Server: 那你们的数据源来自哪里呢?把这些数据源均分到每台机器也不好算啊

Spark: 数据源都来自你们的库里啊。我们有 JDBC, 均分那是细节问题,配置一下分区就可以了。大 S , 我再给你画一张图,保你明白。

《Spark 高难度对话 SQL Server》
《Spark 高难度对话 SQL Server》

整个流程都明白了吧。就是这么简单,将你们的数据先定义好,分成多个线程来抽。只是怕线程开多了,把你们给堵死,哈哈。

SQL Server : 看上去好像很简单的样子嘛。来给我讲讲细节呗,比如你们是用什么接口语言来抓我们库里的数据啊,你们的 Master 是怎么调度那么多的 Job 呢?

Spark: 看家本领都 show 给你了,也不给我买杯星爸爸,不讲 。

SQL Server: 淘气!

Spark 头也不回,走掉了。。。留下 SQL Server 还在看着那两幅图,突然他想到了什么,掐掉烟赶紧跑回去了。

L 来到白墙前,打开 Mac, 在有道云笔记本上,开始写道:

在我们欢天喜地迎接超级长假的时候,地球的另半面拉斯维加斯正在进行着一场超级火爆的 GIIS (Global Information Industry Summit)峰会。。。

故事纯属虚构,您乐了就成


推荐阅读
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 本文总结了在SQL Server数据库中编写和优化存储过程的经验和技巧,旨在帮助数据库开发人员提升存储过程的性能和可维护性。 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • 本文介绍如何使用 Python 的 DOM 和 SAX 方法解析 XML 文件,并通过示例展示了如何动态创建数据库表和处理大量数据的实时插入。 ... [详细]
author-avatar
kk1049057
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有