转化漏斗的基本实现

转化漏斗的基本实现

参照 clickhouse-presentation funnel 实现:
https://github.com/yandex/clickhouse-presentations/blob/master/meetup9/funnels.pdf

测试环境:单机 Intel Xeon L5520,内存16G(配置是不是很穷呢😭)
样本数据:易观OLAP大赛Demo数据,官方说6亿,17年1月和2月的数据,我实际下载数据总条数3亿左右,只有1月的数据,可能下载过程丢了。。。

测试项

  • 计算2017年1月份中,依次有序触发“搜索商品”、“查看商品”、“生成订单”的用户转化情况,且时间窗口为1天
  • 计算2017年1月和2月份中,依次有序触发“登陆”、“搜索商品”、“查看商品”、“生成订单”、“订单付款”的用户转化情况, 且时间窗口为7天,“搜索商品”事件的content属性为Apple,“浏览商品”事件的price属性大于5000。

原题中,有时间窗口概念,clickhouse现有原生聚合函数无法支持,所以到后面实现;下载的数据没有二月份的,而且机器配置有点低,测试的时候好几次内存不够分配


Clickhouse Tutorial

Clickhouse tutorial

ClickHouse is an open source column-oriented database management system capable of real time generation of analytical data reports using SQL queries.

clickhousegif

参照官网教程:https://clickhouse.yandex/tutorial.html

单节点,测试数据为 1987到2015 美国民用航班数据,1.66亿rows

  • single server
  • use USA civil flights data since 1987 till 2015
  • contains 166 millions rows, 63 Gb of uncompressed data

我的测试基于 centos6.9

其他系统安装见:official Docker images of ClickHouse


Clickhouse_Introduce

Clickhouse

clickhousegif

ClickHouse is an open source column-oriented database management system capable of real time generation of analytical data reports using SQL queries.

官网:https://clickhouse.yandex/
中文社区:http://clickhouse.com.cn
官方博客:https://yandex.com/blog/clickhouse

  • Blazing Fast
  • Linearly Scalable
  • Hardware Efficient
  • Fault Tolerant
  • Feature Rich
  • Highly Reliable
  • Simple and Handy

一次 HTTPRequest TimeOut 分析

现象:访问产品间歇性出现TimeOut

现象:访问其他网站正常,但是只要是访问公司的产品网站有时就会非常缓慢,有时候会出现504 网关超时。 这种现象也是间歇性发生

收集基础信息

所有产品对外的nginx 出口机是10.9.171.123,外网IP是123.59.83.77

以下以:www.clickhouse.com.cn (clickhouse也是配置在ucloud 上) 为例进行分析:

1
2
curl www.clickhouse.com.cn -o /dev/null
curl www.clickhouse.com.cn -o /dev/null -x 10.9.171.123:80

数字货币的价值基础

数字货币的价值基础

一个新生事物,出生时就带着要要掀翻传统的桌子宣言,既然是想要革命,那么我们对其的认知就不能限制在现有事物上,用已有框架逻辑来评定想要颠覆旧事物的新生事物是非常狭隘的。所以,对于数字货币,不要局限于货币这两个字。有人说比特币是中本聪进行的一次社会性实验,连创始人都不清楚它的未来会发展成什么。它的诞生,带动数字货币的蓬勃发展,现在万币齐发,其中也良莠不齐,有人[KK]提过“技术也是一种生命体”,在数字货币自我演化的生态下,会不会变自生变,完成变革,也许就不得而知了

但是一切还得从货币说起

什么是货币

凯恩斯在《货币论》上讲,货币可以承载债务、价格的一般等价物。货币的本质是等价物。

wiki百科对货币的定义:货币,称钱财,是人们为提高交易效益,对一种媒介达成的共识。货币形式有贝壳粮食等自然物、金属纸张等加工品、银行卡信用卡等磁条卡、以及移动支付、加密货币等移动应用程式[1]

政治课上大家都学过,货币是从商品中分离出来固定充当一般等价物的商品。货币的本质就是一般等价物。货币的职能是价值尺度流通手段贮藏手段支付手段世界货币


鸡和猪的故事

鸡和猪的故事

The fable of the Chicken and the Pig is used to illustrate the differing levels of project stakeholders involved in a project. The basic fable runs:[1]

A Pig and a Chicken are walking down the road.
The Chicken says: “Hey Pig, I was thinking we should open a restaurant!”
Pig replies: “Hm, maybe, what would we call it?”
The Chicken responds: “How about ‘ham-n-eggs’?”
The Pig thinks for a moment and says: “No thanks. I’d be committed, but you’d only be involved.”

Sometimes, the story is presented as a riddle:

Question: In a bacon-and-egg breakfast, what’s the difference between the Chicken and the Pig?
Answer: The Chicken is involved, but the Pig is committed!

从这个寓言/冷笑话的故事里我们会有什么启示呢?


License 设计

介绍

不提倡什么授权、加密、混淆,不过,有开源项目,也会有商业项目。也并不是所有产品都是Saas服务,如果是有对外有项目输出,且产品采用授权使用形式的企业,那么对自己的软件产品加上授权验证必不可少

特性

  1. RSA 非对称加密,公钥加密,私钥解密,保证license信息安全; –10.31补充,RSA每次加密密文都不一致,所以machine 信息不能用非对称加密,只能选用对称加密
  2. Digital Signature公钥数字签名;
    1. 防止license被冒充签发(认证);
    2. 保证数据完整性;
    3. 数字签名具有不可抵赖性(即不可否认性)
  3. 硬件信息采集,防止程序被无限copy
  4. 授权截止时间,完成业务上授权需求
  5. 使用license的业务代码混淆加密,防止反编译替换跳过验证流程
  6. 可以加入自定义数据(授权版本、授权对象、授权功能列表)等等,方便扩展

ssh 免密登陆

ssh 免密登陆

原理:

用ssh-keygen在ServerA上生成私钥跟公钥,将生成的公钥拷贝到远程机器ServerB上后,就可以使用ssh命令无需密码登录到另外一台机器ServerB上。

e.g. ServerA 免密登陆 ServerB

在ServerA,ssh-keygen -t rsa ,三次回车生成id_rsa,在~/.ssh/目录下会生成id_rsa(私钥) id_rsa.pub(公钥)这两个文件;然后将公钥拷贝到

ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub root@ServerB:~/.ssh/authorized_keys

登陆ServerB,变更~/.ssh/authorized_keys 权限

chmod 600 ~/.ssh/authorized_keys

这样就可以在ServerA免密登陆ServerB了。authorized_keys可以放多个公钥,那时就不能用scp命令了。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×