wuda0112
码龄15年
求更新 关注
提问 私信
  • 博客:40,179
    40,179
    总访问量
  • 20
    原创
  • 8
    粉丝
  • 5
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:新加坡
加入CSDN时间: 2010-05-05

个人简介:熟练使用lucene,看过lucene搜索模块源码,自己写过lucene分词器;熟练使用mysql,linux;熟悉hadoop生态圈;当然web,seo,服务器,缓存等其他方面的IT技术也都能熟练使用。致力于成为一个合格的架构师!

博客简介:

wuda0112的专栏

查看详细资料
个人成就
  • 获得11次点赞
  • 内容获得8次评论
  • 获得47次收藏
创作历程
  • 8篇
    2020年
  • 2篇
    2019年
  • 4篇
    2018年
  • 4篇
    2014年
  • 2篇
    2013年
成就勋章
TA的专栏
  • 中台项目
    5篇
  • 权限体系
    1篇
  • lucene
    4篇
  • java
    6篇
  • hadoop
    1篇
  • 数据结构
    2篇
  • mysql
    8篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

创作活动更多

新星杯·14天创作挑战营·第9期

这是一个以写作博客为目的的创作活动,旨在鼓励大学生博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。我们诚挚邀请你们参加为期14天的创作挑战赛! 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见 https://bbs.csdn.net/topics/619626357 2、文章质量分查询:https://www.csdn.net/qc

475人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

数据库中树形结构表的统一管理,ID-ParentID模式的表的管理

在数据库设计中,通常使用ID-ParentID这样的模式表示上下级关系,最常见的就是category表的设计,这类表都具有树形结构,如何统一的管理这类表的树形结构,如何统一的为前端返回可方便展示成树形结构的Json呢?
原创
发布博客 2020.11.09 ·
2305 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

电商系统,消息通知模块数据库设计,包含数据库源文件

定义通知以notification_definition开头的数据库表,用于定义通知。这个就好像是Java中的Class,实例(Object)通过Class生成;同样的,我们先定义通知的内容,发送方式,使用的模板,接收人等等信息,然后根据定义产生具体的通知。基本信息不管是定义还是根据定义产生的实际通知,他们都共享一些基础信息。notification_template,通知模板表notification_category,分类表notification_post_method,有些通知是需要实
原创
发布博客 2020.09.05 ·
1633 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

电商系统,商品属性表和功能设计,可用于各种实体的属性

简介定义一种通用的属性体系,可以表示任何实体的属性,同时也像数据库列一样,可以为属性指定数据类型.在电商系统中,每个商品都有多个属性,并且这些属性不能提前设定,它们以无模式的key/value形式存在,我们可以简单的只保存key/value,也可以把这种需求抽象成更通用,功能更强大的属性体系,这样就可以适用更多的场景.数据库property_key: 属性keyproperty_key_definition:属性key定义,就好像MySQL column definitionpr
原创
发布博客 2020.09.05 ·
2854 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java数据库中台项目,电商,CMS轻松实现,包含数据库源文件

Java中台项目,Web开发也能面向对象编程,拒绝面条代码。目前已经有47个表,数据库源文件 DB-Design.mwb ,使用 MySQL Workbench 打开包含的数据库表有用户体系,权限控制体系,店铺,商品,订单,消息通知体系,异步任务等等,持续更新中…系统文档源文件 System-Design.mm
原创
发布博客 2020.07.18 ·
1420 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

定义接口后,如何让多个实现类使用统一的数据校验等逻辑

对于数据库的增删改操作,为了维护数据模型的完整性,我们定义了接口,然后统一操作数据。实现类可以选择不同的数据库,比如选择MySQL或者MongoDB等等,同时,不同实现类还可以选择不同的ORM框架,比如如果选择了MySQL存储数据,则可以选择jooq,mybatis等等ORM框架。对于不同的实现类,有很多操作是相同的,比如参数校验,缓存的设置,更新等等,这些操作不会因为选择了不同的数据库或者选择了不同的ORM框架而不一样,因此,为每个接口设计一个抽象类,在这个抽象类中完成这些相同的操作,然后把保存数据
原创
发布博客 2020.06.04 ·
396 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

数据库中ID/ParentID模式的数据如何快速生成树形结构

