【问题标题】:CouchDB Erlang ViewCouchDB Erlang 视图
【发布时间】:2014-05-24 07:42:00
【问题描述】:

昨天在这里发布了一个相当慢的 couchdb design-doc/view 之后: CouchDB delay building index (CouchDB 1.5.0 on Windows Server 2008 R2) ,我正在尝试调查如果我要在 Erlang 中重写慢视图,是否可以获得显着的性能。

作为一个完全的 Erlang 新手,我发现特定的 erlang/couch 教程的基础很薄。我可以在这里找到的最新查询已经很老而且非常简短:Erlang Views in Couch DBTranslate CouchDB javascript views to erlang。它们指的是版本 0.10.0。

我真的很惊讶似乎没有任何更新的文档或教程。如果您使用 Erlang 视图,您使用什么资源自学?如果我错过了有关 Erlang 和视图的任何好的资源,请指出这些给我。

最后,我想弄清楚是否需要安装其他任何东西来运行它们,例如 erlang 本身。

我在 Windows 上运行 couchdb 1.5,但在 Ubuntu 上进行原型设计,因此必须同时考虑这两个系统。

【问题讨论】:

    标签: erlang couchdb


    【解决方案1】:

    This 是我在 couchdb 原生视图上找到的最好的讨论。它们仍然是couchdb的一个隐藏功能,使用它的人并不多。

    总结链接中的讨论

    Erlang 视图明显比 javascript 视图快。但可能存在安全隐患,因为它们本身运行并且不像 javascript 视图那样被沙盒化。

    教程不多,因为没有太多要学习的东西。它们就像翻译成 erlang 的普通 couchdb 视图一样。如果你举了一个你的观点的例子,也许我们可以帮你把它翻译成 erlang,但是如果你想在里面写你自己的观点,你必须学习语言的基础知识。

    我正在尝试确定是否需要安装其他任何东西来运行它们,例如 erlang 本身

    什么都没有。您需要的一切都由 couchdb 本身提供。

    【讨论】:

    • 很难提供视图示例。它是一个完整的库,具有访问 20 多种不同文件格式和 1000 多行代码的逻辑。我们在外部环境中仔细对其进行单元和回归测试,然后将其放置在使用它的设计文档的“空白”视图中。
    • 您可能已经看过了,但是在 couchdb manual itself 中有一个 erlang 视图服务器的入门示例可以帮助您入门。
    • 我认为最好的建议是您在本地创建一个测试 erlang 视图并测量性能。与 javascript 视图相比,它肯定会更快,但是一旦构建它们,我不知道您可以获得多少性能优势。您是否厌倦了 Jason 在我在回答中提供的链接中提到的 PPP 技术,而不是重新构建视图?这对你的情况有用吗?
    猜你喜欢
    • 2011-10-11
    • 2018-11-04
    • 2011-01-25
    • 2014-04-18
    • 1970-01-01
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多