首页 文章 精选 留言 我的

精选列表

搜索[个人知识库],共10000篇文章
优秀的个人博客,低调大师

大数据行业发展的九大痛点(个人观点)

前言 尽管在Hadoop与NoSQL部署方面做足了准备,同样的问题仍然一次又一次反复出现。现在业界是时候尽快搞定这些麻烦事了。 有时候一艘巨轮的侧方出现了破洞,但业界却决定坐等船体下沉、并把希望寄托在销售救生艇身上。 也有些时候,这些问题似乎并没到要闹出人命的地步——类似我家里浴室的状况,只有往一边拧龙头才会出水。过一阵子我可能会找机会修理一下,但事实上这个问题已经存在了12年之久了。 而在面对大数据业务时,我可以列出九个长久以来一直令人头痛的问题,时至今日它们依然存在着并困扰着无数用户。 分享之前我还是要推荐下我自己创建的大数据学习交流Qun531629188 无论是大牛还是想转行想学习的大学生 小编我都挺欢迎,今天的已经资讯上传到群文件,不定期分享干货, 包括我自己整理的一份最新的适合2018年学习的大数据教程,欢迎初学和进阶中的小伙伴。 大数据痛点一号:GPU编程仍未得到普及 CPU的使用成本仍然较为昂贵,至少与GPU相比要贵得多。如果我们能够面向GPU开发出更理想的执行标准以及更多表现出色的驱动程序,那么相信一个新的市场将由此诞生。就目前来讲,GPU的使用成本优势并没能得到很好的体现,这是因为我们难以针对其进行编程,而且几乎没办法在不建立特定模型的前提下完成这项任务。 这种情况类似于,有些人希望编写出类似于ODBC或者JDBC的代码来处理某些高强度工作,并说服AMD或者英伟达将业务着眼点放在显卡产品之外。假设我们原本已经习惯了使用Spark实现各类计算任务,而且压根不觉得这么做有什么问题; 但仿佛在一夜之间,其他人都开始构建所谓“GPGPU”集群,这自然会让我们有点措手不及之感。 不少技术人员都开始在这方面做出探索,但要想真正让成果实现市场化,我们至少需要搞定两大竞争对手——AMD以及英伟达,也许再加上英特尔。除非它们愿意联手合作,否则如果继续像现在这样把技术保密看作市场成功的实现途径,那么问题永远也找不到理想的答案。 大数据痛点二号: 多工作负载缩放 我们拥有Docker。我们拥有Yarn。我们还拥有Spark、Tez、MapReduce以及未来可能出现的一系列技术方案。我们还拥有多种资源池化实现工具,其中包含各类不同优先级及其它设定。如果大家选择部署一个Java war文件,则可以在PaaS上进行“自动伸缩”。但如果大家希望在Hadoop上实现同样的效果,那么情况就不太一样了。 再有,存储与处理体系之间的交互该如何处理?有时候大家需要以临时性方式对存储资源进行扩展与分发。我应该有能力运行自己的“月末统计”批量任务并将Docker镜像自动部署到任意指定位置。而在我的任务完成之后,系统应当对其进行反部署,并将资源重新分配给其它工作负载。应用程序或者工作负载应该根本不需要在这方面浪费太多精力。 但目前这些要求尚无法实现。我希望大家习惯了编写Chef方案与脚本,因为这是达到以上目标的惟一办法。 大数据痛点三号: NoSQL部署更令人头痛 为什么我已经能够利用ssh与sudo将镜像导入Linux设备、为其指定Ambari并安装像Hadoop这样复杂度极高的项目,但却仍然需要在MongoDB以及大部分其它数据库的部署工作中浪费时间与精力?当然,我也可以编写Chef自动化方案,但恕我仍对此无法认同。 大数据痛点四号:查询分析器/修复器 当初在使用JBoss的时候,我曾经对Hibernate以及后来的JPA/EJB3进行过大量调试。具体来讲,主要工作包括查看日志记录、找出存在n+1类查询的位置、将其纳入join并移除可能影响运行效果的糟糕缓存配置。 但有时候情况又完全相反:我们可以将每一套需要的表添加到系统当中,但其返回速度却慢得让人抓狂。有时候,我打算在复杂程度更高的系统之上查看Oracle Enterprise Manager及其分析结果,但返回的报告却完全是一堆胡言乱语——这意味着其中存在问题。不过我可以同时着眼于两套始终共同协作的表,并据此找到分析当中存在的规律。我甚至考虑过利用编程方式解决问题。 而现在,每次对NoSQL系统进行调整时,我都会发现上述问题以不同形式表现出来:要么是跳转次数太多、要么是查询太过复杂,有时候我们的索引无法与where子句(即范围合并)相匹配。简而言之,我们将大量精力投入到了糟糕或者复杂查询的优化当中,但除了开发者培训课程、我们似乎从来不会对这些查询本身提出质疑。这套系统似乎有种魔性,它同用户的关系类似于:“嘿,你发来了这些查询,我认为它们看起来应该像这样……” 好吧,我猜很多从业者都以完成这些本可以通过自动化方式实现的工作为生。必须承认,我很庆幸自己已经渡过了基层工作时期,再也不用为这些琐事烦恼了。 大数据痛点五号: 分布式代码优化 我估计Spark当中的大量小功能及小设定会带来第四点里提到的各类问题。在编译器方面,大家可以编写优化器来检测循环内的非依赖性操作,同时自动对其进行提取与并行化调整。我在分布式计算领域经常会见到这类情况。所谓“数据科学家”们编写出的Python代码相当垃圾,根本没办法有效进行问题分配,而且会造成大量不必要的内存浪费。在这种情况下,需要由技术从牛挺身而出,尝试理解前面那位“科学家”的想法并进行优化。 问题在于,上述状况几乎跟大家在编译原理书里看到的反而实例一模一样。我猜随着技术的不断发展,未来Zeppelin甚至是Spark本身会站出来帮助大家修复糟糕的代码,并保证其与集群顺畅协作。 大数据痛点六号:分布式名不副实 我得承认,我对Hadoop的第一印象就是在Hive当中输入select count(*) from somesmalltable。我觉得这种使用方式真的非常差劲。大家会发现其中存在问题,并意识到其分布效果并不理想。有些朋友甚至不必参考其它数据(例如行数)就能发现我们没办法实现负载分布。通常来讲,这些只是整体工作当中的一部分(例如查找表),但无论我们实际使用的是Hive、Spark、HDFS还是YARN,其都会首先假设所有问题都已经得到切实分发。其中部分工作需要尽可能避免被分发,因为这样能使其运行速度更快。最让我受不了的就是用select * from thousandrowtable这样的操作拖慢MapReduce任务的运行速度。 大数据痛点七号:机器学习映射 在具体实例当中,我们都能轻松分清集群化问题、聚类问题或者其它一些归类工作。但似乎没人愿意解决真正有难度的部分——对业务体系中的常见部分进行映射、描述问题并通过描述映射找到应当使用的具体算法。 除了金融行业之外,只有10%到30%的企业能够保持有不同于行业常规情况的特色——换言之,我们可以将销售、市场推广、库存、劳动力等因素映射至一套通用模型,而后描述出适合使用的算法。这项工作不仅会改变我们处理业务的方式,同时也能极大扩展市场的整体规模。我们可以将其视为一种面向大数据的设计模式,只不过其更多是在强调业务方面的内容。 大数据痛点八号:安全性 首先,为什么我们只能通过Kerberos实现单点登录?云Web环境之下根本没有类似于Kerberos的方案可用。 其次,厂商之间奇怪的竞争方式对Hadoop造成了极大的扭曲,而这对任何人都不是件好事。在涉及到基础性身份验证及授权层面时,我们不得不使用两套完全不同的堆栈,才能为Hadoop的全部组成部分提供安全性支持。加密方面的产品竞争我还可以理解(各类方案都在以更小、更快、更强为发展目标),但无论是选择Ranger、Sentry或者是其它什么方案,为什么我们就不能拥有一套足以涵盖全部Hadoop项目的验证机制?公平地讲,大数据领域目前的状况比NoSQL还要糟糕; 随便拉来一家宣称“我们热爱开源”的企业都能在自己“企业级”专用版本的LDAP集成部分当中塞进几百行开源代码。 大数据痛点九号:提取、转换与加载 提取、转换与加载(简称ETL)可以说是每个大数据项目当中悄无声息的预算杀手。我们都很清楚自己到底需要利用大数据技术做些什么,但相较于将注意力集中在业务需求身上,现在我们首先得搞定Flume、Oozie、Pig、Sqoop以及Kettle等等。之所以面临这样的情况,是因为我们的原始数据往往处于混乱的状态。但真正令人惊讶的是,没有哪家厂商愿意拿出一套无缝化处理方案来。虽然解决这类问题没办法让你拿到诺贝尔奖,但却能够切实帮助到广大大数据技术用户。

