记日记是一种生活方式

昨天整理微信的收藏列表,找到一些儿子小时候的视频,发给老婆看。我们对一些细节已经记不起来了,视频还原了当时的场景。

在一个视频里,餐桌上摆了一碗韩国杂酱面,这和老婆的印象不一致。在她的记忆里,那些年应该不会吃这种饭,也没有地方可以买。

所以有必要每天都写日记,记录当天的所见所闻。若干年后,当记忆已经模糊,再翻看这些细节,可以了解当时的状态和情绪。

下班回家吃过饭,基本已经到了 8 点。在电脑前坐一天,又在地铁上站一小时,饭后只想葛优躺,刷刷各种信息流放松一下。疫情期间,老婆辅导儿子一整天的学习和其它课外练习,也非常辛苦,她希望我回家后可以多陪陪儿子。

我每天也规划了一个小时用来陪伴儿子,但不够自律,没有做到。希望从今天开始,尽可能做到。

每隔较长时间后,一个月或两个月,我都会集中几天玩王者荣耀或刷抖音。

连续刷几个小时抖音,我就有种莫名的感动,接着就是归隐田园生活的冲动。

短视频里,拥有不同才艺的人展示着他们的活力与激情,或抚弄乐器,或吟唱舞蹈,姣好的面容、帅气的脸庞、完美的身材,还有那么美丽的风景与世界……

衬托之下,我如此平凡,生活平淡乏味。

特别想回到小时候生活的地方,置身在湛蓝的天空之下,呼吸纯粹的空气,感受晨露湿土。

过一段,自给自足、无忧无虑的生活。

回归本质很简单

偶尔读到某一主题,相关内容像听从了召唤,奇妙地从各个地方涌现出来。早上看一本政治相关的书,下午在不同的地方就看到了几篇相关文章,如中苏核危机、中印冲突、古巴导弹危机等。

国家之间的博弈,和人与人之间的差不多。就那么几招:不卖你东西(非卖不可就提价),不买你东西(非买不可就加税),不借钱给你,没收你存在我这里的钱和资源,把武器架到你家门口吓唬你。到处说你的坏话,破坏你的形象,让别人都讨厌、害怕你,号召别人孤立你。支援你的敌人,送钱、送弹药,给他充值压制你。

反制方法也就那么几招,找别人贸易,找别人保护,你亮牙齿我就露爪子,实在不行就假装怂一下,说几句好话,时机成熟再报仇。

依附于人,很难展开博弈,对方随便在哪个领域封锁一下子,就受不了。

什么是你可以控制的

你能控制的是脑子,不能控制的是心,心只可以追随。

脑子也是一个器官,和手、腿、眼、耳、嘴没有本质不同,在功能用途上稍有特殊。经过科学的锻炼,可以很好地控制。

先从眼、耳说起。它们是标准的输入器官,看了什么、听了什么,大脑接收后,产生相信、怀疑两种基本反馈,相信和怀疑的程度,则是进一步判断和决策的根据。

商家为销售产品,重复让你看到、听到一些内容,我们称之为广告。其作用,浅层次地传达信息,起到告知的作用,如降价、促销等;深层次地植入一些观点、信念,改变人的认知,总的目的是影响购买决策。

由此产生了一系列的理论,如眼球经济、注意力经济等。既然是经济,那一定是有人利用我们的注意力赚了钱。

注意力如何不被利用?很简单!给眼睛、耳朵装个开关。

(1)非礼勿视、非礼勿听。孔子对此的定义,包含了一切负面的内容,如出轨、抢劫、杀人等,多数是娱乐、社会新闻。对于明星的关注,头条反复推荐的社会新闻,一律都关掉眼耳,就能过滤到一大部分的噪音。

这是反人性的。对安全的需求,人需要密切关注和安全有关的信息,以保证不受到伤害,这和鸟儿边啄食,边东张西望是一个道理。人们爱看社会新闻,表面是猎奇,实际是对安全的需要。在大陆生活,日常生活、旅行等安全是较有保障的,所以要克服基因惯性。

(2)没有用的不看不听。生活常识、养生保健之类,随着科技发展,有些已被证明过时或谣言,停止接收无效信息,把注意力保护起来,大脑开始运作的时候,你发现有些知识是可以想出来的,而不用靠外界输入。

