- 博客(15)
- 收藏
- 关注
原创 【Hive Partition(分区)DDL操作】
ADD PARTITION会更改表元数据,但不会加载数据。如果分区位置中不存在数据,查询时将不会返回结果。因此需要保证增加的分区位置路径下,数据已经存在,或者增加分区之后导入分区数据。
2024-06-20 19:00:00
297
1
原创 【基于Langchain-chatchat搭建本地智能 知识问答系统】
基于 ChatGLM 等大语言模型与 Langchain 等应用框架实现,开一种利用 langchain 思想实现的基于本地知识库的问答应用,目标期望建立一套对中文场景与开源模型支持友好、可离线运行的知识库问答解决方案。依托于本项目支持的开源 LLM 与 Embedding 模型,本项目可实现全部使用开源模型离线私有部署。与此同时,本项目也支持 OpenAI GPT API 的调用,并将在后续持续扩充对各类模型及模型API 的接入。
2024-06-20 14:01:11
367
原创 【Hive创建静态分区表并导入数据】
值得注意的是,本地文件导入不会删除本地的原文件,但在hdfs上导入则会将原hdfs路径下的文件删除,即本地导入是复制文件,而hdfs是移动文件。假设数据文件为student1.txt和student2.txt,记录两个班的学生信息。在hive中创建分区表。
2024-06-20 13:30:15
188
原创 【Spark RDD详解】
RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是 Spark 中最基本的数据抽象,代表一个不可变、可分区、里面的元素可并行计算的集合。Dataset:一个数据集合,用于存放数据的。Distributed:RDD 中的数据是分布式存储的,可用于分布式计算。Resilient:RDD 中的数据可以存储在内存中或者磁盘中。
2024-06-20 06:00:00
355
原创 【MapReduce概述及常用的数据序列化类型】
MapReduce 是一个分布式运算程序的编程框架。核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。易于编程。用户只关心,业务逻辑。实现框架的接口。良好扩展性,可以动态增加服务器,解决计算资源不够的问题。高容错性。任何一台机器挂掉,可以将任务转移到其他节点。适合海量数据的计算(TB/PB)。几千台服务器共同计算。不擅长实时计算。不擅长流式计算。spark streaming 和 flink 可以。
2024-06-19 17:08:18
162
原创 【Hive创建静态分区表】
当数据量过大时,为了避免查询时扫描表的全部数据,Hive支持根据指定的字段对表进行分区,分区的字段可以是日期、地域、种类等具有标识意义的字段。在建表语句中,使用来规定分区。但需要注意分区字段不能是表中已经存在的字段。
2024-06-19 15:11:19
194
原创 【IDEA配置连接Linux虚拟机的Hive数据库(超详细)】
填写hive server2所在的服务器或主机的主机名或者ip,登录的用户名,然后测试连接。打开IDEA,创建或打开一个项目,点击Database,选择”+“号,点击Driver。添加Hive的jdbc jar包。之后点击Apply完成添加。的文件,即可快乐的进行hive QL的代码编写。点击OK,完成hive的连接。配置好hive的远程模式,
2024-06-18 23:26:49
1716
原创 【MapReduce电商日志文件分析(三)】
在 map 阶段,我们对每一条数据进行读取,调用编写号的 LogParser 类中的 parse 方法,对数据进行解析(即生成对应的 map 键值对,如 “ip” 对应的 ip 地址)然后调用编写好的GetPageId 类的 getPageId 方法,获取数据中的 PageId,接着使用 StringBuilder 对各个值进行拼接,拼接完成的字符串作为键,对其值设置为1。reduce 阶段无需多言,与前面的 reduce 阶段的处理逻辑一样。在这里我们需要进行ETL操作。
2024-06-07 21:40:37
193
原创 【MapReduce 电商日志文件分析(二)】
正常来说,每一条数据中的第14个数据项是ip地址。我们对每一条字符串按分隔符分割,因为考虑到有的一条数据存在缺失数据,所以我们将分割后数组长度小于14的数组过滤掉。再判断 ip 是否为空,不为空则通过调用ip解析的工具类,将ip转换为对应的省份并将其作为键,Reduce统计合并。
2024-06-06 20:49:34
222
原创 【MapReduce电商日志文件分析(一)】
这里我们需要提取每一条数据中的ip、url、pageId、contry、province、city字段。其中ip、url 和 pageId可以直接通过字符串的处理得到。contry、province 和 city 通过定义的工具类进行处理后得到。我们需要提取每一条数据中的ip,在Map阶段使用ip解析的工具类,将每个ip对应到所属省份,将未知ip设置为默认值,得到的省份作为键,值设置为1。Map阶段,对于每一条数据,设置一个默认键(只用于标记该行),值设置为1。Reduce阶段,获得所有ip的值的和即可。
2024-06-05 21:29:56
1419
原创 【手机流量分析项目】
包括FlowBean类(存放手机号、上行流量、下行流量),FlowMapper类(实现map过程)、FlowReducer类(实现reduce过程)、ProvincePartitioner类(对reduce之后的数据进行分区)以及FlowDriver类(主类方法);将数据文件传入Linux系统中,并将文件上传至HDFS中的指定目录(这里在hdfs的根目录下创建一个文件夹input)中。3)对MapReduce程序进行打包,并上传至Linux系统。1)创建maven项目,并设置相关依赖;
2024-06-04 19:30:05
364
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人