自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 【PYTHON】排序算法大揭秘:从基础到进阶的全面解析

不同的排序算法在时间复杂度、空间复杂度、稳定性等方面各有优劣。简单排序算法如选择排序、冒泡排序和插入排序,虽然实现简单,但在处理大规模数据时效率较低,主要适用于小规模数据或对稳定性有特殊要求的少量数据排序。快速排序、归并排序和堆排序等高效排序算法,平均时间复杂度为 ( O(n log n) ),适用于大规模数据的排序,但在稳定性和空间复杂度上各有不同。桶排序、计数排序和基数排序等非比较排序算法,在特定的数据条件下表现出极高的效率,但也存在适用范围有限等局限性。

2025-01-26 18:30:00 868

原创 深入理解Apache Hive表生成函数:从入门到实践

在实际的数据处理过程中,常遇到包含数组、映射或JSON格式的复杂数据。例如explode、posexplode、inline、json_tuple等等

2025-01-24 07:30:00 1019

原创 Apache Hive 聚合函数与 OVER 窗口函数:从基础到高级应用

Apache Hive 的聚合函数和 OVER 窗口函数是大数据分析的核心工具。通过本文的介绍,我们详细探讨了这些功能的使用场景和代码示例,尤其是它们在时间序列分析中的强大能力。无论是简单的统计分析,还是复杂的多维度汇总,Hive 都能帮助我们高效地完成任务。希望本文能够帮助读者更好地掌握 Hive 的聚合函数和 OVER 窗口函数,提升数据分析能力。

2025-01-21 19:45:00 1694

原创 Apache Hive--排序函数解析

ROW_NUMBER窗口函数为结果集中的每一行分配一个唯一的连续排名值,从1开始,按照ORDER BY子句指定的顺序递增。无论数据值是否相同,其排名都不会出现重复,且是连续的。RANK窗口函数同样用于为结果集的行分配排名。但当遇到相同值时,会分配相同的排名,并且下一个排名会跳过相应的数量。例如,如果有两个并列第2名,那么下一个排名将是第4名。DENSE_RANK窗口函数也用于排名,与RANK函数不同之处在于,当遇到相同值时,虽然也会分配相同的排名,但下一个排名不会跳过。即即使有并列情况,排名依然是连续的。

2025-01-18 13:43:41 1220

原创 从零开始,带你领略图的奥秘——数据结构中的“多对多”关系

图是一个由顶点(Vertex)和边(Edge)组成的集合。用数学语言来描述,图可以表示为一个二元组 G = (V, E),其中 V 是顶点的集合,E 是边的集合。顶点可以代表某种事物,边则表示两个顶点之间的关系。图作为一种复杂的数据结构,其多对多的关系使得它在解决实际问题时具有独特的优势。通过掌握图的基本概念、存储方式、基本操作、遍历算法和应用场景,我们可以更好地理解和应用图,解决各种复杂的问题。希望这篇文章能够帮助你从零开始,逐步深入地领略图的奥秘,为你的算法学习之路打下坚实的基础。

2025-01-09 18:45:00 1145

原创 Hive 数据类型全解析:大数据开发者的实用指南

在大数据处理领域,Hive作为一款基于Hadoop的数据仓库工具,被广泛应用于数据的存储、查询和分析。而理解Hive的数据类型是有效使用Hive的基础,本文将深入探讨Hive的数据类型,帮助大家更好地掌握Hive的使用。Hive支持多种数据类型,主要可分为数值类型、日期/时间类型、字符类型、Misc类型以及复杂类型。这些数据类型为存储和处理各种不同格式的数据提供了有力的支持。Hive 中不同数据类型相互转换的方式有隐式转换和显式转换两种。

2025-01-06 17:07:31 1153

原创 Python 数据结构揭秘:栈与队列

