【实习记录】第9周 2023.08.21-2023.08.26

唠嗑区:

        从本周开始,项目组有了一个新项目,是一个企业级的产业生态图谱项目,工期很急,组长说要最近要997了  ̄□ ̄||。所以本周内容基本都和项目开发有关。

实习记录:

1. 功能列表及实现:

        4.7 产业政策

有现成接口:/api/policy/chain (app_chain_svc: ChainPolicySearchController)

http://localhost:8088/app-chain/policy/chain

(chain_policy_result无数据,在25服务器10007端口的app_graph)

        √ 4.6 产业新闻

有现成接口:/api/news (app_chain_svc: NewsController)

http://localhost:8088/app-chain/news

        4.5 产业区域

  1) 查询企业名单列表:https://clue.chinascope.com.cn/api/company/industry

http://localhost:8088/app-chain/company/industry

2) 查询地图数据接口(直接放到文件服务器上)

https://clue.chinascope.com.cn/lib/china-geo-json/cn_100000.json?_v=1692689241932

3) 查询产业区域分布接口

http://localhost:8088/app-chain/enterprise/distribution/stat?treeId=1937&type=all

响应参数(app_chain_map_summary表无数据):

4) 查询全部企业数量接口

http://localhost:8088/app-chain/enterprise/distribution/tagOne?treeId=1936

        √ 4.2 产业链图谱

1) 查询产业链图谱

http://localhost:8088/app-chain/csf/api/v1/selectedchain/1937/treedef

请求参数:/{chainHisId}/treedef

2) 企业分布头部查询企业列表

http://localhost:8088/app-chain/company/distribution/top/list

        4. 首页

https://clue.chinascope.com.cn/api/company/distribution/top

https://clue.chinascope.com.cn/api/enterprise/distribution/tagTwo?treeId=2037&region=CSF_CN_110000&type=qual&_v=1692770901234

独角兽企业、上市公司等数据从哪里获得?

产业节点数:查selected_ind_chian_node表:

SELECT count(id) FROM `selected_ind_chain_node` where chain_his_id = 1936;

企业数量:复用/enterprise/distribution/tagOne?treeId=2037的部分逻辑

1) 查询产业链节点数量和企业数量接口:

http://localhost:8088/app-chain/industry/chainNodeAndEnterpriseNum?treeId=1937

2) 产业链优质企业去哪里找?

        4.4 产业分析

https://clue.chinascope.com.cn/api/product/2037?summaryType=1&_v=1692788674468

app_summary_data表里无数据

        √ 4.2 产业工艺图

http://localhost:8080/config/indusryProcessDiagram?treeId=1936

        √ 4.1 产业KPI

http://localhost:8088/app-chain/product/KPI?industryCode=CSF_10101030

2. 缓存和数据库一致性问题,看这篇就够了:(redis和mysql的缓存一致性问题):缓存和数据库一致性问题,看这篇就够了 - 知乎

数据量小时,可以直接读写数据库。

数据量稍微大时,可以加一层redis,读操作直接访问redis。

最简单方案:全量数据刷到缓存中(不设置失效时间;写请求只更新数据库,不更新缓存,读请求只访问redis;启动一个定时任务将数据库中的数据更新到缓存中)(缓存命中率低,数据不一致,适合业务体量小,且对数据一致性要求不高的业务场景)

3. Invalid bound statement (not found)出现的原因和解决方法:

Invalid bound statement (not found)出现的原因和解决方法_普通网友的博客-CSDN博客

