愿为专业付费

最近这段时间在思考重新构建自己的一线技术敏感度,一直希望大数据方向有一些积累,经过一段时间的研究和学习,大概摸清楚了大数据的体系架构,在庞大的专业术语库中厘清了主干与分支,决定深入在一两个大数据组件进行学习和研究,主要聚焦在 HBASE 和 Spark 等两个代表性组件进行学习。
按照正常的学习方式和路径,需要在本地安装相关的组件,我决定先从 HBASE 下手,我的痛苦过程也就开始了,先说一下背景

1、因为 HBASE 依赖 Hadoop,所以必须现在本机装好 Hadoop 的伪分布式环境
2、HBASE 的集群依赖 Zookeeper,所以也必须提前安装好
3、HBASE 本身也需要实现伪分布式安装,并与 Hadoop、Zookeeper 的版本、配置做好匹配和联动
4、HBASE 本身的 NoSql 写法还是太繁琐,所以一般会与 Phoenix 进行配合使用,还需要下载Phoenix 组件进行配置

这个过程对于熟手来说也相对简单,对于没有经验的人来说,却有不少的坑,而且排查起来难度不小。

首先,Hadoop 与 HBASE 的版本匹配就让我欲哭无泪。
其次,我的电脑只有 8G 内存,这么庞大的大数据软件服务安装启动以后,电脑几乎慢的没法运行,这还是没有跑任务的情况下。
再次,即便环境安装好了, Springboot开发框架与 Hadoop 体系 jar 包的依赖冲突也让我纠结到怀疑人生。

总之,作为一个有着多年开发经验,自诩也算是爱折腾技术的优秀工程师,面对这么一整套比较高门槛和琐碎的体系,也真是有点受不住。

而且这么多时间耗在了环境的搭建和调试上,我都忘记了自己的初心,本来我是想应用这些技术体系进行业务开发,而现在除了一个跑不动的本地环境,什么都还没开始动。这种沮丧可想而知。

折腾了 2 天后,一方面实在受不了这耗神的细节,另一方面本机运行的龟速也让我实在没有信心继续下去。偶然想到阿里云肯定提供了类似产品,直接购买一个产品服务使用不是更便捷么。想到马上就行动,阿里云产品矩阵中 HBASE 赫然在列,而且提供了单机版供测试学习使用。我大概花了不到 1 个小时,就完成了相关操作,拥有了一台自己的 HBASE 数据库,整个体验非常棒,那些闹心的操作离我很遥远,大概只做了如下几个重要步骤:

1、创建 VPC
2、在 VPC 可用区中选购HBASE
3、开通 HBASE 的外网连接地址,设置访问白名单
4、下载阿里云提供的 client,配置连接地址,即可连接

这个过程和之前使用 msyql 等服务组件没有任何区别。完全不用考虑自己搭建大数据体系的那些莫名其妙的坑。
而且阿里云提供了详尽的产品文档,说明了 HBASE 适合的使用场景,常见的技术组件如何搭配,例如

  • Hbase+spark
  • Hbaase + Phoenix
  • Hbase + Solr
  • Hbase + Ecs
    这些资料极大缩短了我的探索过程,是相当宝贵的经验。

说了这么多阿里云产品的优点,选购方案与自建方案相比,唯一的缺点是,在我的认知里,阿里云方案太贵了。即便写这篇文章的现在,我还是觉得太贵,一套阿里云的HBASE集群,一个月大概 2-3K 的费用。但是从认知突破的角度来讲,它带给我的专业度,似乎又值得这个费用。按照这两天所做的无用功,和由此带来的挫败感,按工时来算,其实已经远远超过阿里云这个产品一个月的费用了。

如果在认知层面能突破禁锢,真正做到愿意为专业付费,那节省下来的时间,因专业而拿到的好结果,因好结果而获得的好心情,其实远远大于产品服务本身的费用。

这个观点相信很多人都认同,但是当面临真正要马上拿出真金白银的时候,大部分都会像我一样犹豫,我觉得如果认定了这个事情要去做,而且有更专业服务可以直接使用,那就毫不犹豫的使用专业服务吧。