自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

笑看风云路的博客

长风破浪会有时,直挂云帆济沧海。

  • 博客(128)
  • 资源 (11)
  • 收藏
  • 关注

原创 【好书推荐】企业级数据架构

2017年英国《经济学人》杂志提出一个观点:世界上最具价值的资源不再是石油,而是数据。围绕数据的各种概念的提出或者理论层面的探索从未停止过,例如数据要素、数字经济、数字化转型以及数据资产以及定价等。不同行业的企业乃至整个社会对于数据愈发重视,政府也同样提出建设“数字中国”的概念。上述种种无疑都对数据从业者提出更高的要求。当下企业内部的系统往往出现非常复杂的、网状的、相互深耦合以及标准互不统一等现象。

2024-03-29 07:32:34 866 5

原创 大数据:AI大模型对数据分析领域的颠覆(文末送书)

AI大模型正在成为数据分析领域的颠覆者,改变我们对数据分析的认知和方式。通过自然语言对话,普通人可以轻松地进行数据分析,无需编写复杂的代码。这一技术的出现有望缩小技术鸿沟,让更多人能够参与到数据驱动的决策中来。

2023-08-26 13:25:01 4109 41

原创 Spark性能调优指南来了!

Spark是一种基于内存的快速、通用、可扩展的大数据分析计算引擎。Spark Core:实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含了对弹性分布式数据集(,简称RDD)的API定义。Spark SQL:是Spark用来操作结构化数据的程序包。通过Spark SQL,我们可以使用SQL或者版本的HQL来查询数据。Spark SQL支持多种数据源,比如Hive表、Parquet以及JSON等。本文首先讲解了Spark的底层的Shuffle。

2023-07-31 14:37:08 3101 45

原创 当 Spark 任务出现数据倾斜的问题时该如何处理呢?

最近一位数仓同学问我,当Spark任务出现数据倾斜的问题时该如何处理呢?那么今天就来讲一下遇到了数据倾斜问题时处理的方式方法。Spark中的数据倾斜问题主要指shuffle过程中出现的数据倾斜问题,是由于不同的key对应的数据量不同导致的不同task所处理的数据量不同的问题。当我们通过现象,定位到数据倾斜的时候,才可以采用合适的解决方案处理数据倾斜问题。

2023-07-31 09:48:00 422 40

原创 Oracle 迁移 Hive 过程中遇到的问题总结

最近一个小伙伴在做从Oracle到Hive的业务迁移工作,在迁移过程中属实遇到了一些坑,今天就来汇总一下这些坑,避免以后大家其他业务迁移的时候再出现类似的问题,即使出现了也可以拿过来进行对照解决。在迁移业务的过程中,要了解不同系统中函数的用法,希望我遇到的坑,给大家带来一点借鉴意义!

2023-07-26 18:05:16 1547 31

原创 3万字100道大数据技术之高频面试题总结(附答案)

最近有很多粉丝问我,有什么方法能够快速提升自己,通过阿里、腾讯、字节跳动、京东等互联网大厂的面试,我觉得短时间提升自己最快的手段就是背面试题,最近总结了大数据高频面试题,分享给大家,希望大家都能圆梦大厂,加油,我命由我不由天。...

2022-06-27 16:58:15 1924 36

原创 kafka集群搭建超详细教程

由于Kafka具备诸多优点,在大数据开发领域已经占据不可或缺的地位,我们在工作中就会不可避免与之打交道,那么搭建Kafka集群就非常有必要了!

2022-05-23 09:59:14 25774 8

原创 zookeeper集群搭建超详细教程

zookeeper 集群搭建的保姆级教程!

2022-05-22 12:12:17 10279 5

原创 手把手教学hive on spark,还不会的小伙伴快上车了

更换Hive执行的引擎,提升执行速度!打开hive on spark 配置的正确姿势从这里开始!

2022-05-20 13:18:32 979 3

原创 Hive安装超详细教程

Hive3.1.2安装教程前言初始准备安装Hive的具体步骤1、下载hive安装包2、解压3、添加Hive核心配置,选择远程MySQL模式4、下载连接MySQL的驱动包到hive的lib目录下5、在MySQL上创建Hive的元数据存储库6、执行Hive的初始化工作7、验证初始化是否成功8、使用hive9、使用beeline...

