CN112416929A - 基于mysql和java的检索库管理及数据检索方法 - Google Patents
基于mysql和java的检索库管理及数据检索方法 Download PDFInfo
- Publication number
- CN112416929A CN112416929A CN202011287836.6A CN202011287836A CN112416929A CN 112416929 A CN112416929 A CN 112416929A CN 202011287836 A CN202011287836 A CN 202011287836A CN 112416929 A CN112416929 A CN 112416929A
- Authority
- CN
- China
- Prior art keywords
- database
- retrieval
- data
- mysql
- java
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于mysql和java的检索库管理及数据检索方法,基于mysql数据库搭建检索库,创建检索相关字段,用java编写定时任务,通过定时任务把检索的相关数据定时从应用数据库的从库里抽取并储存到搭建的检索库,当访问检索数据以及列表类数据时则直接调用检索库获取,本发明的方案可适用于访问量大的数据或者经常访问的数据,直接从检索库中获取,大大的提升了搜索速度并减小了数据库的压力。
Description
技术领域
本发明涉及技术领域,特别涉及一种基于mysql和java的检索库管理及数据检索方法。
背景技术
目前应用访问数据的方法主要是以下两种:
①.单个数据库时,直接访问数据库。这种方法存在的缺陷为:当数据量大时该方法访问效率很低。
②.多个数据库搭建主从数据库。这种方法存在的缺陷为:当数据量大时用户访问存在不确定性,每次大量访问的时候检索效率也低下。
即上诉的现有方法都存在每次应用访问数据库时,当数据量大或者访问量大的时候对数据库的压力也大,导致检索效率低下的问题。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种基于mysql和java的检索库管理及数据检索方法,可实现数据库的读写分离,提高数据的检索速度,减小数据库的读写压力。
为了达到上述的技术效果,本发明采取以下技术方案:
基于mysql和java的检索库管理及数据检索方法,基于mysql数据库搭建检索库,创建检索相关字段,用java编写定时任务,通过定时任务把检索的相关数据定时从应用数据库的从库里抽取并储存到搭建的检索库,当访问检索数据以及列表类数据时则直接调用检索库获取,该方案可适用于访问量大的数据(例如商品检索数据等)或者经常访问的数据(列表类的数据),直接从检索库中获取,大大的提升了搜索速度并减小了数据库的压力。
进一步地,包括以下步骤:
S1.搭建mysql数据库A作为检索库;
S2.使用Navicat连接数据库A;
S3.在数据库A中创建检索表,所述检索表作为检索时访问的检索库表;
S4.在数据库A中创建视图;
S5.搭建至少两个mysql数据库作为业务数据库,其中,数据库B作为主业务数据库,数据库C作为从业务数据库;
S6.在数据库C中创建视图,并将数据库C的视图一一对应数据库A的检索表;
S7.通过java编写定时任务,定时从数据库C中抽取数据保存于数据库A中的对应检索表中;
S8.在检索业务所需的列表数据时或在进行数据量大的数据检索时即直接访问数据库A中的对应检索表;
需要说明的是,上述步骤前的序号仅是为了后续可以直观的体现所表述的具体步骤内容,并不起绝对的先后顺序限定,如上述流程中,也可以先创建业务数据库并先创建业务数据库的视图,然后再搭建检索库,即先执行步骤S5,再执行S1,其中,其他的必要的先后顺序为本技术领域常识,此处不再赘述。
进一步地,所述步骤S3中创建检索表时具体根据业务需求,在检索库中创建不同分类的检索表,所述检索表中只创建各自分类所需要的检索字段。
进一步地,所述步骤S3中创建的检索表包括商品商检表和/或用户信息表。
进一步地,所述检索字段包含商品信息和/或用户信息。
进一步地,所述商品信息包括商品名称、商品编号、商品颜色,所述用户信息包括用户名、用户性别。
进一步地,所述步骤S5中还包括搭建数据库表,所述数据库表包括商品信息表和/或用户信息表。
进一步地,所述步骤S6中创建的视图包括商品视图和/或用户视图。
进一步地,所述步骤S4中,创建视图时是根据业务需求在数据库A中创建视图,且视图字段即检索表中所需检索字段。
本发明与现有技术相比,具有以下的有益效果:
本发明的基于mysql和java的检索库管理及数据检索方法,针对数据量大的时候导致数据库压力大,检索效率低的问题,通过基于mysql搭建一个检索库,创建好检索相关字段,然后通过定时任务把检索相关数据定时从应用数据库的从库里面抽取并储存到该检索库中。当访问检索数据以及列表类数据时直接调用检索库获取。实现访问量大的数据(例如商品检索数据等)或者经常访问的数据(列表类的数据)直接从检索库中获取,解决了数据量很大的时候会导致数据库服务器压力大导致检索速度变慢的问题。
附图说明
图1是本发明的基于mysql和java的检索库管理及数据检索方法的执行流程示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
实施例一:
一种,基于mysql和java的检索库管理及数据检索方法如图1所示为执行流程示意。
本实施例中具体包括以下步骤:
步骤1.确定业务需求,并根据业务需求制定需要检索的字段。
例如本实施例中根据业务需求制定需要检索的字段如下:
商品信息相关的:商品名称product_name、商品编号product_num、商品颜色product_color;用户信息相关的:用户名user_name、用户性别gender。
步骤2.搭建mysql数据库B、C作为业务数据库。
其中,数据库B代表业务数据库主库,数据库C代表业务数据库从库,同时,本实施例中还创建有数据库表,具体包括商品信息表product、用户信息表user。
步骤3.在步骤2搭建的数据库C中根据业务检索需求创建视图,例如本实施例中包括创建商品视图product_view,该视图sql为select product_name,product_num,product_color from product;用户视图user_view,该视图sql为select user_name,gender from user。
步骤4.搭建mysql数据库A用做检索库。
步骤5.使用Navicat连接数据库A。
步骤6.在数据库A中创建检索表。
具体是根据业务需求,在检索库中创建不同分类的检索表,这些检索表作为检索时访问的检索库表,具体的,表中只创建各自分类需要检索的字段。例如本实施例中具体包括创建以下检索表:商品商检表product,该表字段只包含product_name,product_num,product_color;用户信息表user,该表字段只包含user_name,gender。
步骤7.在作为检索库的数据库A中创建视图。
具体包括根据业务需求,在数据库A中创建视图,如当在商品某一级分类中包含A、B不同类型的商品,例如电视A、空调B,且A电视和B空调有各自的属性,例如电视分辨率,空调的能级效率等,又包含有公共的属性例如产品名称、产品编号、产品颜色等时,即可查询检索库的视图表,视图字段为检索列表所需字段例如product_info表创建product_name,product_num,product_color等公共字段,视图sql为select product_name,product_num,product_color from produc。
步骤8.基于spring_boot搭建java框架。
步骤9.在步骤8的java中连接业务数据库C以及数据库A,并借助java.util.Timer来实现定时任务,定时从数据库C中抽取步骤3创建的视图数据。如本实施例中为抽取商品product_view的product_name,product_num,product_color,用户user_view的user_name,gender信息,然后保存于数据库A中对应的表内,商品product信息保存于步骤6创建的商品商检表product中,user信息保存于建用户信息表user表中。
步骤10.应用写入数据的时候直接写入步骤2对应的B数据库里面。
步骤11.应用读取数据的时候如果读取的数据只是检索商品列表的时候就直接读取步骤6创建的数据库A中对应的数据,例如获取商品检索信息就选择读取数据库A中的product表信息。如果获取大的分类那么就读取数据库A中的product_info视图内的数据。
综上可知,本发明的方案适用于访问量大的数据(例如商品检索数据等)或者经常访问的数据(列表类的数据),可直接从检索库中获取,大大的提升了搜索速度并减小了数据库的压力。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (9)
1.基于mysql和java的检索库管理及数据检索方法,其特征在于,基于mysql数据库搭建检索库,创建检索相关字段,用java编写定时任务,通过定时任务把检索的相关数据定时从应用数据库的从库里抽取并储存到搭建的检索库,当访问检索数据以及列表类数据时则直接调用检索库获取。
2.根据权利要求1所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,包括以下步骤:
S1.搭建mysql数据库A作为检索库;
S2.使用Navicat连接数据库A;
S3.在数据库A中创建检索表,所述检索表作为检索时访问的检索库表;
S4.在数据库A中创建视图;
S5.搭建至少两个mysql数据库作为业务数据库,其中,数据库B作为主业务数据库,数据库C作为从业务数据库;
S6.在数据库C中创建视图,并将数据库C的视图一一对应数据库A的检索表;
S7.通过java编写定时任务,定时从数据库C中抽取数据保存于数据库A中的对应检索表中;
S8.在检索业务所需的列表数据时或在进行数据量大的数据检索时即直接访问数据库A中的对应检索表。
3.根据权利要求2所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述步骤S3中创建检索表时具体根据业务需求,在检索库中创建不同分类的检索表,所述检索表中只创建各自分类所需要的检索字段。
4.根据权利要求3所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述步骤S3中创建的检索表包括商品商检表和/或用户信息表。
5.根据权利要求4所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述检索字段包含商品信息和/或用户信息。
6.根据权利要求5所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述商品信息包括商品名称、商品编号、商品颜色,所述用户信息包括用户名、用户性别。
7.根据权利要求5所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述步骤S5中还包括搭建数据库表,所述数据库表包括商品信息表和/或用户信息表。
8.根据权利要求7所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述步骤S6中创建的视图包括商品视图和/或用户视图。
9.根据权利要求4所述的基于mysql和java的检索库管理及数据检索方法,其特征在于,所述步骤S4中,创建视图时是根据业务需求在数据库A中创建视图,且视图字段即检索表中所需检索字段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011287836.6A CN112416929A (zh) | 2020-11-17 | 2020-11-17 | 基于mysql和java的检索库管理及数据检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011287836.6A CN112416929A (zh) | 2020-11-17 | 2020-11-17 | 基于mysql和java的检索库管理及数据检索方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112416929A true CN112416929A (zh) | 2021-02-26 |
Family
ID=74831972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011287836.6A Pending CN112416929A (zh) | 2020-11-17 | 2020-11-17 | 基于mysql和java的检索库管理及数据检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416929A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090037381A1 (en) * | 2007-07-31 | 2009-02-05 | Hitachi Ltd. | Data registration and retrieval method, data registration and retrieval program and database system |
CN101916295A (zh) * | 2010-08-27 | 2010-12-15 | 董方 | 基于点对点网络的互联网搜索系统和方法 |
CN107515878A (zh) * | 2016-06-16 | 2017-12-26 | 苏宁云商集团股份有限公司 | 一种数据索引的管理方法及装置 |
CN109508422A (zh) * | 2018-12-05 | 2019-03-22 | 南京邮电大学 | 多线程智能调度的高匿爬虫系统 |
CN109697199A (zh) * | 2017-10-24 | 2019-04-30 | 中移(苏州)软件技术有限公司 | 一种基于solr实现的办公自动化OA搜索方法及设备 |
CN110109924A (zh) * | 2019-04-23 | 2019-08-09 | 重庆紫光华山智安科技有限公司 | 检索方法及装置 |
CN110134970A (zh) * | 2019-07-10 | 2019-08-16 | 北京百度网讯科技有限公司 | 标题纠错方法和装置 |
CN110865992A (zh) * | 2019-10-30 | 2020-03-06 | 腾讯云计算(北京)有限责任公司 | 一种检索库管理方法、检索方法、装置及介质 |
-
2020
- 2020-11-17 CN CN202011287836.6A patent/CN112416929A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090037381A1 (en) * | 2007-07-31 | 2009-02-05 | Hitachi Ltd. | Data registration and retrieval method, data registration and retrieval program and database system |
CN101916295A (zh) * | 2010-08-27 | 2010-12-15 | 董方 | 基于点对点网络的互联网搜索系统和方法 |
CN107515878A (zh) * | 2016-06-16 | 2017-12-26 | 苏宁云商集团股份有限公司 | 一种数据索引的管理方法及装置 |
CN109697199A (zh) * | 2017-10-24 | 2019-04-30 | 中移(苏州)软件技术有限公司 | 一种基于solr实现的办公自动化OA搜索方法及设备 |
CN109508422A (zh) * | 2018-12-05 | 2019-03-22 | 南京邮电大学 | 多线程智能调度的高匿爬虫系统 |
CN110109924A (zh) * | 2019-04-23 | 2019-08-09 | 重庆紫光华山智安科技有限公司 | 检索方法及装置 |
CN110134970A (zh) * | 2019-07-10 | 2019-08-16 | 北京百度网讯科技有限公司 | 标题纠错方法和装置 |
CN110865992A (zh) * | 2019-10-30 | 2020-03-06 | 腾讯云计算(北京)有限责任公司 | 一种检索库管理方法、检索方法、装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6931408B2 (en) | Method of storing, maintaining and distributing computer intelligible electronic data | |
CN110321344B (zh) | 关联数据的信息查询方法、装置、计算机设备及存储介质 | |
CN106202207B (zh) | 一种基于HBase-ORM的索引及检索系统 | |
CN104765731B (zh) | 数据库查询优化方法和设备 | |
CN107341262B (zh) | 数据库中对象类型列的序列化、反序列化方法及装置 | |
CN107807982B (zh) | 一种异构数据库的一致性校验方法及装置 | |
CN103577440A (zh) | 一种非关系型数据库中的数据处理方法和装置 | |
CN106407360B (zh) | 一种数据的处理方法及装置 | |
JP2019527898A (ja) | 大規模データセットの高速検索またはフィルタリングのためのシステム、方法、およびデータ構造 | |
CN107491487A (zh) | 一种全文数据库架构及位图索引创建、数据查询方法、服务器及介质 | |
US11288287B2 (en) | Methods and apparatus to partition a database | |
CN110134681B (zh) | 数据存储与查询方法、装置、计算机设备及存储介质 | |
US5742809A (en) | Database generic composite structure processing system | |
CN115470284A (zh) | 一种多源异构数据源导入Janusgraph图数据库的方法和装置 | |
CN101963993B (zh) | 一种数据库单表记录快速查找的方法 | |
CN104881475A (zh) | 一种用于大数据随机抽样的方法和系统 | |
CN111259017B (zh) | 订单检索方法、计算机设备和存储介质 | |
CN111522820A (zh) | 数据存储结构、存储检索方法、系统、设备及存储介质 | |
CN115936017B (zh) | 一种支持界面多语言和数据多语言的主数据管理方法 | |
CN115080684B (zh) | 网盘文档索引方法、装置、网盘及存储介质 | |
CN113821508B (zh) | 一种数组索引的实现方法和系统 | |
CN112416929A (zh) | 基于mysql和java的检索库管理及数据检索方法 | |
CN105740374A (zh) | 基于分布式内存的三维平台数据模糊查询方法 | |
US11157506B2 (en) | Multiform persistence abstraction | |
CN115114297A (zh) | 数据轻量存储及查找方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210226 |
|
RJ01 | Rejection of invention patent application after publication |