abl0430 2022-05-17 23:54 采纳率: 0%
浏览 145
已结题

Redis如何合理缓存部门信息


CREATE TABLE `t_department` (
  `id` char(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID',
  `parent_id` char(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上级部门ID',
  `name` varchar(128) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '部门名称',
  `en_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '部门英文名称',
  `short_name` varchar(128) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '部门简称',
  `level` tinyint DEFAULT NULL COMMENT '部门级别',
  `sort_order` tinyint DEFAULT NULL COMMENT '排序',
  `remark` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '备注',
  `has_delete` bit(1) DEFAULT b'0' COMMENT '是否删除: {[1:删除:true] [0:未删除:false]}',
  `update_time` datetime(3) DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间',
  `create_time` datetime(3) DEFAULT (3) COMMENT '创建时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='部门表';

INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('61A4A415109F512D26BF076D328A57D2', NULL, 'XXX科技有限公司', NULL, NULL, 0, 1, NULL, b'0', '2022-05-17 22:45:47.845', '2022-05-17 22:42:54.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('DEF4C715F5F3A6638710831150750931', '61A4A415109F512D26BF076D328A57D2', '总裁办', NULL, NULL, 1, 1, NULL, b'0', '2022-05-17 22:46:35.366', '2022-05-17 22:46:15.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('F7196AD72378A40227B08EFA03A37342', '61A4A415109F512D26BF076D328A57D2', '研发中心', NULL, NULL, 1, 2, NULL, b'0', '2022-05-17 23:11:02.413', '2022-05-17 22:51:07.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('9BE108797F0729D7B3255378A42BC65B', '61A4A415109F512D26BF076D328A57D2', '国内营销中心', NULL, NULL, 1, 3, NULL, b'0', '2022-05-17 22:56:50.634', '2022-05-17 22:56:25.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('512FB3B019246A8024C0CEFC38201A35', '61A4A415109F512D26BF076D328A57D2', '国际营销中心', NULL, NULL, 1, 4, NULL, b'0', '2022-05-17 22:57:43.678', '2022-05-17 22:57:24.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('57C27BF286904D54CE9932F5730A0386', '61A4A415109F512D26BF076D328A57D2', '国际运营中心', NULL, NULL, 1, 5, NULL, b'0', '2022-05-17 22:58:45.528', '2022-05-17 22:58:14.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('164BC8A06A17735347A939E6D45EF833', '61A4A415109F512D26BF076D328A57D2', '行政人事中心', NULL, NULL, 1, 6, NULL, b'0', '2022-05-17 22:59:29.048', '2022-05-17 22:58:50.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('DC4A6BA92928CD12DB488C15DB57192E', 'F7196AD72378A40227B08EFA03A37342', '终端部', NULL, NULL, 2, 1, NULL, b'0', '2022-05-17 23:01:32.645', '2022-05-17 23:01:04.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('8D0F03C1CA8988106419A539BC978223', 'F7196AD72378A40227B08EFA03A37342', '系统部', NULL, NULL, 2, 2, NULL, b'0', '2022-05-17 23:02:18.483', '2022-05-17 23:02:02.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('53B53DDBBAA370C187AF21531E01F51F', 'F7196AD72378A40227B08EFA03A37342', '硬件部', NULL, NULL, 2, 3, NULL, b'0', '2022-05-17 23:03:11.796', '2022-05-17 23:02:47.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('833DEE5B80F2FEDD302A5DE2DC090850', 'F7196AD72378A40227B08EFA03A37342', '固件部', NULL, NULL, 2, 4, NULL, b'0', '2022-05-17 23:03:49.636', '2022-05-17 23:03:45.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('5574768EC08C12E82C34CEBE08734ABD', '8D0F03C1CA8988106419A539BC978223', '开发一部', NULL, NULL, 3, 1, NULL, b'0', '2022-05-17 23:05:16.745', '2022-05-17 23:05:02.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('367C70A77568E2BD0094D0EB31DA3721', '8D0F03C1CA8988106419A539BC978223', '开发一部', NULL, NULL, 3, 2, NULL, b'0', '2022-05-17 23:05:58.480', '2022-05-17 23:05:46.000');
INSERT INTO `t_department` (`id`, `parent_id`, `name`, `en_name`, `short_name`, `level`, `sort_order`, `remark`, `has_delete`, `update_time`, `create_time`) VALUES ('E6725F4A77FC56D49F046F7F7A7133A5', '8D0F03C1CA8988106419A539BC978223', '开发三部', NULL, NULL, 3, 3, NULL, b'0', '2022-05-17 23:06:35.088', '2022-05-17 23:06:03.000');

常用查询:

  • 查询整个组织架构
    根据ID查询子节点
    根据ID查询部门信息
    根据ID集合查询是否存在这些部门
    根据部门级别查询如何条件的部门(如查询所有的1级部门)

根据这些要求如何设计Redis缓存较为合理

  • 写回答

8条回答 默认 最新

  • 为了我的架构师 2022-05-18 07:59
    关注
    获得0.60元问题酬金

    一般把整个部门缓存就好了。因为部门存在父子级关系,一次查询很耗时。用普通的key,value存redis就好了
    其它的查询看你系统需求吧,一般部门对数据库还是没啥压力

    评论

报告相同问题?

问题事件

  • 系统已结题 5月25日
  • 创建了问题 5月17日

悬赏问题

  • ¥15 vhdl+MODELSIM
  • ¥20 simulink中怎么使用solve函数?
  • ¥30 dspbuilder中使用signalcompiler时报错Error during compilation: Fitter failed,求解决办法
  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题