2022-05-19 22:01:24 15353 7

原创 Spark集群搭建超详细教程

前言在上一篇文章《Hadoop集群搭建配置教程》中详细介绍了Hadoop集群搭建的全部过程,今天为大家带来分布式计算引擎Spark集群搭建,还是使用三个虚拟机节点上进行安装部署,围绕Standalone模式和Yarn模式的这两种部署模式进行展开。集群搭建具体步骤注意:以下步骤均在hadoop1节点上进行操作,特殊说明除外!Standalone模式1、下载spark-3.0.0的jar包下载地址:https://archive.apache.org/dist/spark/spark-3.0.

2022-05-19 09:32:09 14570 4

原创 Hadoop集群搭建配置教程

Hadoop3.1.3集群搭建前言集群规划集群搭建具体步骤1、下载`hadoop-3.1.3.tar.gz`2、上传并解压3、配置`path`变量4、修改配置文件4.1 修改文件`hadoop-env.sh`4.2 修改文件workers4.3 修改文件`core-site.xml`4.4 修改文件`hdfs-site.xml`4.5 修改文件`mapred-site.xml`4.6 修改文件 `yarn-site.xml`5、把`/opt/module/hadoop`复制到其他节点上6、在其他节点上操作7

2022-05-19 00:35:28 7764 2

原创 【好书推荐】Midjourney:半途而废?还是一路坦途?

后来,上网找了一些资料,零零散散地看了不少文章和视频,但还是不能让 Midjourney 对我言听计从、如臂使指,难道我的 Midjourney 之路,真的如同它的名字一样,要**朋友又说,“我找了个设计师朋友,人家十分钟就给我出了好几种方案,我提了意见,又用了十来分钟就给我改好了。与单纯罗列描述语的书不同的是,万老师用了很大的篇幅介绍了它们的使用场景、细分类别、应用技巧,并提供了多种风格、样式生成的图像案例。朋友第二天又来找我,上来就说:“看来不是 Midjourney 不行,是你不行啊”。

2024-07-10 10:16:39 458 1

原创 大数据开发助手:Coze平台上一款致力于高效解决大数据开发问题的智能Bot!

在大数据技术日新月异的今天,"大数据开发助手"凭借其强大的技术支撑和丰富的功能特性,不仅成为了解决问题的工具,更是每位大数据开发者成长道路上的智慧伴侣。无论你是初学者还是资深工程师,"大数据开发助手"都将是你探索大数据奥秘时不可或缺的伙伴。欢迎大家,点击文末bot链接,立即体验!

2024-07-01 17:06:33 433

原创 创意无界,情感无限:‘情感小说家’智能体,解锁每个人心中的文学大师,写触动灵魂的故事

在当今数字时代,艺术与科技的边界正被前所未有的创新所模糊,文学创作这一悠久的人类智慧结晶也不例外。就在这片创意与技术交汇的沃土上,一款名为“情感小说家”的智能体应运而生,它不仅代表了AI技术在文艺领域的最新探索,更是一次对传统小说创作模式的深刻变革。本文将带您走进“情感小说家”的世界,一探这款由在文心智能体平台上发布的、融合了先进AI技术与人文情感的创意之作。

2024-05-17 17:27:40 908

原创 OpenNJet:下一代云原生应用引擎

OpenNJet,是一款基于强大的 NGINX 技术栈构建的创新型云原生运行时组态服务程序,旨在为互联网与云原生应用场景提供高效、灵活且安全的服务支持。通过对 NGINX 的云原生功能深度强化、安全加固以及代码重构,实现了对基础架构的全面升级,从而能够通过动态加载机制轻松适配多种业务场景,以满足不同产品的形态需求。OpenNJet 应用引擎凭借其对 NGINX 的深度定制化改造与云原生功能扩展,成功构建了一个强大而全面的云原生服务运行环境。

2024-05-06 22:18:43 852 1

原创 与 Apollo 共创生态:七周年大会亮点和我的思考!