栈是一种后进先出(Last In First Out, LIFO)的数据结构。它类似于一个容器,只能在一端进行插入和删除操作。push(入栈)和pop(出栈).队列是一种先进先出(First In First Out, FIFO)的数据结构。它类似于一个队列,元素从一端进入,从另一端出去。enqueue(入队)和dequeue(出队).栈:适合需要回溯或撤销操作的场景,如函数调用、表达式求值等.队列:适合需要保持元素顺序的场景,如任务调度、缓冲处理等.

2025-01-04 17:17:16 1110

原创 MYSQL存储过程

通过存储过程可以确保数据的完整性约束,例如,在插入数据时检查数据的有效性、自动更新相关表的数据等,避免因应用程序逻辑错误导致的数据不一致问题.:当需要执行复杂的查询操作,涉及多个表的连接、子查询、聚合函数等时,可以将这些查询逻辑封装在存储过程中,提高查询效率和代码的可读性.:对于一些需要在数据库层面处理的业务逻辑,如计算复杂的业务指标、生成报表数据等,可以将这些逻辑封装在存储过程中,减轻应用程序的负担.总之,MySQL 存储过程在需要提高性能、确保数据完整性、封装复杂逻辑等场景中具有广泛的应用价值.

2025-01-04 16:32:00 756

原创 深入了解 StarRocks 表类型:解锁高效数据分析的密码

排序键可以通过。

2025-01-04 15:51:13 1909

原创 深入理解数据结构:数组、链表与列表

数组是一种线性数据结构,它由一系列相同类型的元素组成,并按照一定的顺序存储在连续的内存空间中。可以通过索引快速访问数组中的元素,索引从 0 开始。链表是一种线性数据结构,由一系列节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。链表中的元素可以不连续地存储在内存中。在 Python 中,列表是一种可变序列数据类型,可以存储任意类型的元素。列表内部实现可以是数组或链表,具体取决于实现方式和操作的特点。数组、链表和列表是编程中非常基础且重要的数据结构。

2024-12-20 15:03:21 1098

原创 算法界的“算术课”揭秘复杂度的真相!

Hey家人们,今天咱们来聊聊算法的复杂度分析,这可是编程界的“算术课”!🧮怎么理解复杂度呢?算法复杂度,听起来是不是有点头大?但其实,它就像是我们生活中的“时间管理”。想象一下,你要完成一堆家务,有的活儿三下五除二就能搞定,有的却得磨蹭半天。算法也是这样,有的算法执行起来“嗖”的一下就完成了,有的却慢得让人抓狂。🔍【算法复杂度的重要性】 算法复杂度分析,就是帮我们预测算法执行的时间和空间需求。这就像是在超市购物前,先算算自己的预算,免得结账时尴尬。接下来来点有深度的~_~~

2024-12-14 07:30:00 836

原创 【手把手】迭代与递归:编程世界的双刃剑

迭代是一种重复过程,它通过在循环结构中重复执行一组指令来解决问题。在大多数编程语言中,这可以通过for循环或while循环实现。递归是一种方法,它允许函数调用自身来解决问题。递:程序不断深入地调用自身,通常传入更小或更简化的参数,直到达到“终止条件”。归:触发“终止条件”后,程序从最深层的递归函数开始逐层返回,汇聚每一层的结果。而从实现的角度看,递归代码主要包含三个要素。终止条件:用于决定什么时候由“递”转“归”。递归调用:对应“递”,函数调用自身,通常输入更小或更简化的参数。返回结果。

2024-12-10 15:15:36 856

原创 数仓-日期维表建设

sql 日期:date、week year 、date_format、EXTRACT

2024-12-04 15:06:39 479

原创 liunx系统的文件描述符 及相关的一些问题

http://blog.csdn.net/cywosp/article/details/38965239文件描述符是由无符号整数表示的句柄,进程使用它来标识打开的文件。文件描述符与包括相关信息(如文件的打开模式、文件的位置类型、文件的初始类型等)的文件对象相关联,这些信息被称作文件的上下文。【程序设计上的句柄是一种特殊的智能指针 。当一个应用程序要引用其他系统(如数据库、操作系统)所管理的内...

