百度文库 文件存储问题,HELP~

Less 2012-05-17 04:00:27
在我们使用百度文库的时候,百度文库的那些文件是存在什么位置?
方式一:将各文件以二进制流的方式存储到数据当中,当用户查看文件的时候从数据库二进制流读出来,给用户显示。
方式二:将文件直接保存在数据库本地硬盘上,只将存储的路径及文件名保存在数据库中,然后用户查看时,通过数据库获取文件路径及文件名,然后给用户显示。
百度文库是应用那种方式啊?

我们现在有个需求:
每个用户都对应一个PDF文件,该PDF文件大小有10M左右,这样的用户有20万以上,需要满足用户查询指定PDF非常快,并且PDF能够通过IE浏览器快速的显示给用户就可以。这样的需求用什么方式存储比较好啊?
...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
孤独加百列 2012-05-18
  • 打赏
  • 举报
回复
baidu文库不用数据库的说,直接用集群的文件系统存储和查找的,建议LZ看看HADOOP的相关资料。
Mr_Nice 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

引用 2 楼 的回复:

上述两种方式,要根据自己的实际情况来决定。第一种方案可以防止文件丢失或者损坏,并且通过数据库备份可以找回,但是确定就是数据库会变的比较的大;第二种方式简单,但是如果一不小心文件删掉或者损坏,或者其他情况,则不能正确访问倒数。


那两者之间的速度比较呢? 应该是存入数据库后会比较慢吧? 速度差别能有多大?
[/Quote]

后者直接用前端下载,显示即可。 前者,还需要转成2进制读取后再处理。如果容量一样,当然还是后者快。
可以考虑用压缩后的pdf。
Less 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

上述两种方式,要根据自己的实际情况来决定。第一种方案可以防止文件丢失或者损坏,并且通过数据库备份可以找回,但是确定就是数据库会变的比较的大;第二种方式简单,但是如果一不小心文件删掉或者损坏,或者其他情况,则不能正确访问倒数。
[/Quote]

那两者之间的速度比较呢? 应该是存入数据库后会比较慢吧? 速度差别能有多大?
  • 打赏
  • 举报
回复
上述两种方式,要根据自己的实际情况来决定。第一种方案可以防止文件丢失或者损坏,并且通过数据库备份可以找回,但是确定就是数据库会变的比较的大;第二种方式简单,但是如果一不小心文件删掉或者损坏,或者其他情况,则不能正确访问倒数。
Less 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

引用 6 楼 的回复:

引用 5 楼 的回复:
baidu文库不用数据库的说,直接用集群的文件系统存储和查找的,建议LZ看看HADOOP的相关资料。

根据目前项目情况,做不到集群效果啊?

只是告诉你百度的实现方式而已。
你的情况用第二种吧,直接存储在数据库里面,多用户并发的话转化为2进制比较浪费资源和时间不建议。。
[/Quote]

哦,好的!谢谢~~
孤独加百列 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

引用 5 楼 的回复:
baidu文库不用数据库的说,直接用集群的文件系统存储和查找的,建议LZ看看HADOOP的相关资料。

根据目前项目情况,做不到集群效果啊?
[/Quote]
只是告诉你百度的实现方式而已。
你的情况用第二种吧,直接存储在数据库里面,多用户并发的话转化为2进制比较浪费资源和时间不建议。。
Less 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
baidu文库不用数据库的说,直接用集群的文件系统存储和查找的,建议LZ看看HADOOP的相关资料。
[/Quote]
根据目前项目情况,做不到集群效果啊?
zbdzjx 2012-05-18
  • 打赏
  • 举报
回复
一般都是在硬盘上存文件

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