基于Hbase和SpringBoot的分布式HOS文件存储系统(一)

简介: 基于Hbase和SpringBoot的分布式HOS文件存储系统

核心模块设计思路

数据库建表语句

1. CREATE DATABASE IF NOT EXISTS hos
2. DEFAULT CHARACTER SET UTF8
3. COLLATE UTF8_GENERAL_CI;
4. 
5. USE hos;
6. 
7. --
8. -- Table structure for table `USER_INFO`
9. --
10. DROP TABLE IF EXISTS USER_INFO;
11. 
12. CREATE TABLE USER_INFO
13. (
14.   USER_ID     VARCHAR(32) NOT NULL,
15.   USER_NAME   VARCHAR(32) NOT NULL,
16.   PASSWORD    VARCHAR(64) NOT NULL
17.   COMMENT 'PASSWORD md5',
18.   SYSTEM_ROLE VARCHAR(32) NOT NULL
19.   COMMENT 'ADMIN OR USER',
20.   CREATE_TIME TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
21.   DETAIL      VARCHAR(256),
22. PRIMARY KEY (USER_ID),
23. UNIQUE KEY AK_UQ_USER_NAME (USER_NAME)
24. )
25.   ENGINE = InnoDB
26. DEFAULT CHARSET = utf8
27.   COMMENT = '用户信息';
28. 
29. --
30. -- Table structure for table `TOKEN_INFO`
31. --
32. 
33. DROP TABLE IF EXISTS TOKEN_INFO;
34. 
35. CREATE TABLE TOKEN_INFO
36. (
37.   TOKEN        VARCHAR(32) NOT NULL,
38.   EXPIRE_TIME  INT(11)     NOT NULL,
39.   CREATE_TIME  TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
40.   REFRESH_TIME TIMESTAMP   NOT NULL,
41.   ACTIVE       TINYINT     NOT NULL,
42.   CREATOR      VARCHAR(32) NOT NULL,
43. PRIMARY KEY (TOKEN)
44. )
45.   ENGINE = InnoDB
46. DEFAULT CHARSET = utf8
47.   COMMENT = 'token 信息表';
48. 
49. --
50. -- Table structure for table `HOS_BUCKET`
51. --
52. 
53. DROP TABLE IF EXISTS HOS_BUCKET;
54. 
55. CREATE TABLE HOS_BUCKET (
56.   BUCKET_ID   VARCHAR(32),
57.   BUCKET_NAME VARCHAR(32),
58.   CREATE_TIME TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
59.   DETAIL      VARCHAR(256),
60.   CREATOR     VARCHAR(32) NOT NULL,
61. UNIQUE KEY AK_KEY_BUCKET_NAME(BUCKET_NAME),
62. PRIMARY KEY (BUCKET_ID)
63. )
64.   ENGINE = InnoDB
65. DEFAULT CHARSET = utf8
66.   COMMENT = 'HOS BUCKET';
67. 
68. --
69. -- Table structure for table SERVICE_AUTH
70. --
71. 
72. DROP TABLE IF EXISTS SERVICE_AUTH;
73. 
74. CREATE TABLE SERVICE_AUTH
75. (
76.   BUCKET_NAME  VARCHAR(32) NOT NULL,
77.   TARGET_TOKEN VARCHAR(32) NOT NULL
78.   COMMENT '被授权对象token',
79.   AUTH_TIME    TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
80. PRIMARY KEY (BUCKET_NAME, TARGET_TOKEN)
81. )
82.   ENGINE = InnoDB
83. DEFAULT CHARSET = utf8
84.   COMMENT = '对象存储服务授权表';
85.


相关实践学习
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
20天前
|
存储 分布式计算 大数据
HBase分布式数据库关键技术与实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入剖析了HBase的核心技术,包括数据模型、分布式架构、访问模式和一致性保证,并探讨了其实战应用,如大规模数据存储、实时数据分析及与Hadoop、Spark集成。同时,分享了面试经验,对比了HBase与其他数据库的差异,提出了应对挑战的解决方案,展望了HBase的未来趋势。通过Java API代码示例,帮助读者巩固理解。全面了解和掌握HBase,能为面试和实际工作中的大数据处理提供坚实基础。
34 3
|
1天前
|
编解码 NoSQL Java
Springboot框架使用redisson实现分布式锁
Redisson是官方推荐的Java Redis客户端,提供丰富的功能,包括默认的分布式锁支持。它可以无缝替代Spring Boot 2.x的Letture客户端,不影响原有RedisTemplate和Redis Repository的使用。集成包括spring-boot-starter-data-redis和redisson-spring-boot-starter,后者需排除默认的redisson-spring-data-23以匹配Spring Data Redis v.2.2.x。
|
5天前
|
Java 数据安全/隐私保护 开发者
【SpringBoot】讲清楚日志文件&&lombok
【SpringBoot】讲清楚日志文件&&lombok
16 5
|
6天前
|
消息中间件 人工智能 Java
Spring Boot+RocketMQ 实现多实例分布式环境下的事件驱动
Spring Boot+RocketMQ 实现多实例分布式环境下的事件驱动
18 1
|
12天前
|
小程序 JavaScript Java
基于SpringBoot+Vue+uniapp微信小程序的医院核酸检测服务系统的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的医院核酸检测服务系统的详细设计和实现
35 0
|
13天前
|
人工智能 移动开发 前端开发
Springboot医院智慧导诊系统源码:精准推荐科室
医院智慧导诊系统是在医疗中使用的引导患者自助就诊挂号,在就诊的过程中有许多患者不知道需要挂什么号,要看什么病,通过智慧导诊系统,可输入自身疾病的症状表现,或选择身体部位,在经由智慧导诊系统多维度计算,精准推荐科室,引导患者挂号就诊,实现科学就诊,不用担心挂错号。
26 2
|
13天前
|
人工智能 前端开发 Java
Java语言开发的AI智慧导诊系统源码springboot+redis 3D互联网智导诊系统源码
智慧导诊解决盲目就诊问题,减轻分诊工作压力。降低挂错号比例,优化就诊流程,有效提高线上线下医疗机构接诊效率。可通过人体画像选择症状部位,了解对应病症信息和推荐就医科室。
161 10
|
13天前
|
Java 关系型数据库 MySQL
一套java+ spring boot与vue+ mysql技术开发的UWB高精度工厂人员定位全套系统源码有应用案例
UWB (ULTRA WIDE BAND, UWB) 技术是一种无线载波通讯技术,它不采用正弦载波,而是利用纳秒级的非正弦波窄脉冲传输数据,因此其所占的频谱范围很宽。一套UWB精确定位系统,最高定位精度可达10cm,具有高精度,高动态,高容量,低功耗的应用。
一套java+ spring boot与vue+ mysql技术开发的UWB高精度工厂人员定位全套系统源码有应用案例
|
14天前
|
存储 数据可视化 安全
Java全套智慧校园系统源码springboot+elmentui +Quartz可视化校园管理平台系统源码 建设智慧校园的5大关键技术
智慧校园指的是以物联网为基础的智慧化的校园工作、学习和生活一体化环境,这个一体化环境以各种应用服务系统为载体,将教学、科研、管理和校园生活进行充分融合。无处不在的网络学习、融合创新的网络科研、透明高效的校务治理、丰富多彩的校园文化、方便周到的校园生活。简而言之,“要做一个安全、稳定、环保、节能的校园。
39 6
|
15天前
|
JSON 前端开发 JavaScript
Vue+Axios+SpringBoot后端同时接收文件和json作为请求参数
Vue+Axios+SpringBoot后端同时接收文件和json作为请求参数
25 0