avatar
Articles
136
Tags
34
Categories
0

Home
Archives
Links
Games
  • MikuTap 初音未来
  • StartBattle 星际大战
  • 2048 经典游戏
  • BattleCity 坦克大战
  • PacMan 吃豆人
  • Tetris 俄罗斯方块
  • CatchCat 困住小猫
Moments
  • Music
  • Diary
  • Gallery
More
  • Tags标签
  • About关于
  • Messageboard留言板
SilverSucks
Home
Archives
Links
Games
  • MikuTap 初音未来
  • StartBattle 星际大战
  • 2048 经典游戏
  • BattleCity 坦克大战
  • PacMan 吃豆人
  • Tetris 俄罗斯方块
  • CatchCat 困住小猫
Moments
  • Music
  • Diary
  • Gallery
More
  • Tags标签
  • About关于
  • Messageboard留言板

SilverSucks

【用户画像(二)】Python操作ES(支持sql)及ES整合Hive,Spark,MySQL
Created2023-08-02
SQL与ElasticSearch对应关系(※) SQL Elasticsearch column(列) field(字段) row(行) document(文档) table(表) index(索引) schema(模式) mapping(映射) database(数据库) Elasticsearch集群实例 Python操作ElasticSearch 上面说到ElasticSearch既然是个数据库那么必然会像MySQL一样可以通过pymysql这中类似的组件进行各种操作. 但是局限于原生的ElasticSearch的命令基本都是Restful风格的代码, 学习的难度未免会有所增加. 原生的RestfulAPI风格在上篇文章介绍过了,这里就不多bb了. 创建(配置)虚拟环境 如果你的虚拟环境中已经有了ElasticSearch这个插件,那么直接切换到虚拟环境就好. 如果没有就需要手动安装了. 12345678# 使用Anaconda虚拟环境管理器, 方便解决版本冲突的问题conda create -n es_env python==3.7.1 ...
【用户画像(一)】技术选型及ElasticSearch与后台启动命令
Created2023-08-01
画像项目介绍项目分类 数据仓库 离线数仓面向数据分析、报表服务 分层管理、维度建模 Hive实现 用户画像 构建在数据仓库之上 toC toB 推荐系统 用户画像之上 淘宝等电商平台 抖音 快手等内容平台 广告 社交 Lambda架构 离线+实时 batch layer 批处理层 speed layer 速度层 service layer 服务层 kappa架构-流批一体 What用户画像 就是给用户打上海量的标签, 根据用户的目标, 行为和观点差异将用户区分成不同的类型, 从每种类型中提出出关键的信息(标签的名字) 形成人物原型, 实际就是用户信息的标签化。 个体用户画像 群体用户画像 Why 数据业务化-加深用户认知,指导业务开展 数据技术化-构建用户标签,支持上层应用 通过已有数据->获取对应的信息->打上相应的标签->指导业务 How 数据获取 静态数据:用户属性-姓名 性别 年龄。。。。。 用户提供 动态数据:用户行为 下单 上课 理赔 设计指标 构建指标体系-以业务需求为导向 明确开发需求-标 ...
【SQL刷题本(三)】lag函数的使用
Created2023-07-31
游戏玩法分析 IVTable: Activity 1234567891011+--------------+---------+| Column Name | Type |+--------------+---------+| player_id | int || device_id | int || event_date | date || games_played | int |+--------------+---------+(player_id,event_date)是此表的主键。这张表显示了某些游戏的玩家的活动情况。每一行是一个玩家的记录,他在某一天使用某个设备注销之前登录并玩了很多游戏(可能是 0)。 编写一个 SQL 查询,报告在首次登录的第二天再次登录的玩家的比率,四舍五入到小数点后两位。换句话说,您需要计算从首次登录日期开始至少连续两天登录的玩家的数量,然后除以玩家总数。 查询结果格式如下所示: 123456789101112131415161718Activity table:+-----------+--- ...
【SQL刷题本(二)】窗口函数
Created2023-07-30
去掉最高最低薪资,求平均薪资概述123456789101112131415161718192010001 1 6011710002 2 9210210003 2 8607410004 1 6659610005 1 6696110006 2 8104610007 2 9433310008 1 7528610009 2 8599410010 1 7688410011 1 1111110012 1 9999910013 2 1111110014 2 99999薪水表中是员工薪水的基本信息,包括雇员编号,部门编号和薪水 第1行表示雇员编号为10001的员工在1号部门,薪水为60117元; 第2行表示雇员编号为10002的员工在2号部门,薪水为92102元; ... 第10行表示雇员编号为10010的员工在1号部门,薪水为76884元 需求 问题:查询每个部门除去最高、最低薪水后的平均薪水,并保留整数。 12345678910111213141516with tmp as ( ...
【数仓查漏补缺(二)】Hive原理及调优回顾
Created2023-07-29
Exists优化 exists性能比in高,能用exists就不要用in EXISTS里面的子查询,可以使用外部查询的表字段,而且必须和外部表存在关联关系,否则会报错 exists中的子查询,select * / id / 1 都一样,重点是where条件 EXISTS有了关联以后,外部的每一行数据,在子查询中查出来的结果都是不一样的 CodeDmeo使用in(效率低)1234SELECT * from sqooptohive.emp2WHERE area in (SELECT concat(province, city) from sqooptohive.emp_add_hiveWHERE name like '张%'); 使用exists1234567891011121314151617SELECT * from sqooptohive.emp2WHERE EXISTS( SELECT * from sqooptohive.emp_add_hive where emp2.area=concat(province, cit ...
【数仓查漏补缺(一)】HiveSql回顾
Created2023-07-28
基础语法Create语句 完整的Hive的建表语句 分区, 分桶, 切割, 存储方式, 存储位置, 表属性 1234567891011create [external] table 表名( 字段名 字段类型 Comment'字段的描述信息', 字段名 字段类型 Comment'字段的描述信息', 字段名 字段类型 Comment'字段的描述信息' -- 最后一行没有逗号)Comment '表的描述信息'partitioned by 中不存在的字段 字段类型) -- 分区clustered by (表中已有字段) sorted by (表中已有字段 desc/asc) into 桶的个数 buckets -- 分桶row format delimited fields terminated by ',' -- 切割stored as orc -- (stored as TestFile 行存储方式) orc是列存储方式location 'HD ...
【SQL刷题本(一)】SQL连接查询及子查询
Created2023-07-27
组合两个表 编写一个SQL查询来报告 Person 表中每个人的姓、名、城市和州。如果 personId 的地址不在 Address 表中,则报告为空 null 。以 任意顺序 返回结果表。 案例12345678910111213141516171819202122232425输入: Person表:+----------+----------+-----------+| personId | lastName | firstName |+----------+----------+-----------+| 1 | Wang | Allen || 2 | Alice | Bob |+----------+----------+-----------+Address表:+-----------+----------+---------------+------------+| addressId | personId | city | state |+-----------+--------- ...
【SparkStreaming】SparkStreaming和Kafka整合
Created2023-07-26
将从Kafka中读取的binary二进制数据(DataFrame结构)转为String类型的数据, 方便后续的处理 这里有两种方式 DSL风格-传统方式 select(col("value").cast(StringType())) DSL风格使用selec表达式替换 selectExpr("cast(value as string)") SparkStreaming和Kafka整合 无非就是Kafka中的几个组件(生产者, 消费者, topic, partition)和Streaming进行整合 这里的重点就是理解Kafka中的原理 从Kafka中读取数据 订阅一个主题 123456df = spark \ .readStream \ .format("kafka") \ .option("kafka.bootstrap.servers", "host1:port1,host2:port2") \ .option("subscribe", ...
【SparkStreaming】初识Spark实时框架
Created2023-07-25
从socket套接字中读取数据(被称为Socket Source) 12345input_df = spark \.readStream \.format("数据来源类型") \.option("host", "地址") \.load() 实时的从文件中读取数据(被称为File Source) 123456input_df = spark\ .readStream\ .format('csv')\ .option('sep', ';') \ .schema('naem string, age int, hobby string')\ .load('file:///root/streaming') 实时的将数据写出到文件中(被称为File Sink) 1234567rs_df\ .writeStream\ .outputMode('append& ...
【Spark笔耕不辍(二)】Kafka
Created2023-07-22
置顶URL: https://blog.csdn.net/weixin_46244703?type=blog 消息队列什么是消息队列 消息队列MQ(Message Queue)用于实现两个系统之间或者两个模块之间传递消息数据时,实现数据缓存 消息队列的作用 消息队列可以实现两个模块之间的异步通信,并降低模块之间的耦合性,并可以限流削峰 由于消息队列是连接两个模块的桥梁,至关重要,因此消息队列都是采用分布式架构来保证数据的安全性和可靠性 常见的消息队列: ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ、Pulsar 发布和订阅介绍 1、发布者又称生成者,多个生成者都可以向消息队列生成数据,为了区分不同的消息,每个消息都有主题 2、订阅者又称消费者,每个消费者可以消费或者订阅多个主题的消息 3、消费者消费完消息之后,队列中的消息并不会立刻消失 Kafka什么是KafkaKafka是基于分布式的流式处理框架,主要用于实时分析 Kafka是基于发布订阅模式的消息队列,有生产者 消费者 主题 队列等 Kafka的核心组件 Broker1231、搭建Ka ...
1…345…14
avatar
Johnson Liam
机器都在学习,你有什么理由不学习?
Articles
136
Tags
34
Categories
0
Follow Me
Announcement
网站由Github服务器托管,感谢支持!
Recent Post
【FLink教育】Hudi整合Hive实现湖仓一体2023-09-16
【FLink教育】FlinkCDC介绍&集成Hive2023-09-15
【FLink教育】Flink技术选型2023-09-14
ClickHouse全面解析2023-09-13
【Flink】FlinkSQL| 状态编程| 自定义函数2023-09-12
Tags
ETL FineBI Flink Git Github HDFS HQL Hadoop Hexo Hive Interview Java Kafka Kettle Linux MapReduce MySQL Presto Pycharm Python Shell Spark Spark项目 Spider Sqoop Zookeeper 前端 剑指offer 基本语法 数仓 数据结构 计网 集群 面向对象ETL FineBI Flink Git Github HDFS HQL Hadoop Hexo Hive Interview Java Kafka Kettle Linux MapReduce MySQL Presto Pycharm Python Shell Spark Spark项目 Spider Sqoop Zookeeper 前端 剑指offer 基本语法 数仓 数据结构 计网 集群 面向对象
Archives
  • September 202316
  • August 202316
  • July 202330
  • June 202322
  • May 202335
  • April 202313
  • July 20201
  • June 20203
Info
Article :
136
UV :
PV :
Last Push :
©2020 - 2023 By Johnson Liam
Framework Hexo|Theme Butterfly
Welcome to 小威の Blog!