对于后端开发者来说,一款好用的框架能够大大提升应用的开发效率。为了降低开发者使用 TiDB 的门槛,方便开发者快速连接到 TiDB,PingCAP也在和合作伙伴一起,逐步完善面向主流开发语言和框架的连接支持。近日,Facebook 开源的 Golang 实体框架 Ent 完成了对 TiDB 数据库的支持。
Ent 是一款易于构建和维护应用程序与大数据模型的框架。具有以下特点:
下面通过一个 Hello World 的应用示例,来看下如何快速实现一个基于 Ent + TiDB 的应用。
Hello World 应用示例
现在应该有一个运行的 TiDB 实例,开放了 4000 端口监听。
在这个示例 repo 中定义了一个简单的 User schema
然后,连接 Ent 和 TiDB:
可以看到,在第一行通过一个 MySQL 语句去连接 TiDB Server,因为 TiDB 是兼容 MySQL 的,所以不需要其他特殊的 driver。
话虽如此,TiDB 和 MySQL 还是有很多不同,尤其是与 Schema 迁移相关的操作,比如 SQL 诊断和迁移规划。所以,Atlas 可以自动监测出是连接到 TiDB,做相应的迁移处理。
此外,第七行使用 schema.WithAtlas(true),表示 Ent 是使用“Atlas”作为迁移引擎。Atlas 是 Ent 刚刚发布的迁移引擎,得益于 Atlas 的最新设计,对新数据库的支持也变得前所未有的简单。
最后,新建一条 user 数据,并保存到 TiDB 中,以用于后需的数据读取和输出。
在这次快速演练中,成功实现了:
版本说明
目前,这个示例应用在 Ent v0.10 和 TiDB v5.4.0 中可以正常运行,Ent 也计划在未来继续拓展对 TiDB 的支持。如果用户使用其他版本的 TiDB 或者需要帮助,欢迎加入 asktug.com 来交流。如果也有项目希望与 TiDB 适配,欢迎来 GitHub 提交 issue。
除了 Ent,TiDB 此前已经添加了对 GORM 和 go-sql-driver/mysql 的支持,详情可查看文档:https://docs.pingcap.com/appdev/dev
好文章,需要你的鼓励
近期有观点认为,大规模使用生成式AI和大语言模型会增强人类左脑的逻辑分析能力,同时削弱右脑的创造力,导致人类社会逐渐成为左脑主导的群体。但研究表明,左右脑功能分工理论缺乏科学依据,大脑两半球在创造性和逻辑性任务中都会协同工作。此外,AI不仅能辅助逻辑思维,同样可用于诗歌创作、图像生成等创意任务。
这项由圣母大学和IBM研究院联合开展的研究,开发出了名为DeepEvolve的AI科学助手系统,能够像人类科学家一样进行深度文献研究并将创新想法转化为可执行的算法程序。该系统突破了传统AI要么只能改进算法但缺乏创新、要么只能提出想法但无法实现的局限,在化学、生物学、数学等九个科学领域的测试中都实现了显著的算法性能提升,为AI辅助科学发现开辟了新的道路。
微软全球AI巡展在迪拜举行,宣布启动Microsoft Elevate UAE项目,计划为超过25万名学生和教育工作者以及5.5万名联邦政府员工提供AI技能培训。该项目是微软152亿美元投资计划的一部分,旨在加强AI基础设施建设,培养本地人才能力。微软还将与G42和JAHIZ平台合作,为联邦公务员提供技术培训,支持阿联酋成为AI领域的区域和全球领导者。
卡内基梅隆大学研究团队通过3331次大规模实验,系统揭示了代码训练如何提升AI推理能力。研究发现,代码的结构特性比语义内容更重要,适当的抽象形式(如伪代码)可以达到与原始代码相同的效果。不同编程语言产生差异化影响:低抽象语言有利于数学推理,Python更适合自然语言任务。这些发现为AI训练数据的科学化设计提供了重要指导。