- 博客(54)
- 收藏
- 关注
原创 HIVE和HBASE区别
Apache Hive是一个构建在Hadoop基础设施之上的数据仓库。通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive不能够进行交互查询--因为它只能够在Haoop上批量的执行Hadoop。 Apache HBase是一种Key/Value系统,它运行在HDFS之...
2018-07-30 17:31:10 343
原创 spark高效的分布式计算架构
目标Scope(解决什么问题)在大规模的特定数据集上的迭代运算或重复查询检索官方定义:a MapReduce-like cluster computing framework designed for low-latency interativejobs and interactive use from an interpreter首先,MapReduce-like是说架构上和多数...
2018-07-21 14:54:25 8769
原创 模拟面试编写sql
1、原材料表(材料id,材料名称,材料单价,材料数量)2、商品表(商品id,商品名称,商品单价,材料id,材料数量)3、销售记录表(销售id,商品id,销售数量,销售日期)4、每日帐目汇总表(日id,日商品总成本,日商品总收入,日纯收入,销售日期)----当天算出前一天的5、每月帐目汇总表(月id,月商品总成本,月商品总收入,月纯收入,销售月份)----月初1号统计上一个月的drop...
2018-07-21 14:28:43 347
原创 常用面试SQL
S(S#,SN,SD,SA) 【分别代表学号,学员姓名,所属单位,学员年龄】C(C#,CN) 【分别代表课程编号,课程名称】SC(S#,C#,G) 【分别代表学号,所选的课程编号,学习成绩】insert into sc values(s1,c1,10);insert into sc values(s1,c2,10);insert into sc valu...
2018-07-21 14:26:37 551
原创 mapreduce初期学习
MapReduce框架作为Hadoop发展初期的核心计算框架,为大数据处理技术飞速演进提供了基石。在Hadoop生态圈中,MapReduce框架由于其成熟稳定的性能,仍然是离线批处理技术的主力。以我们的北京移动大数据集群为例,Hive、SparkSQL是支撑探索性数据查询的主要工具,其简单易懂的SQL语句查询,可以使具备基础数据库管理能力的人员轻松上手,完美地支撑了实时数据查询需求。在我最...
2018-07-19 10:54:49 531
原创 mapreduce编程初探
1.map和reduce1.1 mapReduce处理逻辑在本系列文章的第一篇中,曾对MapReduce原理做过简单的描述,在这里再重述一遍。 首先我们有两个文件word1.txt和word2.txt 其中word1.txt的内容如下:aaaabbbbccccddddaaaaword2.txt的内容如下:aaaaccccddddeeeeaaaa这...
2018-07-19 10:49:35 8012 2
原创 mapreduce新编程实例
前言上一篇文章,以WordCount为例讲了一下MapReduce的代码结构及运行机制,这篇文章将通过几个简单的例子进一步认识MapReduce。1.数据检索问题描述假设有很多条数据,我们从中查找包含某个字符串的语句。解决方案这个问题比较简单,首先在Map中获取当前读取的文件的文件名作为key,将要解析的数据按句号分割,逐句判断,如果包含指定的字符串则作为value输出。在...
2018-07-19 10:46:41 891
原创 mapreduce编程模板
1.MapReduce 编程模型的5个步骤: 1)迭代,将输入数据解析成 key/value 对; 2)将解析的 key/value经过Map处理映射成另一组key/value对; 3)根据key进行分组; 4)以分组为单位进行归约(Reduce 过程); 5)迭代,输出最终结果。2.MapReduce编程模型模板: 在进行编程过程只需改变Map()和Red...
2018-07-19 10:41:41 440
原创 mapreduce简单编写
一. MapReduce 编程模型还是以一个经典的图片来说明问题.1. 首先, 我们能确定我们有一份输入, 而且他的数据量会很大2. 通过split之后, 他变成了若干的分片, 每个分片交给一个Map处理3. map处理完后, tasktracker会把数据进行复制和排序, 然后通过输出的key 和value进行 partition的划分, 并把partition相同的map输...
2018-07-19 10:38:52 7001
原创 mapreduce常用计算模型详解必读
一.MapReduce应用场景MR能解决什么问题?一般来说,用的最多的应该是日志分析,海量数据排序处理。最近一段时间公司用MR来解决大量日志的离线并行分析问题。二.MapReduce机制对于不熟悉MR工作原理的同学,推荐大家先去看一篇博文:https://blog.csdn.net/weixin_42685589/article/details/81029931三.常用计算模型...
2018-07-19 10:36:03 951
原创 mapreduce求平均值
一、问题描述三个文件中分别存储了学生的语文、数学和英语成绩,输出每个学生的平均分。数据格式如下: Chinese.txt张三 78李四 89王五 96赵六 67Math.txt张三 88李四 99王五 66赵六 77English.txt张三 80李四 82王五 84赵六 ...
2018-07-19 10:27:35 1380
原创 mapreduce排序
一、问题描述文件中存储了商品id和商品价格的信息,文件中每行2列,第一列文本类型代表商品id,第二列为double类型代表商品价格。数据格式如下:pid0 334589.41pid1 663306.49pid2 499226.8pid3 130618.22pid4 513708.8pid5 723470.7pid6 998579.14pid7 831682.84pid8 ...
2018-07-19 10:26:05 1800 3
原创 mapreduce合并去重
一、问题描述对输入的多个文件进行合并,并剔除其中重复的内容,去重后的内容输出到一个文件中。file1.txt中的内容:20150101 x20150102 y20150103 x20150104 yfile2.txt中的内容:20150105 z20150106 x20150101 y20150102...
2018-07-19 10:24:32 2004
原创 mapreduce单表关联----求爷孙关系
一、问题描述下面给出一个child-parent的表格,要求挖掘其中的父子辈关系,给出祖孙辈关系的表格。输入文件内容如下:child parentSteven LucySteven JackJone LucyJone JackLucy MaryLucy FrankJack AliceJack JesseD...
2018-07-19 10:22:01 4850 3
原创 大数据面试题汇总【有自己的和网上总结的】
1. 选择题1.1. 下面哪个程序负责 HDFS 数据存储。c)Datanode 答案 C datanode1.2. HDfS 中的 block 默认保存几份?a)3 份 答案 A 默认 3 份1.3. 下列哪个程序通常与 NameNode 在一个节点启动?d)Jobtracker 答案 D1.4. HDFS 默认 Block Sizec)128MB 答案:...
2018-07-17 15:57:50 2250
原创 大数据面试题必读2
1.从前到后从你教育背景(学过哪些课)到各个项目你负责的模块,问的很细(本以为他是物理学博士,但是所有的技术都懂)2.hadoop 的 namenode 宕机,怎么解决先分析宕机后的损失,宕机后直接导致client无法访问,内存中的元数据丢失,但是硬盘中的元数据应该还存在,如果只是节点挂了,重启即可,如果是机器挂了,重启机器后看节点是否能重启,不能重启就要找到原因修复了。但是最终的解决方案应...
2018-07-17 15:45:27 389
原创 大数据面试题必读
kafka的message包括哪些信息 一个Kafka的Message由一个固定长度的header和一个变长的消息体body组成 header部分由一个字节的magic(文件格式)和四个字节的CRC32(用于判断body消息体是否正常)构成。当magic的值为1的时候,会在magic和crc32之间多一个字节的数据:attributes(保存一些相关属性,比如是否压缩、压缩格式等等...
2018-07-17 15:36:09 2115
原创 HDFS读写过程的详细分析
首先我们来认识一下HDFS, HDFS(Hadoop Distributed File System )Hadoop分布式文件系统。它其实是将一个大文件分成若干块保存在不同服务器的多个节点中。通过联网让用户感觉像是在本地一样查看文件,为了降低文件丢失造成的错误,它会为每个小文件复制多个副本(默认为三个),以此来实现多机器上的多用户分享文件和存储空间。HDFS特点: ① 保存多个副本,...
2018-07-17 15:34:15 332
原创 Hadoop 面试题及答案解析必读
目录 1 单选题 ...................................................................................................................... 5 1.1 ...
2018-07-17 15:34:05 5982
原创 scala(三)
一、面向对象编程——类 1、定义一个简单的类 1 2 3 4 5 class HelloWorld { private var name = "leo" def sayHello() { print("Hello, " + name) } def getName =...
2018-07-17 15:33:55 229
原创 scala(二)
一、映射 1、Scala映射就是键值对的集合Map。默认情况下,Scala中使用不可变的映射。 如果想使用可变集合Map,必须导入scala.collection.mutable.Map (导包时scala.collection.mutable._ 为可变;scala.collection.immutable._ 为不可变) val map =Map...
2018-07-17 15:33:44 203
原创 scala(一)
一、Scala 简介 1、Scala语言既可用于大规模应用程序开发,也可以用于脚本编程,2001年由Martin Odersk 开发,主要优势 速度和它的表达性。一门函数式编程语言,既有面向对象的特点,又有面向过程的特点。 2、Scala与Java关系:Scala代码需要经过编译为字节码,然后交由Java虚拟机来运行,可以任意调用就Java的代码。所以Scala也就是J...
2018-07-17 15:33:31 222
原创 Spark 介绍
安装在集群上的spark版本:spark-1.6.3-bin-hadoop2.6.tgz scala版本:scala-2.10.4.tgz1、spark是什么 Spark, 是一种通用的大数据计算框架, 正如传统大数据技术Hadoop的MapReduce、 Hive引擎, 以及Storm流式实时计算引擎等。 Spark包含了大数据领...
2018-07-17 15:33:21 330
原创 Spark集群基础概念 与 spark架构原理
一、Spark集群基础概念 将DAG划分为多个stage阶段,遵循以下原则: 1、将尽可能多的窄依赖关系的RDD划为同一个stage阶段。2、当遇到shuffle操作,就意味着上一个stage阶段结束,下一个stage阶段开始 关于RDD中的分区,在默认情况下(也就是未指明分区数的情况)1、如果从HDFS中读取数据创建RDD,在默认情...
2018-07-17 15:33:14 1836
原创 Hive(六)hive执行过程实例分析与hive优化策略
一、Hive 执行过程实例分析 1、join 对于 join 操作:SELECT pv.pageid, u.age FROM page_view pv JOIN user u ON (pv.userid = u.userid);执行的最后结果条数: page_view 表中的 userid 数目 * user 表中的 userid 数目实现过程:Map:(1)以 JOIN ON 条件中的...
2018-07-16 14:28:15 398
原创 Hive(五)hive的高级应用
一、视图视图:享用基本表的数据,不会生成另外一份数据创建视图:create view view_name as select * from carss;create view carss_view as select * from carss limit 500;查看视图:desc view_namedesc carss_view删除视图:drop view view_namedrop vie...
2018-07-16 14:27:57 290
原创 Hive(四)hive函数与hive shell
一、hive函数 1、hive内置函数 (1)内容较多,见《 Hive 官方文档》 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF (2)详细解释: http://blog.sina.com.cn/s/blog_83bb...
2018-07-16 14:27:47 729
原创 Hive(三)hive的高级操作
一、hive的各种join操作 语法结构:join_table:table_reference JOIN table_factor [join_condition]| table_reference {LEFT|RIGHT|FULL} [OUTER] JOIN table_reference join_condition| table_reference LEFT SEMI JOIN tabl...
2018-07-16 14:27:40 281
原创 Hive(二)hive的基本操作
一、DDL操作(定义操作) 1、创建表 (1)建表语法结构CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name[(col_name data_type [COMMENT col_comment], ...)] //字段注释[COMMENT table_comment] ...
2018-07-16 14:27:32 610
原创 Hive(一)基础知识
一、Hive的基本概念 (安装的是Apache hive 1.2.1) 1、hive简介 Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表, 并提供类 SQL 查询功能, hive 底层是将 SQL 语句转换为 MapReduce 任务运行(类似于插件Pig\impala\Spark Sql) ...
2018-07-16 14:27:23 508
原创 scala 的安装 与 IDEA安装使用
一、安装 scala 1、下载scala-2.11.8.msi 安装包, 首先去官网http://www.scala-lang.org/,然后点击导航栏的DOWNLOAD,进入下载链接:http://www.scala-lang.org/download/直接点击上面的按钮下载Windows安装包,准备安装 2、双击scala-2.11.8.msi安装包,启动安装程序, 单击N...
2018-07-16 14:27:16 750
原创 Hbase(七)hbase高级编程
一、Hbase结合mapreduce 为什么需要用 mapreduce 去访问 hbase 的数据? ——加快分析速度和扩展分析能力 Mapreduce 访问 hbase 数据作分析一定是在离线分析的场景下应用 1、HbaseToHDFS 从 hbase 中读取数据,分析之后然后写入 hdfs,代码实现: 12345678...
2018-07-16 14:27:07 398
原创 Hbase(六) hbase Java API
一、几个主要 Hbase API 类和数据模型之间的对应关系:1、 HBaseAdmin关系: org.apache.hadoop.hbase.client.HBaseAdmin作用:提供了一个接口来管理 HBase 数据库的表信息。它提供的方法包括:创建表,删 除表,列出表项,使表有效或无效,以及添加或删除表列族成员等。2、 HBaseConfiguration关系: org.apache....
2018-07-16 14:26:58 263
原创 Hbase(五) hbase内部原理
一、系统架构 客户端连接hbase依赖于zookeeper,hbase存储依赖于hadoop client:1、包含访问 hbase 的接口, client 维护着一些 cache(缓存) 来加快对 hbase 的访问,比如 region 的 位置信息。 (经常使用的表的位置信息) zookeeper:1、保证任何时候,集群中只有一个 master2、存贮所有 Region 的...
2018-07-16 14:26:50 206
原创 Hbase(四) 过滤器查询
引言:过滤器的类型很多,但是可以分为两大类——比较过滤器,专用过滤器过滤器的作用是在服务端判断数据是否满足条件,然后只将满足条件的数据返回给客户端;一、hbase过滤器的分类 1、比较过滤器 行键过滤器 RowFilterFilter filter1 = new RowFilter(CompareOp.LESS_OR_EQUAL, new BinaryComparator(Byt...
2018-07-15 20:56:14 954
原创 Hbase(三) hbase协处理器与二级索引
一、协处理器—Coprocessor 1、 起源Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执 行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase 中,统计数据表的总行数,需 要使用 Counter 方法,执行一次 MapReduce Job 才能得到。虽然 HBase 在数据存储层中集成了 MapReduce,能够有效...
2018-07-15 20:56:00 523
原创 Hbase(二)hbase建表
一、建表高级属性 下面几个 shell 命令在 hbase 操作中可以起到很到的作用,且主要体现在建表的过程中,看 下面几个 create 属性 1、bloomfilter 布隆过滤器 默认是 NONE 是否使用布隆过虑及使用何种方式, 布隆过滤可以每列族单独启用 使用 HColumnDescriptor.setBloomFilterType(NONE ...
2018-07-15 20:55:48 24612
原创 Hbase(一)基础知识
一、Hbase数据库介绍 1、简介 HBase 是 BigTable 的开源 java 版本。是建立在 HDFS 之上,提供高可靠性、高性能、列存储、 可伸缩、实时读写 NoSQL 的数据库系统。 NoSQL = NO SQL NoSQL = Not Only SQL 把 NoSQL 数据的原生查询语句 封装成 SQL HBase Phoe...
2018-07-15 20:55:32 896
原创 spark 调优——基础篇
开发调优调优概述Spark性能优化的第一步,就是要在开发Spark作业的过程中注意和应用一些性能优化的基本原则。开发调优,就是要让大家了解以下一些Spark基本开发原则,包括:RDD lineage设计、算子的合理使用、特殊操作的优化等。在开发过程中,时时刻刻都应该注意以上原则,并将这些原则根据具体的业务以及实际的应用场景,灵活地运用到自己的Spark作业中。原则一:避免创建重复的RDD通常来...
2018-07-15 20:55:20 207
原创 Sqoop数据迁移工具
一、概述 sqoop 是 apache 旗下一款“ Hadoop 和关系数据库服务器之间传送数据”的工具。 导入数据: MySQL, Oracle 导入数据到 Hadoop 的 HDFS、 HIVE、 HBASE 等数据存储系统; 导出数据:从 Hadoop 的文件系统中导出数据到关系数据库 mysql 等 Sqoop 的本质还是一个命令行工具,和 HDFS, Hiv...
2018-07-15 20:55:03 416
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人