自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 资源 (72)
  • 收藏
  • 关注

原创 kafka根据指定timestamp获得对应的offset

kafka offset timestamp

2022-11-07 10:38:05 1948

原创 stream处理-灵感的参考来源

1 Kafka的stream process API2 JAVA8的stream处理方式3 CompletableFuture的处理

2022-01-28 09:59:11 1659 1

原创 linux设置命令的三种方式

1bash_profile 或者 .zshrc中,设置PATHexport PATH=$PATH:$HOME/bin/virtualenv2bash_profile 或者 .zshrc中,设置别名alias virtualenv=$HOME/bin/virtualenv3设置软链接ln -s $HOME/bin/virtualenv /usr/local/bin/virtualenv

2022-01-28 09:53:32 1610

原创 关于宽表加工的一点提示思考

分清事实表join 还是维表join原因在于1 事实表join是需要两头关联的,维表join是 只需要事实流表一方关联2 维表join可以利用broadcast是方式来实现,当然也可以利用传统的hbase的方式实现初始化要来两遍第一遍是初始化中间层中间表包括broadcast的初始化,其实可以自己写个程序统一读取后放入kafka的topic第二遍是通过已经初始化好的中间层来关联出宽表,也就是静态的宽表实时流入就是将上游的数据再导入到初始化时的topic中...

2021-11-24 13:48:42 1577

原创 flink从指定的时间戳开始消费

flink从kafka消费数据,如果指定auto.offset.reset,这个参数不起作用需要在flink的kafkaconnector 的API中指定时间戳,通过这种指定时间戳的方式来从指定的offset来消费。FlinkKafkaConsumer.setStartFromTimestamp(1624896000000L)这中间就会有如何将时间戳转换为offset的过程。kafka提供了时间索引文件,从而可以指定时间戳算出offset来消费TopicPartitionpublic

2021-09-27 18:22:52 2048

原创 flink之checkpoint

代码段 小部件[Dàimǎ duàn xiǎo bùjiàn]Code segment widget为什么需要checkpoint有状态算子一些状态的保存是在内存中,当job出现异常或者某些算子有问题的时候,内存中就没有历史数据.要保证可以恢复之前的状态的话,就需要有checkpoint的存在.checkpoint也依赖于可重新发送数据的数据源的配合,例如kafka.checkpoint的执行过程1 checkpoint coordinator...

2021-01-27 12:42:15 866

原创 flink之statebackend

MemoryStateBackendenv.setStateBackend(new MemoryStateBackend("file://" + baseCheckpointPath,null).configure(conf,classLoader))- state状态数据存储在taskmanager内存- checkpoint数据存储在jobmanager内存- 单state大小默认是5M,最高不能超过10M- 总大小不能超过jobmanager的大小- 默认的存储方式FsS

2021-01-26 21:27:54 401

原创 flink之savepoint

savepoint与checkpoint的区别savepoint可以说是特殊的checkpoint,适用与用户代码逻辑升级时,而checkpoint是保证job任务容错性.savepoint是用户手动执行的,而checkpoint是runtime自动执行的savepoint的命令行指令//触发savepointbin/flink savepoint :jobId [:targetpath]//触发savepoint with yarnbin/flink savepoint :jobI

2021-01-26 21:13:08 455

原创 flink源码分析之Broadcast State

