Hbase+Phoenix 2024-03-02 背景 mysql 单表数据量超过 2000W,CRUD 性能会极具下降。需要 DBA 或自动化脚本定期归档(半年或一年数据迁移到归档数据库中),以起到缩表的目的。电商项目一两个月就能积累几千万条数据。在这种情况下,要么频繁的做归档,要么选择可以容乃数百 TB 而不需要归档的大数据平台(降低运维成本)。 HBase HBase 是一种构建在 HDFS 之上的分布式、面向列(但不是列存储)的存储系统。 在需要实时读写 、随机访问 超大规模数据集时,可以使用 HBase。 HBase 可以通过线性方式增加节点来进行扩展 。HBase 不是关系型数据库,自身不支持 SQL 查询引擎,HBase 适合将大而稀疏的表放在分布式集群上。 HBase 是 Google Bigtable 的开源实现,利用 Hadoop HDFS 作为其文件存储系统;利用 Hadoop MapReduce(或其他计算引擎) 来处理 HBase 中的海量数据;使用 Zookeeper 作为协同服务。 HBase 的特点 容量大:一个表可以有上亿行,上百万列 面向列:面向列的存储(但不是列存储,参考 HBase 数据存储)....
Flink 2024-09-16 大数据 大数据(big data),或称巨量资料,指的是所涉及的资料量规模巨大到无法透过主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯。 在维克托·迈尔-舍恩伯格及肯尼斯·库克耶编写的《大数据时代》中大数据指不用随机分析法(抽样调查)这样捷径,而采用所有数据进行分析处理。大数据的5V特点(IBM提出):Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性)。 人工智能 人工智能(Artificial Intelligence),英文缩写为AI。是新一轮科技革命和产业变革的重要驱动力量,是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 人工智能是智能学科重要的组成部分,它企图了解智能的实质,并生产出一种新的能以与人类智能相似的方式做出反应的智能机器。人工智能是十分广泛的科学,包括机器人、语言识别、图像识别、自然语言处理、专家系统、机器学习,计算机视觉等。 **人工智能大模型带来的治理挑战也不容忽视。**马斯克指出,在人工智能机器学习面具....
使用Hash加盐对Password加密 2024-03-05 数据表 mis_user 数据表是 MIS 系统的用户表,所有能登陆 MIS 系统的帐户都保存在这张表里面。首先你要明确:不是医院所有的工作人员都能登陆 MIS 系统。例如医护人员可以登录 MIS 系统,但是保安就不需要用 MIS 系统,所以我们在 mis_user 表中给需要使用 MIS 系统的用户创建帐户。 序号 列名 类型 备注 1 id INTEGER 主键 2 username VARCHAR 用户名 3 password VARCHAR 密码 4 name VARCHAR 姓名 5 sex VARCHAR 性别 6 tel VARCHAR 电话(用于接收重置密码的短信验证码) 7 email VARCHAR 邮箱(用于接收重置密码的邮件验证码) 8 dept_id INTEGER 隶属的部门 ID 9 job VARCHAR 职务(医生、护士等) 10 ref_id INTEGER 关联 ID(例如医生 ID,护士 ID 等) 11 status TINYINT 1 有效,2 离职,3 禁用 12 create_ti....
人脸识容器&MQ 2023-02-28 在 docker 中安装人脸识别镜像 上传镜像 face.tar.gz 1[root@localhost tmp]# docker load < face.tar.gz 2[root@localhost tmp]# docker images 创建 docker 容器 解压 demo.tar 1[root@localhost tmp]# tar -xvf demo.tar 2[root@localhost tmp]# docker run -d -it -p 3000:3000 -v /tmp/demo:/demo --name node face 3 4 5[root@localhost tmp]# docker ps 6CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 70ef91128ee5c face "bash" 47 seconds ago Up 46 seconds 0.0.0.0:3000->3000/tcp node 运行人脸识别程序 1### 进入容器 2[root@localhost t....
微信开发者账号 2023-02-06 申请微信开发者账号 虽然开发微信小程序可以使用工具提供的测试号,但是测试号提供的功能极为有限,而且使用测试号开发的微信小程序不能上架发布。因此,想要开发一个可以上架的微信小程序,首先必须要申请微信开发者账号。个人申请和使用微信开发者账号是免费的。如果要开发的是商用小程序,那么就需要以企业身份申请微信开发者账号,而且还要缴纳认证费用。 在线办公小程序 在线办公小程序,内部包含微信支付和在线视频会议功能,这两项业务,微信平台不对个人小程序开放。 需要企业小程序资质(仅供开发,不能上架发布,设置了权限无法上架),把小程序项目中的配置文件修改一下,换上提供者的 AppID 就可以了。 如果想上架发布小程序,可以自己注册个人主体的小程序开发者账号,然后把小程序中的在线会议和支付功能去掉,就可以上架发布了。 微信公众平台 访问微信公众平台,立即注册。 获取 AppID 和密钥 开发微信小程序必须要用到 AppID 和密钥,这两个东西可以在微信开发者平台上面获得。 在网页中找到开发栏目,然后选择开发设置 选项卡,在面板中你就能看到自己的小程序对应的 AppID 和 密钥 了。如果是刚注....
单点登录(Single Sign On):Shiro➕JWT 2023-02-05 认证 认证就是要核验用户的身份,比如说通过用户名和密码来检验用户的身份。说简单一些,认证就是登陆。登陆之后 Shiro 要记录用户成功登陆的凭证。 授权 没有授权机制的 web 系统是很危险的,所有用户在登录成功之后都是超级管理员,都可以调用 CRUD 的 API。 授权是比认证更加精细度的划分用户的行为。比如说一个教务管理系统中,学生登陆之后只能查看信息,不能修改信息。而班主任就可以修改学生的信息。这就是利用授权来限定不同身份用户的行为。 Shiro 靠什么做认证与授权的? Shiro 可以利用 HttpSession 或者 Redis 存储用户的登陆凭证,以及角色或者身份信息。 利用过滤器 (Filter),对每个 Http 请求过滤,检查请求对应的 HttpSession 或者 Redis 中的认证与授权信息。如果用户没有登陆,或者权限不够,那么 Shiro 会向客户端返回错误信息。 也就是说,我们写用户登陆模块的时候,用户登陆成功之后,要调用 Shiro 保存登陆凭证。然后查询用户的角色和权限,让 Shiro 存储起来。将来不管哪个方法需要登陆访问,或者拥有特定的角....
抵御跨站脚本攻击XSS 2023-02-03 XSS XSS 攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是 JavaScript,但实际上也可以包括 Java、 VBScript、ActiveX、 Flash 或者甚至是普通的 HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和 cookie 等各种内容。 解决方案:将用户的数据进行转义 Hutool Hutool 是一个 Java 工具包类库,对文件、流、加密解密、转码、正则、线程、XML 等 JDK 方法进行封装,组成各种 Util 工具类 1<dependency> 2 <groupId>cn.hutool</groupId> 3 <artifactId>hutool-all</artifactId> 4 <version>5.4.0</version> 5 </dependency> 对 Http 请求中的数据做转义 ....