优秀的个人博客,低调大师

个人或是公司如何选择适合自己的云服务器?

近年来,国内云计算的快速发展催动了一个新时代的产生。云计算正不断渗透到各行各业,不管是大型企业还是中小型企业都在争相拥抱云。与此同时,企业内部的IT基础架构正在发生变化,云服务器作为这个时代的产物早已引起人们的关注。 云服务器又叫云计算服务器或云主机。云服务器使用了云计算技术,整合了数据中心三大核心要素:计算、网络与存储。云服务器基于集群服务器技术,虚拟出多个类似独立服务器的部分,具有很高的安全稳定性。 因为云服务器是新时代产物,大多数中小企业对其了解并不深刻,在选择过程中存在很多问题,可能会导致自己的业务在运行过程中出现故障。 对于中小企业来说,在选购云服务器时应该从自身需求出发,应该考虑以下问题: 从需求出发,你是否真的需要云服务器? 中小企业在选择购买云服务器之前,需要对自己的业务需求进行评估,看看自己是否真的需要使用云服务器。 通常情况下,云服务器提供了比传统物理服务器更高的性价比,能够支持企业实现快速分布式部署。如果你对这些方面有非常高的要求的话,可以考虑使用云服务器。 另外,根据云服务器自身的优势,对业务的弹性扩展能力有较高的要求,或者对系统高可用性以及对数据进行快速恢复需求的用户来说,云服务器也是其理想的选择。 云服务器支持的应用比较广泛,包括电子商务、企业网站、OA系统、企业ERP/CRM管理软件、论坛和SNS等等。 选购的云服务器是否具备了必要的功能? 中小企业在采购云服务器之前需要具备一些相关知识。比如云服务器能够实现哪些有别于传统物理服务器的功能? 较传统物理服务器来说,云服务器更具有安全性。因为云服务器具有防ARP攻击和MAC欺骗功能,可进行快照备份,保证数据永久不丢失。而且云服务器比传统的物理服务器更加可靠,因为其是基于服务器集群的,因此具有较高的硬件冗余,能大大降低故障发生率,而传统的服务器会因为资源占用过高或带宽不足时出现宕机情况。 另外,云服务器还具有故障自动迁移功能,如果一台云服务器出现故障,其上面的应用会自动迁移到其他云服务器上面,从而保证业务能够正常运行。 在数据备份方面,云服务器能实现快照备份,当主机出现故障时,能够一键恢复故障前的所有数据。 另一方面,企业用户可以根据自身需要实现实时在线增添服务器配置,一键轻松实现服务器扩展。而过去,企业则需要重新购置新的服务器,然后进行安装部署等。云服务器帮助企业免去了这些麻烦,轻松实现平滑升级。 你的云服务器提供商选对了吗? 中小企业在购买合适的云服务器时需要考虑到厂家这一重要因素,尽量选用知名、正规的云服务器提供商,同时要做到货比三家。 目前很多IT行业服务器巨头已经开始提供有质量保证的云计算产品。互联网企业、电子商务、论坛和社交等中小企业均可以根据不同需求选择合适自己的云服务器。 另外,不得不提的一点是服务商的售后服务情况。 最后,中小企业在云时代的业务发展迅速,因此在购买云服务器时既要考虑到目前运行的日常应用需求,又要立足于企业未来几年的业务发展趋势,避免因升级空间不足而造成性能瓶颈。