(3)消费类的信息不接触。现在很多人对「种草、拔草」情有独钟。这是希望和奖励两种组合力的驱动,确定目标、行动、达成、即时奖励,和游戏的设计原理一样。其它目标没有这么一帆风顺,购物是对其它成就不能获得的一种满足性补偿。

(4)碎片化的东西,有选择的看和听。选择的原则在于碎片有没有归属之地,有没有一个结构化的框架去容纳它、连接它,使它成为整体的一部分。

控制了信息源的输入,是控制脑子的第一步。为了获得脑子的运算时间和算力。

时空观

我在北大学习的时候,有一位教语文的吕艺教授。忘了在课堂上,还是某一次聚会,有同学请教他一个对人生之路有所帮助的观念问题(这个同学可能就是我,但确实记不清了)。

当时他这样回答的:“遇到问题,要有时空观,拉长时间来看待这个问题,并且把它放在更广阔的环境中。”

这几天车坏了,坐地铁上班,又有时间看书,在《创始人手记:一个企业家的思想、工作和生活》这本书上,作者有一个更形象的说法。

想象一条横坐标,X 轴上,向左延伸,延伸到一颗受精卵的时候,向右延伸,一直到死亡那一刻。一个人站在某一点上,这个点和他现在的年龄有关。相较于历史长河,人的一生几乎就是短短一瞬。当遇到不决之事时,想象站在遥远的右端来看,是非对错与重要与否,就会清晰一些。

再想象一条纵坐标,Y 轴,向上无限延伸,飞机的高度,人就变得很小,继续向上,地球也变成了一个小点,到了太阳系、银河的高度,地球上这个小点,就不再重要。颇有《庄子·逍遥游》中大鹏眼下的世界。往回收,到人体的内部,存在于人体「宇宙」中的每一个分子都在积极新陈代谢,为身体生态稳定运行贡献能量。

这种空间的伸缩和时间的穿越观念,可使人的心态格局宽广起来,也会更加积极,经营好一生,更少留下遗憾。

以历史为尺度,绝大多数人是尘埃,以宇宙为尺度,我们都是尘埃。

加油少年

制定计划,固定几点干什么,在学生时代是可行的。工作环境中,如果把某件事的起止时间限定死了,很容易被其它事情插入打断,导致后面不能坚持。

一直以来,我都在寻找每天固定写作的好时段,早上、下午或晚上,固定好具体时段,只可以坚持几天,某天中断,后面就很难再持续。今天索性想,一天不择何时,只要写够一定时长,比如半小时,或许可以好坚持些。

每天要做的事包括,陪伴、教育、锻炼、更新网站、阅读、写作、编程、学习、工作任务。每项平均用 1 小时,也会用掉 9 小时,时间非常不够。执行力现如今是一种稀缺资源。

这也是职场中年的尴尬,35 岁以后,精力和注意力不如年轻时候,需要操心的事变多,既要照顾家庭、教育孩子,还得持续学习,跟上行业的节奏,不免力不从心。

星星

本周三,一颗小行星与地球擦肩而过,约为 16 倍地月距离。人类无任何感觉。

如果距离更近,地球是不是能捕获另外一颗月球?

对于星空,有几次较深的印象。

第一次是童年,姥爷给我讲牛郎织女的故事,带我到院子里,指着银河两侧两颗较亮的星星,告诉我识别的要点是牛郎星两旁有两颗小星星,三颗星近似成一条直线,那是牛郎挑的担子,里面装着的他的孩儿。银河从南到北,占据大半个天空,灰蒙蒙的一条亮带,令人心生敬畏。

再大一些,大概是七岁,在爷爷家过年,年三十晚上接神,要等东方三颗一线的星星移动到正南方的时候,点旺火、放爆竹,后来在自然课本中了解到,这三颗星属于猎户座,大概是猎户的腰带或盾牌。这是我认识的第一个星座。

还是小时候,去三姨家做客,晚上和表弟在院子里玩,每天都能看到西北方有一颗「扫帚星」,始终停留在一个位置,扫帚状的尾部异常明显。据说这是不好的征兆。现在仍不知道看见的是哪颗彗星。

我爸爱打麻将,我妈不在家,我自己一个人不敢在家睡,我只好跟着他出去打麻将。直到钱输光了叫醒我回家,大概是夜里四点,内蒙空旷平原,漫天璀璨繁星,流星接二连三,比我后来专门看的流星雨数量更多。我后来再没见过如此浩瀚的星空。