配置mapper xml文件的路径 classpath:doris/marketing/mapper/*.xml

4. unversioned files:没有版本号的文件,新增加的文件没有提交到git上过,所以没有版本号,提交git上时要注意上传unversioned files。

5. @MapperScan(“需要扫描的包的地址”);

同一个服务连接多个数据源时(多个mysql服务器,doris,),每个数据源配置中的@MapperScan()扫描的包不能相同,不然会报错。@MapperScan()扫描的是当前数据源下的数据库/表的信息,所以多个数据源之间扫描的包不可能有相同的。

数据库配置文件在Apollo中,通过各个数据源配置中的@MapperScan()扫描对应包下的数据库表!

6. bean出错一般有两个原因

      1)bean所在的包未扫描到,这是可以移动文件位置,或者新增配置@MapperScan()

      2)@Autowired是按类型加载,倘若有两个相同类型的bean并使用@Autowired注解注入,这时就会编译报错,解决方案是定义bean时加上name字段,@Bean(name=”a”); 然后在@Autowired注解下加上@Qualifier(name=”a”)这样就可以找到对应的bean。另一种解决方案是使用@Resource注解(功能类似,@Autowired是Spring定义的注解,而@Resource是java定义的注解),是通过name加载bean(byName)。一般默认类名首字母小写即为bean的name。

7. 解决xml文件高亮显示问题(xml文件前的图标变灰):

Idea中setting - File types的xml文件中添加*.xml配置

8. Doris数据库简介:

Apache Doris 是一个基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。

Apache Doris 最早是诞生于百度广告报表业务的 Palo 项目,2017 年正式对外开源,2018 年 7 月由百度捐赠给 Apache 基金会进行孵化。2022 6 ,Apache Doris 成功从 Apache 孵化器毕业,正式成为 Apache 顶级项目(Top-Level Project,TLP)

Doris整体架构如下图所示,Doris 架构非常简单,只有两类进程。

FrontendFE,主要负责用户请求的接入、查询解析规划、元数据的管理、节点管理相关工作。

BackendBE,主要负责数据存储、查询计划的执行。

在使用接口方面,Doris 采用 MySQL 协议,高度兼容 MySQL 语法,支持标准 SQL,用户可以通过各类客户端工具来访问 Doris,并支持与 BI 工具的无缝对接。

存储引擎方面,Doris 采用列式存储按列进行数据的编码压缩和读取,能够实现极高的压缩比,同时减少大量非相关数据的扫描,从而更加有效利用 IO 和 CPU 资源。

Apache Doris 被广泛应用在以下场景中

报表分析、即席查询、统一数仓构建、数据湖联邦查询

8. Doris和MySQL的对比:

Doris使用的是列式存储模型,而MySQL使用的是行式存储模型列式存储模型可以在大规模数据处理和分析中取得更好的性能,而行式存储模型则更适合于小规模的事务处理

Doris与MySQL的异同分析与对比:Doris与MySQL的异同分析与对比 - 老白网络

日报:

2023.08.21

1. 看项目代码、熟悉产业视图相关功能的数据库表

2. 电信卡没网 导致maven中下不下来包,最后用的U盘导的包,换成了移动卡才得以解决(破网太烂了!)

3. 成功跑通代码!

4. 功能实现:

产业政策:/api/policy/chain (app_chain_svc: ChainPolicySearchController)

2023.08.22

1. 数据库中的本地建表还没有(在25服务器,21服务器为基础数据表,25服务器为业务表),后端的数据库配置在哪里(apollo),用的哪一个数据库(app_graph)?本地自建表的语句有吗(已经建了)?表的数据有吗(chian_policy_result暂时没有)

2. 查询地图数据接口未找到?

2023.08.23

1. 梳理生态图谱能复用的接口,并用postman进行接口测试,确定请求参数和响应参数

2. 产业链优质企业去哪里找?

3. 实现查询产业链节点数量和企业数量接口

4. 每个接口后的_v=1692691513028什么意思?是否可以去掉?

2023.08.24

1. 梳理现有接口开发进度

2. 查企业分布接口无数据的原因(app_chain_map_summary表为空)

3. 查地图数据接口报错原因(json数据没在后端代码上,直接部署到了文件服务器里)

3. 写产业api接口

4. 当mybatis传递多个参数时,必须用@Param注解!(1个参数时可以不加注解)

产业链优质企业的关联表(chain_good_company表)

产业标签

产业区域分布接口无数据(app_chain_map_summary表为空)

产业政策接口无数据(chain_policy_result表为空)

产业分析表接口无数据(app_summary_data表为空)

2023.08.25

1. 来隆福上班

2. 写接口文档

3. 产业政策接口 返回结果加上 政策总条数total(为了前端使用分页)

4. 测试产业新闻接口的分页

2023.08.26 加班:

1. 编写接口文档

2. 实现两个接口(产业链标签、优质企业列表)

3. @MapperScan(“”) 扫描包,否则可能找不到bean

4. 数据库配置等配置信息在Apollo里

5. 产业工艺图没有url数据(dict_config_info表);产业链标签(s_company_base_dim无数据)、优质企业(s_company_base_dim  无数据)两个接口无返回数据

6. 服务器上的 产业政策的响应中total为null(应该是部署的代码未更新的问题),其余接口已在服务器上成功测试???(重新发版?)

7. 遗留问题:xml文件高亮显示;doris与mysql的区别;idea个性化设置?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值