分类 - 大数据分析

2021-01-08 14:43:13    10    0    0

一. 支持类型查看

输入spark.read.,tab键提示支持的类型

  1. scala> spark.read.
  2. csv format jdbc json load option options orc parquet schema table text textFile


二. 两种读取方式

2020-12-23 18:03:14    20    0    0

一. 添加依赖

  • 根据hbase的版本,添加相同版本的 hbase-client 客户端。
  1. <dependency>
  2. <groupId>org.apache.hbase</groupId>
  3. <artifactId>hbase-client</artifactId>
  4. <version>2.0.2</version>
  5. </dependency>

二. 配置文件

  • 将安装Hbase的配置文件hbase-site.xml拷贝到src/main/resources/目录下,如果需要打包然后在其他服务器上跑的话,将该配置文件放置在classpath下即可。

2020-11-23 15:40:08    29    0    0

一. hive执行流程

HiveQL 通过命令行或者客户端提交,经过 Compiler 编译器,运用 MetaStore 中的元数 据进行类型检测和语法分析,生成一个逻辑方案(Logical Plan),然后通过优化处理,产生一个 MapReduce 任务。

  • Hive的存储结构包括数据库、表、视图、分区。数据库、表、分区都对应 HDFS 上的目录,而数据对应 HDFS 对应目录下的文件。

  • Hive 中所有的数据都存储在 HDFS 中,没有专门的数据存储格式,Hive 是读模式的数据库,可支持 TextFile,SequenceFile,RCFile 或者自定义格式等。

  • 只需要在创建表的时候告诉 Hive 数据中的列分隔符和行分隔符,Hive 就可以解析数据

    • Hive 的默认列分隔符:控制符 ^A(Ctrl + A),在CREATE TABLE语句中可以使用八进制编码\001表示。
    • Hive 的默认行分隔符:换行符 \n。
  • Hive 中包含以下数据模型:

    • database:在 HDFS 中表现为${hive.metastore.warehouse.dir}目录下一个文件夹
    • table:在 HDFS 中表现所属 database 目录下一个文件夹
    • external table:与 table 类似, 外部表存放目录${hive.metastore.warehouse.dir},或者指定目录。
    • partition:在 HDFS 中表现为 table 目录下的子目录。
    • bucket:在 HDFS 中表现为同一个表目录或者分区目录下根据某个字段的值进行 hash 散列之后的多个文件。
    • view:与传统数据库类似,只读,基于基本表创建。
2020-11-06 19:01:52    18    0    0

一. 安装包列表

安装包列表如下,安装前保证防火墙关闭、selinux被禁用、JDK1.8以上被成功安装。

  1. kafka_2.11-2.3.0.tgz
  2. zookeeper-3.4.10.tar.gz

二. 安装zookeeper

  • 在node1、node2、node3上分别做如下操作,三台配置文件完全相同。
2020-07-20 01:47:08    78    0    0

尽管Elasticsearch需要很少的配置,但是在上线之前,还是需要考虑许多设置的。

一. 系统配置

查看常见系统配置

  1. # 查看memory_lock
  2. GET _nodes?filter_path=**.mlockall
  3. # 查看系统描述符
  4. GET _nodes/stats/process?filter_path=**.max_file_descriptors


1.1 max number of open files

  • ulimit
    ulimit 可以临时修改,重启失效。
2020-03-14 22:53:12    97    0    0

    Spark 为包含键值对类型的 RDD 提供了一些专有的操作。这些 RDD 被称为 pair RDD。Pair RDD 是很多程序的构成要素,因为它们提供了并行操作各个键或跨节点重新进行数据分组的操作接口。

 

一. 创建Pair RDD

    在 Spark 中有很多种创建 pair RDD 的方式。很多存储键值对的数据格式会在读取时直接返回由其键值对数据组成的 pair

2020-03-13 18:54:40    49    0    0

RDD基础

    Spark 中的 RDD 就是一个不可变的分布式对象集合。每个 RDD 都被分为多个分区,这些分区运行在集群中的不同节点上。RDD 可以包含 Python、Java、Scala 中任意类型的对象,甚至可以包含用户自定义的对象。用户可以使用两种方法创建 RDD:读取一个外部数据集,或在驱动器程序里分发驱动器程序中的对象集合(比如 list 和 set)。

val line
2020-03-13 13:45:41    92    0    0


两种连接spark的方式


// 方法1:使用 SparkContext
val conf = new SparkConf().setAppName("MyApp").setMaster("local")
val sc = new SparkContext(conf)
val input = sc.textFile("file:///etc/profile")
input.fore
2020-02-21 22:19:18    50    0    0

Spark是什么

Spark 是一个用来实现快速而通用的集群计算的平台。在速度方面,Spark 扩展了广泛使用的 MapReduce 计算模型,而且高效地支持更多计算模式,包括交互式查询和流处理。Spark 的一个主要特点就是能够在内存中进行计算,因而更快。不过即使是必须在磁盘上进行的复杂计算,Spark 依然比 MapReduce 更加高效。


Spark 所提供的接口非常丰富。除

2020-01-15 22:35:17    53    0    0

一. 概要

  在 Hadoop 1.0 时代,NameNode 保存了整个 HDFS 的元数据信息,一旦 NameNode 挂掉,整个 HDFS 就无法访问,同时 Hadoop 生态系统中依赖于 HDFS 的各个组件,包括 MapReduce、Hive、Pig 以及 HBase 等也都无法正常工作,并且重新启动 NameNode 和进行数据恢复的过程也会比较耗时。这些问题在给 Hadoop 的使用者带来了极大的困扰。所幸的是,在 Hadoop2.0 中,HDFS NameNode 和 YARN ResourceManger 的单点问题都得到了解决。下面是整体架构图。