十三四岁,晚自习后先去学校食堂找我妈再回家。去食堂的路上,不经意间抬头,一颗星星炸裂,炸出拳头大的耀眼光芒,转瞬即逝,颇感震撼。并不能百分百确定是星星的异象,但应该是没有看错。如果是,这次爆炸不知道发生在多久之前,幸运地被我肉眼观察到。

高三复读那年,忘记有哪个星座的流星雨,夜里同学们哆哆嗦嗦地从宿舍出来,找一个不被楼房挡住的地方,呼市的光污染多少影响了观察,并没有看到多少。只记得,有一个男同学,蹲下来为他喜欢的女生拉好外套拉锁。

离开内蒙后,对星空就没有太多印象了。

好运气的秘诀

减少对外部事物的负面评价。

评价是我们对世界的反馈。通过我的观察发现,高段位的人,经常表现出的是正面评价,而低段位的人,总是会做出负面评价。

成为高段位,80% 的人靠运气,20% 的人靠能力。与其用尽力气提高一点点能力,不如多想办法提高运气。

人和世界的交互就是你给它反馈,它也给你反馈。

当你表达了负面的信息后,后续很难反射回具有粘合作用的正向能量。

很糟糕的事情,不做负面评价又该如何做呢?

用行动来代替评价。所谓话不要说绝,事要做绝。

牢骚、抱怨是典型的负面评价。

家有一老,如有一宝

中午,我半仰在副驾驶座上休息,天窗外天蓝清透,脑海中冒出一句话:

家有一老,如有一宝。

人随着年纪增长,见多识广,人生经验变得丰富,在关键问题上有着智者的见识。所谓「人老成精」。有些智慧只能经岁月的沉淀。可惜大多数人无法把对人生的领悟表达出来,宝贵的人生经验随肉体消亡。

我所能获得的知识和信息,超越上两代人。在处理人生问题上,未必有比他们更好的方法。

读过的书、走过的路、听过的故事,单位时间空间内,领悟了更多的智慧。

如果有了疑惑,希望不走弯路,但又咨询不了老人,那就找这个领域经验丰富的人,或者是思维能力强,认知层次高的人去交流。

老人的宝贵,还在于家庭凝聚力。老人是根,开枝散叶,大家是一棵树,根亡了,枝叶就散了。

数据存储那点事:数据湖和数据仓库

数据湖是个筐,什么都能往里装……物联网设备传感数据、网站、APP、社交媒体和业务系统的非结构化数据和结构化数据统统往里装。

数据仓库就不同了,既然是仓库,就需要事先规划,按品类分区,原料、半成品以及成品分开存储,以提高出入库、调拨的效率。

事实上确实如此,数据仓库(DW, Data Warehousing),通常分为:

  • 操作数据层(ODS, Operational Data Store)
  • 明细数据层( DWD, Data Warehouse Detail)
  • 汇总数据层(DWS , Data Warehouse Summary)
  • 应用数据层(ADS, Application Data Store)

另外还有一个公共维表层(DIM) 。

先不要被这些概念吓住,以后讲数据仓库建模的时候会详细说,先初步有个印象。

类比来看,这就是一个数据原材料——原材料半加工——半成品全加工——按需食用的过程。

  • 结构化的数据先原样存入 ODS 层。要用到数据采集、同步的技术,上篇文章有写到。这一步相当于把原材料拉进仓库里。操作数据层和数据湖有点像,但不包含半结构化、非结构化数据。
  • 明细层和汇总层,存的都是事实表,事实表又是个啥?就是反应了一项事实,比如谁什么时间花了多少钱购买了哪个商家的某个产品。这正好是一张数据表的各项字段。明细层存的是详细的事实数据,而汇总层,是按业务需求,做了一定的汇总后存放的数据,比如最近 7 天北京地区活跃的男性和女性用户数量,这是一行汇总数据,是根据明细数据汇总而成的数据。
  • 明细层的数据,是从 ODS 加工而来的,如何加工?最简单常见的就是 JOIN、UNION,写一些复杂的 SQL。这一步是半加工。
  • 我们建数据仓库,最终还是为数据分析(OLAP)、可视化等业务应用提供支撑。为了更好地调用、分析数据,数据是按主题分类的,就是后文要说的「面向主题」。
  • 公共维表层,存放用于分析时的那些维度,维度是衡量和观察业务的角度。比如省市区、年月日、用户等级等。

