创建图像,视频和文档的在线索引库的最佳方法是什么?

时间:2014-07-14 02:20:32

标签: web-applications web streaming cloud

我的客户是慈善机构资助的保护组织,拥有数百小时的视频,数以千计的图像和文档,并希望通过某种图书馆/搜索系统从公众网站向公众提供这些视频。它还需要用于上传所有这些数据的工具,并使用元数据标记/组织它以进行搜索。

由于这是一个由慈善机构资助的团体,资金有限但并非吝啬,所以开源的东西是理想的,但价格合理的商业套餐也会很好。

我还没能找到能满足我所需要的一切,所以我要求好人提供你的专业建议。

是否有可用于此类事情的套餐或我应该自己制作套餐?我可以在C#或PHP中工作,客户端已经为他们的网站提供了标准的共享主机apache服务器。

感谢您的时间

1 个答案:

答案 0 :(得分:1)

- Apache Nutch Participates in Google Summer of Code因为Google可能启发了ASF来创建Nutch(开源 - 知识数据挖掘或K.D.M)工具集,其中包括索引/群集工具。 Apache Lucene可以很好地集成到HadoopSOLR群集可以扩展到PB级/ exabyte及以上(nill供应商许可费用),可提供高度可扩展的分布式处理功能。解析'节点'。

多种服务,协议和语言使Nutch成为可能。 PIG提供了一种语言'Pig Latin',用于创建自定义Map-Reduce应用程序,在分布式节点上运行。 Hive为OLAP数据仓库提供了一种(去)规范化NoSQL的方法。将数据带回熟悉的SQL&来自Many big data vendors.的关系数据库模式和工具。

Elastic Search有ELK(ElasticSearch,LogStash,Kibana),值得研究。

完整的大数据可能有点过分。 Lucene.Net提供了从Java移植的C#绑定,并且是一种使用Lucene作为倒排索引运行的快速方法。它支持搜索Autodesk和BBC UK Top Gear网站,并且在开发的早期阶段由Dawid Weiss和Stanislaw Osinski维护,他们无法投入所需的时间和资源来维护这样一个庞大的项目,以及他们自己的开源框架Carrot2。

Carrot2是搜索群集框架&在Lingo3G clustering algorithm中有商业方面。

我最近一直在与Node.JS合作,并查看Forage.JS,这是一个JavaScript实现,并由NPM安装。这是快速且极简的,对stemming algorithmsMozilla's localForge的支持提供了最小的离线存储引擎,可轻松适应基于PHP的站点。

Twitter's TypeHead根据索引提供建议,类似于Google Suggest,受JavaScript索引的启发.. Backbone Typeahead是一个从Twitter分发的Node NPM模块。

将爬网内容排序到二叉树的索引计算可以通过多种方式完成。这取决于你真正喜欢什么,因为有太多可用的工具和许多项目,Inorder-Tree-Layout另一个NPM包......例如,MIME类型的内容分类......

Jon Abernathy提供了一个基于Snowball的Martin Porter的“Porter Stemming Algorithm”的PHP端口,phpMorphy可以用来从索引中生成“真实的单词”,我找到了PHP Magneto SOlr plugin ,这可能在GitHub上有用。

我可能从Elastic Search和Lucene开始,抓住桌面应用程序并开始玩游戏,了解你想要实现的目标,从那里开始吧。玩得很开心! : - )