CN107526635A - 一种数据异步导出方法 - Google Patents

一种数据异步导出方法 Download PDF

Info

Publication number
CN107526635A
CN107526635A CN201710791987.7A CN201710791987A CN107526635A CN 107526635 A CN107526635 A CN 107526635A CN 201710791987 A CN201710791987 A CN 201710791987A CN 107526635 A CN107526635 A CN 107526635A
Authority
CN
China
Prior art keywords
data
export
size
download
asynchronous
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
Application number
CN201710791987.7A
Other languages
English (en)
Inventor
袁祖伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Zhidaochuangyu Information Technology Co Ltd
Original Assignee
Chengdu Zhidaochuangyu Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Zhidaochuangyu Information Technology Co Ltd filed Critical Chengdu Zhidaochuangyu Information Technology Co Ltd
Priority to CN201710791987.7A priority Critical patent/CN107526635A/zh
Publication of CN107526635A publication Critical patent/CN107526635A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种数据异步导出方法,包括步骤1:在导出页面设置导出数据的筛选条件;步骤2、服务器根据步骤1提供的筛选条件查询并判断数据库里数据量大小,根据配置文件所设置的大数据阈值DOWNLOAD_SIZE决定是实时导出,还是邮件通知下载导出;步骤3:若数据库里数据为少量数据,则此少量数据采用实时导出方式;步骤4:若数据库里数据为大量数据,则将此大量数据生成导出文件,并存储在指定服务器中,发送下载链接至指定的邮件地址。本发明实现大量数据、少量数据下载分类处理,不卡系统,无需在电脑前漫长地等待导出结果。

Description

