大数据
文章平均质量分 76
cwl_java
这个作者很懒,什么都没留下…
展开
-
Activiti7工作流引擎-流程定义
第6章 流程定义6.1 流程定义6.1.1 什么是流程定义流程定义是线下按照 bpmn2.0 标准去描述 业务流程,通常使用 activiti-explorer(web 控制台)或 activiti-eclipse-designer 插件对业务流程进行建模,这两种方式都遵循 bpmn2.0 标准。本教程使用activiti-eclipse-designer 插件完成流程建模。使用 desig...原创 2019-12-27 09:52:15 · 1172 阅读 · 0 评论 -
Activiti7工作流引擎-Activiti入门体验
第5章 Activiti 入门体验5.1 流程定义5.1.1 Activiti-Designer 使用5.1.1.1 Palette(画板)在 eclipse 或 idea 中安装 activiti-designer 插件即可使用,画板中包括以下结点:Connection—连接Event—事件Task—任务Gateway—网关Container—容器Boundary event...原创 2019-12-26 18:38:58 · 653 阅读 · 0 评论 -
Activiti7工作流引擎-Activiti服务架构图
第4章 Activiti 服务架构图在新版本中,我们通过实验可以发现 IdentityService,FormService 两个 Serivce 都已经删除了。所以后面我们对于这两个 Service 也不讲解了,但老版本中还是有这两个 Service,同学们需要了解一下。4.1 activiti.cfg.xmlactiviti 的引擎配置文件,包括:ProcessEngineConfig...原创 2019-12-26 17:57:00 · 1680 阅读 · 0 评论 -
Activiti7工作流引擎-Activiti7环境准备
第3章 环境准备3.1 三个环境第一个环境:没有加入工作流 SaaS-IHRM 系统作用:主要是为 activiti 工作流引擎的引入提供场景第二个环境:activiti 测试环境作用:用于测试 activiti 的 api,提供各种 service 接口。需要创建一个数据库:仅仅有 activiti 的数据表第三个环境:activiti 应用环境,加入工作流的 SaaS-IHRM 系...原创 2019-12-26 17:29:24 · 1786 阅读 · 0 评论 -
Activiti7工作流引擎-什么是Activiti7
第2章 什么是Activiti72.1 Activiti 介绍Alfresco 软件在 2010 年 5 月 17 日宣布 Activiti 业务流程管理(BPM)开源项目的正式启动,其首席架构师由业务流程管理 BPM 的专家 Tom Baeyens 担任,Tom Baeyens 就是原来 jbpm 的架构师,而 jbpm 是一个非常有名的工作流引擎,当然 activiti 也是一个工作流引擎...原创 2019-12-26 16:41:47 · 1038 阅读 · 0 评论 -
Activiti7工作流引擎-什么是工作流
第1章 什么是工作流1.1工作流介绍工作流(Workflow),就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标,或者促使此目标的实现”。1.2工作流系统一个软件系统中具有工作流的功能,我们把它称为工作流系统,一个系统中工作流的功能是什么?就是对系统的业务流程进行自动化管理,所以工作...原创 2019-12-26 15:58:26 · 644 阅读 · 1 评论 -
大数据-sqoop数据迁移
4. sqoop数据迁移4.1 概述sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系 统;导出数据:从Hadoop的文件系统中导出数据到关系数据库mysql等4.2 sqoop1与sqoop2架构对比sqoop1架构sqoop2架构4.3 ...原创 2019-12-26 15:36:46 · 615 阅读 · 0 评论 -
大数据-Azkaban实战
3. Azkaban实战Azkaba内置的任务类型支持command、java3.1. Command 类型单一 Job 示例Step 1: 创建 Job 描述文件创建文本文件,更改名称为mycommand.job 注意后缀.txt一定不要带上,保存为格式为UFT-8 without bom 内容如下type=command command=echo 'hello world'...原创 2019-12-26 14:19:49 · 411 阅读 · 0 评论 -
大数据-Azkaban安装
2. Azkaban安装2.1. 编译我们这里选用azkaban3.51.0这个版本自己进行重新编译,编译完成之后得到我们需要的 安装包进行安装注意:我们这里编译需要使用jdk1.8的版本来进行编译,如果编译服务器使用的jdk版本 是1.7的,记得切换成jdk1.8,我们这里使用的是jdk8u141这个版本来进行编译cd /export/softwares/ wget https:/...原创 2019-12-26 11:43:13 · 355 阅读 · 0 评论 -
大数据-Azkaban介绍
1. Azkaban介绍1.1. 为什么需要Azkaban一个完整的数据分析系统通常都是由大量任务单元组成shell脚本程序java程序mapreduce程序hive脚本等各任务单元之间存在时间先后及前后依赖关系, 为了很好地组织起这样的复杂执行计划, 需要一个工作流调度系统来调度执行;例如,我们可能有这样一个需求,某个业务系统每天产生20G原始数据,我们每天都要对 其进行处理...原创 2019-12-26 09:21:16 · 442 阅读 · 0 评论 -
大数据- Flume经典案例
5. Flume 案例一1. 案例场景A、B两台日志服务机器实时生产日志主要类型为access.log、nginx.log、web.log 现在要求:把A、B 机器中的access.log、nginx.log、web.log 采集汇总到C机器上然后统一收集到hdfs中。 但是在hdfs中要求的目录为:/source/logs/access/20180101/** /source/logs...原创 2019-12-25 18:11:01 · 600 阅读 · 1 评论 -
大数据-Flume的负载均衡
4. Flume 的负载均衡负载均衡是用于解决一台机器(一个进程)无法解决所有请求而产生的一种算法。Load balancing Sink Processor 能够实现 load balance 功能,如下图Agent1 是一个路由节点,负责将 Channel 暂存的 Event 均衡到对应的多个 Sink组件上,而每个 Sink 组件分别连接到一个独立的 Agent 上,示例配置, 如下所示:...原创 2019-12-24 17:46:53 · 474 阅读 · 0 评论 -
大数据-Flume高可用方案
3. 高可用方案在完成单点的Flume NG搭建后,下面我们搭建一个高可用的Flume NG集群,架构图如下所示:3.1. 角色分配Flume的Agent和Collector分布如下表所示:图中所示,Agent1数据分别流入到Collector1和Collector2,Flume NG本身提供了Failover机制,可以 自动切换和恢复。在上图中,有3个产生日志服务器分布在不同的机房,要...原创 2019-12-24 17:17:29 · 694 阅读 · 0 评论 -
大数据-Flume采集案例Agent级联
2.2. 采集案例2.2.5. Agent 级联分析第一个agent负责收集文件当中的数据,通过网络发送到第二个agent当中去 第二个agent负责接收第一个agent发送的数据,并将数据保存到hdfs上面去Step 1: Node02 安装 Flume将node03机器上面解压后的flume文件夹拷贝到node02机器上面去cd /export/servers scp ...原创 2019-12-24 17:07:11 · 562 阅读 · 0 评论 -
大数据-Flume采集文件到HDFS
2.2. 采集案例2.2.4. 采集文件到HDFS需求比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到 hdfs分析根据需求,首先定义以下3大要素采集源,即source——监控文件内容更新 : exec ‘tail -F file’下沉目标,即sink——HDFS文件系统 : hdfs sinkSource和sink之间的传递通道——...原创 2019-12-24 16:56:57 · 705 阅读 · 0 评论 -
大数据-Flume采集目录到 HDFS
2.2. 采集案例2.2.3. 采集目录到 HDFS需求某服务器的某特定目录下,会不断产生新的文件,每当有新文件出现,就需要把文件采集到HDFS中去思路根据需求,首先定义以下3大要素数据源组件,即source ——监控文件目录 : spooldir1.1. 监视一个目录,只要目录中出现新文件,就会采集文件中的内容1.2. 采集完成的文件,会被agent自动添加一个后缀:COMP...原创 2019-12-24 16:48:09 · 740 阅读 · 0 评论 -
大数据-Flume实战案例
2. Flume 实战案例案例:使用网络telent命令向一台机器发送一些网络数据,然后通过flume采集网络端口数据2.1. Flume 的安装部署Step 1: 下载解压修改配置文件下载地址:http://archive.apache.org/dist/flume/1.8.0/apache-flume-1.8.0-bin.tar.gzFlume的安装非常简单,只需要解压即可,...原创 2019-12-24 16:11:06 · 325 阅读 · 0 评论 -
大数据-Flume介绍
1. Flume 介绍1.1. 概述Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。Flume可以采集文件,socket数据包、文件、文件夹、kafka等各种形式源数据,又可以将采集到 的数据(下沉sink)输出到HDFS、hbase、hive、kafka等众多外部存储系统中一般的采集需求,通过对flume的简单配置即可实现Flume针对特殊场景也具备良好的自定...原创 2019-12-24 16:01:58 · 354 阅读 · 0 评论 -
大数据-Hive 的三种交互方式
2.7. Hive 的三种交互方式第一种交互方式 bin/hivecd /export/servers/apache-hive-3.1.0-bin/ bin/hive创建一个数据库create database if not exists mytest;第二种交互方式 HiveServer2hive官方推荐使用hiveserver2的这种交互方式,需要我们启动hiveserver2...原创 2019-12-24 15:37:30 · 758 阅读 · 0 评论 -
大数据-Hive的安装
2.5. Hive 的安装这里我们选用hive的版本是3.1.0这个release版本,可以兼容我们对应的hadoop3.x的版本下载地址为:http://archive.apache.org/dist/hive/hive-3.1.0/apache-hive-3.1.0-bin.tar.gz下载之后,将我们的安装包上传到第三台机器的/export/softwares目录下面去第一步:上传...原创 2019-12-24 14:35:30 · 246 阅读 · 0 评论 -
大数据-Hive的基本概念
2. Hive 的基本概念2.1. Hive 简介什么是 HiveHive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类 SQL查询功能。其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以 理解为一个将SQL转换为MapReduce的任务的工具,甚至更进一步可以说hive就是一个MapRedu...原创 2019-12-24 14:05:22 · 694 阅读 · 0 评论 -
大数据-数据仓库的元数据管理
1.5. 数仓的元数据管理元数据(Meta Date),主要记录数据仓库中模型的定义、各层级间的映射关系、监控数据仓库的数据状态及ETL的任务运行状态。一般会通过 元数据资料库(Metadata Repository) 来统一地存储和管理元数据,其主要目的是使数据仓库的设计、部署、操作和管理能达成协同和一致。 元数据是数据仓库管理系统的重要组成部分,元数据管理是企业级数据仓库中的关键组件,贯穿数...原创 2019-12-24 13:54:47 · 817 阅读 · 0 评论 -
大数据-数据仓库的分层架构
1.4. 数仓的分层架构按照数据流入流出的过程,数据仓库架构可分为三层——源数据、数据仓库、数据应用。数据仓库的数据来源于不同的源数据,并提供多样的数据应用,数据自下而上流入数据仓库后向上层开 放应用,而数据仓库只是中间集成化数据管理的一个平台。源数据层(ODS) :此层数据无任何更改,直接沿用外围系统数据结构和数据,不对外开放;为临时存储层,是接口数据的临时存储区域,为后一步的数据处理...原创 2019-12-24 13:48:59 · 1376 阅读 · 0 评论 -
大数据-数据库与数据仓库的区别
1.3. 数据库与数据仓库的区别数据库与数据仓库的区别实际讲的是 OLTP 与 OLAP 的区别。操作型处理,叫联机事务处理 OLTP(On-Line Transaction Processing,),也可以称面向交易的处理系统,它是针对具体业务在数据库联机的日常操作,通常对少数记录进行查询、修改。用户较为关心操 作的响应时间、数据的安全性、完整性和并发支持的用户数等问题。传统的数据库系统作为...原创 2019-12-24 11:55:51 · 1620 阅读 · 0 评论 -
大数据-数据仓库的概念
1. 什么是数仓1.1. 基本概念英文名称为Data Warehouse,可简写为DW或DWH。数据仓库的目的是构建面向分析的集成化数据环 境,为企业提供决策支持(Decision Support)。它出于分析性报告和决策支持目的而创建。数据仓库本身并不“生产”任何数据,同时自身也不需要“消费”任何的数据,数据来源于外部,并且开放 给外部应用,这也是为什么叫“仓库”,而不叫“工厂”的原因1...原创 2019-12-24 11:52:26 · 925 阅读 · 0 评论 -
大数据-UDF开发实例
3.3. UDF 开发实例3.3.1. Step 1 创建 Maven 工程 <dependencies> <!-- https://mvnrepository.com/artifact/org.apache.hive/hive-exec --> <dependency> <groupId>org.a...原创 2019-12-24 11:29:55 · 906 阅读 · 0 评论 -
大数据-Hive内置函数与自定义函数
3. Hive 函数3.1. 内置函数内容较多,见《Hive官方文档》官方文档查看系统自带的函数hive> show functions; 显示自带的函数的用法hive> desc function upper; 详细显示自带的函数的用法hive> desc function extended upper;常用内置函数# 字符串连接函数...原创 2019-12-24 11:23:35 · 405 阅读 · 0 评论 -
大数据-Hive排序
2.9. 排序2.9.1. 全局排序Order By:全局排序,一个reduce使用 ORDER BY 子句排序ASC(ascend): 升序(默认)DESC(descend): 降序ORDER BY 子句在SELECT语句的结尾。案例实操查询学生的成绩,并按照分数降序排列SELECT * FROM student s LEFT JOIN score sco ON s.s...原创 2019-12-24 11:02:21 · 702 阅读 · 0 评论 -
大数据-Hive联表语句
2.9. JOIN 语句2.9.1. 等值 JOINHive支持通常的SQL JOIN语句,但是只支持等值连接,不支持非等值连接。案例操作: 查询分数对应的姓名SELECT s.s_id,s.s_score,stu.s_name,stu.s_birth FROM score s LEFT JOIN student stu ON s.s_id = stu.s_ **2.9.2. 表的别名...原创 2019-12-24 10:53:38 · 292 阅读 · 0 评论 -
大数据-Hive查询语法
2. Hive 查询语法2.1. SELECTSELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list [HAVING condition]] [CLUSTER BY col_list | [DISTRIBUT...原创 2019-12-24 10:42:42 · 935 阅读 · 0 评论 -
大数据-Hive删除表与加载数据
1. Hive 表操作1.7. 删除表drop table score5;1.8. hive表中加载数据直接向分区表中插入数据create table score3 like score; insert into table score3 partition(month ='201807') values ('001','002','100');通过查询插入数据通过load方式...原创 2019-12-24 09:53:43 · 340 阅读 · 0 评论 -
大数据-Hive修改表
1. Hive 表操作1.6. 修改表重命名基本语法:alter table old_table_name rename to new_table_name;把表score4修改成score5alter table score4 rename to score5;增加/修改列信息查询表结构desc score5; 添加列alter table score5 ad...原创 2019-12-24 09:38:17 · 538 阅读 · 0 评论 -
大数据-Hive分桶表
1. Hive 表操作1.5. 分桶表将数据按照指定的字段进行分成多个桶中去,说白了就是将数据按照字段进行划分,可以将数据按照字段划分到多个文 件当中去开启 Hive 的分桶功能set hive.enforce.bucketing=true;设置 Reduce 个数set mapreduce.job.reduces=3;创建桶表create table course (c_id...原创 2019-12-24 09:35:43 · 680 阅读 · 0 评论 -
大数据-Hive分区表
1. Hive 表操作1.4. 分区表在大数据中,最常用的一种思想就是分治,我们可以把大的文件切割划分成一个个的小的文件,这样每次操作一个小的 文件就会很容易了,同样的道理,在hive当中也是支持这种思想的,就是我们可以把大的数据,按照每天,或者每小时 进行切分成一个个的小的文件,这样去操作小的文件就会容易得多了创建分区表语法create table score(s_id string,c...原创 2019-12-24 09:31:52 · 529 阅读 · 0 评论 -
大数据-Hive外部表的操作
1. Hive 表操作1.3. 外部表的操作外部表说明外部表因为是指定其他的hdfs路径的数据加载到表当中来,所以hive表会认为自己不完全独占这份数据,所以删除hive表的时候,数据仍然存放在hdfs当中,不会删掉管理表和外部表的使用场景每天将收集到的网站日志定期流入HDFS文本文件。在外部表(原始日志表)的基础上做大量的统计分析,用到的中间 表、结果表使用内部表存储,数据通过SELE...原创 2019-12-23 17:44:20 · 704 阅读 · 0 评论 -
大数据-Hive管理表的操作
1. Hive 表操作1.2. Hive管理表的操作建表初体验use myhive; create table stu(id int,name string); insert into stu values (1,"zhangsan"); select * from stu;Hive建表时候的字段类型字段类型创建表并指定字段之间的分隔符create table if no...原创 2019-12-23 17:36:27 · 250 阅读 · 0 评论 -
大数据-Hive表创建语法
1. Hive 表操作1.1. Hive表创建语法CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT ...原创 2019-12-23 17:24:39 · 489 阅读 · 1 评论 -
大数据-[案例]Reduce端实现JOIN
7. [案例] Reduce 端实现 JOIN7.1. 需求假如数据量巨大,两表的数据是以文件的形式存储在 HDFS 中, 需要用 MapReduce 程 序来实现以下 SQL 查询运算select a.id,a.date,b.name,b.category_id,b.price from t_order a left join t_product b on a.pid = b.id订单...原创 2019-12-23 17:07:38 · 351 阅读 · 0 评论 -
大数据-Shuffle过程
6. Shuffle 过程map 阶段处理的数据如何传递给 reduce 阶段,是 MapReduce 框架中最关键的一个流 程,这个流程就叫 shuffleshuffle: 洗牌、发牌 ——(核心机制:数据分区,排序,分组,规约,合并等过程)shuffle 是 Mapreduce 的核心,它分布在 Mapreduce 的 map 阶段和 reduce 阶段。一般 把从 Map 产生输出开...原创 2019-12-23 16:55:43 · 1461 阅读 · 0 评论 -
大数据-ReduceTask工作机制和ReduceTask并行度
5. ReduceTask 工作机制和 ReduceTask 并行度Reduce 大致分为 copy、sort、reduce 三个阶段,重点在前两个阶段。copy 阶段包含一 个 eventFetcher 来获取已完成的 map 列表,由 Fetcher 线程去 copy 数据,在此过程中 会启动两个 merge 线程,分别为 inMemoryMerger 和 onDiskMerger,分别将...原创 2019-12-23 16:40:27 · 392 阅读 · 0 评论