OpenSearch是一个非常有意义的功能,对于很多数据量较大的站点,
如果搜索功能自己做的话,或者用数据库里的查询语句,首先效率低下,而且占用资源。
另外几乎没有任何模糊或条件搜索功能。
OpenSearch可以针对大量数据快速搜索,就很好的解决了这一问题。
创建项目的过程很是简单,不仅可以自定义数据结构,
还提供了各种不同类型网站的模板,包括资讯类,小说类,应用类,社区类,文档类几种。
选择了某个模板后依然可以根据自己网站的结构自行调整数据结构。

然后就是选择数据源,目前只支持OSS上的文档和ODPS上的数据。。
目前来说。。。两个开放数据库RDS和OTS都还不支持,它的可用性就低了许多。
本想拿自己的小BLOG的数据做个测试,后来发现不支持RDS,只好作罢。
据说很快就会支持RDS了吧,这样就方便多了。

当然也可以自行上传数据,文本文件,以json的格式输出,有样例可以参考。
我们这里就直接拿样例文件来做测试好了。

上传了样例文件之后,索引很快做好,就可以试着搜索了:

试试加入条件和排序:

搜索结构都是可以以json格式输出的,所以对于网站还是app的应用都非常简单。
但是对于一个blog来说是完全没必要的,但如果是个论坛或大型网站的话,现在很多站点的站内搜索做的都非常差,
还有一些是直接使用google/baidu的站内搜索,自己做的则经常搜不到全部数据,
相信OpenSearch服务可以给这些网站提供一个各合适的搜索解决方案。