一种数据异步导出方法
技术领域
本发明涉及网络数据查询和导出技术领域,特别是一种数据异步导出方法。
背景技术
传统下载分同步导出和异步导出,同步下载即根据查询条件及配置导出数据直接下载想要的数据结果;针对大数据的异步下载,通过其他服务器存储查询结果,分批查询生成导出文件,最后在面弹出下载结果。
传统的同步导出支持的数据量小,数据上十万条级别轻者锁住数据库导其他人无法操作系统,并卡顿页面耗时较长,重者服务器直接宕机。传统的异步导出虽然支持了大数据的分步导出,但到查询量小的时候做这种分步处理是一种服务器的浪费,重要的是这种导出需较长时间在电脑前等待导出结果造成时间浪费;如果多人需要查看结果要么多人查询卡服务,要么一人下载完大量数据通过网络分发给多人,大数据受网络影响发送耗时肯定很长,网络差时甚至无法发送出去,严重影响用户体验。
异步:网页上的异步即不需要等待服务器响应当前请求结果,就可以进行页面其他操作;与同步相对应,节省用户时间,提高用户使用体验。
异步任务队列:异步任务过多时可生成一个队列依次执行任务调度。
发明内容
本发明所要解决的技术问题是提供一种数据异步导出方法,实现大量数据、少量数据下载分类处理,少量数据直接下载轻松愉悦,大量数据邮件通知下载结果,不卡系统,无需在电脑前漫长地等待导出结果。
为解决上述技术问题,本发明采用的技术方案是:
一种数据异步导出方法,包括以下步骤:
步骤1:在导出页面设置导出数据的筛选条件;
步骤2、服务器根据步骤1提供的筛选条件查询并判断数据库里数据量大小,根据配置文件所设置的大数据阈值DOWNLOAD_SIZE决定是实时导出,还是邮件通知下载导出;
步骤3:若数据库里数据为少量数据,则此少量数据采用实时导出方式;
步骤4:若数据库里数据为大量数据,则将此大量数据生成导出文件,并存储在指定服务器中,发送下载链接至指定的邮件地址,即:
调用异步任务将大量数据写入下载文件内,每次写入条数根据步骤2配置文件所设置的单次写入条数而定,至到写入所有查询数据为止;待数据全部写入下载文件后,生成导出文件下载地址,并通过邮件发送至指定邮箱。
进一步的,所述步骤2中判断数据量大小的方法具体为:
1)查询整个表数据条数:all_count;2)查询数据表所占磁盘大小:table_size;3)计算单条数据大小:item_size=table_size/all_count;4)查询本次导出数据条数:count;5)计算此次导出数据大小:count_size=count*item_size;6)判断是否邮件通知下载导出结果,即count_size与大数据阈值DOWNLOAD_SIZE进行对比,小于大数据阈值直接导出,大于大数据阈值进入大量数据导出。
进一步的,还包括步骤5:设置大量数据下载时的下载验证信息,所述验证信息包括用户名、密码,用户需输入验证信息才能下载导出文件。
进一步的,还包括步骤6:设置消息提示,即通过开放接口的通讯工具发送导出结果通知和下载链接。
与现有技术相比,本发明的有益效果是:1)根据数据大小判断导出方式,比单一方式灵活,节省不必要的流程消耗;2)异步队列导出不影响系统正常使用,提高用户体验;3)邮件通知使用户不必在电脑前耗时苦等导出结果,并可以发送至多人省掉用户传阅苦恼;4)下载时提供身份验证,提高敏感数据安全性。
附图说明
图1是本发明一种数据异步导出方法流程示意图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明采用异步导出查询数据,根据导出数据量大小判断获取方式;少量数据可实时下载查看,大量数据生成导出文件存储在指定服务器里,发送下载链接至导出人邮件地址或手动指定的多个邮箱地址,收到邮件地址的用户可根据身份验证下载数据;此导出不影响系统正常使用,不卡数据库,支持一份数据多人下载阅读,异地下载阅读,节省传阅耗时及下载耗时。
以需要审核的订单数据为例,假定订单数据字段内容为:订单号、订单生成时间、订单类型、审核类型、订单价格、订单审核人、审核时间、订单审核结果和订单内容等,包括以下步骤:
1、导出页面设置导出数据的筛选条件,如需要订单生成时间在本月内,审核结果为合格,订单类型为A类,筛选条件设置好后点击导出按钮。
2、服务器收到前台请求后根据步骤1提供的条件查询数据库里数据量大小,根据配置文件所设置的大数据阈值决定是实时导出,还是邮件通知下载导出。
2-1、步骤2的配置文件为导出相关配置,包括:
*大数据阈值:根据服务器性能设置,默认DOWNLOAD_SIZE=10M;
*导出字段标题定义:如订单号列标题设置为,xxx公司订单号;
*导出特殊字段格式化如日期显示为:年/月/日或月-日-年;
*单次写入下载文件数据条数:根据服务器性能设置;
*导出文件格式:csv、excel、pdf等。
2-2、数据量大小判断:
1)查询整个表数据条数:all_count;
2)查询数据表所占磁盘大小:table_size;
3)计算单条数据大小:item_size=table_size/all_count(表大小除以表条数得到单条数据大小);
4)查询本次导出数据条数:count;
5)计算此次导出数据大小:count_size=count*item_size(本次导出条数乘以单条大小);
6)判断是否邮件通知下载导出结果:count_size与DOWNLOAD_SIZE(大数据阈值)对比,小于大数据阈值直接导出,大于大数据阈值进入大数据导出。
2-3、少量数据实时导出,即点完导出就获得浏览器下载文件,邮件通知下载结果的点击导出后会马上提示数据量过大,会通过邮件发送下载链接,请关注邮件提醒,并弹出邮件输入界面,可不输入或者输入多人。
3、判断为少量数据的至此已完成导出;判断为大量数据的进入步骤4。
4、调用异步任务将大量数据写入下载文件内,每次写入条数根据步骤2配置文件的所设置的单次写入条数,至到写入所以查询数据为止,调用步骤5;异步任务会放入异步队列,执行导出任务过多会排队执行以免影响服务器性能及用户操作体验。
5、待数据全部写入文件后,立即将生成导出文件下载地址,并通过邮件发送至指定邮箱;导出文件类型通过步骤2配置文件获取,邮件由前台指定,如未指定获取导出用户邮件地址。
6、收到邮件的用户点击下载链接,输入用户名密码等验证信息下载导出文件。

Claims (4)

