当前位置: 首页 > wzjs >正文

郑州市二七区建设局网站友情链接多久有效果

郑州市二七区建设局网站,友情链接多久有效果,旅行社门店做网站嘛,网站使用费用简介 1. Spark-SQL概述:Spark SQL是Spark处理结构化数据的模块,前身是Shark。Shark基于Hive开发,提升了SQL-on-Hadoop的性能,但对Hive的过度依赖制约了Spark发展。SparkSQL抛弃Shark代码,汲取其优点后重新开发&#x…

简介

1. Spark-SQL概述:Spark SQL是Spark处理结构化数据的模块,前身是Shark。Shark基于Hive开发,提升了SQL-on-Hadoop的性能,但对Hive的过度依赖制约了Spark发展。SparkSQL抛弃Shark代码,汲取其优点后重新开发,在数据兼容、性能优化、组件扩展上优势明显。Shark停止开发后,衍生出SparkSQL和Hive on Spark。SparkSQL简化RDD开发,提供DataFrame和DataSet两个编程抽象 。

2. Spark-SQL特点:一是易整合,能无缝融合SQL查询与Spark编程;二是统一数据访问,以相同方式连接不同数据源;三是兼容Hive,可在已有Hive仓库运行SQL或HQL;四是支持标准数据连接,借助JDBC或ODBC连接 。

3. DataFrame解析:DataFrame是基于RDD的分布式数据集,类似二维表格,带有schema元信息,每列有名称和类型。这使Spark SQL能优化数据源和变换操作,性能优于RDD。其API提供高层关系操作,支持嵌套数据类型,查询计划由Spark catalyst optimiser优化,执行效率高 。

4. DataSet解析:DataSet是分布式数据集合,是DataFrame的扩展。它具备RDD的强类型和lambda函数能力,以及Spark SQL优化执行引擎的优势。使用样例类定义数据结构,具有类型安全检查和查询优化特性,DataFrame是DataSet的特例(DataFrame=DataSet[Row]),二者可相互转换 。

核心编程

1. Spark SQL上下文环境:Spark SQL是对Spark Core的封装,其上下文环境对象也经过封装。早期版本有SQLContext和HiveContext两种查询起始点,分别用于Spark自身SQL查询和连接Hive查询。而SparkSession是最新的查询起始点,它整合了SQLContext和HiveContext的功能,内部封装了SparkContext,在spark - shell中会自动创建名为spark的SparkSession对象。

2. DataFrame创建:SparkSession是创建DataFrame和执行SQL的入口,创建方式有三种,包括从Spark数据源创建,例如读取spark的bin/data目录下的user.json文件来创建DataFrame;从现有RDD转换;从Hive Table查询返回。同时要注意从文件读取数字时数据类型的处理,默认用bigint接收。

3. 基于SQL语法的DataFrame操作:使用SQL语法查询DataFrame时,需要临时视图或全局视图辅助。以读取user.json文件创建DataFrame为例,先创建DataFrame,接着为其创建临时表,然后通过SQL语句查询全表并展示结果。创建全局表时,首次运行可能因缺少配置报错,需将hive - site.xml文件复制到spark的conf路径下,配置完成后创建全局表并进行查询展示

4. DataFrame的DSL语法:DataFrame提供DSL用于管理结构化数据,支持在多种语言中使用,且无需创建临时视图。操作包括创建DataFrame,查看Schema信息,如通过 printSchema 方法;选择特定列数据,如 select("username") ;进行列运算,运算时列需用 $ 或引号表达式;数据过滤,依据条件筛选数据;按列分组统计数据条数 。

5. RDD转换为DataFrame:在IDEA开发时,RDD与DF或DS互操作需导入 import spark.implicits._ ,且 spark 是SparkSession对象变量名,需先创建该对象,且只能用 val 修饰。在spark-shell中无需手动导入。RDD可直接调用 toDF 方法转换,实际开发常借助样例类实现 。

6. DataFrame转换为RDD:DataFrame是对RDD的封装,可直接获取内部RDD。获取后RDD存储类型为 Row ,通过 collect 方法收集数据,可使用 getAs 方法按列名获取具体值 

7.DataSet操作:DataSet具有强类型特性,创建方式多样。可使用样例类序列,如定义 Person 样例类后,通过 Seq(Person("zhangsan",2)).toDS() 创建;也能用基本类型序列创建,但实际中更多从RDD转换得到。RDD可自动转换为DataSet,借助样例类定义结构,属性反射成列名。DataSet可直接获取内部RDD 。

8. DataFrame与DataSet转换:DataFrame是DataSet的特例,二者可相互转换。DataFrame转DataSet需借助样例类,使用 as 方法;DataSet转DataFrame则调用 toDF 方法 。

9. RDD、DataFrame、DataSet关系:从版本演进看,RDD在Spark1.0出现,DataFrame于Spark1.3诞生,Dataset在Spark1.6引入。三者均为分布式弹性数据集,有惰性机制、共同函数,会自动缓存运算,都有分区概念,DataFrame和DataSet还能模式匹配获取字段信息。不过,RDD常与spark mllib配合,不支持sparksql操作;DataFrame每行类型为Row,访问列值需解析,支持SparkSQL操作与便捷保存方式;DataSet是DataFrame扩展,强类型且自定义样例类后可自由获取行信息 。

http://www.dtcms.com/wzjs/583461.html

相关文章:

  • 一级a做爰片免费网站 视频沙井网站优化
  • 网站建设工作 方案网站建设与实践模板
  • 在线动画手机网站模板下载没有网站如何做SEO推广有用吗
  • 网络设计用什么软件搜索引擎优化的主要特征
  • 互联网个人用户网站网络营销方案例文
  • 开源手机网站模板浏阳网站开发
  • 南京高端网站制作公司哪家好上传文件生成链接下载
  • 成都网站建设推广详情phpcms网站模版下载
  • 重庆网站建站网站开发发展方向
  • 网站速度舆情信息范文
  • 公司做一个网站如何定位贵阳酒店网站建设
  • 网站案例英文爱廷玖达泊西汀
  • 安徽鲲鹏建设集团有限公司网站河北邯郸什么时候解封
  • 网站开发是先给钱还是营销方案总结
  • 网站建设与管理任务分工重庆网站建设seo
  • 个人网站模板素材下载做网站文字编辑工作好不好
  • 比特币网站怎么做后端开发需要学多长时间
  • 网站备案 地域软文营销文章
  • 免费文档模板素材网站电商网站建设 问题与解决方案
  • 福建建设厅网站工程履约保险余姚市建设局网站
  • 南宁模板建站上海做征信服务的公司网站
  • 潍坊网站制作公司备案号在哪里查询
  • iis发布网站乱码国内优秀的个人网站
  • 网站开发属于什么部门国外做的比较的ppt网站有哪些方面
  • python做网站青岛新网站设计公司
  • 网站建设岗位将来有什么发展北京互联网公司大厂有哪些
  • 黄石网站建设黄石三亚专业做网站
  • 网站开发合同模版中企动力为什么一直招人
  • 招一个程序员可以做网站吗打开网站 磁盘空间不足
  • 电商网站开发的背景及意义seo电商运营是什么意思