1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/tomatocc-Jfinal-Shrading-JDBC

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Jfinal整合Shrading-JDBC,实现分表功能和数据库脱敏

首先我们要先明确这样一个业务场景,如果生产上某个表的数据在100w+,那么sql语句进行表操作,还不会出现什么瓶颈问题,如果数据量再增加到500w+,可以通过索引,备份等方式,减少数据库的单表压力。如果继续增加到1000w。或者单表一天的数据量就能达到1000w。那么建议索引就无法在解决在这个问题。这时候,我们就需要通过分表的操作,来降低单表的压力。

实现思路:

  1. 上面我们已经知道了问题所在,下面来分析一下解决方案。既然单个表无法满足生产上是数据量,那么就需要创建多个表。而如何将多个表进行关联起来,我们就需要用到分表组件:ShardingSphere中的sharding-jdbc模块。

解决方案:(全部代码会在文末全部提供)

1.首先,我们数据库中只有一张表 t_blog。假设这张表的数据量已经达到的1000w的级别。接下来我们在创建8张表,表名为t_blog_x,这8张表的结构和原来的完全一样,这8张表我们把它称为真实表,而原来的t_blog表,我们称为逻辑表

分表后,数据库结构如下: Alt text

使用方法:

  1. 先执行blog.sql脚本
  2. 执行DemoConfig.java文件,来启动项目
  3. 执行 http://127.0.0.1:80/blog/save/ 来进行测试即可

Alt text

4.数据库中数据如下

Alt text

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Jfinal интеграция Sharding-JDBC для реализации функций разделения таблиц и маскирования данных в базе данных. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/tomatocc-Jfinal-Shrading-JDBC.git
git@api.gitlife.ru:oschina-mirror/tomatocc-Jfinal-Shrading-JDBC.git
oschina-mirror
tomatocc-Jfinal-Shrading-JDBC
tomatocc-Jfinal-Shrading-JDBC
master