注意事项broadcast state主要适用于规则匹配这样的场景中,规则的数据量较小且规则的变更频率较少.而且broadcast state目前的statebackend不支持rockdb这样的存储,而只有本地内存的存储方式,所以要注意内存的适用.Broadcast State实现的一般步骤1 首先要有两个DataStream ,一个数据流,一个规则流DataStream<Action> actions = env.addSource(new KafkaConsumer&l

2021-01-26 08:38:15 261

原创 flink源码分析之WatermarkStrategy

public interface WatermarkStrategy<T> extends TimestampAssignerSupplier<T>, WatermarkGeneratorSupplier<T>watermarkStrategy定义如何生成Watermark ,继承TimestampAssignerSupplier和WatermarkGeneratorSupplier.其中的TimestampAssignerSupplier是可选的生.

2021-01-22 16:26:27 2079

原创 flink源码分析之CheckpointedFunction

public interface CheckpointedFunction { void snapshotState(FunctionSnapshotContext context) throws Exception; void initializeState(FunctionInitializationContext context) throws Exception;}CheckpointedFunction是有状态转化的核心接口,虽然有其他的更轻量级的接口,例如ListCheckp...

2021-01-22 15:46:00 1024 1

原创 flink源码分析之source function

public interface SourceFunction<T> extends Function, SerializableSourceFunction是数据流数据的基本接口,有run和cancel两个方法CheckpointedFunction Sources 带有checkpoint检查点的source必须却表checkpoint状态的保存,更新以及element元素的发送不能同时发生,为此利用checkpoint lock来保证.Timestamp 和 watermar.

2021-01-22 13:45:41 1039

原创 Hive导出指定分隔符

业务场景:做数据分析的时候,经常会用到hive -e "sql" > result.csv,然后将结果导入到excel中,可是使用hive -e导出后默认的分隔符是\t,excel无法识别,所以需要将\t转成,方案一:使用linux管道符替换hive -e "select * from table_name limit 100" | sed 's/\t/,/g' > result.csv或者hive -e "select * from table_name ..

2020-10-16 17:24:26 3071 1

原创 学习了解zeromq的途径

在我之前的一篇介绍zeromq的文章中说的需求其实可用请求应答的模式实现。https://blog.csdn.net/yyqq188/article/details/106569839(上一篇的连接)这里我不会具体讲逻辑。只是把我最近看到的如何入门zeromq的一些方法说下自然最重要的是文档。还有一本书也很好<ZeroMQ 云时代极速消息通信库>书中讲到的关于zeromq的可靠的请求应答模式就get到我的需求。但是书的例子都是c实现的,如何找到其他你熟悉的语言实现呢。

2020-06-11 16:28:18 137

原创 gitlab配置webhook实现代码的自动部署

没有利用gitlab runner 而且利用webhook功能自由可定制的实现自动部署先说步骤:1 在gitlab上建立一个仓库 并新建一个空白文档,例如是README2 在gitlab的settings中把本地主机和远端服务器的ssh-key添加进去,都要跟仓库是同一个用户3 在本地和远端服务器都要clone gitlab的仓库ps 在本地和远端服务器中使用同一个用户和创建ssh-key的命令git config --global user.email "xxx"git config

2020-06-11 10:51:35 531

原创 消息传输的改变(redis / zeromq)

需求是有消息源,需要分不同的topic,然后中间处理逻辑分别处理各自的topic,最后有个总收集器把各个中间处理的结果再处理一下,形成最终结果。消息源是java的API,中间处理逻辑是python写的,然后收集器逻辑是java。目前的方式是用redis的list队列,不同的topic分布到不同的list队列中,这当然是不好的,因为一个topic对应于一个中间处理逻辑,假如再扩展的话,就要更改消息源的程序。自然,redis和zeromq都有广播机制可以使用。所以从消息源到中间处理逻辑这块会按照zeromq

2020-06-05 17:55:29 884 1

原创 python如何做到让程序在每天固定的时间段执行

import timeimport datetimedates = set()while True: date = datetime.datetime.now().date() if date not in dates: dates.add(date) while True: time.sleep(1) ...

2020-04-16 08:35:38 3750

原创 三种用来在浏览器中进行数据可视化的python包

数据开发人员基本是比较头痛如何将数据分析的结果通过浏览器进行呈现的。下面三个库利用python直接完成html文件的生成1 pyecharts就是不用写js,写个python脚本就生成好所需的html。它可以和flask tornado这样的web框架集成。将你的数据图表发布出去。2 bokeh功能定位上给上面的一样。两点的不同就是pyechart不能做带click按钮事件。图表...

2020-03-30 11:14:11 861

原创 量化随想

记得在YouTube上有位老师说起一个思路。大体意思是说利用机器学习的方法来预测股票价格,不能简单的认为说给一个输入,然后把这个输入对应的价格标上,然后找这两个的关系,训练一个模型,这是行不通的。。那他的方法是说,你可以有个策略,需要的是说把你的策略去向量化,作为深度学习的输入,然后他去学习并优化这个策略。所以重点是怎么样去把你的策略用向量的方式表达。是不是有点word2vector的意思呢,也许...

2020-03-28 22:57:31 96

原创 如何访问远端的bokeh服务器

一般来说,在本地启动bokeh服务器后,只需要执行bokeh serve --show xxx查看访问远端bokeh的时候,官方文档上说是在本地和远端之间建立ssh隧道实现。然,我没有这样做通,也就不深究了下面说下我的实现方式:根据访问远端bokeh报错的提示。其实只需要在远端执行命令的时候,添加一个参数命令即可bokeh serve --show demo2 --a...

2020-03-27 08:45:13 548

原创 bokeh与tornado结合的三种方式

1 bokeh生成一个html文件,由tornado来不断的去执行bokeh后生成新的html文件后,再去返回新的html我之前用过这种方式,下面的链接也是这样方式https://stackoverflow.com/questions/24985038/display-bokeh-generated-file-using-tornado2 bokeh作为一个tornado的一个应用端的...

2020-03-26 18:10:22 362

原创 从go看python

go的面向对象编程:鸭子类型面向接口编程(没有继承和多态,而是通过接口来实现)函数式编程:闭包并发编程:goroutine和通道python面向对象编程:鸭子类型函数式编程:闭包并发编程(协程)...

2020-01-01 16:24:39 115

原创 pandas优化方法的总结

一 利用pandas进行矢量化操作一般情况下,我们肯定不能用for 循环的方式来处理数据再不然用df.itertuples 或 df.iterrows,来实现循环遍历,再不然用apply()去作用与每行数据,利用pandas操作的最好的方式还是矢量化操作,这样才能最大化的发挥pandas的优势参考这篇文章提到的https://blog.csdn.net/BF02jgtRS...

2019-12-23 14:36:14 409

原创 在Ubuntu server中安装chrome以及chromedriver

需求当有的网站你想爬取但是,要进行动态渲染,你果断想到我用selenium + chrome来做,在ubuntu server中,你首先要解决的安装chrome浏览器以及它的驱动,这两者又是有匹配关系的,如果版本不匹配你就只能卸了重装废话不多说,最新的匹配版本是chromium-browser_75.0.3770.90-0ubuntu0.18.04.1_amd64.debchromium...

2019-07-30 11:33:53 2276 1

原创 以docker的方式安装register私有仓库和gitlab私有代码库

docker register1 添加修改配置 /etc/docker/daemon.json 添加{"insecure-registries":["10.1.222.100:5000"]}2 重启dockersudo systemctl daemon-reloadsudo systemctl restart docker3 下载并启动registerdocker run -d...

2019-07-11 16:40:44 467

原创 nvidia驱动以及tensorflowGPU版本的安装

参考https://www.jianshu.com/p/464fefb5c5d8 版本配合https://www.cnblogs.com/zpcdbky/p/9757821.html#CUDA 超经典https://www.itread01.com/articles/1498658233.html降gcchttps://blog.csdn.net/qq_30163461/article/...

2019-07-08 10:57:00 1190

原创 基于事件循环和基于控制的调度模式区别

分别以tornado 和 k8s中用到的事件循环和 控制器模式 来说事件循环,中需要一个以selecor或epoll为基础的事件循环,可以理解为一个while True,协程把自己注册到该循环中,这样就能通过事件循环的方式被执行,但是调度的执行逻辑需要协程来组织实现。假如一个整体逻辑,是由A-B-C三部分组成,如果是一般的写法就是把三个部分都放到一个函数中去写,如果是事件循环加协程方式的话...

2019-05-17 07:15:14 269

原创 电信集团政企项目爬虫部分

电信集团政企项目爬虫部分1 项目用到的技术点有 scrapy scrapyd scrapyd-client docker docker-compose2 需求是要爬取全国各个省级以及省会的招投标信息。之前做过浙江省级的招投标爬取,利用的scarpy的本地爬取,这次的爬取网站多,而且要用到定时去爬取,并做到项目的架构的可复用以及可扩充。所以我在scrapy的基础上,利用docker...

2019-03-10 15:53:57 510

原创 linux中docker的安装与卸载

docker的安装ubuntu与centos7都可用的安装方式:sudo wget -qO- https://get.docker.com | shcentos7可用的安装方式sudo yum install -y yum-utils device-mapper-persistent-data lvm2sudo yum-config-manager --add-repo https:/...

2019-03-08 11:10:06 3125

原创 windows7安装minikube

minikube的安装需要经过三个环节第一个环节下载kubuctl下载minikube第二个环节下载minikube ISO下载kubeadm下载kubelet第三个环节下载各种镜像这些方式中都会涉及到科学上网的情况,加入已经实现了科学上网,都不是问题,否何就要找到一些迂回的方式我的安装环境是win7,虚拟机用的virtualbox,命令行是git Bash,wind...

2019-02-28 11:28:05 1778

原创 ubuntu下安装virtualbox+vagrant

1 virtualbox的安装virtualbox有deb版本,直接下载来后sudo dpkg -i xxx.debhttps://pan.baidu.com/s/1TdE1oGwDOSkukA8Rwu1WJQ 提取码:p4kw2 vagrant的安装vagrant不要用sudo apt-get install vagrant 来安装,安装的版本会比较低,与virtualbox会不兼容...

2019-02-25 15:41:15 301

原创 win7下利用virtualbox+vagrant配置linux虚拟机

win7下利用virtualbox+vagrant配置linux虚拟机安装顺序先要安装virtualbox再安装vagrant,在win7中,这两个软件都是不断next安装即可virtualbox的下载地址链接:https://pan.baidu.com/s/1ZakeoxdBMGq_DqeaszH3Pg 提取码:xawovagrant的下载地址链接:链接:https://pan.bai...

2019-02-24 18:50:43 359

原创 docker经典实例学习笔记(第一章)

February 21, 2019 9:20 AMdocker经典实例学习笔记(第一章)ubuntu中docker的安装sudo apt-get updatesudo apt-get install wgetsudo wget -qO- https://get.docker.com/ | sh#启动dockerservice docker start#以非root的方式执行do...

2019-02-21 11:05:38 155

原创 爬虫产品开发安排

一 产品的功能特点包括自定义抓取 以及 常备网站一键入库抓取支持自定义调度版本更新无感,后期免维护程序再抓取过程中出现问题会有邮件提醒支持mysql oracle mongodb支持异步入库支持restful接口支持thrift/grpc调用python版本支持分布式部署支持登录/验证码验证登录功能二 开发进度安排一期(年前)完成产品的单机docker一键部署任务...

2019-01-05 10:58:15 304

原创 让pycharm利用docker的环境进行开发

*pycharm要使用隔离的python环境的话,可以利用virtualenv,conda来创建但是现在要通过docker的方式实现环境的隔离,例如要使用比较重的tensorflow来实现的话有一个前提条件,1 pycharm要使用正式版2 docker环境要能支持sshd服务(默认是不支持的)*关于第一个条件,可以百度下面述说第二个条件,我们自己创建一个带ssh服务的te...

2018-12-06 19:56:45 3132

原创 mysql导入导出

mysql的导出:mysql的数据导出到外部是有限制的,查看限制的方式show variables like '%secure%'secure_file_priv为null    表示不允许导入导出secure_file_priv指定文件夹时,表示mysql的导入导出只能发生在指定的文件夹secure_file_priv没有设置时,则表示没有任何限制这个参数的值可以再my.ini的配...

2018-12-05 16:42:27 109

原创 ubuntu安装以及必备软件安装完全手册

1 首先下载ubuntu iso的镜像文件,可以去网易镜像中下载我下载的版本是ubuntu-16.04.5-desktop-amd642 依照下面的网页内容安装好UltraISO软件,通过该软件将iso文件烧到u盘中https://blog.csdn.net/yaoyut/article/details/780030613 打开电脑并按F12键,将开机启动盘设为 USB HDD 这...

2018-12-02 17:58:05 1898

原创 单线程下两种相对高效的获取数据的方法

1 方法一是通过requests.Session  一次性获取TCP连接后,之后的请求可以共享import requestsimport timeheaders = {"Content-Type":"application/json", "Authorization":"Bearer 86e9e12426c77b242522429e308068a921819fad3...

2018-11-26 16:04:35 291

原创 总结发言:关于如何获得quandl数据的两种方法

背景介绍:quandl提供了很多免费数据,登上官网,注册后就可以的得到api的key,一些常用的股票数据都可以得到。我的系统是ubuntu系统方法一:也是最简单的,自然是pip install Quandl 就ok啦。且慢最新的quandl的python包已经由 Quandl 更名为quandl所以正确的安装姿势是:针对python2.7版本 ----&gt; pip ...

2018-09-18 07:25:24 13845

原创 oanda的几种访问方式

1 通过听过的restful接口2 pip install v20  利用python包3 利用v20-python-samples的操作命令其中我会将restful访问方式的代码发出来

2018-08-27 21:56:00 905 1

2018年美团点评技术年货(下)

2018年美团点评技术年货(下) 2018年美团点评技术年货(下)

2018-02-09

2018年美团点评技术年货(合)

2018年美团点评技术年货(合) 2018年美团点评技术年货(合)

2018-02-09

强化学习在阿里巴巴上的技术创新

强化学习在阿里巴巴上的技术创新 强化学习在阿里巴巴上的技术创新

2018-02-08

程序员面试金典 第5版

程序员面试金典 第5版 程序员面试金典 第5版 程序员面试金典 第5版

2018-02-08

Java面试宝典2014版 面试宝典

Java面试宝典2014版 面试宝典 Java面试宝典2014版 面试宝典

2018-02-08

JAVA程序员面试宝典 第4版(带书签 高清扫描版)欧立奇

JAVA程序员面试宝典 第4版(带书签 高清扫描版)欧立奇 完成清晰

2018-02-08

系统架构设计师教程 第3版 带书签目录 完整版

系统架构设计师教程 第3版 带书签目录 完整版 系统架构设计师教程 第3版 带书签目录 完整版

2018-02-08

ApacheSparkGraphProcessing

ApacheSparkGraphProcessing ApacheSparkGraphProcessing ApacheSparkGraphProcessing

2018-02-08

Fast_Data_Processing_with_Spark_2_-_Third_Edition

Fast_Data_Processing_with_Spark_2_-_Third_Edition Fast_Data_Processing_with_Spark_2_-_Third_Edition

2018-02-08

Apress.Pro.Spark.Streaming.The.Zen.of.Real-Time.Analytics.Using.Apache.Spark

Apress.Pro.Spark.Streaming.The.Zen.of.Real-Time.Analytics.Using.Apache.Spark

2018-02-08

Packt.Big.Data.Analytics.with.Spark.and.Hadoop

Packt.Big.Data.Analytics.with.Spark.and.Hadoop Packt.Big.Data.Analytics.with.Spark.and.Hadoop

2018-02-08

Packt.Mastering.Apache.Spark

Packt.Mastering.Apache.Spark Packt.Mastering.Apache.Spark

2018-02-08

Spark for Data Science

Spark for Data Science Spark for Data Science Spark for Data Science

2018-02-08

基于Spark-Graphx的大规模用户图计算和应用 完整高清

基于Spark-Graphx的大规模用户图计算和应用 完整高清 基于Spark-Graphx的大规模用户图计算和应用 完整高清

2018-02-08

38张史上最全的IT工程师 (高清)

这些图谱收集在一起,并且归类便于查找和学习,希望能够帮助到每一位想成为架构师或者已经是架构师的小伙伴。

2018-02-05

算法导论中文版

该书是一本十分经典的计算机算法书籍,与高德纳(Donald E.Knuth)的《计算机程序设计艺术》(The Art Of Computer Programming)相媲美。 《算法导论》由Thomas H.Cormen、Charles E.Leiserson、Ronald L.Rivest、Clifford Stein四人合作编著(其中Clifford Stein是第二版开始参与的合著者)。本书的最大特点就是将严谨性和全面性融入在了一起

2018-02-02

分布式系统架构与设计实战

分布式系统架构与设计实战 完整清晰版 分布式系统架构与设计实战 完整清晰版

2018-02-02

分布式算法导论(原书第2版)

分布式算法导论(原书第2版) 完整清晰版 分布式算法导论(原书第2版) 完整清晰版

2018-02-02

大型网站系统与JAVA中间件实践

大型网站系统与JAVA中间件实践 完整清晰版 带标签 大型网站系统与JAVA中间件实践 完整清晰版 带标签

2018-02-02

大型分布式网站架构设计与实践

大型分布式网站架构设计与实践 完整清晰版 大型分布式网站架构设计与实践 完整清晰版

2018-02-02

minikube-v0.34.0.iso

minikube-v0.34.0.iso

2019-02-27

minikube-windows-amd64.exe

minikube-windows-amd64.exe

2019-02-27

VNPY架构文档资料架构图

vnpy架构文档

2019-02-25

datafun技术年货NLP

datafun技术年会NLP

2019-02-25

38张史上最全的IT工程师技能图谱

38张史上最全的IT工程师技能图谱

2018-12-31

2018年美团点评技术年货(中)

2018年美团点评技术年货(中) 2018年美团点评技术年货(中)

2018-02-09

2018年美团点评技术年货(上)

2018年美团点评技术年货(上) 2018年美团点评技术年货(上)

2018-02-09

Nginx高性能Web服务器详解

Nginx高性能Web服务器详解 Nginx高性能Web服务器详解 Nginx高性能Web服务器详解

2018-02-09

Storm实战构建大数据实时计算

Storm实战构建大数据实时计算 Storm实战构建大数据实时计算

2018-02-08

Apache Kafka

Apache Kafka 高清完整 Apache Kafka 高清完整 Apache Kafka 高清完整

2018-02-08

Packt.Mastering.ElasticSearch.5.0.3rd.Edition.1786460181

Packt.Mastering.ElasticSearch.5.0.3rd.Edition.1786460181

2018-02-07

SparkGraphXinAction

SparkGraphXinAction SparkGraphXinAction SparkGraphXinAction

2018-02-07

Go语言网络编程-v0.0.2

Go语言网络编程-v0.0.2 Go语言网络编程-v0.0.2 Go语言网络编程-v0.0.2

2018-02-07

深入理解ElasticSearch

深入理解ElasticSearch 深入理解ElasticSearch 深入理解ElasticSearch

2018-02-07

优化算法 经典

优化算法 经典完整版 高清 优化算法 经典完整版 高清 优化算法 经典完整版 高清

2018-02-07

数理统计学简史

数理统计学简史 数理统计学简史 数理统计学简史 数理统计学简史

2018-02-07

Hands-On Machine Learning with Scikit-Learn and TensorFlow

Hands-On Machine Learning with Scikit-Learn and TensorFlow Hands-On Machine Learning with Scikit-Learn and TensorFlow

2018-02-07

Scala Cookbook

Scala Cookbook Scala Cookbook Scala Cookbook Scala Cookbook

2018-02-07

Building Machine Learning Projects with TensorFlow

Building Machine Learning Projects with TensorFlow

2018-02-07

Packt.TensorFlow.Machine.Learning.Cookbook.2017

Packt.TensorFlow.Machine.Learning.Cookbook.2017 Packt.TensorFlow.Machine.Learning.Cookbook.2017

2018-02-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除