该交互式可视化工具追踪了 2001 年至 2021 年间 ABC Classic FM “古典 100”活动中音乐作品的排名情况。该工具由居住在霍巴特的开发者 Alex 创建,采用点线格式展示了二十年来听众喜爱的古典音乐作品在受欢迎程度上的变化。 用户可以通过点击单个数据点来查看具体详情,同时还能高亮显示同一作曲家的其他作品。可视化呈现出的一个显著趋势是拉尔夫·沃恩·威廉姆斯的《云雀高飞》(The Lark Ascending)受欢迎程度的波动:它从 2001 年的第 2 名跌至 2010 年的较低排名,随后又在 2021 年攀升至榜首。Alex 欢迎对该项目提供反馈,并提到尽管维瓦尔第的《福利亚舞曲》(La Follia)未包含在数据集中,但他个人非常喜爱这部作品。
在利用聚簇索引(例如 SQLite 的 `WITHOUT ROWID` 表)的数据库中,使用随机 UUID(UUID4)作为主键会显著降低性能。由于聚簇索引是按主键进行物理排序的,随机值会迫使数据库在插入时不断地重新平衡 B-tree 结构。
基准测试表明,由于频繁的页面读写和树结构重新平衡所带来的开销,使用 UUID4 进行插入的速度比使用自增整数 `rowid` 慢 10 到 12 倍。
作者提出了一种实用的解决方案:使用 **UUID7**。与 UUID4 不同,UUID7 是按时间排序的。当作为主键使用时,其顺序特性可以避免随机键导致的 B-tree 碎片化,将性能恢复到接近标准整数键的水平。总之,如果您必须在聚簇索引中使用 UUID,选择像 UUID7 这样按时间排序的格式对于维持数据库效率至关重要。