&&&&全国各地省市区分布数据库SQL文件数据库
&全国各地省市区分布数据库SQL文件数据库
全国各地省市区分布数据库SQL文件数据库
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动***等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
Q.为什么我点的下载下不了,但积分却被扣了
A. 由于下载人数众多,下载服务器做了并发的限制。若发现下载不了,请稍后再试,多次下载是不会重复扣分的。
Q.我的积分不多了,如何获取积分?
A. 获得积分,详细见。
完成任务获取积分。
论坛可用分兑换下载积分。
第一次绑定手机,将获得5个C币,C币可。
关注并绑定CSDNID,送10个下载分
下载资源意味着您已经同意遵守以下协议
资源的所有权益归上传用户所有
未经权益所有人同意,不得将资源中的内容挪作商业或盈利用途
CSDN下载频道仅提供交流平台,并不能对任何下载资源负责
下载资源中如有侵权或不适当内容,
本站不保证本站提供的资源的准确性,安全性和完整性,同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
数据库下载排行
您当前C币:0&&&可兑换 0 下载积分
兑换下载分:&
消耗C币:0&
立即兑换&&
兑换成功你当前的下载分为 。前去下载资源
你下载资源过于频繁,请输入验证码
如何快速获得积分?
你已经下载过该资源,再次下载不需要扣除积分
全国各地省市区分布数据库SQL文件数据库
所需积分:0
剩余积分:0
扫描微信二维码精彩活动、课程更新抢先知
VIP会员,免积分下载
会员到期时间:日
剩余下载次数:1000
全国各地省市区分布数据库SQL文件数据库
剩余次数:&&&&有效期截止到:
你还不是VIP会员VIP会员享免积分 . 专属通道极速下载
VIP下载次数已满VIP会员享免积分 . 专属通道极速下载,请继续开通VIP会员
你的VIP会员已过期VIP会员享免积分 . 专属通道极速下载,请继续开通VIP会员发表日期: 日
阅读次数: 3,889 次
我们已使用
进行商业化运营
nark 数据库最重要的特性:高压缩并且拥有丰富、高效的查询能力。特别是高压缩,其他数据库都没有这个能力,你可能对此表示怀疑,本文提供的内容会打消你的疑虑。
实现上,不同于普通 Hash 或 Tree 结构的数据库,nark 数据库是基于自动机的,这决定了 nark 的强大与简洁,但是,最重要的是,nark 为大家提供了一整套解决方案。
因为自动机只有离线(offline)创建成只读数据库,才能为在线(online)计算 提供 最节省内存 并且 高速查找 的 功能。从而,绝大部分 nark 组件都分为离线(offline)建库 和 在线(online)搜索 两部分。
目前,离线建库以可执行程序的形式向所有用户开放,在线搜索以 C++ API 的形式仅向付费用户开放。
为了让所有用户在付费前体验 nark 的高性能,中也包含了一些示例程序,大部分示例程序同时也是 benchmark 程序,所有用户都可以在自己的机器上运行这些示例程序。同时,这些示例程序的代码也向所有用户开放,但只有付费用户才能自己编译这些示例程序,因为需要 C++ API 。
nark 是如何的强大
提供普通数据库的精确查找、范围查找、前缀查找
高效支持正则表达式查找,仅用几十微秒,就能在包含数亿条记录的数据库中找到结果
内存用量非常低,索引结构(即全部数据)是高度压缩的!
因为高度压缩,整个数据库完全装在内存中,查找过程无任何硬盘访问
使用 mmap ,瞬间即可加载整个数据库,真正实现“一次建库,到处使用”
支持 ,适应高速创建超大数据库的需求
举个极端的例子:一个841M 的 url 列表,被压缩到只有6.4M,压缩率高达131:1
哪怕是只比较压缩率,都远超主流压缩软件(bzip2只压缩到37M,压缩率23:1)
而与此同时,从中查找一条 url 只需要600纳秒!
Demo 见,这本质上可以认为是用正则表达式查找数据库,不过这个“正则表达式”不是人手写的,而是从搜索词创建了一个DFA, 这个DFA自然有某正则表达式与它对应。
每条规则是一个,假如配置了10万条规则,现在有一个字符串(比如一条网络消息),要看这个字符串能匹配那个(或哪些)规则,nark 规则引擎只需要几微秒的时间就能得到结果。应用案例:某互联网公司的查询词分类(Query意图识别)、某手机短信分析应用、某网络设备商的入侵检测……
一个简化的场景是规则只包含需要精确匹配的二进制串,可以使用 ,Benchmark 中 2000 个 pattern , 匹配性能高达 720MB/s
(自然语言处理)
把大量语料(例如: N-Gram)压缩到一个DFA中,既有强大的匹配能力,又大大减小内存用量(或者换句话说,使用相同的内存装入更多语料)。
把很多复杂的计算问题简化为(匹配 + 简单的计算),等等
小文件压缩
在小文件存储中,如果使用主流的压缩算法,要实时读取单个小文件,就只能每个文件分别压缩,读取时分别解压,从而只能压缩同一文件内部的冗余,不同文件之间的冗余无法压缩,导致压缩率很低
使用 nlt_zip ,同一文件内部 和 不同文件之间 的冗余都被压缩了,从而可以高效压缩海量小文件,并且高速读取单个小文件(相当于仅解压一个文件)
搜索引擎的正排表是一个典型的现实案例,再比如论坛帖子内容,博客内容,微博内容,等等……
nark 核心 API
MatchingDFA
前缀搜索、Key-Value 搜索、Key 存在性检验
前缀搜索、字符串 Key 和 整数 Index 互相转化,Index 是 Key 在整个数据库中的排序序号:从 0 到 n-1。
要实现 Map&Key,Value& 的功能,可以将 Value 保存在外部一个数组中,用 Index 访问;这就有了另外一种能力:修改 Value
SuffixCountableDAWG
BaseDAWG的派生接口,新增功能:高速获取指定前缀的所有不同后缀的数量,这种DAWG的 key &-& id 映射是字典序的。
:在整个输入数据中搜索多个 Pattern 的出现位置
nark 离线建库程序
adfa_build
用来从文本文件创建 (Key, Value) 数据库,(Key, Value) 都是字符串。文本文件中每行是一条 (Key, Value) 记录,一般情况下 (Key, Value) 之间使用 \t 分隔,第一个 \t 之前的是 Key,之后的是 Value,Value 中也可以包含 \t。
这个程序生成的 dfa 数据库仅支持 MatchingDFA 接口。
这个程序适合用来创建 (Key, Value) 集合有组合特征的输入,当你不能确定这一点时,可以尝试 nlt_build,看生成的 dfa 数据库文件是否更小。
dawg_build
用来从文本文件创建 (Key, Index) 数据库,文本文件中每行的全部内容被当作一个Key。生成的 dfa 数据库同时支持 AcyclicPathDFA 和 SuffixCountableDAWG。
DAWG 的全称是 。
在 SuffixCountableDAWG 中,一个 Key 对应的 Index 是这个 Key 在整个 Key 集合中的字典序的序号(0 ~ n-1)
只有当 Key 集合有高度组合特征时,这种数据库的压缩率才更高
一般而言,SuffixCountable 的功能并不是很重要,但由此功能引申出来的字典序非常重要,特别是创建由多个DFA组成超大DFA时,和单趟创建KeyValue数据库时。
这个程序也用来从文本文件创建 (Key, Value) 数据库,很多情况下生成的数据库文件比 adfa_build 要小,并且功能更丰富,支持 MatchingDFA 和 BaseDAWG。nlt 的含义是 NestLoudsTrie。
这种数据库并不是 ,但是它也可以实现 Key 和 整数 Index 之间的互相映射,这个 Index 不是字典序,而是对压缩算法来说,最“自然”的一个映射,可以认为是没有规律的。如果你需要将该 Index 与 Value 数组对应起来,需要再次处理一遍数据以建立这种联系。
从名字可以看出,这种数据库本质上是一种 trie 树。但是相比双数组(DoubleArray) Trie,这种 trie 的尺寸大约要小30倍,甚至300倍也有可能。当然,速度比 DoubleArray Trie 要慢不少,根据数据和应用场景的的不同,大约在 3~8倍之间。
即使不考虑查找功能,仅把 nlt_build 当作一个压缩软件,大多数情况下,针对 (Key, Value) 文本文件,它的压缩率也比传统压缩软件(如gzip,bzip2,7z,…)更高。
虽然这种数据库比 adfa 拥有额外的能力(Key 和 Index 互相转化),但是很多时候尺寸竟然还更小,并且速度更快,似乎有点违反直觉,但事实确实如此。
只有在数据有大量组合特征时,nlt 才比 adfa 尺寸更大。在理论上 nlt 的压缩率是线性的,adfa 是指数的,但实际数据的冗余更多情况下的是线性的,不是指数的。
因为 nlt 有以上优点,以下两种使用方式都很适合:
文本文件每行是一条 (Key, Value) 记录,通常使用 MatchingDFA 接口
文本文件每行仅包含一个 Key,而无 Value,通常使用 BaseDAWG,如果 Value 需要修改,就只能使用这种方式
这种数据库不是 SuffixCountableDAWG,幸运的是,这个功能大多数应用都不需要
使用与 nlt_build 相同的算法,压缩大量小文件(目前单个文件最大长度限制为16M),文件数量越多,压缩率越高,特别是对文本文件。
生成的 dfa 数据库文件格式与 nlt_build 完全相同。我曾使用 nlt_zip 把总共 58G 的 300万个json小文件压缩到 7G 的单个 nlt 。
按文件名从 nlt_zip 生成的数据库中解压/读取
regex_build
更多文档,正在撰写中……
我们已使用
进行商业化运营, 产品包括:
该日志由 rockeet 于日发表在分类下,
你可以,并在保留及作者的情况下到你的网站或博客。
转载请注明:
【上一篇】
【下一篇】
您可能感兴趣的文章:
后才能发表评论。struts2文件下载(文件保存以BLOB类型在数据库中)_Linux编程_Linux公社-Linux系统门户网站
你好,游客
struts2文件下载(文件保存以BLOB类型在数据库中)
来源:Linux社区&
作者:monsoo
struts2自带有文件下载的功能。本文讲述的是,从中读取BLOB类型的文件,并转换成文件。为什么会选择把文件以BLOB类型存在数据库中呢?Boss说,这样保证了数据安全,不容易被窃取。
struts2文件上传(保存为BLOB格式)&
Struts2的入门实例
Struts2实现ModelDriven接口
遇到的Struts2文件下载乱码问题
Struts2整合Spring方法及原理
Struts2 注解模式的几个知识点
贴出代码:
struts2.xml文件
&!-- 简单文件下载 --& &action name="download" class="web.DownloadAction"& & & & & &!-- 注意type="stream" --&&&result name="success" type="stream"& & &
&!-- 保证文档的中文标题不乱码,必须这样做,在Java代码中是将标题转换成了ISO8859-1 --&& &
¶m name="contentType"&application/x-charset=ISO8859-1&/param& & &
&!-- 获得的文件流 --&& &
¶m name="inputName"&downloadFile&/param& & &
&!-- 这个是获得的文件名 --&& &
¶m name="contentDisposition"&filename="${title}"&/param& & &
&!-- 这个是输出流的大小,这里是从Java文件中获得的文件的大小 --&& &
¶m name="bufferSize"&${size}&/param& &&/result& &/action&DownloadAction.javaprivate SResultDao rDao = new ResultDao();// 根据id,从数据库获取指定的文件public InputStream getDownloadFile() throws Exception {& & & & // 获取文件流&return new ByteArrayInputStream(rDao.findFileById(id)); }public String execute() throws Exception {&Result r = rDao.findResultById(id);
&title = new String(r.getTitle().getBytes(), "ISO8859-1");// 从数据库中获取文件的标题&size = getDownloadFile().available();// 获取文件的大小&return SUCCESS;}public void setTitle(String title) {&this.title =}public void setSize(int size) {&this.size =}public void setId(int id) {&this.id =}
前台jsp代码
&!-- 需要传指定的id --&&a href="download.action?id=&s:property value="#r.id" /&" target="_blank"&下载资料&/a&&!-- target="_blank"必须要,也就是从新的页面打开这个下载链接的意思,原因是:有些浏览器下载完成后会自动关闭当前页,用户当然不会希望我下载完东西之后就把之前的页面给关闭了 --&
Struts 的详细介绍:Struts 的下载地址:
本文永久更新链接地址:
相关资讯 & & &
& (昨 12:17)
& (10月13日)
& (10月13日)
& (09月07日)
同意评论声明
发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款ASP.NET五步打包下载Zip文件_asp.net教程-织梦者
当前位置:&>&&>& > ASP.NET五步打包下载Zip文件
ASP.NET五步打包下载Zip文件
此篇文章将要介绍ASP.NET五步打包下载Zip文件的相关介绍,具体代码请看下文本文版权归博客园和作者吴双共同所有,转载和爬虫请注明原文地址:/tdws
首先分享几个振奋人心的新闻:
1.谷歌已经宣布加入.NET基金会
2.微软加入Linux基金会,继续对Linux示好。换了CEO就是不一样
3.微软发布VS For Mac!
在Nuget里***下面这个dll
项目结构
在我们的一般处理程序中加入如下方法
///&summary&
/// 批量打包下载 Author:吴双
/// &/summary&
/// ¶m name="fileName"&文件名称&/param&
/// ¶m name="filePath"&文件虚拟路径&/param&
public static void DownLoadFiles(string fileName, string filePath)
List&string& fileNames = fileName.Split('|').ToList();
List&string& filePaths = filePath.Split('|').ToList();
MemoryStream ms = new MemoryStream();
byte[] buffer =
using (ZipFile file = ZipFile.Create(ms))
file.BeginUpdate();
file.NameTransform = new MyNameTransfom();
filePaths.ForEach(t =&
file.Add(HttpContext.Current.Server.MapPath(t));
mitUpdate();
buffer = new byte[ms.Length];
ms.Position = 0;
ms.Read(buffer, 0, buffer.Length);
string ss = "批量下载" + fileNames[0] + "等";
HttpContext.Current.Response.AddHeader("content-disposition", "filename=" + ss + ".zip");
HttpContext.Current.Response.BinaryWrite(buffer);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
第三步 调用方法
试着下载我们Pic目录下的文件吧!
public void ProcessRequest(HttpContext context)
//context.Response.ContentType = "text/plain";
//context.Response.Write("Hello World");
DownLoadFiles("xxx", "~/Pic/00.gif|~/Pic/02.png");
把项目跑起来吧!
下面是打包结果:
最后的浅谈
见过很多朋友和同事,他们不明白如何直接下载文件到。
实际上我上一句话,就已经是错误的了。文件并没有下载到浏览器中,而是随着HTTP请求,你Request将参数等一系列信息,流入到下游服务器。而你的HTTP服务器,接收到请求后,经过处理,再向下游客户端,返回一系列的Response结果。
那么你需要做的仅仅是将你的文件流读到响应流当中,并且在浏览器得到你的头部通知时,自然会给你当作文件下载。
你的一切传输都归功于HTTP协议,它基于TCP/IP协议族,在HTTP这个应用层下,为你做出了巨大贡献的还有:传输层,网络层,和数据链路层。在传输层,有TCP为你提供安全可靠的传输支持,而所有的网络通信几乎都需要网络层的IP协议,最后再到数据链路层一系列你可见的路由设备。
如果我的点滴分享对你有点滴帮助,欢迎点击下方红色按钮关注,我将持续分享更多有意义的。你下载成功了吗?为你自己点赞!
以上就是这篇文章的全部内容了,希望大家能够喜欢。
这些内容可能对你也有帮助
更多可查看asp.net教程列表页。
猜您也会喜欢这些文章扫描二维码,下载文件到手机
用户应遵守著作权法,尊重著作权人合法权益,不违法上传、存储并分享他人作品。举报邮箱:
京网文[0号 京ICP证100780号