4月22日,百度自动驾驶开放平台,举办了百度Apollo智能汽车产品发布会,平台推出了企业生态计划,包括智驾,智舱,智图等多款新产品,继续以开放的态度,引领技术不断创新。在坚信、坚定、坚持做好车企智能化的“技术合伙人”这一战略指引下,Apollo 开发平台陆续推出了13个版本,正是由于这种精益求精的态度,实现了跨越式发展,致敬所有参与共建的合作伙伴、开发者和贡献者!

2024-05-01 23:48:20 524

原创 AI2.0时代的创新契机:引领人类走向智能互融未来

随着科技的不断演进,人工智能正迅速进化为AI2.0时代,将为人类带来前所未有的创新应用。这一新时代不仅仅是技术的飞跃,更是人类智慧与机器智能的深度融合,将在医疗、教育、工业等领域引发深刻变革。本文将探讨AI2.0时代可能带来的创新应用,并着重阐述其积极影响。AI2.0时代的到来将引领人类走向智能互融的未来。从医疗到教育,从工业到日常生活,AI将催生出无限的创新应用,为人类带来更多便利和机会。然而,这一切的实现还需要人类的智慧和决策,将人工智能引导到正确的轨道上。

2023-09-05 23:15:21 255

原创 用Hive SQL求出 a 列 - b 列 的绝对值距离一个给定数组中最近的那个值?

最近碰到一个有意思的需求,跟大家分享一下,如果大家有更好的解法,欢迎在评论区留言!与用户定义的函数(如explode())结合使用。UDTF为每个输入行生成零个或多个输出行。首先将UDTF应用于表的每一行,然后将生成的输出行与输入行连接起来,以形成具有提供的表别名的虚拟表。这个虚拟表会和输入的行进行join,达到连接UDTF外的select字段的目的。explode可以将一行数据转成多行,也就是将行数据转成列数据,它所接收的参数为array和map类型的数据。UDTF默认是忽略输出空的,outer。

2023-09-05 23:09:55 268

原创 论AI与大数据之间的关系

AI与大数据之间的关系,既是相辅相成,又是互相促进。大数据为AI提供了学习的基础,而AI则为大数据赋予了真正的价值。

2023-08-23 12:54:28 720

原创 绝美的古诗词AI作画,惊艳到我了!

随着技术的不断进步,我们可以期待更多类似的创新,为人类的文化传承与创造力注入更多的活力与惊喜。

2023-08-23 12:49:27 630

原创 Hive底层数据存储格式

在大数据领域,Hive是一种常用的数据仓库工具,用于管理和处理大规模数据集。Hive底层支持多种数据存储格式,这些格式对于数据存储、查询性能和压缩效率等方面有不同的优缺点。本文将介绍Hive底层的三种主要数据存储格式:文本文件格式、Parquet格式和ORC格式。总结来说,Hive底层数据存储格式的选择对于数据处理和查询性能有着重要影响。合理的选择能够显著提高数据仓库的性能和效率,进而更好地支持大规模数据处理和分析。

2023-08-17 23:04:34 1696 22

原创 成功解决DataX从Hive导出Oracle的数据乱码问题!

大数据与RDBMS之间的数据导入和导出都是企业日常数据处理中常见的一环,该环节一般称为e-t-l即。市面上可用的etl工具和框架很多,如来自于传统数仓和BI圈的, 来自于hadoop生态圈的,抑或使用计算引擎直接编写代码完成etl作业。在这里跟大家分享一次使用datax从hive导出数据到oracle的作业的时候,出现了两边数据的编码集不一致导致的乱码问题,希望对大家遇到相同的问题时有所帮忙。在数据同步、传输过程中,存在用户对于数据传输进行特殊定制化的需求场景,包括裁剪列、转换列等工作,可以借助ETL。

2023-08-14 13:16:24 769 22

原创 看了2023年的一线互联网公司时薪排行榜!值得思考

根据最近针对国内的一线互联网企业做的调研,汇总了他们的平均时薪水平,最终出了一个排行榜!首先我们来看下,排行榜分哪几个Level,分别为初级、中级、高级、资深、专家/架构这五个,主要根据工程师的工作经验和技术水平进行综合评估的。这些数据在我看来可信度还是比较高的!从上面的时薪排行榜,我们可以看出,职级越高,拿到的薪资越高,自然的就会吸引很多优秀的人才前来分一杯羹,IT行业的竞争压力非常大。每一个Level都是有边界的,那么问题来了:最快逼近边界的有效的方法是什么呢?首先要看到边界。