1.一种数据异步导出方法,其特征在于,包括以下步骤:
步骤1:在导出页面设置导出数据的筛选条件;
步骤2、服务器根据步骤1提供的筛选条件查询并判断数据库里数据量大小,根据配置文件所设置的大数据阈值DOWNLOAD_SIZE决定是实时导出,还是邮件通知下载导出;
步骤3:若数据库里数据为少量数据,则此少量数据采用实时导出方式;
步骤4:若数据库里数据为大量数据,则将此大量数据生成导出文件,并存储在指定服务器中,发送下载链接至指定的邮件地址,即:
调用异步任务将大量数据写入下载文件内,每次写入条数根据步骤2配置文件所设置的单次写入条数而定,至到写入所有查询数据为止;待数据全部写入下载文件后,生成导出文件下载地址,并通过邮件发送至指定邮箱。
2.如权利要求1所述的一种数据异步导出方法,其特征在于,所述步骤2中判断数据量大小的方法具体为:
1)查询整个表数据条数:all_count;2)查询数据表所占磁盘大小:table_size;3)计算单条数据大小:item_size=table_size/all_count;4)查询本次导出数据条数:count;5)计算此次导出数据大小:count_size=count*item_size;6)判断是否邮件通知下载导出结果,即count_size与大数据阈值DOWNLOAD_SIZE进行对比,小于大数据阈值直接导出,大于大数据阈值进入大量数据导出。
3.如权利要求1所述的一种数据异步导出方法,其特征在于,还包括步骤5:设置大量数据下载时的下载验证信息,所述验证信息包括用户名、密码,用户需输入验证信息才能下载导出文件。
4.如权利要求1所述的一种数据异步导出方法,其特征在于,还包括步骤6:设置消息提示,即通过开放接口的通讯工具发送导出结果通知和下载链接。
CN201710791987.7A 2017-09-05 2017-09-05 一种数据异步导出方法 Pending CN107526635A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710791987.7A CN107526635A (zh) 2017-09-05 2017-09-05 一种数据异步导出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710791987.7A CN107526635A (zh) 2017-09-05 2017-09-05 一种数据异步导出方法

Publications (1)

Publication Number Publication Date
CN107526635A true CN107526635A (zh) 2017-12-29

Family

ID=60683663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710791987.7A Pending CN107526635A (zh) 2017-09-05 2017-09-05 一种数据异步导出方法

Country Status (1)

