
个人日记
文章平均质量分 54
Cincinnati_De
这个作者很懒,什么都没留下…
展开
-
Flink 提交到 yarn 时 修改 yarn 的job 名称
Flink 设置 Job名称原创 2022-06-23 14:59:12 · 2626 阅读 · 1 评论 -
mysql yum安装(2022.04.12最新测试可行)
yum安装 mysql 无坑哦~原创 2022-04-12 16:21:04 · 382 阅读 · 0 评论 -
Python 总结(初级之数据结构 字符串)
Python 的程序中充满了字符串(string),在平常阅读代码时也屡见不鲜。字符串同样是Python中很常见的一种数据类型,比如日志的打印、程序中函数的解释、数据库的访问、变量的基本操作等等,都用到了字符串。字符串基础字符串是由独立字符组成的一个序列,通常包含在单引号(' ') 双引号(" ") 或者三引号之中(''' ''' 或 """ """, 两者一样)name = 'jason'city = 'beijing'text = "welcome to jike shijian原创 2021-11-23 11:51:20 · 1259 阅读 · 0 评论 -
Python 总结(初级之数据结构 字典与集合)
字典和集合基础那究竟什么是字典,什么是集合?字典是一系列由健(key)和值(value)配对组成的元素的集合,在Python3.7+ 字典被确定为有序(注意:在3.6中,字典有序是一个 implementation detail,在 3.7才正式称为语言特性,因此3.6中无法 100% 确保其有序性),而3.6之前是无序的,其长度大小可变,元素可以任意地删减和改变。相比于列表和元组,字典的性能更优,特别是对于查找、添加和删除操作,字典都能在常数时间复杂度内完成。而集合和字典基本相同,唯一的区别,原创 2021-11-22 16:48:11 · 380 阅读 · 0 评论 -
Python 总结(初级之数据结构列表和数组)
1、列表和元组列表是动态的,长度大小不固定,可以随意地增加、删减或者改变元素(mutable)。而元组是静态的,长度大小固定,无法增加删减或者改变(immutable)。 tup = (1, 2, 3, 4)new_tup = tup + (5, ) # 创建新的元组new_tup,并依次填充原元组的值new _tup(1, 2, 3, 4, 5)l = [1, 2, 3, 4]l.append(5) # 添加元素5到原列表的末尾...原创 2021-11-22 11:46:49 · 329 阅读 · 0 评论 -
Hadoop 数据仓库开发实战(二)
7.3 Hadoop 数据仓库规范设计 对于一个公司或者组织来说,使用数据的用户可能成百上千,如何降低大家对于数据使用的沟通成本、如何通过规范大家的行为来降低使用数据的风险,这些问题是必须加以考虑的。 实际实践中,通常用数据仓库的规范来达到此目的。数据仓库的规范包括很多方面,如数据的命名规范、开发规范、流程规范、安全规范和质量规范等,下面将结合 物美的业务介绍常用的命名、开发和流程规范。7.3.1 命名规范 ...原创 2021-11-18 09:38:53 · 918 阅读 · 0 评论 -
Hadoop 数据仓库开发实战(一)
7.1 业务需求 背景: 物美的管理来说,数据仓库平台对其至关重要。因为数据平台是其数据化运营的前提和基础。 基于数据仓库平台生成的各种销售报表和库存报表是公司管理层和各个城市运营人员以及门店运营人员决策的主要依据。整个公司得整体销售趋势如何?是否应该对某些滞销的商品进行促销?客户是否在流失??某些畅销商品是否应该及时补货?如何选择自营商品从而利润最大化?这些都需要及时、准确和精炼过的数据来支持。 同时,过去的数据分析只是一个方面,...原创 2021-11-18 14:37:25 · 1660 阅读 · 0 评论 -
维度建模的基本理论
维度建模 围绕三个问题来展开 1、怎么组织数据仓库中的数据? 2、怎么组织才能使得数据的使用最为方便和便捷? 3、怎么组织才能使得数据仓库具有良好的可扩展性和可维护性? 维度建模两大派系 Bill Inmon(数据仓库之父) 的企业信息化工厂模式和 Ralph Kimball (商业智能之父)的维度建模模式Ralph kimball维度建模 基本理论 一般过程 维度表审计 事实表设计维度建模关键概念 1、度量和环境(产...原创 2021-11-12 11:49:21 · 3175 阅读 · 0 评论 -
CK -sql
json字符串解析select DISTINCT schoolId, schoolIdCN, areaCode, classCode, name, email, r_time, log_time, replaceAll( visitParamExtractRaw(click_list, 'material_id'), '"', '' ) material_id, replaceAll( visitParamExtractRaw(click_l..原创 2021-10-08 16:20:08 · 527 阅读 · 0 评论 -
es批量导出数据到csv
1、pip install es2csv2、修改两处源码sudo vim /usr/local/lib/python2.7/dist-packages/es2csv.py 修改127 行 为了和ES 新版本 兼容self.num_results = res['hits']['total']['value'] 第212行 为了使得分隔符生效csv_writer = csv.DictWriter(output_file, fieldnames=sel...原创 2021-09-23 20:05:39 · 1517 阅读 · 0 评论 -
删除 kibana-index 后恢复Dashboard
1、 打开 kibana 的 Saved Object2、找到 Dashboard 中的视图,注意这里不能用 Dashboard 的 总视图,而是总视图下,一个个图形的视图。3、查询新的 kibana-index 值GET .kibana/_search{"query": {"match": {"index-pattern.title": "online-iteach-front-online-analysis-log-2021"}}}4、...原创 2021-08-31 17:13:31 · 919 阅读 · 1 评论 -
kibana 查询 和 sql 对照
sql : select * from table twhere t.a is not null and t.b = "123456" sort原创 2021-06-21 11:18:32 · 1961 阅读 · 0 评论 -
filebeat 采集 kafka 的数据 到 ES 当中的配置
公司 通过 多个 filebeat 将数据采集到 kafka 上。由于 kafka 数据可视化不是很强,需要暂时将数据 在 kibana 上展示。涉及到数据不计算,暂时先再启用一个 filebeat 采集 kafka 的数据到 ES 中。###################### Filebeat Configuration Example ########################## This file is an example configuration file ..原创 2021-05-19 10:11:54 · 623 阅读 · 0 评论 -
kudu Python 客户端
import kudufrom kudu.client import Partitioningfrom datetime import datetime# Connect to Kudu master serverclient = kudu.connect(host='kudu.master', port=7051)# Define a schema for a new tablebuilder = kudu.schema_builder()builder.add_column('key.原创 2021-01-18 16:10:45 · 471 阅读 · 0 评论 -
pyspark-结构化流 在指定 maxOffsetsPerTrigger 的情况下,读取row行数 会翻倍?
今天在读取 kafka 时,写了一个 sql 统计。结果发现指定maxOffsetsPerTrigger 在2W ,结果读了 3W多条数据。很纳闷~后来调试发现是自己 sql 的问题SQL 如下: select t1.ip,t1.cseq,count(1) cnt from ( select f_ip as ip , cseq fr..原创 2021-01-07 10:32:43 · 835 阅读 · 0 评论 -
pyspark 结构化流读取 两个 kafka主题,累计统计 IP 出现次数 Demo版本
# -*- coding: utf-8 -*-""" @CreateTime :2021/1/5 15:26 @Author : Liangde @Description : @Modify:"""from pyspark import SparkConffrom pyspark.sql import SparkSessionfrom conf.setting import KAFKA_CONFIG""" 设置任务 常量 lost data 异常应原创 2021-01-05 18:16:59 · 332 阅读 · 0 评论 -
基于Pyspark 的 Spark structured streaming 项目 <<数据实时流清洗>>
项目描述:概要:从Kafka中读取数据,在DataFrame 中用 spark.sql() 方法内写 业务逻辑,对数据进行清洗,包含解析 IP 地址,解析 电话号码。(通过调用Hive 的 UDF 函数来实现)项目代码:# -*- coding: utf-8 -*-""" @CreateTime :2020/12/14 18:33 @Author : Liangde @Description : 数据上游 Kafka topic_sip_full_r1.原创 2020-12-31 14:36:19 · 717 阅读 · 0 评论 -
Spark 权威指南 第20章 流处理基础
流处理基础Apache Spark一直支持流处理。在2012年,该项目合并了Spark Streaming及其DStream API,这是第一个能够使用例如map和reduce这样的高级函数进行流处理的API。现在,数以百计的组织在生产中使用DStreams来实现大型实时应用程序,通常每小时处理TB级的数据。虽然在很多方面与弹性分布式数据集(RDD) API相似,但是Dstream API是基于Java/Python对象的相对较低级别操作,它限制了更高级别的优化。因此,在2016年,Spark项转载 2020-11-23 16:32:47 · 691 阅读 · 0 评论 -
Spark 权威指南 2020 出版
欢迎阅读《Spark权威指南》! 我们很高兴出版这本书,这是目前为止关于Apache Spark最全面的学习资源,本书特别关注Spark 2.0中引入的新一代Spark API。 Apache Spark是目前最流行的大规模数据处理系统之一,提供支持多种编程语言的 API,并且具有大量内置库和第三方库的支持。在2009年,Spark项目是在加州大学 伯克利分校开始的一个研究项目,然后自2013年起发布到Apache开源社区上。该项 目已经存在了很多年,开源社区持续在Spark上构建了更强大的API和高级库,原创 2020-11-23 14:05:53 · 4051 阅读 · 10 评论 -
SparkStreaming 总结(1) ---- Ideal 消费 kafka主题的数据 Demo版本
SparkStreaming 简介spark的内置模块,用于实时计算微批次流式实时计算框架SparkStreaming 架构有两个线程,采集线程和处理线程采集线程向Driver 提交,Executor 进行具体数据的处理。SparkStreaming 的背压机制根据executor的消费能力来处理数据SparkStrreaming 的创建方式DStream 是SparkStraming对处理的数据集的一个抽象读取指定端口数据的创建DS通过RDD 队列创建DS(不常用)通过定义Rece原创 2020-10-26 15:37:33 · 376 阅读 · 0 评论 -
Spark 调优
Spark 调优开发调优1、 提高RDD 的使用效率对于同一份数据,应该只创建一个 RDD尽可能复用RDD对多次使用的RDD 持久化cache算法进行缓存,但是同时也要 unPersist进行释放2、 合理使用数据结构 对应 Java 提供的一些高级数据结构或者Scala提供的一些高级数据结构,其内部都是按照对象进行存储和实现的,每个对象都有对象头、引用等额外信息,比较占用空间。 如 HashMap, String 等。 避免使用这些高级数据结构浪费内存。使用原始类型(int 、 L原创 2020-10-23 15:58:14 · 213 阅读 · 0 评论 -
爬虫解析银行卡号归属地 python 实现
# -*- coding: utf-8 -*-# @Time : 2020/10/19 17:02# @Author : zmj# @File : card_demo02.py# @Software: PyCharmimport requestsfrom lxml import etreefrom utpsycopg2 import PostgreClientimport randomimport timepg_conn_master = { "host": "192.168.原创 2020-10-20 14:07:45 · 1300 阅读 · 2 评论 -
Spark 运行模式及原理
Spark 计算细节val conf = new SparkConf().setAppName("WordCount")val sc = new SparkContext(conf)val lines = sc.textFile(...)val wc = lines.flatMap(_.split(" ")) .map((_,1)) .reduceByKey(_+_)Spark 运行时的 Job 提交过程Spark 基本工作流程Spark 调度简介Yarn Cluster原创 2020-10-16 15:05:20 · 219 阅读 · 0 评论 -
Spark API 总结
RDD 核心术语名称含义ApplicationSpark的应用程序,包含一个Driver program和若干个ExecutorDriver Program运行Application的main()函数并创建SparkContextSaprkContextSpark应用程序的入口,负责调度work的原酸资源,协调WorkerNode上的ExecutorExecutor是Application运行在Work Node 上的一个进程,该进程负责运行Task,并且负责原创 2020-10-16 12:13:42 · 859 阅读 · 0 评论 -
pandas 处理数据 【两个DataFrame】 要进行for 循环 嵌套 匹配数据
需求描述: 1、有两个 DataFrame A和 B ,遍历 B DataFrame 通过A 的 三个字段 起始时间和 结束时间, id 进行判断,若B 的 时间戳在 A 的起始和结束时间范围内,并且 a.id = b.id 则将两条数据拼接输出。 2、B的 某字段和 加起来 等于 A 的某字段。一句话描述就是 A 是汇总结果 ,B 是明细数据,搞清楚 哪些B 构成了A 。 判断条件是 属于 时间范围、 分组后的累加和等于A。import pandas...原创 2020-09-30 14:22:48 · 5242 阅读 · 2 评论 -
Hive 如何 编写 UDAF 函数 解析 电话号码 的归属地以及运营商等字段
我采用的是Hive 的 Transform 函数 + python 脚本实现创建Hive表导入数据查看 phone 解析模块改写成 分布式的 map 函数本地测试 map 逻辑集群上运行注意的一些坑创建Hive表// An highlighted blockCREATE TABLE `chinese`( `c1` string, `c2` string, `c3` string, `c4` string)ROW FORMAT SERDE 'org.apache.hadoop.hi原创 2020-09-23 16:31:02 · 663 阅读 · 0 评论 -
Kerberos 原理的经典对话故事
Kerberos是一个重要的认证协议,它为互不相识的通信双方做安全的认证工作。Kerberos的原义是希腊神话中守卫冥王大门的长有三个头的看门狗。 这是MIT(Massachusetts Institute of Technology)为了帮助人们理解Kerberos的原理而写的一篇对话集。里面有两个虚构的人物:Athena和Euripides,通过Athena不断的构思和Euripides不断的寻找其中的漏洞,使大家明白了Kerberos协议的原理。原创 2020-08-18 16:50:59 · 548 阅读 · 0 评论 -
postgresql 的 base64 解密、解码
select encode('123456', 'base64') 加密select decode('313233343536', 'base64') 解密字符集指定CONVERT_FROM(DECODE(sip_info, 'BASE64'), 'UTF-8')原创 2020-07-14 14:32:59 · 6358 阅读 · 2 评论 -
正则 提取 url 中 的 用户名 和 密码
来一段 url:https://m.xp85.com/sjdzZr/user=zhangsan&password=helloworld123&startid=1&count=10假如我想提取:user:zhangsanpassword=helloworld123我的正则是这样的# 这里的 k1, v1 是从库里提取的关键词。re.findall(r'{}=(.*?)[&|"|;|_|\n]'.format(k1), urlStr, re.S)[0]re.fi原创 2020-07-02 18:26:32 · 1117 阅读 · 0 评论 -
Hbase Master 几分钟就死掉的故障排查 和zk host 没关系,最新 hbck2 的用法
看一下对应的 hfile 文件内容命令hbase Hfile -e -p -f /hbase/data/hbase/meta/1588230740/info/5660f2774e0d41d985ac3758ee1db9e3由于 master 节点一直初始化导致的问题:查看 namespace 元数据是否正常echo 'scan "hbase:meta"' | hbase shell | grep 'hbase:namespace'不正常的情况Java HotSpot(TM) 64-Bit原创 2020-06-30 19:02:50 · 465 阅读 · 1 评论 -
postgre sql 累计和 hive sql
postgre sql 累计和 hive sqlsql功能Hivelength ,split的用法# 类似 hive split的函数,自己定义的create or replace function ypl_str2Array(in _originStr VARCHAR(800),in _delimeter VARCHAR(10)) RETURNS VARCHAR(800)[]a...原创 2020-04-30 20:11:18 · 481 阅读 · 0 评论 -
SparkSQL读写
Spark SQL数据的加载与保存加载数据1)read直接加载数据scala> spark.read.csv jdbc json orc parquet textFile… …注意:加载数据的相关参数需写到上述方法中。如:textFile需传入加载数据的路径,jdbc需传入JDBC相关参数。2)format指定加载数据类型scala> spark.read.f...原创 2020-03-01 17:10:35 · 777 阅读 · 0 评论 -
SparkSQL
SparkSQLSpark SQL 是spark用来处理结构化数据的一个模块,它提供了两个编程抽象,DataFrame 和 DataSet 并且作为分布式SQL 查询引擎作用。Hive SQL 是将 MR 作业提交到集群上执行,简化编写MR的复杂。类似的,Spark sql 操作rdd 提交到集群上执行,效率很快。Spark SQL 特点1、 易整合2、统一的数据访问方式3、兼容 Hi...原创 2020-03-01 16:55:10 · 240 阅读 · 0 评论 -
SPARK三大数据结构
Spark 三大数据结构 Spark 有三大数据结构 RDD、广播变量、累加器。 rdd 是弹性分布式数据集。 广播变量: 分布式只读共享变量。 累加器: 分布式只写共享变量。Spark 累加器默认累加器package com.ypl.bigdata.sparkimport java.utilimport org.apache.spark.rdd.RDDimport or...原创 2020-02-29 18:06:29 · 1492 阅读 · 0 评论 -
RDD 与 mysql 和 Hbase 交互
RDD 与 MYSQL 交互:poml.xml 文件依赖:<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.27</version>&l...原创 2020-02-29 10:49:56 · 258 阅读 · 0 评论 -
RDD 总结
RDD 中的传递在实际开发中,我们常常定义一些对应rdd的操作,那么需要注意的是。初始化工作是所在Driver 端进的,而实际运行程序是在Executor 端进行的,这就涉及到了跨进程通信,需要序列化。传递一个方法...原创 2020-02-29 09:46:42 · 694 阅读 · 0 评论 -
spark 总结 算子篇
1、创建工程在这里添加 spark core包,添加bulid 插件。<groupId>com.ypl.bigdata</groupId> // 这里添写包名称 <artifactId>spark-200226</artifactId> // 这里是项目名称<version>1.0-SNAPSHOT</version>...原创 2020-02-27 18:57:48 · 976 阅读 · 0 评论 -
创建parquet 表指定 snappy 压缩 语句
create table `t_hive_dm_pv_count`(`source_name` string,`pv` bigint,`s_time` timestamp,`acct_hour` timestamp,`ypl_code` bigint,`ypl_third_code` bigint)PARTITIONED BY (`acct_day` string)ROW FO...原创 2020-01-17 19:04:58 · 2116 阅读 · 0 评论 -
不编写一行代码实现 Hive 自定义 UDF 函数 解析 UA
1、什么是UA? 用户访问服务器时,所携带的一些基本信息。 日志字段如下:Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148Mozilla/5.0 (Windows NT 10.0; WOW64) ...原创 2020-01-06 16:47:34 · 700 阅读 · 0 评论 -
Flume 官网生肉变熟肉过程--测试你的Flume 是否和HDFS能正常交互
测试专用Demo修改Flume 的配置文件 我用的CDH 版本的 CM (Clouder Manager) 来修改的配置进行的测试:1、打开 Flume2、点击配置修改配置文件3、粘贴测试Demo内容到Agent Default Group# example.conf: A single-node Flume configuration...原创 2019-12-09 16:16:16 · 208 阅读 · 0 评论