如何快速构建大型分析服务器? [英] How to quickly build large scale analytics server?

查看:95
本文介绍了如何快速构建大型分析服务器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要快速且廉价地构建用于大规模(七个数字及以上)的分析服务器。

I need to build a analytics server for large scale (seven figures and up) quickly and for the cheap.

对于我来说,Piwik是个简单的选择到目前为止,Piwik很难扩展,并且可能需要相当大的服务器来处理负载。

Piwik would be the easy choice but for what I've gathered so far, Piwik is rather hard to scale and can require rather hefty servers to handle loads.

我的第二个想法是创建快速且肮脏的Node.js服务器它只是将所有内容推送到Amazon DynamoDB,因此人们可以从第一天开始收集数据,然后再构建UI。这样可以快速创建和缩放(垂直和水平)。但是,我想知道DynamoDB是否是此类用途的正确选择? (收集数据,生成报告)

My second idea would to create quick and dirty Node.js server which just pushes everything to Amazon DynamoDB, so that one can start gathering the data from the day one and then build the UI later on. That would be quick to create and scale (vertically and horizontally). However, I'm wondering if DynamoDB is the right choice for such use? (gather data, generate reports)

推荐答案

我正在专业地使用DynamoDB,并且不会在您的应用程序中使用它。

I'm using DynamoDB professionaly and would not use it for your application.

DynamoDB确实有很多限制。其中,您只能有一个 hash_key ,也可以有一个 range_key

DynamoDB truly has tons of constraints. Among them, you can have only one hash_key and optionally, one range_key.

您可以使用 query 对给定的 hash_key 下的项目进行一些分析,但实际上没有什么花哨。对于复杂的查询,您将不得不使用 scan 或EMR,它们既缓慢又昂贵,并且由于节流而带来了一些缺点。

You may do some "analytics" for items grouped under a given hash_key using query but really nothing fancy. For complex queries, you would have to use scan or EMR which are slow and expensive and have a couple of drawbacks due to throttling.

尽管如此,NoSQL似乎是一个不错的选择,至少对于您的应用程序的原型设计阶段而言。但是,我建议改为使用MongoDB。您可以索引任何列,执行复杂的查询,不必担心数据限制。分片和复制并不难设置。

Nonetheless, NoSQL seems a good choice, at least for the prototyping stage of your application. But, I would recommend MongoDB instead. You can index any column, do complex queries, do not worry about data throttling. Sharding and replications is not too hard to setup.

MongoDB具有强大的生态系统和社区,而DynamoDB尚未(因为)还很年轻。 MongoDB还托管了优惠,使您可以像使用DynamoDB一样快速地引导应用程序。

MongoDB has a strong ecosystem and community which DynamoDB has not (yet) as it is much younger. MongoDB also has hosted offers which would allow you to bootstrap your application as quickly as you would with DynamoDB.

这篇关于如何快速构建大型分析服务器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