Country Link
CN (1) CN107526635A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110046191A (zh) * 2019-04-22 2019-07-23 成都四方伟业软件股份有限公司 一种数据导出配置方法及装置
CN110555068A (zh) * 2018-05-14 2019-12-10 北京京东尚科信息技术有限公司 数据导出方法和装置
CN110929131A (zh) * 2019-10-12 2020-03-27 中国平安财产保险股份有限公司 数据导出方法、装置、设备及存储介质
CN111104448A (zh) * 2019-12-17 2020-05-05 深圳前海环融联易信息科技服务有限公司 大数据量Excel文件导出方法、装置、计算机设备及存储介质
CN111125174A (zh) * 2019-12-06 2020-05-08 东软集团股份有限公司 数据导出方法、装置、存储介质、电子设备
CN113609168A (zh) * 2021-07-14 2021-11-05 远景智能国际私人投资有限公司 数据导出方法、装置、终端以及可读存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1862543A (zh) * 2006-06-21 2006-11-15 千乡万才科技(中国)有限公司 一种浏览器/服务器系统中的数据导入与导出方法
CN101996067A (zh) * 2009-08-19 2011-03-30 阿里巴巴集团控股有限公司 一种数据导出的方法和装置
US7979793B2 (en) * 2007-09-28 2011-07-12 Microsoft Corporation Graphical creation of a document conversion template
US8347207B2 (en) * 2007-07-16 2013-01-01 International Business Machines Corporation Automatically moving annotations associated with multidimensional data between live datacubes
CN103034658A (zh) * 2011-09-29 2013-04-10 福建睿能电子有限公司 一种数据查询和报表导出的方法及系统
US8463667B2 (en) * 2008-01-11 2013-06-11 Microsoft Corporation Exporting and importing business templates
CN103810238A (zh) * 2013-11-20 2014-05-21 国家电网公司 一种基于异步处理的大数据量Excel文件导出方法
CN106095775A (zh) * 2016-05-24 2016-11-09 中国银行股份有限公司 一种实现数据查询或导出的方法及系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1862543A (zh) * 2006-06-21 2006-11-15 千乡万才科技(中国)有限公司 一种浏览器/服务器系统中的数据导入与导出方法
US8347207B2 (en) * 2007-07-16 2013-01-01 International Business Machines Corporation Automatically moving annotations associated with multidimensional data between live datacubes
US7979793B2 (en) * 2007-09-28 2011-07-12 Microsoft Corporation Graphical creation of a document conversion template
US8463667B2 (en) * 2008-01-11 2013-06-11 Microsoft Corporation Exporting and importing business templates
CN101996067A (zh) * 2009-08-19 2011-03-30 阿里巴巴集团控股有限公司 一种数据导出的方法和装置
CN103034658A (zh) * 2011-09-29 2013-04-10 福建睿能电子有限公司 一种数据查询和报表导出的方法及系统
CN103810238A (zh) * 2013-11-20 2014-05-21 国家电网公司 一种基于异步处理的大数据量Excel文件导出方法
CN106095775A (zh) * 2016-05-24 2016-11-09 中国银行股份有限公司 一种实现数据查询或导出的方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LDS840827: ""求教:大数据量导出Excel"", 《CSDN论坛》 *
月上明故: ""求大数据量导出的解决方案"", 《CSDN论坛》 *
桦仔: ""分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占空间)"", 《博客园》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110555068A (zh) * 2018-05-14 2019-12-10 北京京东尚科信息技术有限公司 数据导出方法和装置
CN110046191A (zh) * 2019-04-22 2019-07-23 成都四方伟业软件股份有限公司 一种数据导出配置方法及装置
CN110929131A (zh) * 2019-10-12 2020-03-27 中国平安财产保险股份有限公司 数据导出方法、装置、设备及存储介质
CN111125174A (zh) * 2019-12-06 2020-05-08 东软集团股份有限公司 数据导出方法、装置、存储介质、电子设备
CN111104448A (zh) * 2019-12-17 2020-05-05 深圳前海环融联易信息科技服务有限公司 大数据量Excel文件导出方法、装置、计算机设备及存储介质
CN113609168A (zh) * 2021-07-14 2021-11-05 远景智能国际私人投资有限公司 数据导出方法、装置、终端以及可读存储介质
CN113609168B (zh) * 2021-07-14 2024-01-05 远景智能国际私人投资有限公司 数据导出方法、装置、终端以及可读存储介质

Similar Documents

Publication Publication Date Title
CN107526635A (zh) 一种数据异步导出方法
CN104484031B (zh) 终端设备耗电状态的优化方法和装置
US20170054670A1 (en) Method, system, and recording medium for notifying reception of message
CN111798296A (zh) 自动对账方法、自动对账设备及计算机可读存储介质
CN104050549A (zh) 一种基于第三方物流业务订单管理的系统
CN109670824A (zh) 电子账本的生成方法、装置、设备及存储介质
CN105049522A (zh) 一种实现自助打印复印扫描传真的方法
CN108605050B (zh) 一种快速进入金融交易的方法、装置及电子设备
CN101799901B (zh) 一种快速注册帐户并充值和登录的方法
CN102801647A (zh) 即时通信中真实型礼物的实现方法、客户端及系统
US20200219206A1 (en) Ad hoc electronic messaging using financial transaction data
CN107590692A (zh) 免费试用平台系统及其基于大数据环境下筛选客户的方法
CN106209495A (zh) 一种云监控系统的报表生成方法及装置
CN103020473A (zh) 一种电子名片及其制作方法
US11704702B2 (en) Generic message injection system
CN109600724A (zh) 一种短信发送的方法和装置
CN107798534A (zh) 一种信息记录方法及装置、终端和可读存储介质
WO2022247965A1 (zh) 账单处理
CA2796506A1 (en) Personalized budgets for financial services
CN107257358A (zh) 一种信息推送方法、终端及服务器
CN110111162A (zh) 消费折扣处理方法、装置、设备及计算机可读存储介质
CN109685636A (zh) 工资数额生成方法、装置、系统及计算机存储介质
WO2018072405A1 (zh) 一种推广计费方法、装置、设备和计算机存储介质
US10360600B1 (en) Big tree method and system for verifying user reviews
KR20210018109A (ko) 모바일 명함을 활용한 기업 서비스 제공 방법 및 제공 서버

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: 20171229

RJ01 Rejection of invention patent application after publication