- 博客(57)
- 资源 (1)
- 收藏
- 关注
原创 【Oracle】数据库的事务
事务事务(Transaction),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。在计算机术语中,事务通常就是指数据库事务。事务的特性事务的执行时要么都成功,要么都失败。原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。一致性(Consistency):事务应确保...
2019-10-25 11:01:40 345
原创 【Oracle】SQL细节摘要
ORDER BY子句的位置在指定一条ORDER BY子句时,应该保证它是SELECT语句中最后一条子句。如果它不是最后的子句,将会出现错误消息。ORDER BY 2,3 也可以用这样的数字代替具体哪个列这样的字段。WHERE子句的位置在同时使用ORDER BY和WHERE子句时,应该让ORDER BY位于WHERE之后,否则将会产生错误何时使用引号如果仔细观察上述WHERE子句中的...
2019-10-25 11:00:45 236
原创 一文读懂大数据
大数据本身是个很宽泛的概念,Hadoop 生态圈(或者泛生态圈)基本上都是为了处理超过单机尺度的数据处理而诞生的。你可以把它比作一个厨房所以需要的各种工具。锅碗瓢盆,各有各的用处,互相之间又有重合。你可以用汤锅直接当碗吃饭喝汤,你可以用小刀或者刨子去皮。但是每个工具有自己的特性,虽然奇怪的组合也能工作,但是未必是最佳选择。大数据,首先你要能存的下大数据。传统的文件系统是单机的,不能横跨不同的机器...
2019-09-22 21:28:12 378
原创 【Kafka】kafka 里面的 topic 消费情况查看
进入 zookeeper 的客户端界面:./zkCli.sh (在 zookeeper 目录的 bin 下)查看目录:ls /consumers2.kafka 的 bin 目录下执行:./kafka-consumer-groups.sh --describe --group xiothub_jtm2m_rawdata_210_xgit_m2m_jt_LOCAL --zookeeper...
2019-09-07 11:04:58 15543
原创 【redis】为什么redis作为单线程处理却那么快
为什么单线程处理那么快(1)纯内存访问,redis的所有数据都是在内存里面的,内存的相应时间约在100纳秒。(2)非阻塞IO,redis使用epoll作为IO多路复用技术的实现,在加上redis自身的事件处理模型将epoll中连接、读写、关闭都转换为事件,不在网络IO上浪费过多的时间。(3)单线程避免了线程切换和竞态产生的消耗单线程的好处单线程简化的数据结构和算法的实现。单线程避免了...
2019-08-26 22:56:11 172
原创 hadoop的shuffle过程
Shuffle 的执行阶段流程1).Collect 阶段:将 MapTask 的结果输出到默认大小为 100M 的环形缓冲区,保存的是 key/value 序列化数据,Partition 分区信息等。2).Spill 阶段:当内存中的数据量达到一定的阀值的时候,就会将数据写入本地磁盘,在将数据写入磁盘之前需要对数据进行一次排序的操作,如果配置了 combiner,还会将有相同分区号和 key ...
2019-08-25 22:39:16 373
原创 nginx 目录中的 off 文件增大原因
nginx 目录中的 off 文件增大原因在 Nginx 的根目录,有个 off 的文件!(有的是 on)!注意 error_log off 并不能关闭日志记录功能,它将日志文件写入一个文件名为 off 的文件中,如果你想关闭错误日志记录功能,应使用以下配置:error_log /dev/null crit;...
2019-08-24 23:31:20 2349
原创 Oracle 中 concat 使用以及与 || 区别
Oracle 中 concat 使用以及与 || 区别CONCAT 只能连接两个字符串The syntax for the concat function is:concat( string1, string2 )string1 is the first string to concatenate.string2 is the second string to concatenate....
2019-08-17 11:30:16 1294
原创 【Excel】csv文件打开总是乱码解决办法
工作中,将 python 生成的中间结果文件写入 CSV,经常这么干是不是?文件保存下来后用 excel 打开,出现了乱码情况,真心烦。为什么?CSV 是用 UTF-8 编码的,而 EXCEL 是 ANSI 编码,由于编码方式不一致导致出现乱码。明白了原因之后,我们只需要把 CSV 文件的编码方式修改成与 Excel 相同的编码方式就可以了。那怎么修改?先将 CSV 用 txt 记事本打开...
2019-08-15 23:56:01 1496
原创 【scala】什么是transient
@transient 是 java 的 transient 关键字的作用,是需要实现 Serilizable 接口,@transient是类型修饰符,只能用来修饰字段。在对象序列化过程中, / 被 transient 标记的变量不会被序列化在 Scala 中需要使用 @transient 修饰的方法时,需要进行注册,这里是解析 json 字符串的时候使用到的。下面是一个例子定义:/**...
2019-08-12 22:26:05 5435
原创 【spark】spark streaming入门——官方文档的总结
spark streaming简介Spark Streaming类似于Apache Storm,用于流式数据的处理。根据其官方文档介绍,Spark Streaming有高吞吐量和容错能力强等特点。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map、reduce...
2019-08-10 23:41:55 200
原创 【hive】hive入门详解
hive 介绍 Apache 的顶级项目,(是一个 java 程序) Facebook 公司 (2008 年) 开源给 Apache 基金会! hive 官网: http://hive.apache.org/ hive 到底是干什么的 将 SQL 转换成 MapReduce 程序,并将程序提交到 YARN 集群运行,不会自动生成结果文件, ...
2019-08-09 22:15:59 237
原创 【spark】spark sql 自定义schema
在 Spark 中可以直接读取数据文件但是读取到的数据的每一项数据是没有数据类型的而且不能使用数据像使用数据表中的字段名那样使用数据可以在读取数据的时候对读取到的数据进行设置转换设置转换后使用数据可以像使用数据库表中的字段那样通过字段名获取数据import java.util.Propertiesimport org.apache.spark.sql.types._impor...
2019-08-08 00:11:01 1636
原创 【spark】java.io.NotSerializableException:org.apache.hadoop.hbase.io.ImmutableBytesWritable
java.io.NotSerializableException:org.apache.hadoop.hbase.io.ImmutableBytesWritable错误原因是因为 ImmutableBytesWritable 不能进行序列化(在 Java 中,如果类需要序列化需要实现 Serializable)而文件在经过网络传输时需要序列化(网络传输是二进制传输)解决:在官方...
2019-08-06 23:30:41 1395
转载 电商类网站的各种模块指标统计以及分析
以下这些都是针对于电商网站的指标来分析业务的:以下这些指标都是使用 SQL 语句分析得出的结果,首先先创建一张表,然后将数据导入表中,字段根据分析的业务的需要而定,这里我的选择是我已经存在的表进行查询的,下面将给出所有查询的 SQL 语句模块分析:select * from web_log.weblog_etl where dateStr="20180709" limit 5;1. 统...
2019-08-05 23:44:45 593
原创 【Spark】standalone运行模式
简介:standalone 模式,是 spark 自己实现的,它是一个资源调度框架。这里我们要关注这个框架的三个节点:1)client2)master3)workerspark 应用程序有一个 Driver 驱动,Driver 可以运行在 Client 上也可以运行在 master 上。如果你使用 spark-shell 去提交 job 的话它会是运行在 master 上的,如果你使...
2019-08-04 22:49:52 400
原创 Spark性能调优:RDD的复用及持久化
避免创建重复的 RDD通常来说,开发一个 Spark 作业时,首先是基于某个数据源(比如 Hive 表或 HDFS 文件)创建一个初始的 RDD;接着对这个 RDD 执行某个算子操作,然后得到下一个 RDD;以此类推,循环往复,直到计算出最终我们需要的结果。在这个过程中,多个 RDD 会通过不同的算子操作(比如 map、reduce 等)串起来,这个 “RDD 串”,就是 RDD lin...
2019-08-02 22:31:46 282
原创 HBase基于java的mapreduce模板
public class SaleOrdersMapReducer extends Configured implements Tool { //原表:数据来源 private final static String ORDERS_TABLE_NAME="ns1:orders"; //处理后的数据,表需要提前创建 private final static String ...
2019-07-31 22:53:49 122
转载 HBase | HBase 列族优化总结
随着大数据的越来越普及,HBase 也变得越来越流行。使用 HBase 并不困难,但是如何用好 HBase,这确是一个难点。为了合理地使用 HBase,尽可能发挥 HBase 的功能,我们需要根据不同的场景对 HBase 进行不同地优化以最大程度上提升系统的性能。本文重点介绍列族设计有关的优化。我们先来了解下 HBase 列族具有哪些属性配置。列族属性配置版本数量(VERSIONS)...
2019-07-30 23:23:45 1263
原创 scala 中的 OOP总结(面向对象编程)
-1.class 类和 Java 中类是一样的-2.Object 对象类比 和 Java 单例对象main 方法运行在此处-3.trait类比 Java 中接口 Interface隐式转换 implicitimplicit隐式的,隐藏的偷偷摸摸关键词:修饰 class,修饰...
2019-07-28 22:08:35 255
转载 关于大数据平台的软件的总列
查询引擎一、Phoenix简介:这是一个 Java 中间层,可以让开发者在 Apache HBase 上执行 SQL 查询。Phoenix 完全使用 Java 编写,代码位于 GitHub 上,并且提供了一个客户端可嵌入的 JDBC 驱动。Phoenix 查询引擎会将 SQL 查询转换为一个或多个 HBase scan,并编排执行以生成标准的 JDBC 结果集。直接使用 HBase A...
2019-07-27 00:01:24 310
原创 【redis】redis之nosql数据库
什么是NoSQL数据库not only sql,不仅仅值SQL,而是一种全新的数据库理论。可以理解为No relational,既非关系型性数据库关系型数据库和非关系型数据库不是对立,而是相辅相成的,nosql数据库有特殊的结构,将数据库存储到内存里面的,从性能的角度来讲,NoSQL数据库的性能优于关系型数据库。从安全性角度考虑,关系型数据库优于NoSQL数据库。所以在实际的项目开...
2019-07-25 22:22:26 179
原创 Redis 与 Memcached 区别:
Redis 与 Memcached 区别:两者都是非关系型数据库。主要有以下不同:数据类型:Memcached 仅支持字符串类型。redis 支持:String,List,set,zset,hash 可以灵活的解决问题。数据持久化:Memcached 不支持持久化。Redis 采用两种持久化策略:RDB 快照和 AOF 日志。分布式:Mencached 不支持分布式,只能在客户端...
2019-07-23 22:02:29 292
原创 【踩坑】sqoop:Error during export: Export job failed!
ERROR tool.ExportTool: Error during export:原因是hive建表时没有添加分隔符,加上row format delimited fields terminated by ‘\t’就好了。就酱。
2019-07-21 23:26:03 2159 1
转载 大数据常见问题之数据倾斜
什么是数据倾斜简单的讲,数据倾斜就是我们在计算数据的时候,数据的分散度不够,导致大量的数据集中到了一台或者几台机器上计算,这些数据的计算速度远远低于平均计算速度,导致整个计算过程过慢。相信大部分做数据的童鞋们都会遇到数据倾斜,数据倾斜会发生在数据开发的各个环节中,比如:用 Hive 算数据的时候 reduce 阶段卡在 99.99%用 SparkStreaming 做...
2019-07-19 23:28:25 1403
原创 【踩坑】因为 HDFS block 丢失 hadoop 进入安全模式(Safe mode)的解决方法
1、首先强制退出安全模式,因为安全模式只能读,不能修改执行命令:hadoop dfsadmin -safemode leave2、确认是否退出安全模式执行命令:hadoop dfsadmin -safemode get3、删除损坏的 block(但是会导致数据丢失)执行命令:hdfs fsck / -delete就酱。...
2019-07-18 22:07:51 472
转载 APP 数据指标体系分析
在移动互联网公司,任何一个 APP 都应该事先规划好数据体系,才允许上线运营,有了数据才可以更科学、更省力地运营。今天我们来说说如何做 APP 的数据分析。一、为什么要做 APP 数据分析1. 搭建数据运营分析框架一个 APP 的构建与运营工作通常由多个角色分工实现,由于大家的工作重点不同,仅关注一个方面的数据就如同管中窥豹,无法全面了解产品运营情况,不能提出行之有效的分析建议。因此,...
2019-07-16 23:29:31 1550
转载 【HIVE】HIVE— 索引、分区和分桶的区别
一、索引简介Hive 支持索引,但是 Hive 的索引与关系型数据库中的索引并不相同,比如,Hive 不支持主键或者外键。Hive 索引可以建立在表中的某些列上,以提升一些操作的效率,例如减少 MapReduce 任务中需要读取的数据块的数量。为什么要创建索引?Hive 的索引目的是提高 Hive 表指定列的查询速度。没有索引时,类似 'WHERE tab1.col1 ...
2019-07-15 23:52:46 929
转载 大数据框架常用端口
端口 配置项 说明 Hadoop HDFS 8020 fs.defaultFS hdfs:// 连接 50090 dfs.namenode.secondary.http-address 50091 dfs.namenode.secondary.https-address 50010 dfs.datanode.addr...
2019-07-15 15:26:06 305
原创 【HIVE】hive两种创建表常用组合
常用组合:parquet 格式 + snappy 压缩set parquet.compression=snappy; CREATE TABLE db_name.tb_name(id STRING)PARTITIONED BY (date_str STRING ,hour_str STRING )ROW FORMAT DELIMITED FIELDS TERMI...
2019-07-13 21:11:45 567
原创 【HIVE】hive中解决中文乱码问题
问题详情:为了解决 Hive 中创建表的时候,注解等中文显示的乱码问题需要设置 MetaStore DataBase 中某些字段的字符编码为 utf-8Hive MetaStore 配置说明MySQL 授权GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION ; FL...
2019-07-12 23:02:17 1637
转载 【shell】shell脚本判断语句
shell脚本中判断上一个命令是否执行成功shell中使用符号“$?”来显示上一条命令执行的返回值,如果为0则代表执行成功,其他表示失败。结合if-else语句实现判断上一个命令是否执行成功。示例如下:if [ $? -ne 0 ]; then echo "failed"else echo "succeed"fi12345或者:if [ $? -...
2019-07-10 23:52:42 1175
转载 大数据框架 Hive—— 通过sql案例分析窗口函数
为什么需要使用分析窗口函数有如下需求:求每个部门中工资前三的人乍一听感觉这个需求很简单但是这个简单的案例中,涉及到了分组,排序,条件查询,子查询,如果用 mysql 来实现这语句将会特别复杂,不相信的可以亲自来实现一下这个需求而且语句也很不容易懂求每个部门中工资前三的人 mysql 语句如下意思就是:我们要查询的这个人,在这部门中工资比他高的少于 3 个人(0,1,2 人)。括号里...
2019-07-08 23:44:29 250
原创 【HIVE】大数据框架hive——自定义函数(UDF)
hive 中的自定义函数类型UDF(User-defined function)一对一:传递一个参数,然后对应一个值,例如:substringUDAT (Aggregate Functions)多对一:传递多个参数,返回一个参数 例如聚合函数:max通常group by连用UDTF(Table-Generating Functions )一对多:传入1个值,返回多个值...
2019-07-08 23:12:06 373
原创 【Hive】使用MySQL存储元数据
交互式命令问题现象:bin/hive这个交互性命令行不能同时开多个,开第二个就报错了原因hive中无论是创建的 数据库还是表 ,这些元数据metaStore需要存储默认情况下存储在Derby数据库里面的,属于嵌入式数据,每次仅仅支持一个会话,解决:使用支持多个会话的数据,推荐MySQL存储元素(官方推荐)配置使用MYSQL存储元素文档:https://cwiki.apache...
2019-07-06 22:32:00 730
原创 【Hive】hive的安装及环境配置
1.1检查是否已经安装MySQL检查:rpm -qa | grep mysql 删除:sudo rpm -e --nodepsmysql-libs-5.1.66-2.el6_3.x86_641.2安装的版本一般情况下,企业使用MySQL的版本:5.7,和Java项目中使用MySQL是一致的5.1和5.7区别: 服务的名称:<5.5:mysqld >=5.5:mysq...
2019-07-06 22:26:23 374
原创 【hadoop】shuffle过程的优化
shuffle 过程的优化(MapReduce 的优化)combiner 合并优化在 map 阶段提前进行了一次合并,一般来讲等同于提前执行了 reduce 操作好处:可以降低 reduce 的压力为什么说在 map 阶段提前运行 reduce 方法可以降低 reduce 的压力?在 map阶段的进行合并是并行的(分布式的)。combiner 合并可以解决数据倾斜问题:什么...
2019-07-05 22:59:26 624
原创 【hadoop】Hadoop数据类型的转换及自定义数据类型总结
Hadoop数据类型Hadoop的数据类型和我们Java将数据类型是一样的,只不过Hadoop重新封装了一些类型,这些类型和Java的包装类非常非常相似。数据类型的转换Hadoop类型 Java类型的转换-> get<- set自定义数据类型具体实现(1)创建类实现WritableComparable或者Writable(2)根据需要定义属性,生成...
2019-07-03 23:30:29 1213
原创 【大数据hadoop框架】MapReduce编程——HDFS API的编写
porm.xmlMapReduce处理数据流程在整个MapReduce程序中,所有的数据的流程流式都是键值对(Key-value)Input -> Map ->shuffle->Reduce ->Output(1)针对于Input和Output来讲,正常情况下,不需要编写任何的代码,只需要指定对应目录即可。(2)核心关注map和reduce<?xml...
2019-07-02 22:53:49 309
原创 【hadoop框架】MapReduce 在 YARN 运行详解
(1)Client向Yarn主节点RM提交应用bin/yarn jar MainClass args(2)RM在某个NM节点上启动一个Container运行AppMaster,运行应用的管理者(3)AppMaster向RM请求资源,为了运行MapReduce中所有的Task,RM将分配NM是哪个资源,并且告知AppMaster(4)AppMaster联系NM,启动Container中相关...
2019-07-02 22:40:46 183
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人