大数据开发学习Day31

一、Linux

查看系统所有用户
给文件 app.log 设置只读权限
撤销只读权限,恢复可读写

bash 复制代码
cat /etc/passwd
chmod 444 app.log
chmod 664 app.log

/etc/passwd 存放系统所有用户信息,排查账号、运维安全必备
chmod 444 所有人只读,防止误删误改日志配置
chmod 664 属主属组可读写,其他只读,生产常用权限配置

二、SQL

1693. 每天的领导和合伙人

sql 复制代码
SELECT
    sale_date,
    COUNT(DISTINCT user_id) AS unique_leads,
    COUNT(DISTINCT partner_id) AS unique_partners
FROM DailySales
GROUP BY sale_date;

同一分组内多字段分别去重计数

COUNT(DISTINCT) 多维度指标统计标准写法

数仓日报多指标并行统计高频场景

1729. 求关注者的数量

sql 复制代码
SELECT
    user_id,
    COUNT(DISTINCT follower_id) AS followers_count
FROM Followers
GROUP BY user_id
ORDER BY user_id;

分组去重统计粉丝数

社交关系、关注 / 粉丝维度基础 SQL 模板

分组 + 排序常规面试基础题

1741. 查找每个员工花费的总时间

sql 复制代码
SELECT
    event_day AS day,
    emp_id,
    SUM(out_time - in_time) AS total_time
FROM Employees
GROUP BY event_day, emp_id;

三、Pyspark

python 复制代码
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, countDistinct, sum

spark = SparkSession.builder \
    .master("local[*]") \
    .appName("Day31") \
    .getOrCreate()

# 1. 每日领导和合伙人数
sales = spark.createDataFrame([
    ("2025-05-01",101,201),
    ("2025-05-01",101,202)
], ["sale_date","user_id","partner_id"])

sales.groupBy("sale_date")\
     .agg(
         countDistinct("user_id").alias("unique_leads"),
         countDistinct("partner_id").alias("unique_partners")
     ).show()

# 2. 员工每日在岗总时长
emp = spark.createDataFrame([
    (1,"2025-05-01",60,120),
    (1,"2025-05-01",130,180)
], ["emp_id","event_day","in_time","out_time"])

emp.withColumn("duration", col("out_time") - col("in_time"))\
   .groupBy("event_day","emp_id")\
   .agg(sum("duration").alias("total_time"))\
   .show()

spark.stop()

Spark 多字段 countDistinct 并行统计多维度去重量

字段数值相减算单次时长,分组求和汇总

和 SQL 业务逻辑完全对齐,离线数仓日常开发写法

四、算法

136. 只出现一次的数字

python 复制代码
def singleNumber(nums):
    res = 0
    for x in nums:
        res ^= x
    return res

异或运算性质:相同数异或为 0,0 异或任何数不变

时间 O (n),空间 O (1) 最优解

相关推荐
海绵宝宝转agent2 小时前
learn-claude-code第1-5章开源学习笔记分享
人工智能·笔记·python·学习
每天都要写算法(努力版)2 小时前
【行业前沿报告】DAgger:让智能体在自己走到的状态上学习
人工智能·学习·机器学习
Elastic 中国社区官方博客3 小时前
将你自己的密钥用于现有 Elastic Cloud 部署
大数据·数据库·elasticsearch·全文检索
红海云4 小时前
Jev:给智能系统做判断的模型
大数据·数据库·人工智能
计算机毕业编程指导师4 小时前
计算机毕设选题推荐:基于Hadoop与Spark的Steam游戏数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·spark·毕业设计·steam游戏
计算机毕业编程指导师4 小时前
【计算机毕设选题推荐】基于Hadoop+Spark的白鹿抖音评论大数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·spark·毕业设计·抖音评论
geovindu5 小时前
sql: JSON and XML Data Handling in SQL using sql server 2025
大数据·数据库·sqlserver·数据库开发·数据库架构
sunshine22 girl6 小时前
Java学习六 Java常见API-2--String-3-字符串的截取替换和其他方法
java·开发语言·学习
samLi06206 小时前
【数据集】A股上市公司beta贝塔系数数据(2010-2024年)
大数据
xianghongtao01167 小时前
麦肯锡2026技术趋势03_科学发现与工程AI_研究解读
大数据·人工智能