2023-07-26 09:08:01 1661 18

原创 成功解决Impala中修改parquet表的字段类型问题

最近有个小伙伴在开发中遇到了Impala中修改Parquet表的字段类型问题,于是开启了问题解决之路。上述解决方案并不是真正的对Parquet进行修改字段类型和删除字段,只是新建了一张修改好的新表,然后把原来表的数据以动态分区的方式导入到删表重建的新表中。因为Parquet是在存储上,做了加密,二级制存储压缩,不可以修改的,包括去Hive中执行也是不行的!

2023-07-17 13:48:52 1195 19

原创 了解了ChatGPT对编程语言的影响后,决定让AI给自己打工!

介绍ChatGPT是一种基于自然语言处理技术的语言模型,由美国OpenAI团队研发。它是构建在生成式预训练变换模型(Generative Pre-trained Transformer,简称GPT)之上,具有强大的自然语言理解和生成能力。GPT模型以大规模文本数据为输入进行训练,从而学习到了丰富的语言知识和语义理解能力。它可以根据聊天的上下文生成自然、流畅、有逻辑的回复,并能进行多轮对话。ChatGPT是一种通用的,生成式的人工智能。具体是说ChatGPT不限定领域并且在理解的基础上生成新的内容。

2023-07-10 10:39:16 773 21

原创 人大某硕士盗取全校学生信息已被刑拘,请警惕法律红线!

我个人觉得技术确实很牛逼,但是当你把用技术手段去做了这样的事情,并且把网址公开出来,这个事情就变了性质,最终会为自己的行为付出代价,这不,代价这就来了!也算是给各位拥有技术的程序员敲响了警钟!违法犯罪必将严惩,请谨之慎之!某天早上在新华网看到下面这条信息,真是大快人心!我查了一下,居然还上了热搜!

2023-07-07 23:23:06 353 2

转载 NameNode与DataNode删除块逻辑分析

最近有位小伙伴在生产环境执行 Spark SQL任务的出现了Unable to close file because the last block does not have enough number of replicas. 的错误,大致意思是最后一个 block 快没有足够的副本而不能关闭文件。最近看了一篇文章写了关于这个问题的分析,我也分享给你,希望你在遇到这样的问题的时候,提供一种解决问题的思路​。

2023-06-21 16:04:34 804 5

原创 Hive 和 Oracle 中 Decode 函数的用法差异

在数仓构建过程中,需要从业务那边进行数据的迁移!数仓大多数公司都是使用Hive,而业务那边使用的是Oracle数据库居多。最近就有个小伙伴在迁移的时候碰到了问题:从报错来看,在使用Decode()函数的时候,传参有问题!既然问题来了,我们就来解决一下呗,只有不断地解决问题,才能体现出价值!在平时的数据迁移过程中,需要注意不同框架中同名函数的用法是否有差异,只有知道了这些差异,才能避免在开发过程出现重大责任事故,以及带来的经济损失!

2023-06-14 00:13:33 1350 23

原创 Spark——成功解决java.util.concurrent.TimeoutException: Futures timed out after [600 seconds]

最近真是和Spark任务杠上了,业务团队说是线上有个Spark调度任务出现了广播超时问题,根据经验来看应该比较好解决。在进行Spark 任务开发中需要合理配置和参数,并配合,使作业能够顺利执行。

2023-06-06 18:17:28 2025 10

原创 解决weekofyear跨年问题

前段时间,做了一个日期维度表的需求,发现 计算当年第几周 有误,发现Hive中 weekofyear 函数存在跨年问题!

2023-05-23 15:41:15 1310 11

原创 java.lang.StringIndexOutOfBoundsException: String index out of range: -2147483648 成功解决

最近一个小伙伴出现一个从未见过的一个异常,不知道如何解决,于是找我帮忙,看到问题我也是有点懵,怎么会出现这个问题呢,于是找他要了sql脚本,开始找问题的原因。。。

