假设我们要构建一个简单的Google Analytics克隆,跟踪网页浏览量。我们会在浏览网页浏览量的网站上放置javascript。
答案 0 :(得分:0)
javascript可以直接将数据转储到数据库中而无需通过服务器(首选)吗?
对于我所知道的数据库,这将要求浏览器客户端具有对数据库的写访问权限,这样攻击者可以通过一些简单的JavaScript来污染您的数据库。如果这是可以忍受的,那么它肯定是可能的。对于类似CouchDB或Cloudant的内容,您只需使数据库全局可写(但不可读或可编辑),因此客户端可以在事件发生时进行推送。
数据库是否可以轻松扩展,干扰尽可能小? (DynamoDB的模型非常完美:0开销)。
Cloudant专门构建于BigCouch之上,创建者可以使用它来处理每秒生成数PB数据的系统。所以,它可以扩展。它使用Dynamo的仲裁概念来最大化节点之间的一致性。
仅供参考:BigCouch将于今年晚些时候与CouchDB合并。
我们可以进行一些灵活的查询:按日期限制,过滤/限制多个标签?
CouchDB,BigCouch和Cloudant都使用MapReduce进行查询,这些查询在您的数据进入系统时构建,以便在O(log n)时间内访问MapReduce查询的结果。每个系统还提供特殊方法,用于在发生更改时流式传输有关数据库更改的信息,这对于仪表板来说是完美的。