从高精度时钟服务看国内云计算厂商的差距

自从 Google Spanner[1] 在很多年前(OSDI 2012)提出和使用了 True Time 高精度时钟及其 API 以来,不少公司都在跟进。虽然 Google 高精度的最初精度是 10 毫秒级,但是从其论文等宣传看已经演进到了微秒级,甚至亚微秒级。十多年以来,国外的 AWS、Meta、Azure 都提供了类似的基础设施,甚至对外提供了服务。例如 AWS 2017 年发布了 Time Sync 服务[2],可以取代 NTP,虽然只能在 EC2 上使用。 2023 年,它可以在公网也就是 AWS 之外的设备上使用了,提供的域名为 time.aws.com[3],并且支持了微秒级的精度。此外,其新推出的 AWS Aurora Limitless 数据库也用上了时钟服务。Meta 在开源开放上做得比较出色,开放了一个开源的实现[4],也在文章[5]中详细说明了其高精度时钟的软硬件设计方案。Microsoft Azure 的虚拟机也可以用它们自建的 GPS 时钟源[6]。

Read More

Software Bill of Materials

Bill of Materials (BOM)1 is widely used in the industry. Most of the industry products, including mobile phones, cars, food and medicine, are composed of many parts or components. But I never realised its existence in software industry before. It can’t be imagine a mobile phone, or a car can be built without accurate BOM management. But in sofware practice, it is common to introduce the dependened packages in will - simply add several lines of code can quickly create a new dependency. Fork or copy part of the source code can make it even harder to track the dependency.

Read More

GB18030-2022 字符集标准对数据库的影响

GB18030 的新标准于 2022 年发布,2023 年 8 月 1 日起就要强制执行了。入门版本的介绍可以看电子标准化研究院 (之前的电子四所)制作的宣传稿:https://www.samr.gov.cn/xw/tp/202207/t20220728_348978.html ,或认证说明: https://www.cc.cesi.cn/upload/202303/08/202303081039585026.pdf 。相对于 GB18030-2005 版本,它做了较多 的修改,最典型的是又增加了不少汉字,总数从 70195 增加到了 87887 个,并且终于覆盖了《通用规范汉字表》 的全部汉字;少数民族文种从 6 种增加到了 10 种(不过,我一个都不认识);标准也从部分强制变成了全文强制; 还有三种实现级别的要求。对于所有具备中文信息处理能力的产品都得支持级别一,包含 27584 个汉字;搞操作系统、 数据库、中间件等基础软件的,至少要支持到级别二,比级别一增加了《通用规范汉字表》中的 196 个汉字;如果 涉及政务或公共服务,还得提高要求到级别三。所以,Windows、Linux 等操作系统默认应该支持到级别二,国内的 操作系统、数据库、中间件看样子都得照级别三执行。

Read More

Vector Search and Vector Database

向量搜索在搜索、推荐、NLP 等众多应用领域被广泛的使用,典型的互联网业务,包括电商、 出行、点评、地图等都大量使用相关技术。随着 ChatGPT 带来的 AI 技术应用新热潮,向量 数据库又一次地获得了更多的关注。支持向量存储和搜索技术的系统很多,包括传统的数据 库如 PostgreSQL,经典的搜索系统 Elastic Search,以及创业公司产品如 Milvus、Weaviate 等等。

Read More

Composable Data Management System

2022 年 VLDB 新组织了一个 Workshop,叫做 International Workshop on Composable Data Management Systems (CDMS)。CDMS 的目标是让数据库学术界、工业界和用户等一起 来探讨如何通过可组合性和可复用性来设计数据库系统。第一期的议程1包括:

Read More

Visual Studio Code Remote SSH

This is a sad story. Someone removed my home dir on the development rig, and I have to start from the scratch. Creating a new home dir, git cloning the repository are easy. But recover the .bash_profile/.bashrc and cheetsheet are troublesome. Finally, the job is almost done, but I found that VSCode have to be reinstalled, too. That’s because I use VSCode remote on Windows.

Read More