优秀的个人博客,低调大师

美国部分Android手机预装监控软件会泄漏个人数据

据外媒报道,预装在某些Android手机上的软件,被发现会向国内的服务器发送设备上的用户元数据。安全研究人员Kryptowire指出,该设备制造商的软件会每隔72个小时(当连接Wi-Fi时)发送包含用户地理位置、联系人、短信等在内的敏感数据。根据开发商上海Adups技术公司公布的信息,其代码已在7亿设备上使用。 美国厂商BLU,据说也在12万部手机上安装了该软件。为了消除“监控”的嫌疑,其近日已发布了一次更新。开发商上海Adups技术公司表示,在BLU的设备上安装该软件是一个“失误”: 该软件包本来就不是专门面向美国地区而制作的。该公司应某国产厂商的要求打造了该软件,旨在提供客户支持和打击垃圾短信/骚扰电话。 目前不清楚有多少国际版手机被安装了这款软件,开发商拒绝透露购买了该软件的厂商名称,但中兴和华为都在其客户列表中。对此,美国国土安全部的建议是“与公共和私营部门合作拿出适当的策略”。 BLU Products向40多个国家和地区售出了超过3000万设备,此外该公司也推出过诸多iOS配件/保护套产品,但它们未受到该监控方案的影响。最后,该公司当前被加拿大黑莓以侵犯八项专利为由告上了法庭。 本文转自d1net(转载)

优秀的个人博客,低调大师

微软升级App Studio 让每个人成为程序员

【大咖・来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》 据11 月 2 日消息,微软官方商城 Windows Store 并不是很有人气的应用市场,微软也知道这点。该公司一直在寻找新的吸引开发者的方法。过去,微软制作用于将 iOS 和 Android 应用移植到 Windows 的工具,并建立通用应用系统将所有 Windows 应用集中到同一平台。 现在,微软升级了 App Studio,允许用户制作应用、应用范本和提交从网络浏览器发布的应用——无需安装 Visual Studio 或编写代码。Windows App Studio 的无代码工具无法帮助你制作视觉惊艳或独特的体验,但能在相当短的时间里制作出功能性应用。新项目可选择一些基础模板,但多数不是在应用中显示网页,就是为 YouTube、Flickr 等服务提供 API 管理。 你也可通过插入一些 HTML 制作自己的片段,但这有点破坏了无代码的切入点。本文作者也使用 App Studio 在不到 10 分钟里制作了一个简单应用:跟踪他自己博客和 YouTube 的社交活动的“升级”应用——分别调用 Tumblr RSS 推送和 YouTube 浏览器 API。虽然该应用在查看 Twitter 更新上并非更有效,但确实是一款功能性应用。此前他从未想过能开发应用,但 App Studio 帮他完成了每一步,真的很容易。 App Studio 可能不会帮助你开发出有业务前景的应用或游戏,但制作简单的伙伴应用相当不错。更好的是,这种应用是可运行在 WP 设备、平板、台式机、笔记本和物联网设备的通用应用。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册