说清楚了数据仓库,再来回顾下数据湖和数据仓库最大的不同。

数据湖是一个庞大的混合存储库,一般是集中式的,可以存储所有结构化和非结构化数据。

而数据仓库,是一个「面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。」这是数据仓库之父Bill Inmon在 1991 年出版的《Building the Data Warehouse》一书对数据仓库所做的定义。

  • 面向主题,简单来说,就是按目的(比如分析的指标大类)把数据分类,比如电商的数据运营,会对商品、会员、销售、物流等各项指标分析,可以按以上分类把数据分表存放。
  • 集成的,意思是多个供应商(业务系统)的货(数据),我们都有序地存放在一个中央仓库(数据仓库)里,康师傅和统一的方便面,我们都放在方便面的货架里。
  • 相对稳定,这是区别于 OLTP 数据的特点,比如一条订单数据,状态会不断变化,有下单(待付款)、付款(待发货)、发货(待确认收货)……等一系列更新(UPDATE)过程,这就是不稳定,而存入数仓的数据,一般不会再更新。
  • 反应历史变化,是指要把反映过程的数据尽可能地存储下来,以便支撑更为精细的分析。这样一来存入的数据会很多,以上面的订单数据为例,在 OLTP 中只有一条记录,可能只有状态字段和时间字段更新,其它商品、用户字段不发生变化,而在数仓中,会把每次更新都存下来,这样会有多条数据。而「拉链表」就是优化这种存储场景的一种方法(以后详述),可以有效降低存储成本。

数据仓库这种「数据集合」,需要根据业务的需要,事先规划定义数据结构,因此它可以用传统的关系型数据库来搭建,因为要存储很多历史数据,所以要对单表的存储容量和性能有所要求,传统数据仓库很多都是用 Oracle 搭建的。

那么说数据仓库和大数据又有什么关系吗?数据仓库是种方法论,大数据能提供技术手段。比如 Hive,就是大数据里用来搭建数据仓库的好组件。

数据湖是不是就是一个简单的混合存储库?也不是。数据湖并不是存储方案,它的目的也是用于分析和指导决策。

  • 数据湖本身要支持运行不同类型的分析(如 SQL 查询、大数据分析、全文搜索、实时分析和机器学习),不需要将数据移至另外的分析系统。
  • 数据湖要能够对数据进行爬网、编目和建立索引来让用户了解和使用湖中的数据。这项功能的难度很高,因为数据湖中的数据更为复杂。

数据仓库可以充当用户可信任的「单一信息源。」数据湖则是以更丰富的数据格式和类型,以及更全面的分析工具,提供更广泛价值挖掘的可能性。

对于当前大部分公司的数据应用水平来说,应先建立规范的数据仓库,这是对理念和方法的考验,而不是技术和手段(用关系型数据库就能建立)。数据湖,在更先进的技术屏蔽了复杂的存储、编目和底层分析工具后,将会是趋势,可逐步关注。

关耳爷

微信号wei-talk

理解大数据本应很简单:什么是数据集成和数据治理

本文是《极简大数据》系列第二篇。

不管出于什么目的,假设你要利用一批数据。那么你期望数据是什么样的?

答案很简单:全、快、对。

当然也可以换三个词:全域数据、实时数据、高质量数据。

我个人还是喜欢上面接地气的词。

如果你关注大数据,或者是做数据产品经理,应该了解数据集成和数据治理。

它们都是手段,最终为数据的使用而服务。

经过集成和治理后的数据,我们期望是能高效使用的、高质量的、高价值的数据。

实现高价值,前提条件是数据要全和快,这是对数据集成能力的要求。

数据的主要来源有三种,一是业务发生后系统产生的数据,存放在关系型数据库或 NoSQL 数据库中,比如在淘宝剁手下单,就会产生一条订单记录,谁什么时间在哪个店铺购买了一件什么商品,付款多少钱等。

第二类是系统服务环境产生的日志文件,如 Nginx、Apache 等对于 HTTP 请求和响应生成的记录文件,在浏览器里输入淘宝网址回车,淘宝的服务器就记下哪个 IP 在什么时间访问了淘宝,打开了哪几个页面,停留了多长时间,客户端有什么特性(如分辨率大小、浏览器版本、操作系统版本等)。

