大数据开发
文章平均质量分 79
sq0723
这个作者很懒,什么都没留下…
展开
-
Yarn的调度负载模拟器
Yarn模拟器是 一个能够在一台机器上装载应用程序,模拟一个大规模的yarn集群的工具。模拟器使用实际的yarn resourcemanager,在相同的java虚拟机内,通过处理和调度NM/AMs心跳事件,模拟NodeManager和ApplicationMaster来移除网络因素。集群的规模和应用负载可以从配置文件中加载。模拟器在执行时会产生实时的指标:1) 整个集群和每个队列的资源使用率,可以被用来配置集群和队列的容量。2) 详细的应用程序执行跟踪记录可以用来分析,以便理解和验证调度器的行为(包原创 2020-11-11 18:44:33 · 329 阅读 · 0 评论 -
HDFS 数据读写流程
读流程1) 客户端通过调用FileSystem对象的open()方法来打开希望读取的文件,对于HDFS来说,这个对象是分布式文件系统(DistributedFileSystem)的一个实例。2) DistributedFileSystem通过使用RPC来调用namenode,以确定起始块的位置。对于每一个快,namenode返回存有该块副本的datanode地址。这些datanode根据它们与客户端的距离来排序。如果该客户端本身是一个datanode,并保存有相应数据块的一个副本时,该节点就会从本地d原创 2020-12-01 14:13:02 · 270 阅读 · 0 评论 -
YARN的调度器-----容量调度器(Capacity Schedule)
一、特点1) 层级队列:在其他队列被运行使用空闲资源之前,层级队列可确保资源在改组织的子队列之间被共享,从而提供更多的可控制性和可预测性2) 容量保证:每个队列都分配了一部分容量,它们可以支配这部分资源。所有应用程序提交到一个特定队列,它将有权使用分给该队列的资源。管理员可以配置每个队列容量的最低保证和资源使用上限。3) 安全性:每个队列都有严格的ACL(控制访问列表),它可以控制用户提交应用程序到特定队列上。同时确保某一用户不能查看或修改其他用户提交的应用程序,并且支持队列管理员和集群系统管理员的设原创 2020-11-11 09:55:20 · 721 阅读 · 0 评论 -
YARN的调度器--------公平调度器(Fair Schedule)
一、特点1) 可配置的层级队列:所有队列都来自于root队列。可用的资源被分配给root队列的孩子队列,孩子队列分得的资源可统一分配给孩子队列的孩子队列。公平调度支持为每个队列设置不同的策略,让队列通过用户想要的方式来分享资源。2) 自动把应用程序放置到队列中:允许管理员配置策略,把提交的应用程序自动的放置到合适的队列中。二、 配置1) 配置ResourceManager:在conf/yarn-site.xml中配置yarn.resourcemanager.scheduler.class,值为or原创 2020-11-11 09:57:33 · 851 阅读 · 0 评论 -
Clickhouse为什么有这么高的性能
一、 架构设计1、 MPP架构(海量数据并行处理架构),share nothing模式,每个节点访问自己的cpu、内存、磁盘,且与节点之间的数据访问并行。2、 向量执行引擎,从寄存器硬件层面优化,采用数据并行,速度提升指数级别。采用cpu缓存作为临时交换数据,速度比内存交换数据还要快。3、 列式存储和数据压缩4、 支持sql查询,采用关系型模型描述数据5、 支持表引擎,将数据存储抽象成独立的接口,根据实际应用场景,选择适合的表引擎。6、 多线程和并发处理数据,线程级别并行处理数据,横向上将表分片原创 2020-11-06 10:53:52 · 1328 阅读 · 0 评论 -
HBASE读流程
读流程1.Client 先访问zookeeper,获取hbase:meta 表位于哪个Region Server。2. 访问对应的Region Server,获取hbase:meta 表,根据读请求的namespace:table/rowkey,查询出目标数据位于哪个Region Server 中的哪个Region 中。并将该table 的region 信息以及meta 表的位置信息缓存在客户端的meta cache,方便下次访问。3. 与目标Region Server 进行通讯;4. 分别在Bl原创 2020-11-03 15:24:29 · 445 阅读 · 0 评论 -
HBASE写流程
写流程1、Client 先访问zookeeper,获取hbase:meta 表位于哪个Region Server;2. 访问对应的Region Server,获取hbase:meta 表,根据读请求的namespace:table/rowkey,查询出目标数据位于哪个Region Server 中的哪个Region 中。并将该table 的region 信息以及meta 表的位置信息缓存在客户端的meta cache,方便下次访问。3. 与目标Region Server 进行通讯;4. 将数据顺序原创 2020-11-03 15:20:24 · 128 阅读 · 0 评论 -
HBASE详细架构
Master:Master 是所有Region Server 的管理者,其实现类为HMaster,主要作用如下:1、对于表的操作:create, delete, alter2、对于RegionServer 的操作:分配regions 到每个RegionServer,监控每个RegionServer的状态,负载均衡和故障转移。Region ServerRegion Server 为 Region 的管理者,其实现类为HRegionServer,主要作用如下:1、对于数据的操作:get, put,.原创 2020-11-03 15:16:34 · 190 阅读 · 0 评论 -
clickhouse集群安装部署
一、 安装每台机器上按照单节点模式安装,按照官网步骤安装:sudo yum install yum-utilssudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPGsudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/clickhouse.reposudo yum install clickhouse-server clickhouse-cl原创 2020-09-25 16:45:18 · 4028 阅读 · 0 评论 -
hive的安装部署
一、mysql安装1、在线安装mysql使用yum在线安装mysql:yum install mysql-server2、启动mysql服务使用service mysqld start命令启动mysql服务3、设置mysql root用户密码Mysql刚刚安装完成,默认root用户是没有密码的,登录mysql设置root用户密码。Enter password: 默认没有密码,回车...原创 2019-09-05 10:47:06 · 1305 阅读 · 0 评论 -
resourcemanager异常退出问题,报错Received stat error from Zookeeper. code:CONNECTIONLOSS
yarn的高可用中一个resourcemanager异常退出,查看日志报错如下:Received stat error from Zookeeper. code:CONNECTIONLOSS. Not retrying further znode monitoring conne问题描述:zookeeper连接丢失解决:修改zookeeper的配置文件,在zoo.cfg中,修改ticktim...原创 2019-09-04 10:36:23 · 871 阅读 · 0 评论 -
NameNode异常退出问题,报错FSEditLog: Error: starting log segment 7913 failed for required journal
高可用集群其中一个NameNode退出,另一个namenode状态为standby,查看执行日志报错如下:2019-07-25 15:32:27,481 FATAL org.apache.hadoop.hdfs.server.namenode.FSEditLog: Error: starting log segment 7913 failed for required journal (Jour...原创 2019-09-04 10:27:20 · 1549 阅读 · 0 评论 -
互联网金融风控模型大全
一、市场调研目前市面主流的风控模型1、互联网金融前10名排行榜(数据截止日期2017-09-12)互联网金融公司排名分别是蚂蚁金服、陆金所、京东金融、苏宁金融、百度金融、腾讯理财通、宜信、钱大掌柜、万达金融和网易理财。1.1 蚂蚁金服1.1.1 大数据技术对接第三方征信公司芝麻信用分,通过用户信用历史、行为偏好、履约能力、身份特质、人脉关系五个维度对海量数据行综合的处理评估,同时也给予...转载 2019-07-02 17:33:18 · 13628 阅读 · 2 评论 -
hadoop分布式集群搭建(3节点)
一、克隆虚拟机,准备三台linux系统1、安装一台虚拟机后,关机,右键->管理->克隆,点击“下一步”,选择“虚拟机的当前状态”,点击下一步,选择“创建完整克隆”,点击“下一步”,可以修改虚拟机的名称及位置2、修改克隆的虚拟机的网络设置1)登录系统后,使用命令ifconfig及ping命令查看网络协议是否连通2)修改网卡:通过 vi /etc/udev/rules.d/7...原创 2019-02-13 21:51:53 · 1294 阅读 · 0 评论 -
Eclipse大数据开发环境搭建
一、安装jdk 并配置环境变量下载安装jdk后,配置环境变量,主要配置JAVA_HOME\PATH\CLASSPATH;如:jdk安装目录为C:\Program Files\Java\jdk1.7.0_03JAVA_HOME配置为:C:\Program Files\Java\jdk1.7.0_03CLASSPATH配置为:;C:\Program Files\Java\jdk1.7.0_03...原创 2019-02-10 22:38:13 · 1242 阅读 · 0 评论 -
HIVE shell 操作
1、hive --help启动hive:hive --service cli.hiverc文件:启动hive前执行,文件在/hive/bin目录下,没有自己创建。Set hive.cli.print.current.db=true;Set hive.cli.print.header=true;2、set 作用:显示属性值,设置属性值查看系统属性值使用命令set; env是sh...原创 2019-01-04 12:40:37 · 314 阅读 · 0 评论 -
Yarn RPC 通信实例
一、 代码结构如图二、 实例编程步骤及代码(1) 定义Calculate接口,提供加法和减法计算package org.example.YarnRpcTest;public interface Calculate { public int add(int num1,int num2); public int minus(int num1,int num2);}(2) 定义两个proto文件,CalculateMessage.proto定义请求的消息,CalculateSer原创 2020-11-25 11:36:20 · 261 阅读 · 0 评论 -
RPC简单实例
什么是RPC?远程过程调用(Remote Procedure Call,RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,同时将网络的通信细节隐藏起来,而程序员无需额外的为这个交互作用编程。RPC采用客户机/服务器模型。请求过程如图:客户端程序->客户端Stub程序 ->通信模块 -> 远程请求 -> 通信模块 -> 调度程序 -> 服务器端Stub程序 -> 服务程序**实例代码:**package org.e原创 2020-11-25 11:17:45 · 2094 阅读 · 0 评论 -
Protocol Buffer 简介
Protocol Buffer是一种轻便高效的结构化数据存储格式,可以用于结构化数据序列化和反序列化,适合做RPC的数据交换格式。具有平台无关性、可扩展性等。如何使用protocol buffer?(java)1) 编写.proto文件代码如下:Student.protopackage tutorial;option java_package = "org.example";option java_outer_classname = "StudentProtos";message Stu原创 2020-11-25 10:33:36 · 592 阅读 · 0 评论 -
ubuntu 18.04服务器版 在线搭建cdh6.2.1
一、准备三台虚拟机(全部root用户下操作)1、规划master server,agent mysqlslave1 agentslave2 agent2、修改主机名Vim /etc/hostnameReboot3、配置静态ip(root用户下)cd /etc/netplanVim 00-installer-config.yaml配置如下: # This is the network config written by 'subiquity'network:原创 2020-10-28 18:55:59 · 1205 阅读 · 3 评论 -
mongodb 安装部署及操作
一、安装部署1、sudo yum install libcurl openssl2、https://www.mongodb.com/try/download/community 官网下载sudo mkdir -p /var/lib/mongosudo mkdir -p /var/log/mongodbsudo chown hadoop /var/lib/mongosudo chown hadoop /var/log/mongodb启动:mongod --dbpath /var/lib/mo原创 2020-09-30 17:57:57 · 214 阅读 · 0 评论 -
Elasticsearch Java访问
package com.es.api;import com.alibaba.fastjson.JSONObject;import org.elasticsearch.action.get.GetResponse;import org.elasticsearch.action.index.IndexResponse;import org.elasticsearch.client.transport.TransportClient;import org.elasticsearch.common.se原创 2020-09-18 17:37:07 · 237 阅读 · 0 评论 -
Elasticsearch集群安装部署
一、 elasticsearch安装1、 jdk安装(版本1.8 忽略)2、 官网下载elasticsearch 7.9版本压缩包,上传到linux系统,解压tar -zxvf elasticsearch-7.9.0-linux-x86_64.tar.gz创建软连接ln -s elasticsearch-7.9.0 elasticsearch3、 配置elasticsearch.yml文件Node-1配置为:cluster.name: estestnode.name: node-1nod原创 2020-09-17 18:43:34 · 1568 阅读 · 0 评论 -
stop-all.sh停止不了hadoop集群
Hadoop集群使用stop-all.sh停止时,停止不了,提示各个进程都找不到,但是各个进程都存在。问题原因:hadoop启动停止都是通过hadoop-deamon.sh文件,脚本是通过pid文件来停止hadoop服务的。集群默认配置的pid文件位于/tmp目录下,linux系统默认每30天清理一次/tmp目录下的文件,pid文件丢失将导致无法正确关闭相应进程。问题解决:由于pid文件已经无法找回,所以只能先用jps获取进程号,然后用kill -9杀掉对应进程,停止集群。参考stop-all.sh及原创 2020-09-08 10:50:53 · 1677 阅读 · 0 评论 -
Hive删除外部分区表,报错:org.apache.hadoop.hive.ql.exec.DDLTask
hive中删除外部分区表后,又在另一个库中创建相同的外部分区表,都是从hdfs上的相同目录上读取数据,结果报错org.apache.hadoop.hive.ql.exec.DDLTask返回代码1解决方法:set hive.msck.path.validation=ignore;MSCK REPAIR TABLE table_name;其中的原理:待续...原创 2020-08-25 17:57:43 · 900 阅读 · 0 评论 -
collect_set、collect_list、lateral view 、explode、json解析
1、 collect_set、collect_list将分组中的某一列转为一个数组,collect_set去重,collect_list不去重Select uname,collect_set(bookname) as books from student group by uname访问:books[0],books[1],books[2]…………2、lateral view 、explodelateral view 与explode连用,用于把数组拆分为多行如:uid原创 2020-07-31 14:29:44 · 653 阅读 · 0 评论 -
hive中各种字符串转换为时间
Please refer below table to convert any date format into fixed format i.e yyyy-MM-dd .Input column name: dt (String).Replace dt with your column name.Input Format Code Output FormatddMMyyyy to_date...转载 2020-01-15 17:27:13 · 11409 阅读 · 0 评论 -
hive拉链表实现实例
1、准备数据表userodscreate table userods(u_name string,u_pwd string,u_register date,u_des string) row format delimited fields terminated by '\t';2、准备增量表user_inccreate table user_inc(u_name string,u_pwd ...原创 2020-01-15 16:47:41 · 673 阅读 · 0 评论 -
hive修改字段及字段类型
hive修改字段类型语句:alter table 表名 change column 原字段名 新字段名 字段类型;alter table user_chain change column u_register u_registe date;(u_register原类型为string类型)这样修改会报一个错误:FAILED: Execution Error, return code 1 fro...原创 2020-01-15 16:19:53 · 61545 阅读 · 0 评论 -
hive启动后,show databases报错semanticexception org.apache.hadoop.hive.ql.metadata.HiveException
报错如下:FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient网上找了一圈...原创 2019-12-18 10:23:51 · 1981 阅读 · 0 评论 -
hive启动报错---java.net.UnknownHostException: cluster
hive启动时报错如下:Exception in thread “main” java.lang.IllegalArgumentException: java.net.UnknownHostException: clusterat org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377)a...原创 2019-12-16 19:22:41 · 5725 阅读 · 1 评论 -
namenode格式化报错
搭建hadoop集群时,namenode格式化报错如下:WARN namenode.NameNode: Encountered exception during format:org.apache.hadoop.hdfs.qjournal.client.QuorumException: Unable to check if JNs are ready for formatting. 1 exc...原创 2019-12-16 18:32:50 · 2933 阅读 · 2 评论 -
Airflow安装部署及遇到的问题总结
Airflow的安装部署操作系统是ubuntu16.04LTS,使用系统自带的python3.5.之前在utuntu14上安装airflow会提示要求python系统版本>=3.4.一、 安装1、 环境准备1)安装pip,使用python3时要安装pip3,使用命令sudo apt-get install python3-2)检查python依赖,输入python3命令,import ...原创 2019-11-29 17:51:39 · 1132 阅读 · 0 评论 -
Flume安装及组件作用配置
1、flume安装解压,conf目录下拷贝配置,安装目录下测试运行 Tar -zxvf apache-flume-1.8.0.0-bin.tar.gz cp flume-conf.properties.template flume-conf-sequence.properties bin/flume-ng agent -n agent1 -c conf -f conf/flum...原创 2019-09-25 10:51:25 · 504 阅读 · 0 评论 -
hbase集群搭建
一、规划硬件内存:region服务器和blockcache需要内存无上限,hbase master server 2GB,hbase region server 16GB磁盘:服务器需要大量存储空间,1TB或2TB,可以根据数据规模及操作挂载磁盘Java:1.7以上版本对hbase支持较好二、安装1、上传安装包到bdmaster节点的/home/hadoop/app目录下,并解压安装;...原创 2019-09-24 15:00:03 · 375 阅读 · 1 评论 -
sqoop安装及导入导出命令
Sqoop1、安装1)解压sqoop安装包2)配置进入conf目录下 mv sqoop-env-template.sh sqoop-env.sh3)将mysql的jar包放到sqoop的lib目录下4)启动先启动hadoop,再使用sqoop二、sqoop使用命令1、sqoop improt1)访问明码访问:sqoop list-databases \–connect...原创 2019-09-24 12:31:01 · 219 阅读 · 0 评论 -
Flume日志收集系统
flume基础知识1、hdfs数据接入方式:hdfs shell命令、hdfs api、MR等各种分布式计算方式、sqoop–传统数据库与hadoop同步、数据管道方式flume、其他(FTP:hdfs-over-ftp)2、Flume是什么Cloudera提供的高可用、高可靠的,分布式海量日志采集聚合和传输系统支持在日志系统中定制各类数据发送方,用于收集数据提供对数据进程简单处理,并写...原创 2019-03-18 13:15:07 · 1694 阅读 · 0 评论 -
转 scala快速学习
/**scala是一门多范式编程语言,集成了面向对象编程和函数式编程等多种特性。scala运行在虚拟机上,并兼容现有的Java程序。Scala源代码被编译成java字节码,所以运行在JVM上,并可以调用现有的Java类库。*//**第一个Scala程序Scala和Java最大的区别是:Scala语句末尾的分号(;)是可选的!编译运行:先编译:scalac HelloScal...转载 2019-03-21 14:38:02 · 132 阅读 · 0 评论 -
Redis安装部署(centos6.5)
1、下载地址:http://download.redis.io/releases/ 安装版本为3.0.4,上传压缩包,然后解压tar -zxvf redis-3.0.4.tar.gzmv redis-3.0.4 redisrm redis-3.0.4.tar.gz2、编译在redis安装目录下输入命令编译make && make install3、配置redis.co...原创 2019-03-02 18:43:31 · 456 阅读 · 0 评论 -
Elasticsearch核心概念
一、Cluster1)代表一个集群,有一个主节点,通过选举产生。对外部来说es去中心化,逻辑上是一个整体。2)主节点负责管理集群状态,包括管理分片状态和副本状态,以及节点的发现和删除3)主节点不负责对数据的增删改查请求处理,只负责维护集群相关状态二、shards(分片)1)索引分片,es可以把完整的索引分成多个分片,分布到不同的节点上,构成分布式搜索,提高性能和吞吐量,实现负载均衡。2...原创 2019-02-19 18:39:53 · 175 阅读 · 0 评论