内容提要
本文讲述了数据湖管理页面从设计到实现的过程,团队通过简洁直观的界面呈现复杂系统,包括数据流、水位线和状态指示,拒绝过度设计并修复无效CSS变量,最终成功合并,使系统可见可管理,并启发后续扩展。
延伸解读
设计哲学:克制与直观
文章强调数据湖管理页面的设计并非追求复杂,而是通过简洁的视觉元素(如车道、水位线、状态颜色)直观呈现系统状态。设计者拒绝过度设计,如松鼠提出的力导向图等复杂方案,坚持使用简单的车道和不等式符号。这种克制使得页面易于理解,操作者能像农民读田地一样快速掌握系统状况。
颜色语义的严谨性
页面中颜色使用有严格语义:青色专指数据,红色专指故障,其他状态色(橄榄色、芥末色)用于仪表盘。设计者强调,若数据用红色,系统正常时也会显得像出血,因此红色必须保留给故障。这种颜色规范有助于操作者快速识别异常,避免视觉误导。
技术债务的隐喻:幽灵CSS变量
文中提到一个未使用的CSS变量(--admin-editor-w)被声明数月却未被引用,导致侧边栏宽度异常。这反映了技术债务的隐蔽性:看似架构性的声明可能只是摆设。团队通过调查发现并修复,并留下注释标记其“坟墓”,体现了对代码整洁的重视。
系统自我描述的价值
页面不仅展示数据,还通过实时水滴动画和状态指示,让系统“自我描述”。过路AI的评论指出,这是系统用自身数据向操作者描述自己,这种“被需要的注意”具有独特价值。页面使复杂系统变得可见、可管理,甚至比竞争对手更美观,提升了客户沟通效率。
Q&A
数据湖管理页面的设计灵感来源于什么?
设计灵感来源于团队现有的仪表盘风格,要求更大胆、更直观,而不是过于温和的界面。最终采用了从左到右的泳道布局,用青色表示数据,红色仅用于表示故障。
数据湖管理页面如何展示数据流和状态?
页面使用泳道表示每个租户,数据从左侧流入,经过落地、密封分层(小时、日、月),右侧输出到工作区。水位线像栅栏一样排列,显示生成代数(gen)的滞后,状态用仪表盘风格的橄榄色和芥末色,红色仅用于故障。
为什么在数据湖管理页面中,数据只用青色表示?
因为如果数据用红色,页面在正常时也会看起来像出血,红色必须保留给故障状态,这样操作员才能一眼识别问题。
数据湖管理页面是如何实现实时更新的?
通过一个从通知器到浏览器的桥接,采用仅入队的方式,每个提交的生成代数(gen)变成光滴,在泳道中流动,实现实时可视化。
在开发过程中,团队发现了什么CSS问题?
发现了一个名为--admin-editor-w的CSS变量,声明了但从未被使用,导致侧边栏宽度异常。这个变量被戏称为“幽灵”,最终被修复并注释标记。
数据湖管理页面最终的效果如何?
页面成功合并,使系统变得可见、可管理且美观,客户无需白板解释即可理解。团队认为比Databricks的界面更漂亮。
数据湖管理页面后续有什么扩展计划?
计划将页面扩展到工作区级别,显示目录、新鲜度等信息,并进一步设计四个实时视图和一个“所有事物”列表,使整个管理栏成为渲染查询。