2023-05-10 15:32:31 1406 3

原创 在CSDN成为创作者的 第1825天(5年) 啦,纪念一下!

时间过的真快,不知不觉已入职6年,有幸遇见CSDN,遇见你,遇见更好的自己!有汗水,有收获,有感恩,有期待!让我们共赴下一个五年,十年!

2023-05-09 11:17:03 160 6

原创 Hive 窗口函数超详细教程

在SQL开发中,有时我们可以使用聚合函数将多行数据按照规则聚集在一行,但是我们又想同时得到聚合前的数据,单纯的聚合函数是做不到的,怎么办呢?这时我们的窗口函数就闪亮登场了。窗口函数兼具分组和排序功能,又叫分析函数!主要对Hive窗口函数进行详解,剖析各种窗口函数的使用方法,并且根据窗口函数综合案例进行分析,都是工作常用、面试必问的非常经典的例子。

2023-05-04 15:40:57 969 16

原创 Hive 常用日期函数

面试官:假如让你开发一个日期维度表,你会用到哪些日期相关的函数呢?我:想一下啊。。。今天分享了Hive 中常用的日期函数的用法,在日常开发中,避免不了要和日期函数打交道,因此总结出来分享给别人,也方便自己以后忘记时再次拿出来进行复习!好了,今天的分享就到这里了,博主还开通了vx公号【笑看风云路】,欢迎关注!

2023-04-25 00:05:54 328 2

原创 OkHttp3发送http请求在Java中的使用方法

最近在使用OkHttp3开发的时候,出现了一些问题,记录总结一下Http的get请求和post请求的使用方法和问题解决!

2023-04-24 18:31:08 1487

原创 Hive 浅谈架构

解析器(SQL parser):将SQL字符串转换成抽象语法树AST,这一步一般都用第三方工具库完成,比如 antlr;对AST进行语法分析,比如表是否存在,字段是否存在、sql语义是否有误。执行器(Executor):把逻辑执行计划转换成可以运行的物理计划。元数据包括:表名、表所属的数据库,表的拥有者,列 分区字段、表的类型。优化器(Query Optimizer):对逻辑执行计划进行优化。是否是外部表,表的数据所在目录等。通过映射关系向表中导数据 -->用户创建table -->驱动器:Driver。

2023-04-23 23:37:15 451

原创 Hive 与数据库的异同点

Hive在查询数据的时候,由于没有索引,需要扫描整个表,因此延迟较高。由于MR本身具有较高的延迟,因此在利用MR执行hive查询时,也会有较高的延迟。当然,这个低是有条件的,即数据规模较小,当数据规模大到超过数据库的处理能力的时候,hive的并行计算显然能体现出优势。对应的,数据库可以支持的数据规模较小。注意:Hive现在可以借助其他计算引擎,比如Spark等,会降低查询的执行延迟,但是和数据库响应相比,还是有一定差距!因此,Hive中不建议对数据的修改的,所有的数据都是在加载的时候确定好的。

2023-04-23 23:09:28 377

原创 Hive 函数的类型有哪些,你清楚吗?

Hive 浅谈函数。

2023-04-22 23:29:30 100

原创 Hive 运算符总结

如果a,b,c任一个为null,则结果为null。: a或者b为null,则返回null;如果a小于等于b,则返回true,反之返回false。: a或者b为null,则返回null;如果a大于等于b,则返回true,反之返回false。: a或者b为null,则返回null;如果a不等于b,则返回true,反之返回false。:a或者b为null,则返回null;:a和b都为null,返回true,如果一边为null,返回false。: 如果a不等于Null,则返回true,反之返回false。

2023-04-22 23:00:29 566

baiduwenku-download.zip

可以使用此工具根据链接下载(baidu)文库的所有文章(vip等)

2023-04-03

java虚拟机思维导图.png

java虚拟机思维导图

2023-04-02

Java 最常见的 200+ 面试题汇总以及答案总结汇总.pdf

Java 最常见的 200+ 面试题汇总以及答案,适用于java全栈工程师

2023-04-02

java经典面试题100.pdf

java经典100个面试题

2023-04-02

