网络生态:千亿级数目下日志分析系统的技巧架构选型

    随着数据已经逐步成为一个公司宝贵的财富,大数据团队在公司往往会承担更加重要的角色。大数据团队往往要承担数据平台保护、数据产品开发、从数据产品中发掘业务价值等重要的职责。所以对于很多大数据工程师,如何根据业务需求往选择合适的大数据组件,做合适的大数据架构工作就是日常工作中最常碰到的标题。在这里根据七牛云在日增千亿级的日志分析工作,和大家分享一下大数据技巧架构选型的一些经验。

  大数据架构师在关注什么

  在一个大数据团队中,大数据架构师主要关注的核心标题就是技巧架构选型标题。架构选型标题一般会受到哪些因素的影响呢?在我们的实践中,一般大数据领域架构选型最受以下几个因素影响:  

  数据量级

  这一点在大数据领域尤其是一个重要的因素。不过从根本上讲,数据量级本身也是一种业务场景的衡量。数据量级的不同往往也就昭示着业务场景的不同。

  业务需求

  经验丰硕的大数据架构师能够从纷纷的业务需求中提炼出核心技巧点,根据抽象的技巧点选择合适的技巧架构。主要的业务需求可能包含:应用实时性要求、查询的维度和机动程度、多租户、安全审计需求等等。

  保护本钱

  这一点上大数据架构师一方面要能够清楚的懂得各种大数据技巧栈的优劣势,在满足业务需求的要求下,能够充分的优化架构,公平的架构能够降低保护的本钱,提升开发的效率。

  另一方面, 大数据架构师要能清楚的懂得自己团队成员,能懂得其他同学的技巧专长和品位,能够保证自己做的技巧架构可以得到认可和懂得,也能得到最好的保护和发展。

  接下来我们会围绕这几个方面往看看,做一个最合适自己团队业务的架构选型会如何受到这些因素的影响?

  技巧架构选型

  业务需求是五花八门的,往往影响我们做技巧选型的不是种种需求的细节,而是经过提炼后的一些具体的场景。就比如,业务需求提出我们要做一个日志分析系统,或者要做一个用户行为分析系统,这些具体需求背后我们要关注哪些具体的点?这是一个很有趣的标题,我们在做大数据的过程中,常发明我们对这些需求的疑问很多时候会落在以下几个标题上。  

  其中数据量级作为一个重要的因素影响着我们对于技巧选型的决定,另外在数据量的变更之外各种业务场景的需要也会影响我们对技巧组件的选择。

  数据量级

  如同我们上文中提到的,数据量级这个指标是一个特殊的业务场景的衡量,也是在大数据应用中影响最大的一个因素。往往对应不同的数据量级的业务,我们会有不同的考虑方法。

  一般数据量级在 10GB 左右,数据总条数在千万量级的数据,这种数据往往是业务最核心的数据,如用户信息库等。这种数据量由于其核心的业务价值,往往要求强一致性和实时性。在这种量级上,传统关系型数据库如 MySQL 等都能很好的解决各种业务需求。当然假如面对关系型数据库难以解决的标题,比如全文索引等的时候,架构师还是需要根据业务需求选择 Solr 或者 Elasticsearch 等搜索引擎解决此类标题。

  假如数据量级增长到 1 亿到 10 亿级别的时候,一般来说这个阶段就会见临一个选择,,是采用传统的 RDBMS+ 公平的索引+分库分表等各种策略呢?还是应该选择一些诸如 SQL On Hadoop 或者 HTAP、OLAP 组件呢?这时候机动性实在还是相对照较大的,一般我们经验是,假如团队内有数据库及中间件方向的专家工程师,希看保持架构简单性,可以选择继续使用传统关系型数据。但是假如为了对未来业务有更高的扩展性,能够在可见的时间内支撑起更广泛的业务需求,还是建议选择使用大数据组件。

上一篇:在网络强国战略思想指引下开创新时代网信工作新局面

下一篇:API或成为网络攻击最新技巧点