文章提交注意事项:
请在发布文章时用HTML代码加上至少一条新闻来源的链接;原创性消息,可加入相关信息(如涉及公司的网址)的链接。有任何问题,邮件至:he.fang#zhiding.cn
ken:feigaobox@gmail.com
注意:收到邮件乱码的用户请修改客户端的默认字体编码,从"简体中文(GB2312)"修改为"Unicode(UTF-8)"。

Solidot 公告
投 票
热门评论
- unity 到底有什么好 (1 points, 一般) by Craynic 在 2022年07月05日11时17分 星期二 评论到 Ubuntu Unity 桌面复活
- 这不科学 (1 points, 一般) by qq33357486 在 2022年07月04日20时22分 星期一 评论到 Ubuntu Unity 桌面复活
- 吃便便 (1 points, 一般) by Craynic 在 2022年07月04日12时34分 星期一 评论到 现代城市居民失去了半数肠道微生物群
- 来自 ctOS 部门 (1 points, 一般) by lot 在 2022年07月01日21时15分 星期五 评论到 新算法提前一周预测未来犯罪准确率 90%
- 找原因 (1 points, 一般) by lrobot 在 2022年07月01日20时03分 星期五 评论到 通用无人驾驶出租车挤在一起堵塞了旧金山的交通
- 感谢 neovim 的出现,否则 vim 还在 v7.999.9999 上墨迹 (1 points, 一般) by cupen 在 2022年07月01日00时40分 星期五 评论到 Vim 9.0 发布
- 果然是高速飞行 (1 points, 一般) by liangl_dong 在 2022年06月30日10时23分 星期四 评论到 研究人员发布开源软硬件自主四旋翼无人机
- 山东省济南市槐荫区人民法院 (1 points, 一般) by solidot1656463655 在 2022年06月29日08时48分 星期三 评论到 阿里巴巴性侵案客户被判 18 个月
- “明日黄花”这个词 (1 points, 一般) by Reinhardt 在 2022年06月27日16时26分 星期一 评论到 今天的程序太臃肿了
- 没用 (1 points, 一般) by jerry 在 2022年06月24日14时44分 星期五 评论到 7-zip 支持 Windows Mark-of-the-Web 安全功能

