PySpark 教程之 Count(1) vs Count(*) vs Count(col_name),那个是正确的方式从表中获取计数
2023-09-11 14:18:32 时间
更多时候,我们很困惑选择正确的方式从表中获取计数,其中没有一个是错误的。但是哪一个是最熟练的呢?是count(1)还是count(*)还是count(col_name)?
count(1)和count(*)基本上都给出了记录的总数,而count(col_name)基本上给出了该列上 NOT NULL 记录的计数。
对于上述情况,Spark 有自己的处理方式。像往常一样,让我们用例子来看看。
我们将创建一个 Python 装饰器并使用“ noop ”格式进行性能基准测试。
# Lets create a simple Python decorator - {get_time} to get the execution timings
# If you dont know about Python decorators - check out : https://www.geeksforgeeks.org/decorators-in-python/
import time
def get_time(func):
def inner_get_time() -> str:
start_time = time.time()
func()
end_time = time.time()
return (f"Execution time: {(end_time - start_time)*1000} ms")
print(inner_get_time())
相关文章
- QT-vs各个版本的编译器号对应的vs版本号
- [C++]VS与第三方工具下载
- 曼彻斯特编码 vs NRZ编码
- Atitit 知识图谱 知识抽取 信息抽取的总结艾提拉总结 目录 1. 知识抽取1 2. 数据源主要来自两种渠道(2 2.1. 内部结构化数据vs 外部网页数据2 3. 2. 知识图谱的数据来
- Database:五大数据库类型的简介(NDBMS/HDBMS/OODBMS/RDBMS/NoSQL)、两大主流数据库对比—关系型数据库VS非关系型数据库(存储方式/存储结构/存储规范等)之详细攻略
- 解决vs项目调试时想看cout或者printf信息
- VS Code使用过程中遇到的一些问题
- 玩转华为ENSP模拟器系列 | 创建VS的示例
- 完美解决ubuntu系统的中文输入法无法写入VS Code的问题
- UI自动化框架,数据驱动 vs 关键字驱动怎么选
- IPv6 vs IPv4使用差异说明
- 解决VS CODE运行C程序闪退的问题
- Oracle Developer Tools for VS Code连接Oracle