2019-04-30 15:59:57 335

原创 linux定时任务

编辑添加定时任务:crontab -evi /etc/crontab查看定时任务:crontab -l$ cat /etc/crontabSHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/# For details see man 4 crontabs# Example of job def...

2019-04-23 15:34:34 353

原创 获取ResultSet记录的方法

在jdbc查询出记录结果后,往往需要都结果集进行便利处理,下面记录一些便利方法和获取结果集总数的方法:首先,获取结果集ResultSet:(使用的impala驱动)Class.forName("com.cloudera.impala.jdbc41.Driver");con = DriverManager.getConnection("jdbc:****;AuthMech=3;UID=r...

2019-04-19 18:23:57 7337 1

原创 hive索引创建及存储、导出

--创建hive索引 create index index_t1 on table v_t1 as --as指定索引器,org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler 是固定值,常用的索引器 'org.apache.hadoop.hive.ql.index.compact.CompactInde...

2019-03-23 22:24:57 356 1

原创 sql查询中的包含【被包含】、模糊查询

在mysql中提供了like的关键词可用于模糊查询,也可理解为某些指定字段包含在表中的的查询select count(*) from mysqlb_client where name like '%庆农%';可查询出在name字段下所有包含‘庆农’字样的记录;还有一种情况是我们查询的表中的字段被包含在我们指定的条件中,第一种方式我们可以使用关键词 IN,配合where条件查询:...

2019-03-20 18:11:48 55938 1

原创 web服务启动报错

web服务在本地启动,没报错。但当打包,部署到集群上,启动服务时报错:、org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'mailQueryReportConfProcess': Unsatisfied dependency expressed t...

2019-01-29 14:54:24 472

原创 创建GIT项目,并初始化上传项目代码

需要隔离一个项目的子项目,防止提交时影响项目的其他子项目,所以新建一个Git项目。【其实就是在git上添加一个项目地址,创建一个项目,空的文件件】,记录下过程,备忘。1、在首页,左侧 Project-->'+' 新建一个项目2、点击‘+’之后3、先根据我们的项目地址clone下我们新建的项目,注意:这时候的项目只是一个文件夹,也就是本地的一个git仓库命令:git c...

2019-01-24 18:29:44 18243 1

原创 c3p0连接池和dbutils工具的使用

最近在使用dubbo框架维护老的业务项目,其中免不了对数据库的操作,第一个问题就是数据库的连接了,最简单的方法就是使用连接池,java的数据库连接池也分很多种,例如:DBCP 、C3P0、BoneCP、Proxool、DDConnectionBroker、DBPool、XAPool、Primrose、SmartPool、MiniConnectionPoolManager及Druid等。这里简单记录...

2019-01-20 17:18:32 764 1

原创 SSM框架JAVAWEB项目中各类配置文件模板及作用

最近学习ssm框架的一些东西,首先就是各种配置文件,以及文件和项目中类和接口的映射关系,稍稍总结记录,以做不时之需如有不正确的地方,请留言指正。1、web.xml文件这个文件是创建web项目时生成的,默认路径:main/WEB-INF/web.xml首先看下总体的模板吧<?xml version="1.0" encoding="UTF-8"?><web...

2019-01-01 16:29:01 1493 1

原创 scala函数和方法的区别

  方法 函数 定义 是组成类的一部分 是继承了这些 Trait 的类的对象 实现方式 def fun_name(参数列表)={方法体} val fun  = ([参数列表]) =>{函数体} 参数列表 可有,可无 必须有,但可以为空[需要保留()] 调用 fun_name() 方法名意味着调用,无参是可以...

2018-11-21 15:33:35 228

空空如也

空空如也

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

TA关注的人

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