在数据库设计中,通常使用ID/PID这样的模式表示上下级关系,最常见的就是category表的设计,比如CREATE TABLE IF NOT EXISTS `item`.`item_category` ( `item_category_id` BIGINT UNSIGNED NOT NULL, `store_id` BIGINT UNSIGNED NOT NULL COMMENT '所属店铺ID', `category_name` VARCHAR(45) NOT NULL COMMENT '
原创
发布博客 2020.05.27 ·
1566 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

如何设计抽象的权限体系?超脱user-role模型

通常我们看到的权限体系都是 用户-角色 模式,这样太局限了,如果还有其他权限控制需求了,比如微服务之间是否有权限访问,因此,设计一种【抽象】的权限控制体系才能因对各种业务需求,这里我们就定义一种重新的权限体系,具体请查看数据库设计中关于权限体系的设计术语permission一个比较好的理解方式:一个subject(比如user)对于target(比如文件)有某些action(比如read)权限subjectA subject may be any entity, such as a per
原创
发布博客 2020.05.26 ·
403 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

一键自动生成千万级MySQL电商数据,7个表,有关联关系

简介- 生成测试数据,总共有7个表,它们是- - user,用户表- - individual_user_general,个人用户基本信息- - store,店铺表- - store_general,店铺基本信息- - item,物品(商品)表- - item_general,物品基本信息- - item_description,物品描述信息- 数据库ER图- 生成的数据规模是可配置的,比如指定生成100万用户,5000万商品;并且**数据之间有关联关系**,因此可以测试sql j
原创
发布博客 2020.05.10 ·
853 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

mysql生成测试数据库,除了sysbench,还有哪些的工具?

作为一名开发人员,生成大量数据,以便测试数据库的性能情况是非常必要的。而且这些数据最好是有关联关系的,这样才符合实际情况,下面介绍几种有用的工具。sysbench, sysbench是跨平台的基准测试工具,支持多线程,支持多种数据库(OLTP基准测试),但是它只能生成单表,即使生成多个表,它们之间也是没有关联关系的,SQL JOIN等操作就没法测试了。Employees Sample D...
原创
发布博客 2019.03.12 ·
705 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

简单3步快速生成千万级别mysql测试数据库,模拟电商数据

听说mysql数据量达到5000万的以后,性能就急剧下降,干了这么久开发,还没看见过这么大的数据量,并且还是需要有关联关系的,因为要测试SQL JOIN ,今天就发现有这样一个叫做mysql-tester的工具,可以生成模拟电商的数据库,大数据量,具有关联关系!而且只需要三步就可以生成数据了!
原创
发布博客 2019.03.11 ·
6278 阅读 ·
7 点赞 ·
6 评论 ·
25 收藏

Twitter Snowflake算法实现

在微服务满天飞的时代,一些基础实施必须先完善,ID生成器就是其中一个。很多人都使用UUID作为主键,但是,按照数据库索引的结构,以及数据库保存记录的方式,UUID这种方式性能极差,自增的数字类型才是解决之道。Twitter Snowflake算法就可以很好的满足,一图胜过千言此算法不难理解,难的是二进制按位操作和移位操作,只要理解了这两种位操作,这个算法就完全不是问题了github地址:https...
原创
发布博客 2018.05.03 ·
251 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java 8 stream jdbc

使用 java 8 stream API 方式处理jdbc query,在数据迁移时,如果需要全表读取数据,当数据量较大时,不可能一次性全部读取,同时如果使用分页的方式,随着分页越深,性能越差,因此可以尝试使用流式API来处理此类业务。github地址:https://github.com/wuda0112/common-utils/blob/master/src/main/java/com/wu...
原创
发布博客 2018.05.03 ·
1096 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

double-array trie java 实现

做过分词或者文本分析的应该都知道double-array trie,基于《An Efficient Implementation of Trie Structures》实现,本来想完整的翻译成中文,但是翻译一段以后发现效果不好,英文翻译水平和中文表达能力有有待提高啊。github地址:https://github.com/wuda0112/common-utils/blob/master/src/...
原创
发布博客 2018.05.03 ·
560 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot微服务架构,可以同时按照RESTful,MVC,RPC方式运行

github地址:https://github.com/wuda0112/project-structure-archetypequick start 下载[project-common](https://github.com/wuda0112/project-common)项目git clone https://github.com/wuda0112/project-common...
原创
发布博客 2018.05.03 ·
6225 阅读 ·
0 点赞 ·
1 评论 ·
4 收藏

JDK_API_1_6_zh_CN

发布资源 2018.02.06 ·
pdf

Lucene索引在文件和内存中的数据结构

Lucene索引文件结构:Lucene的索引由多个不同后缀格式的文件组成,本文准确来说应该是lucene索引倒排表的文件结构,具体的组织形式如下:field fieldName  --域的名称term termName --term的名称,也就是分出的词doc docId --文档id,在指定域下,出现指定term(分词)的文档的idFreq count --term在文档中出
原创
发布博客 2014.07.14 ·
5533 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

Hadoop入门概述-概念及WordCount实例详解

我希望尽可能的以最白话的方式来jie'shao
原创
发布博客 2014.06.18 ·
745 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

lucene读取索引文件到内存-源码解析

1.抛出问题:2.环境说明lucene索引保存在倒排表文件中,那么lucene是如何将这些索引数据读取到内存中的呢?首先需要说明下我的源码环境:我用的是lucene4,然后codec用的是SimpleTextCodec,这个codec的作用是格式化索引,把“黑箱”的索引格式转化成我们可以看得懂的格式,比如,用了SimpleTextCodec以后,我的倒排表文件的后缀是".pst",然后
原创
发布博客 2014.03.17 ·
2858 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

java抓取、java网络爬虫实例项目jnc

java抓取、java网络爬虫实例项目jnc源码托管在:http://code.taobao.org/p/jnc/src/trunk/用svn客户端下载下来即可,直接运行test包下的Crawl.java就可以快速启动测试测试:直接运行test包下的Crawl.javaUrlBean host = UrlUtil.getUrlBean("http://www
原创
发布博客 2014.01.10 ·
1672 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

lucene搜索过程详解

这篇文章的查询以最简单的TermQuery为例,从searcher.search()方法为入口:1.为各个查询的term计算权重。createNormalizedWeight(Query query);具体是在new TermWeight()完成权重计算2.loadTerms()方法用于从索引文件中加载terms到内存,并且缓存。比如我这里用的codec是SimpleTextCod
原创
发布博客 2013.12.04 ·
1317 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多