kafka和flume整合 kafka和flume的整合kafka和flume的整合应用非常的广泛Flume是一个数据采集搬运工。配置数据源,可以源源不断的将数据采集过来,flume不会持久性的保存数据,但是会做一个临时性的缓存,最后还是需要sink将数据落地到外部的存储系统,比如hdfs、kafka。实际上使用hdfs和kafka走的是两条线,flume和hdfs的整合一般都是做离线的批处理,而flume和kafka...
kafka的API kafka的API的简单应用生产者package com.chang;import org.apache.kafka.clients.producer.KafkaProducer;import org.apache.kafka.clients.producer.Producer;import org.apache.kafka.clients.producer.ProducerRecor...
Mapreduce和Spark的对比 MR和Spark的对比针对这两款计算框架从下边几个方面进行对比1.通用性1.1Spark一栈式,主要说的是,Spark不仅仅可以进行离线计算(SparkCore),同时还可以进行流式处理(SparkStreaming)、交互式计算(SparkShell,SparkSQL,StructStreaming,图计算(SparkGraphx),机器学习(SparkMLLib),也就是说我们可以在...
Spark的数据倾斜 Spark的数据倾斜1.数据倾斜的概念(这个不用说了都懂)略2.发生数据倾斜的现象个别的task运行时间明显长于其他的task发生OOM异常3.发生数据倾斜的原因spark只要是发生数据倾斜必然经历了shuffle,也就是shuffle是数据倾斜的必要条件4.发生数据倾斜之后的解决方案1.提高并行度程序运行缓慢,第一反应大多是资源分配不足,并行度不够。提高并行度是我们做数据...
Spark程序运行方式 Spark程序运行方式本文主要介绍Spark上传集群运行的过程及shell脚本的编写脚本文件编写参数介绍在linux环境下 spark-submit指令打印如下[hadoop@hadoop01 MyShell]$ spark-submitUsage: spark-submit [options] <app jar | python file> [app arguments]...
spark的wordcount之scala写法 读取内存的数据package com.aura.wordcountimport org.apache.spark.rdd.RDDimport org.apache.spark.{SparkConf, SparkContext}/** * 使用scala实现wordCount,读取内存中的List集合中的数据进行统计 */object _01wordCount { def...
Spark的wordCount之java的写法 Spark-WordCount 之java写法1.原始写法package com.aura.spark.day01;import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spark.api.java.JavaRDD;import org.apac...
Hadoop的RPC通信 概念RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。RPC采用客户机/服务器模式。请求程序就是一个客户机,而服...
Scala的基础算子的练习 对scala的数组和集合的一些常用的算子进行总结以代码的形式进行一些练习package com.aura.testobject ScalaFunction { def main(args: Array[String]): Unit = { //常用的算子的练习 map reduce sort count filter var array = Array[Int](...
shell脚本的编写 简单的shell脚本的编写1.helloworld脚本的编写#!/bin/bash //这是sh指令的路径a="hello world!" //定义一个变量并赋值"hello world"num=2 //定义一个变量 赋值2echo "a is:$a num is :$num"//$符号加上变量是取变量的值的意思运行结果: a is:hello world! nu...
Azkaban的使用 Azkaban1.Azkaban是什么zkaban是一套简单的任务调度服务,整体包括三部分webserver、dbserver、executorserver。Azkaban是linkin的开源项目,开发语言为Java。Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间...
Sqoop的使用 sqoop1.什么是sqoopsqoop 是 apache 旗下一款“Hadoop 和关系数据库服务器之间传送数据”的工具。sqoop的本质:将sqoop的迁入 迁出的命令 转换为mapreduce任务迁入: mysql —》 hdfs|hive|hbase从mysql读取数据 写出到hdfs上Mapper 读取数据 从数据库读取 InputFormat–>DBInputF...
hbase的批量数据导入-bulkload技术应用 Hbase的批量的数据导入Hbase的数据导入有如下的几种方式使用java API的方式java API中的put操作可以将数据导入到hbase中 其中包含单条和批量导入两种方式@Test public void test5() throws IOException { // 获取Hbase配置文件的对象 // HBaseConfiguration conf=(HBas...
Flume相关知识的总结 1.概述1.1什么是flume1、 Apache Flume 是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统,和Sqoop 同属于数据采集系统组件,但是 Sqoop 用来采集关系型数据库数据,而 Flume 用来采集流动型数据。2、 Flume 名字来源于原始的近乎实时的日志数据采集工具,现在被广泛用于任何流事件数据的采集,它支持从很多数据源聚合数据到 HDFS。3、 一般的...
hbase的过滤器 hbase的过滤器1.概述hbase的API中可以进行查询,但是这种查询一般只能单行或者是指定行键的范围的查询,在正常需要精细查询的场合有诸多的不便,所以系统内置了很多的过滤器2.过滤器汇总过滤器分为两大类:比较过滤器和专用过滤器3.比较过滤器行键过滤器 RowFilterFilter filter1 = new RowFilter(CompareOp.LESS_OR_EQUAL...
Mysql和hbase的数据互导 Mysql和hbase的数据互导1.将mysql中的表导入到hbase中主机hadoop01 的mysql数据库中的的 test数据库下的student表中的数据如下:±-----±-------±-----------±------+| s_id | s_name | s_birth | s_sex |±-----±-------±-----------±------+| 0...
hbase和Hive的整合 hbase和Hive的整合1.原理Hive 与 HBase 利用两者本身对外的 API 来实现整合,主要是靠 HBaseStorageHandler 进行通信,利用 HBaseStorageHandler,Hive 可以获取到 Hive 表对应的 HBase 表名,列簇以及列,InputFormat 和 OutputFormat 类,创建和删除 HBase 表等。Hive 访问 HBase ...
Hbase的Api操作 public class TestHbaseConnect { static HBaseAdmin admin = null; static Connection conn = null; public static void create_namespace() throws IOException { // Builder ns = NamespaceDescriptor.cr...
Hbase的shell操作 DDL创建namespacecreate_namespace “namespace的名字”创建表help “create”hbase> create ‘ns1:t1’, {NAME => ‘f1’, VERSIONS => 5}hbase> create ‘t1’, {NAME => ‘f1’}, {NAME => ‘f2’}, {NAME =>...