【QCon 上海 2015】数据分析与移动开发工具专场重点回顾

阅读数:683 2015 年 10 月 20 日

话题:数据库安全DevOps大数据语言 & 开发架构AI

QCon 上海 2015全球软件开发大会已经圆满结束了。15 日上午的 Solution Track 专场以“数据分析与移动开发工具”为主题,干货连连不虚此行。参加技术分享的厂商有:TalkingData SDK、IBM、汽车之家、明略数据、容联云通讯、亲加通讯云等等。具体内容一起来看!

高性能数据分析平台架构实践

大数据时代来临,传统关系型数据库一直是业界的主流解决方案,但是最近这些年互联网发展非常快,数据量也是爆炸式的增长,优化传统型的数据库很难满足大数据的需求的。因此一个非关系性数据库 NoSQL 的全新解决方案就出来了。IBM 资深售前工程师孔皓介绍说,这种解决方案的特点一是存储模式灵活简单,不需要一些表的结构和存储模式。二是它面对大数据的需求性能可以有扩展,为新的数据扩张节约了一些成本,而且架构也非常的灵活,对于主流的大数据引擎支持性能也很好。

SepuqiaDB 目前用的是传统的一些典型的 MPP 大规模的混合型架构,应用节点负责分布式系统的任务分发,进行数据的存储和操作。节点上可以做一个动态的扩容。文档内容可以存储结构化、非结构化和半结构化的数据,而且可以统一存储。对于上层的一些大数据架构也非常好,有一些组建,可以直接连接过来进行查询和计算以及存储数据。

在 SepuqiaDB 这样的高性能数据分析平台架构上,还涉及到一些硬件层面的考虑——Power Linux 服务器。Power Linux 是基于 Power 架构的 Linux 服务器。其技术特色首先是一个 CP 并发多线程技术。线程有一些等待和考虑的时候,它同步的这个技术同意另外一个线程调动指令里面的单元,在此基础上,最新一代数据芯片 Power 8 做的是 8 线程,当它单个 CPU 支持 12 核的时候单核可以做到 96 线程的海量资源。

在实际应用中,SepuqiaDB+PowerLinux 的架构给客户实现了 50 个物理节点,用了 1PB 的空间,存了用户 15 年的历史数据。这样的一个系统能让用户最后得以很方便通过移动端、网页端查询一些交易地址。

Hadoop安全体系以及IT系统风险的解决方案

作为一个 IT 系统来说,面对的风险分为外部风险和内部风险,外部风险是指恶意用户的入侵,但是对于大平台来说,外部风险不是那么的严峻。可是内部风险确实是 Hadoop 面临的一个很大的问题,这不仅仅是 Hadoop 的平台,所有其他的 IT 系统都有这样的风险。

明略数据 BDP 产品经理杨威在演讲中就说到,站在数据安全的角度来说,缺乏 Hadoop 平台的数据是有很多隐患的,这里面有四点,第一就是它的 Simple 的身份验证机制,这是一个非常天真的验证机制,会造成非常严重的后果。另外文件默认情况下是基于本地 Linux 的用户组信息的。第三就是这个平台上的数据很多时候大家都是没有做授权访问控制的,或是没有做这种相对细粒度的访问控制,因此用户可以通过一些不经授权的手段获取一些数据。最后一点也是最关键的,即使我们前面做了这些授权认证等等,而 Hadoop 本身是一个开源的软件,它低层文件的格式都是公开的,如果被偷走了就很容易获得内部信息。

Simple 身份验证机制一是认为所有的系统内的节点都是可信赖的,二是在文件系统的权限上缺乏有权限的控制,这两点都是造成信息泄露的主要诱因。

解决安全问题可以考虑以下几个方案:

  1. 身份系统授权访问
  2. 服务的授权访问
  3. 文件的授权访问
  4. 开放数据的访问
  5. 行为的审计
  6. 数据加密
  7. 传输加密
  8. 安全通讯加密 
  9. REST 加密与认证

社交大数据挑战实践

环信大数据技术总监、首席科学家黄智的演讲内容包括四部分:第一是系统功能和逻辑架构的介绍。第二是环信的大数据社交模型,从技术和实践角度讲解社交大数据模型能给用户带来什么样的价值。第三是性能和扩展性的分析。第四是分享一些比较重要的坑点和难点,以及解决方案。

环信系统首先是基于云计算的社交大数据分析工具,工具本身就是一个中性的、没有用户许可不会接触一些数据的工具,在用户的许可下用户可以使用这套工具,提供一些分析功能。

环信提供一些功能来帮助实现一些模式,面临的下一个技术挑战就是要支持过亿的数据分析,也要做深度的趋势挖掘。这意味着系统要从性能和功能两方面同时满足要求,达到这种目的这个系统要有一个比较完美的水平扩展性。环信的时时响应速度达到秒级,我们有一个快速的准确度,我们的用户有不同的需求,这个系统要求我们同时满足不同的需求,在分析的基础上,用户还可以做一些采取的决策行动,比如发起一个警报,触发业务系统的其他响应,在这些指标分析的基础上,我们可以定制不同的机器学习算法,利用已经计算的学习指标和用户提供的相关数据,我们可以建立相关模型进行预测和预警。

环信大数据分析系统架构从下到上可以分成四个层次:数据、分析、基层、决策。分析的数据都存在数据库里面,使用 Cassandra 和 MySCL,上面是分析层,使用的是数据分析计算和 Spark 计算平台。分析层之上是集成层,这个就像一个黏合剂把各个组成部分粘结在一起。根据建模的规则计算各种类型的社交指标,任务调度根据分析任务和执行逻辑的优先秩序和依赖关系完成这个结果。

Java Instrumentation技术实践应用性能监测

听云研发副总裁、架构师 廖雄杰分享的主体是 Java Instrumentation 的技术实践的性能监测,也就是如何用这个 Java Instrumentation 的技术来为应用做检测。

应用系统中常见的一些组件包括:RDB、NoSQL(Redis、Memcached、MongoDB)、API/RPC、云服务和 MQ。使用这么多的组件,一旦系统出现问题,就会出现页面打不开。所以对于这么多的组件,还是要一个监控手段的。

传统的监控手段已经落后了,下一代监控技术就是 APM(Application as Monitoring),这个东西就是一个深入应用代码的性能监控。这个自动化 APM 监控,只有在必要的位置嵌入监控代码——数据库、NoSQL、HTTP、MQ 和可能存在性能瓶颈的业务代码。

讲到监控的原理,肯定会有人认为嵌入代码是在增加原代码的负荷,性能肯定有一点损失,如何使这个性能不受这个监控代码影响太多。理论来说,嵌码的时候会嵌入几个最不容易影响性能的标准位置,比如说标准组建,NOSQL、HTTP、CPI,当然也可能通过其他手段来调动,这些才能减少对性能瓶颈的影响。

本次 QCon 上海 2015 大会“数据分析与移动开发工具”专场的分享内容主要是围绕分析系统和开发工具的技术讨论,涉及到了目前开发市场上的最新趋势和方向,Q&A 环节讲师为在场的参会者们答疑解惑,实现了 QCon 大会的办会主旨。