包括 MIT 计算机科学博士生 William Kuszmaul 在内的三名研究人员的发现可以提高计算机数据存储和检索的效率。这项发现与“线性探测哈希表(linear-probing hash tables)”有关,于 1954 年引入,是当今可用的最古老、最简单和最快的数据结构之一。数据结构提供了在计算机中组织和存储数据的方法,哈希表是最常用的方法之一。在线性探测哈希表中,可存储信息的位置位于一个线性数组中。
Kuszmaul 表示,假设一个数据库旨在存储 10,000 个人的社会保障号码。“我们获取你的社会保障号码x,然后我们将计算x的哈希函数 h(x),它会为你提供一个 1 到10,000之间的随机数。”下一步是将随机数h(x)移到数组中的相应位置,然后将社会保障号码x放入该位置。
Kuszmaul 表示,如果该位置已被占用,“你只需要向前移动到下一个闲置位置然后将其放入。这就是‘线性探测’一词的由来,因为你一直线性前进,直到找到一个空位。”为了稍后检索社会保障号码x,你只需要前往指定位置 h(x),如果它不在那里,就继续前进,直到你找到 x,或者到达一个闲置位置并得出结论:x不在你的数据库之中。
删除项目(例如社会保障号码)的协议略有不同。如果你在删除信息后,在哈希表中留下一个空位,那么当你之后试图寻找其他内容时就可能造成混淆,因为该空位可能错误地表明你在寻找的项目不在数据库中。为 了避免这个问题,Kuszmaul 解释说,“你可以去元素被删除的地方放上一个叫作‘墓碑(tombstone)’的小标记,表明这里曾有一个元素,但现在已被删除了。”
这个程序已使用了半个多世纪。在此期间,几乎每个使用线性探测哈希表的人都认为,如果你让它们变得太满,那么长长的、被占据的位置就会聚集在一起形成“集群”。结果找到一个空位所花费的时间会急剧增加——事实上是二次方的——时间长到不现实。因此人们接受了以低容量操作哈希表的培训——这种做法会影响企业必须购买并维护的硬件数量,从而造成经济损失。
但是这个由来悠久、一直不利于高负载率的原则已被 Kuszmaul 和他的同事——石溪大学的 Michael Bender 和 Google 的 Bradley Kuszmaul 的工作彻底颠覆。他们发现,对于插入和删除数量大体相等的应用程序——添加的数据量大致等于删除的数据量——线性探测哈希表可以在不牺牲速度的情况下以高存储容量运行。
Kuszmaul 表示,假设一个数据库旨在存储 10,000 个人的社会保障号码。“我们获取你的社会保障号码x,然后我们将计算x的哈希函数 h(x),它会为你提供一个 1 到10,000之间的随机数。”下一步是将随机数h(x)移到数组中的相应位置,然后将社会保障号码x放入该位置。
Kuszmaul 表示,如果该位置已被占用,“你只需要向前移动到下一个闲置位置然后将其放入。这就是‘线性探测’一词的由来,因为你一直线性前进,直到找到一个空位。”为了稍后检索社会保障号码x,你只需要前往指定位置 h(x),如果它不在那里,就继续前进,直到你找到 x,或者到达一个闲置位置并得出结论:x不在你的数据库之中。
删除项目(例如社会保障号码)的协议略有不同。如果你在删除信息后,在哈希表中留下一个空位,那么当你之后试图寻找其他内容时就可能造成混淆,因为该空位可能错误地表明你在寻找的项目不在数据库中。为 了避免这个问题,Kuszmaul 解释说,“你可以去元素被删除的地方放上一个叫作‘墓碑(tombstone)’的小标记,表明这里曾有一个元素,但现在已被删除了。”
这个程序已使用了半个多世纪。在此期间,几乎每个使用线性探测哈希表的人都认为,如果你让它们变得太满,那么长长的、被占据的位置就会聚集在一起形成“集群”。结果找到一个空位所花费的时间会急剧增加——事实上是二次方的——时间长到不现实。因此人们接受了以低容量操作哈希表的培训——这种做法会影响企业必须购买并维护的硬件数量,从而造成经济损失。
但是这个由来悠久、一直不利于高负载率的原则已被 Kuszmaul 和他的同事——石溪大学的 Michael Bender 和 Google 的 Bradley Kuszmaul 的工作彻底颠覆。他们发现,对于插入和删除数量大体相等的应用程序——添加的数据量大致等于删除的数据量——线性探测哈希表可以在不牺牲速度的情况下以高存储容量运行。
PostgreSQL 商标及其知识产权由非盈利组织 PostgreSQL Community Association of Canada (PGCAC)代表 PostgreSQL Core Team 管理。但在 2020 年名叫 Fundación PostgreSQL 的西班牙非盈利组织在欧盟和美国申请注册 PostgreSQL 和 PostgreSQL Community 的商标,并已经在西班牙获得了商标。该组织的代表 Álvaro Hernández Tortosa 声称此举是为了保护 PostgreSQL 商标,但明显违反了 PostgreSQL 的商标政策。然而 Fundación PostgreSQL 明确表示它不会撤回商标申请,不过表示愿意与 PGCAC 进行协商。2021 年 Fundación PostgreSQL 又在欧盟和美国递交了额外的 PostgreSQL 的商标申请,Hernández Tortosa 表示只有满足了他的条件之后才会撤回商标申请,他的条件包括削弱 PGCAC 对商标的控制。PGCAC 和 PostgreSQL Core Team 认为这些要求是不可接受的,表示将会考虑采取所有可能的选项直到对方屈服。Fundación PostgreSQL 则在官网上发表声明声称这是对社区发动的史无前例的攻击。
社交巨人透露它的数据库版本从 MySQL 5.6 迁移到 MySQL 8.0。Facebook 称,上一次大版本升级到 MySQL 5.6 花了一年多时间才完成,当 5.7 发布时它正在开发 LSM-Tree 存储引擎 MyRocks,而这个引擎是基于 5.6,升级到 5.7 的同时开发存储引擎会显著拖慢整个进程,因此 Facebook 决定留在 5.6 等待 MyRocks 完成开发。当它完成 MyRocks 部署时 MySQL 8.0 发布了。此时 5.6 已接近寿命结束,加入 8.0 带来了很多新的功能,它决定升级到 8.0。这个过程比之前的升级更具挑战性。
开发 Elasticsearch 和 Kibana 的公司 Elastic 采用了 MongoDB 设计的许可证 SSPL (Server Side Public License) 限制云服务商将其产品作为软件即服务提供给用户。ElasticSearch 是一个用于企业搜索的数据库管理程序,而 Kibana 则是数据可视化工具。它们都是开源软件,采用 Apache 2.0 许可证。但联合创始人兼 CEO Shay Banon 在最新声明中宣布两个开源软件将切换到双许可证 Server Side Public License (SSPL)和 Elastic License。Elastic 许可证是非商业许可证,如果要将产品作为软件即服务使用则需要获得商业授权。将 Elasticsearch 作为后端使用的项目不受许可证变更的影响。Elastic 此举受到了社区的广泛批评。
用 Go 语言开发的开源时序型数据库 InfluxDB 宣布了未来的开发计划:InfluxDB IOx,用 Rust 语言开发,使用 Apache Arrow 和柱列式数据结构。InfluxDB 项目创始人 Paul Dix 称,Rust 能给予运行时行为和内存管理更细粒度控制,它带来的额外好处是并发编程更容易消除了数据竞争。InfluxDB IOx 目前还处于早期开发阶段,计划明年初发布 alpha 版本。
开源数据库管理系统 PostgreSQL 释出了 v13。PostgreSQL 13 改进了索引和查找系统,节省了索引的空间并提升了性能,大型数据库将能从中受益;更快的查询响应时间,使用扩展统计提供更好的查询规划;并行的索引移除;增量排序;等等。其它方面的改进还有优化管理,增强安全和为开发者提供更多便利。更多可浏览发布公告。
跨国公司在绝大部分国家的分支都运行着相同的软件,但软件的版本不完全相同。在每一个国家它都需要定制功能去满足当地的需要,以及遵守当地的监管要求。维护应用程序的同一个版本和同一种数据模型基本上是不可能的。结果是他们需要多个关系数据库,这增加了维护的复杂性和开销。汇丰数据设计师 Narasimha Reddy 在 MongoDB.Live 上透露,为了简化应用交付该银行正将 65 个关系数据库迁移到一个全球 MongoDB 数据库,它在各国的分支机构不再需要维护一个不同的数据库。这将能减少成本,增加灵活性,更容易进行全球的分析和报告。
2019 年 12 月,MongoDB 引入了一个全新的安全功能:字段级数据库加密。在有了静态存储加密和传输加密之后,为什么还要字段加密?字段级加密的第一批客户包括了 Apervita,该公司为 2000 家医院和 200 万个体病人处理机密数据。Apervita 与 MongoDB 密切合作开发和改进了该技术。在 12 月正式推出之后,该技术被多个政府机构和财富五十强企业使用。数据保密面临的最大风险是人,具有最高访问权限的系统管理员和数据库管理员基本上可以访问系统中的所有数据。静态存储无法解决系统管理员和数据库管理员可能访问机密数据的问题。字段级加密设计旨在解决这个问题。数据在进入数据库前就加密了,从数据库返回后才解密,这就解决了具有最高访问权限的管理员可能泄露数据的问题。字段级加密对数据库性能的影响最高 10%。
多家媒体报道了蚂蚁金服的开源关系数据库 OceanBase v2.2 在行业标准的联机事务处理性能测试 TPC-C 中的成绩击败了甲骨文的数据库。蚂蚁金服的成绩是在 10 月 1 日递交的,得分为 60,880,800,超过了甲骨文的 30,249,688。然而两者其实没有多少可比性,因为甲骨文的得分是在 2010 年 12 月 2 日递交的,使用的硬件架构和软件在近 10 年之后已经没多少对比价值。甲骨文测试的数据库版本是 Oracle Database 11g R2 Enterprise Edition w/RAC w/Partitioning,操作系统是 Oracle Solaris 10,CPU 为 SPARC T3@ 1.65 GHz,共 1728 个核心;而蚂蚁金服使用的操作系统是 Aliyun Linux 2,处理器是 Intel Xeon Platinum 8163 @ 2.50GHz,共 6720 个核心。仅仅从硬件上看,两者之间就很难进行公平的比较。
彭博社报道,在中美贸易战升级的背景下,中国科技巨头、创业公司正纷纷拥抱国产数据库 PingCAP。PingCAP 已经有了 300 多家客户。许多知名的科技公司如美团,美团旗下的摩拜单车,百度旗下的流媒体公司爱奇艺和智能手机制造商小米正从甲骨文和 IBM 的数据库转向 PingCAP。美国禁止华为获取该国的技术在中国公司引发了担忧,对外国产品的安全性引发了质疑,PingCAP 相比外国产品具有显著的优势。
MongoDB 宣布其开源许可证从 GNU AGPLv3 切换到 Server Side Public License (SSPL)。新许可证将适用于新版本的 MongoDB Community Server 以及打过补丁的旧版本。AGPLv3 和 SSPL 在自由使用、自由修改和重新分发代码上没有区别,最大的区别是 MongoDB 希望从软件即服务上获取收入,SSPL 明确要求托管 MongoDB 实例的云计算公司要么获取商业许可证要么向社区开源其服务代码。相比之下 AGPLv3 只声明需要将修改的代码回馈社区,但没有涉及到任何软件即服务。
开源数据库项目 PostgreSQL 宣布了它的行为规则。PostgreSQL 项目表示它制定这一行为准则是希望所有的参与者能以专业的方式行事,以常用礼仪和共同利益行事,尊重所有用户和开发者。行为准则覆盖所有社区成员之间的互动,表示“人身攻击和基于个人特质的负面评论是不可接受的也是禁止的”,个人特质包括但不限于年龄、种族、国籍、宗教,性别或性取向。
亚马逊计划到 2020 年第一季度完全弃用甲骨文私有的数据库软件。电商巨头已经将大部分内部基础设施迁移到自己的 Amazon Web Services 平台。不愿透露姓名的知情人士称,亚马逊上从 4 到 5 年前开始采取措施剥离甲骨文的软件。亚马逊的部分核心电商业务目前仍然依赖于甲骨文,完全剥离需要大约 14- 20 个月的时间。另一名知情人士称,亚马逊很早就考虑剥离甲骨文,但当时因为所需人力太多而回报太低而搁置。亚马逊面临的问题是甲骨文数据库技术无法伸缩满足其需求。亚马逊的迁移有可能在 2019 年完成,该公司已经很长时间没有开发任何依赖于甲骨文数据的技术了。
MySQL 8.0 正式释出。主要特性包括:SQL 窗口函数,公用表表达式,NOWAIT 和 SKIP LOCKED,支持降序索引,GROUPING() 函数,优化器提示,新的 JSON 函数如表函数和聚集函数,GIS 支持,改进 OpenSSL,显著改进 InnoDB 性能,等等。