大量csv文件导入iceberg的最快方式.txt

大量csv文件导入iceberg的最快方式,适用于大数据开发人员!

2023-04-02

Intellij使用说明文档.pdf

Intellij IDEA 使用说明文档,让你轻松玩转这款强大的代码IDE

2023-04-02

win10家庭版wifi消失.docx

windows 10家庭版wifi消失解决办法

2023-04-02

12306Bypass.zip

12306Bypass.

2023-04-02

TeamViewer14全套换ID版本以及教程.zip

TeamViewer14 换ID版本

2023-04-02

java编译文件反编译工具.zip

具有超强的java编译文件的反编译功能

2023-04-01

大数据开发工程师简历模板

大数据开发工程师简历模板

2023-03-31

hadoop on window

解压后将bin目录(包含以下.dll和.exe文件)文件替换原来hadoop目录下的bin目录; 将hadoop.dll文件拷贝一份到C:\Windows\System32下,解决window下本地运行mr任务报错问题

2022-06-23

java实现各语种检测的工具,多语种混合的按比例最高的语种返回,中文(zh-cn/zh-tw)、日本语(ja)、韩国语(ko)

java实现各语种检测的工具,多语种混合的按比例最高的语种返回,中文(zh-cn/zh-tw)、日本语(ja)、韩国语(ko)

2022-06-23

Hive3.1.2编译源码

使用hive3.1.2和spark3.0.0配置hive on spark的时候,发现官方下载的hive3.1.2和spark3.0.0不兼容,hive3.1.2对应的版本是spark2.3.0,而spark3.0.0对应的hadoop版本是hadoop2.6或hadoop2.7。 所以,如果想要使用高版本的hive和hadoop,我们要重新编译hive,兼容spark3.0.0。除了兼容spark3.0.0外,还将hive3.1.2的guava的版本进行了提升,和hadoop3.x保持一致,以便兼容hadoop3.1.3。

2022-05-20

20news-bydate_py3.pkz下载

Scikit-Learn机器学习之监督学习模型案例集-新闻/邮件文本内容分类(朴素贝叶斯算法模型)素材,将其放在本机指定目录下,例如~/scikit_learn_data,无需再去下载,解决下载错误的问题

2020-12-18

mxGraph插件

mxClient这个js包含并动态导入了所有文件。 当前版本信息存储在mxClient.VERSION。   editor编辑器包提供实现图编辑器所需的类。这个包中的主要类是mxEditor。   view视图和model模型包实现了由mxGraph表示的图形组件。它是一个mxGraphModel,包含mxcell,以及mxGraphView中缓存单元格的状态。根据mxStylesheet.样式表中定义的外观,使用mxcell渲染器来绘制单元格。撤销历史在mxUndoManager中实现。要在图上显示一个图标,可以使用mxCellOverlay。验证规则使用 mxMultiplicity进行定义。

2018-05-26

jdk安装教程

详细的描述了eclipse的运行环境jdk安装的全过程以及验证安装是否成功

2018-05-22

全国省市区对应的JSON地图数据大全

可以适用于某些插件实现省市区三级地图,进行省市区三级联动的地图Json数据

2018-05-21

js实现树形结构

js实现树形结构 function Node(id, pid, name, url, title, target, icon, iconOpen, open) { this.id = id; this.pid = pid; this.name = name; this.url = url; this.title = title; this.target = target; this.icon = icon; this.iconOpen = iconOpen; this._io = open || false; this._is = false; this._ls = false; this._hc = false; this._ai = 0; this._p; };

2018-05-18

功能很强大的橡皮筋类

一种能够实现截屏功能的橡皮筋类,非常好用的一个类,很方便,有人想要实现截屏功能的同学,可以试一试这个类。

2015-10-09

实现圆形按钮

圆形按钮的实现,基于对话框的MFC的代码实现的,请有需要的可以下载看看!

2014-11-09

AT89C51交通灯控制系统设计

基于AT89C51的交通灯设计 利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并用LED灯显示倒计时间。1、东西绿灯亮,南北红灯亮 2、黄灯亮 3、东西红灯亮,南北绿灯亮

2013-06-18

空空如也

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

TA关注的人

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