- 博客(55)
- 收藏
- 关注
原创 Mac item2常用快捷键
我常用的一些快捷键新建标签:command + t关闭标签:command + w垂直分屏:command + d水平分屏:command + shift + d 标签新建标签:command + t关闭标签:command + w切换标签:command + 数字 command + 左右方向键切换全屏:command + enter查找:comman...
2019-01-22 18:10:00 228 1
原创 数据仓库之人物篇
Power BI DataV FineBI 鼎数 支持数据源 mysql,oracle excel,text,json,pdf ,pdf, Mysql,oracle,CSV,API,JSON,AnalyticDB, ...
2019-01-22 15:55:00 2045
原创 大数据、云计算区别
关于大数据和云计算的关系人们通常会有误解。而且也会把它们混起来说,分别做一句话直白解释就是:云计算就是硬件资源的虚拟化,大数据就是海量数据的高效处理 。 虽然上面的一句话解释不是非常的贴切,但是可以帮助你简单的理解二者的区别。另外,如果做一个更形象的解释,云计算相当于我们的计算机和操作系统,将大量的硬件资源虚拟化之后再进行分配使用,在云计算领域目前的老大应该算是 Amazo...
2019-01-22 15:50:00 637
原创 Kylin 优秀文章推荐
• 官方地址:http://kylin.apache.org/cn/ • 优秀书籍推荐:Apache Kylin 权威指南
2019-01-21 17:51:08 371
原创 presto,druid,sparkSQL,kylin的对比分析
1.这几个框架都是OLAP大数据分析比较常见的框架,各自特点如下: • presto:facebook开源的一个java写的分布式数据查询框架,原生集成了Hive、Hbase和关系型数据库,Presto背后所使用的执行模式与Hive有根本的不同,它没有使用MapReduce,大部分场景下比hive快一个数量级,其中的关键是所有的处理都在内存中完成。 ...
2019-01-21 17:02:25 1228
原创 Kylin On Druid Storage 原理与实践
目录 • What is Kylin Kylin 构建时的数据格式转换 Kylin 查询时的数据格式流转 What is Druid Storage • Why Kylin on Druid Storage • How Kylin on Druid Storage 1 Druid新增Binary指...
2019-01-20 19:38:00 959
原创 Kylin 之Cube 构建优化
从之前章节的介绍可以知道,在没有采取任何优化措施的情况下,Kylin会对每一种维度的组合进行预计算,每种维度的组合的预计算结果被称为Cuboid。假设有4个维度,我们最终会有24 =16个Cuboid需要计算。 但在现实情况中,用户的维度数量一般远远大于4个。假设用户有10 个维度,那么没有经过任何优化的Cube就会存在210 =1024个Cuboid;而如果用户有20个维度,那...
2019-01-20 13:30:01 707
原创 Kylin 可视化
1.可以与Kylin结合使用的可视化工具很多,例如: • ODBC:与Tableau、Excel、PowerBI等工具集成 • JDBC:与Saiku、BIRT等Java工具集成 • RestAPI:与JavaScript、Web网页集成 • Kylin开发团队还贡献了Zepplin的插件,也可以使用Zepplin来访问Kylin服务。 • ...
2019-01-19 23:50:27 1309
原创 Kylin 流式构建
1.前提条件 • Kylin将Kafka抽象成一个等同于Hive的数据源,也就是说Kylin是作为消费者从Kafka拉取数据的。因此Kylin需要依赖Kafka的客户端Jar包,因此我们需要设置环境变量KAFKA_HOME,指向kafka的客户端Jar的路径。eg: export KAFKA_HOME=/usr/lib/kafka/client • 写入Kafka中的数据...
2019-01-19 21:58:25 1321
原创 Kylin 增量构建
前面介绍了如何构建Cube并利用其完成在线多维分析的查询。每次Cube的构建都会从Hive中批量读取数据,而对于大多数业务场景来说,Hive中的数据处于不断增长的状态。为了支持Cube中的数据能够不断地得到更新,且无需重复地为已经处理过的历史数据构建Cube,因此对于Cube引入了增量构建的功能。 我们将Cube划分为多个Segment,每个Segment用起始时间和结束时间来标...
2019-01-18 19:15:08 902
原创 Kylin 快速入门
目录: • 数据准备 • 创建项目 • 创建Model • 创建Cube • Hive和Kylin性能对比 • 需求:实现按照维度(工作地点)统计员工信息 1.数据准备 在Hive中创建数据,分别创建部门和员工外部表,并向表中导入数据。1.1 原始数据 dep.txt10 ACCOUNT...
2019-01-18 17:56:14 796 2
原创 Kylin 安装启动时报:java.net.UnknownHostException
1.异常 Kylin在启动之后报一下错误:java.net.UnknownHostException: hadoop102:2181: 域名解析暂时失败。 具体错误信息如下:2019-01-19 22:00:43,140 INFO [main] zookeeper.ZooKeeper:438 : Initiating client connection, connectS...
2019-01-18 16:22:28 1540
原创 Kylin 安装启动时报:Please make sure the user has the privilege to run hbase shell
1.具体错误信息如下:[root@hadoop102 kylin]# bin/kylin.sh startRetrieving hadoop conf dir../opt/module/kylin/bin/find-hadoop-conf-dir.sh: line 33: hbase: command not foundKYLIN_HOME is set to /opt/module/...
2019-01-18 14:30:22 5287 1
原创 Kylin 环境搭建
1.安装地址 • 官网地址:http://kylin.apache.org/cn/ • 官方文档:http://kylin.apache.org/cn/docs/ • 下载地址:http://kylin.apache.org/cn/download/ 2.安装部署2.1 将apache-kylin-2.5.1-bin-hbase1x.tar.gz上传到Li...
2019-01-18 12:12:32 613
原创 Kylin 简单介绍
1.Kylin定义 Apache Kylin是一个开源的分布式分析引擎,提供Hadoop/Spark之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay开发并贡献至开源社区。它能在亚秒内查询巨大的Hive表。 2.Kylin特点 Kylin的主要特点包括支持SQL接口、支持超大规模数据集、亚秒级响应、可伸缩性、高吞吐率、BI工具集成等。(...
2019-01-18 11:22:26 3517 1
原创 Lambda 架构详解-2
1.架构简介 Lambda架构是大数据架构的一种,其作用无非是存储-处理-展示数据。关于其介绍,网上多篇博客已珠玉在前,这里不再赘述。可参见:2.架构之组成2.1 batch layer 如图可知,优选是Hive和Pig,次选是Spark、Hadoop;2.2 speed layer 如图可知,优选是Spark Streaming和Str...
2019-01-17 18:00:09 736
原创 Lambda 架构详解-1
1.为什么要用Lambda Architecture 在大数据处理系统中,数据处理的可靠性和实时性是一对矛盾,往往不可兼得。可靠性是指在任何异常出现的情况下,数据处理都能够做到不重不丢,并且最终得到准确的结果。实时性是指数据从输入到处理完毕输出的时间间隔。一般来说,对于像Hadoop MapReduce这样的批处理系统来说,可靠性很高,而实时性很差;对于Storm这样的流式处理系统来说,...
2019-01-17 17:30:44 11612 16
原创 大数据架构选择
1.简介 大数据是收集、整理、处理大容量数据集,并从中获得见解所需的非传统战略和技术的总称。虽然处理数据所需的计算能力或存储容量早已超过一台计算机的上限,但这种计算类型的普遍性、规模,以及价值在最近几年才经历了大规模扩展。 处理框架负责对系统中的数据进行计算,例如处理从非易失存储中读取的数据,或处理刚刚摄入到系统中的数据。数据的计算则是指从大量单一数据点中提取信息和见解的过程。...
2019-01-17 17:00:10 625
原创 Bug的严重程度(Severity)和Bug修复优先级(Priority)如何定义
Priority()和Severity(严重程度)是Bug的两个重要属性。通常,人员在提交Bug时,只定义Bug的Severity, 即该Bug的严重程度,而将Priority交给Project Leader 或Team Leader来定义,由他们来决定该Bug被修复的优先等级。某种意义上来说,Priority的定义要依赖于Severity,在大多数情况下,Severity越严重,那这个B...
2019-01-17 15:18:10 3333
原创 sonar 使用详解
想要养成良好的编码习惯吗?想要防微杜渐,修复可能引发故障的代码缺陷吗? 代码内聚性指标、代码复杂度、代码的重复性检查、包之间的依存度以及代码冲突性等,可以非常直观的通过sonar看到这些数据。 学习地址:https://www.sonarqube.org/...
2019-01-17 15:00:59 2308
原创 Spark_FAQ
该篇我们将会从如下几个方向进行Spark性能调优的学习: • Spark的监控 • Spark调优要点 • Spark数据倾斜调优 • Spark资源运行参数调优 • Spark程序开发调优 • Spark Shuffle调优 • JVM GC优化 1.Spark的监控 • Spark Web UI:Sp...
2019-01-16 21:58:06 463
原创 Spark 性能调优
该篇我们将会从如下几个方向进行Spark性能调优的学习: • Spark的监控 • Spark调优要点 • Spark数据倾斜调优 • Spark资源运行参数调优 • Spark程序开发调优 • Spark Shuffle调优 • JVM GC优化 1.Spark的监控 • Spark Web UI:Sp...
2019-01-16 15:36:08 622
原创 Spark 内核解析
该篇我们将会从如下几个方向进行学习Spark的内核机制: • Spark的通信架构 • Spark的脚本解析 • Spark的交互流程 • Spark的Shuffle过程 • Spark的内存管理 • Spark的部署模式 1.Spark 通信架构 Spark作为分布式计算框架,多个节点的设计与相互通信模式是其重要的组成...
2019-01-16 12:00:27 633
原创 Spark GraphX 简单介绍
Spark GraphX是一个分布式的图处理框架。社交网络中,用户与用户之间会存在错综复杂的联系,如微信、QQ、微博的用户之间的好友、关注等关系,构成了一张巨大的图,单机无法处理,只能使用分布式图处理框架处理,Spark GraphX就是一种分布式图处理框架。 下面以一个简单的示例进行说明:1. POM文件 在项目的pom文件中加上Spark GraphX的包:...
2019-01-14 14:20:50 985
原创 Spark MLlib 简单介绍
1.机器学习介绍 机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。 机器学习算法是从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。 机器学习可分为以下几...
2019-01-14 13:31:33 9782 1
原创 Spark Streaming 解析-7x24 不间断运行
1.检查点机制 检查点机制是我们在Spark Streaming中用来保障容错性的主要机制。与应用程序逻辑无关的错误(即系统错位,JVM崩溃等)有迅速恢复的能力.它可以使Spark Streaming阶段性地把应用数据存储到诸如HDFS或Amazon S3这样的可靠存储系统中, 以供恢复时使用。具体来说,检查点机制主要为以下两个目的服务。 • 控制发生失败时需要重算的状态数...
2019-01-14 11:36:10 798
原创 Spark Streaming 解析-Caching / Persistence
和RDDs类似,DStreams同样允许开发者将流数据保存在内存中。也就是说,在DStream上使用persist()方法将会自动把DStreams中的每个RDD保存在内存中。当DStream中的数据要被多次计算时,这个非常有用(如在同样数据上的多次操作)。对于像reduceByWindow和reduceByKeyAndWindow以及基于状态的(updateStateByKey)这种操作...
2019-01-14 11:16:41 203
原创 Spark Streaming 解析-累加器和广播变量
累加器(Accumulators)和广播变量(Broadcast variables)不能从Spark Streaming的检查点中恢复。如果你启用检查并也使用了累加器和广播变量,那么你必须创建累加器和广播变量的延迟单实例从而在驱动因失效重启后他们可以被重新实例化。如下例述:object WordBlacklist { @volatile private var instanc...
2019-01-13 22:25:39 697
原创 Spark Streaming 解析-输入转换和输出
1.初始化StreamingContextimport org.apache.spark._import org.apache.spark.streaming._val conf = new SparkConf().setAppName(appName).setMaster(master)val ssc = new StreamingContext(conf, Seconds(1))...
2019-01-11 15:53:23 851
原创 Spark Streaming 架构与抽象
Spark Streaming使用“微批次”的架构,把流式计算当作一系列连续的小规模批处理来对待。Spark Streaming从各种输入源中读取数据,并把数据分组为小的批次。新的批次按均匀的时间间隔创建出来。在每个时间区间开始的时候,一个新的批次就创建出来,在该区间内收到的数据都会被添加到这个批次中。在时间区间结束时,批次停止增长。时间区间的大小是由批次间隔这个参数决定的。批次间隔一般设...
2019-01-11 13:01:57 437
原创 Spark Streaming 简单示例(WordCount)
1.Pom.xml 加入以下依赖:<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming_2.11</artifactId> <version>${spark.version}</version...
2019-01-11 10:51:07 231
原创 Spark Streaming 简单介绍
1.什么是Spark Streaming Spark Streaming类似于Apache Storm,用于流式数据的处理。根据其官方文档介绍,Spark Streaming有高吞吐量和容错能力强等特点。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map...
2019-01-11 00:22:41 942
原创 Spark SQL 练习
1.数据说明(数据集是货品交易数据集) 每个订单可能包含多个货品,每个订单可以产生多次交易,不同的货品有不同的单价。 2.需求说明: • 计算所有订单中每年的销售单数、销售总额 • 计算所有订单每年最大金额订单的销售额 • 计算所有订单中每年最畅销货品3.具体实现import org.apache.spark.SparkCon...
2019-01-10 17:38:26 1358
原创 Spark SQL数据的读取和存储
Spark SQL 支持很多种结构化数据源,可以让你跳过复杂的读取过程,轻松从各种数据 源中读取到 Row 对象。这些数据源包括 Hive 表、JSON 和 Parquet 文件。此外,当你使用 SQL 查询这些数据源中的数据并且只用到了一部分字段时,Spark SQL 可以智能地只扫描 这些用到的字段,而不是像 SparkContext.hadoopFile 中那样简单粗暴地扫描全部数据...
2019-01-10 09:55:23 2351
原创 Spark SQL 解析-UDF,UDAF,开窗函数
1.UDF函数(用户自定义函数) • 注册一个UDF函数 spark.udf.register("addname",(x:String) => "name:"+ x) • spark.sql("select addname(name) as name from people").show详细案例:scala> val df = spark.read...
2019-01-09 22:02:07 377
原创 Spark SQL 解析-RDD、DataFrame、Dataset 三者之间转换
1.新的起始点SparkSession 在老的版本中,SparkSQL提供两种SQL查询起始点,一个叫SQLContext,用于Spark自己提供的SQL查询,一个叫HiveContext,用于连接Hive的查询,SparkSession是Spark最新的SQL查询起始点,实质上是SQLContext和HiveContext的组合,所以在SQLContext和HiveContext上可用...
2019-01-09 19:25:28 1119
原创 Spark SQL简单示例(WordCount)
1.SparkSQL查询-SparkShell中使用1.employees.json原始数据如下:{"name":"Michael", "salary":3000}{"name":"Andy", "salary":4500}{"name":"Justin", "salary":3500}{"name&quo
2019-01-09 17:06:06 1056
原创 Spark SQL 简单介绍
1.什么是Spark SQL • Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作为分布式SQL查询引擎的作用。 • 我们已经学习了Hive,它是将Hive SQL转换成MapReduce然后提交到集群上执行,大大简化了编写MapReduce的程序的复杂性,由于MapReduce这种计算模型执行效率比较慢。所有Spar...
2019-01-09 15:20:23 336
原创 SparkCore-RDD 练习
1.原始数据如下:* 格式 :timestamp province city userid adid* 某个时间点 某个省份 某个城市 某个用户 某个广告 1516609143867 6 7 64 16 1516609143869 9 4 75 18 1516609143869 1 7 87 12 1516609143869 2 8 92 9* 注意: • 用户ID范...
2019-01-08 23:52:14 678
原创 SparkCore 累加器和广播变量(Spark编程进阶)
本章介绍前几章没有提及的 Spark 编程的各种进阶特性,会介绍两种类型的共享变量: 累加器(accumulator)与广播变量(broadcast variable)。累加器用来对信息进行聚合,而 广播变量用来高效分发较大的对象。在已有的 RDD 转化操作的基础上,我们为类似查询 数据库这样需要很大配置代价的任务引入了批操作。为了扩展可用的工具范围,本章会介 绍 Spark 与外部程序交...
2019-01-08 23:33:39 541
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人