第三类是从客户端(浏览器、APP)采集到的用户行为日志文件,称为埋点日志,是程序员开发出来的一小段程序,可以采集到你做了什么动作,如点击商品加入购物车、切换到评论页面等,便于运营人员更好地分析用户如何使用应用。

当然数据还有更多的来源和格式,如传感器采集到的数据等,可以看这一篇

这三类数据都要能从源服务器上采集过来。有的数据是结构化的,如关系型数据库,有的是半结构化的,如 NoSQL 数据库、日志文件。更大的范围来说,图片、音频、视频等非结构化数据,也要能够支持采集。

这是对所能采集的数据类型的要求。在采集方式上,还要能支持全量、增量采集。

全量采集就是每次都完整拉一遍。缺点很明显,需要带宽流量和时间,不符合对快的要求;增量采集,程序要记得每次采到了哪里,采过的数据如果某些发生了变化,也要能感知,在下一次采集时把变化的数据带回来。

传统上,增量采集可以用时间戳、标志位、触发器等方式搞定,这需要数据源的配合,有时候,我们没有条件干涉数据源。

大数据技术下,对于关系型数据库,可以采集数据库的日志,再解析日志还原数据,实现增量的流式采集。如 MySQL 配置好 Binlog 日志,通过 Kafka 把日志实时发送过来。其它数据库也都有类似的方法。

对于关系型数据库,Apache 社区有开源组件 Sqoop,它主要用于在关系数据库和Hadoop之间传输数据。对于日志文件的采集,开源组件有 Flume、Logstash 等。

不仅多种类型的数据能够采集,还要速度快,讲究实时、准实时,达到秒级的同步。

数据时效性的价值不言而喻。数据一旦产生,就能感知和传输过来,与之前采集的数据增量合并形成最新最完整的数据。

只有足够快,才能不错过一些重要的分析和监控,许多实时的数据业务对此都有要求,如风控、推荐等。

数据量大,要求采集吞吐率高,而吞吐率和延迟(快慢)又是一对矛盾体,意思是说,大数据规模下,想要实时,是很有挑战的,例如天猫双 11 活动的大屏,看着只是几个数字在变,这背后的技术是相当硬核的。

再来说数据的质量问题。

高质量,代表数据不多、不少、不错、一致。

展开来说就是不重复冗余,没有其它数据混杂在内造成干扰;数据不残缺,行列记录都是完整的;标准一致,代表相同意义的数据字段类型、格式最好都能统一。

这些都是数据治理功能所要解决的问题,对已经是结构化的数据从库、表、字段不同级别进行标准和质量的监控、基于规则模型去校验和纠错等。

对应的就是数据标准管理和数据质量管理。

治理的另一个范围是数据安全,包含敏感和隐私数据不能泄露,数据不能被非法访问,对数据访问进行监控和审计。涉及到脱敏、数据权限和监控审计等功能。

在 DAMA(国际数据管理协会)中,对数据治理定义了九个方面的内容。

元数据也是很重要的一部分,元数据是指「关于数据的数据。」就是全方位、多角度地描述一份数据所形成的数据。就像简历之于人的关系,如果简历内容十分丰富,那我们就可以全面地了解这个人。

对于数据也是一样,从技术(数据格式、存储大小、更新时间……)、业务(描述什么业务的数据,属于哪个信息系统等……)、管理(谁在负责该数据、安全等级……)多个角度充分地描述数据,那我们就能对这个数据有清晰的了解和认识。

我们可以通过元数据快速查找和定位数据,也可以通过分析元数据,看清数据的来龙去脉,它产生的过程,以及它对别的数据的影响,这就是所谓的数据血缘。

总结来说,数据集成和数据治理的功能范围,就是为实现上述目标所框定的。

首先确保可用性和性能,真正能把多源异构的数据接入进来,保证传输的可靠性。

原始数据落地之后,需要对它进行有效的治理,通过元数据、数据标准、数据质量、数据安全等多种手段,确保数据是精确、完整、有效的,以便于下一步数据能更好地利用。

关于数据集成和治理,我们先明确目标和架构,以后的篇幅我会细讲里面每个小的模块。

关耳爷

微信号wei-talk

— 你也可能感兴趣 —