从自建到云端,数据库迁移全攻略
在数字化浪潮席卷而来的今天,数据库作为数据存储与管理的核心,其管理和运维显得尤为重要。随着业务规模的持续扩展,为了规避性能瓶颈、安全隐患和扩展性不足等问题,不少用户选择将数据库和应用分开部署。然而,这种做法不仅耗费大量时间与人力成本,还使运维变得更加复杂。那么,如何在不同发展阶段满足多数据库的多样化需求?又如何在保证数据安全、提升可用性和性能的同时,优化成本?这正是数据库迁移技术价值所在。
本方案将为您详细解析如何将网站的自建数据库迁移至云数据库 RDS,有效解决数据库管理中的痛点与难题。通过云数据库 RDS,您可以实现零成本维护、高可用性以及集群秒级故障切换,确保业务的稳定运行,同时优化数据库参数与性能,并全面保障数据安全。
核心优势
- 零成本:公网流量不收费;提供最多 2 倍于存储空间的免费备份空间;通用型数据库代理不收费;支持 Serverless。
- 高可用,保证业务稳定性:高可用和集群系列秒级故障切换,最高保障 99.99% 可用性;基础系列自动故障恢复,承诺 99.5% 可用性;自动读写分离,实现负载均衡。
- 参数持续优化,性能优越:持续优化参数;支持只读实例和读写分离,扩展读性能;支持慢日志分析、自动 SQL 优化;自研 AliSQL 和 AliPG 优化性能
- 数据传输加密,阿里云自动修复:SSL 加密;TDE 加密;SQL 洞察与审计;内核 Bug 由阿里云修复
方案架构
- 由 RDS 实现数据库可靠性、可用性、安全性的保障。
- 应用部署在 ECS 上,通过内网(VPC)访问 RDS 。
- 使用数据传输服务 DTS 将 ECS 上的自建数据库迁移至云数据库 RDS ,迁移过程平滑、安全、高效,应用停机时间降低到分钟级别。
本文提供快速体验教程,全面模拟数据库迁移过程,帮助您快速上手迁移操作。
【】即刻体验!
一键部署资源
您可以通过一键部署模板,快速创建一个云服务器 ECS 实例和一个云数据库 RDS 实例,ECS 实例上已经部署了网站以及自建数据库。本方案以 WordPress 网站为例。
- 单击一键部署进入 ROS 控制台,在顶部选择华东 1(杭州)。
- 填写模板参数:为方便体验,您只需关注可用区、ECS 实例密码和 RDS 数据库密码三个参数的选择,其它参数可使用方案默认值或按需选择。
- 查看页面右下角的资源价格,确认无误后单击创建。
等待资源栈创建,资源部署时间约为 10 分钟,请耐心等候,直至资源栈状态显示为创建成功。
查看已部署的资源
在资源页面,您可以查看上述步骤所生成的 ECS 实例、RDS 实例、WordPress 网站访问地址等。
- 在资源栈 > 资源栈列表中单击上一步创建的资源栈。
- 在顶部单击资源页签,可以查看已创建的资源及相关信息。
- 在顶部单击输出页签,可以查看输出关键字列表,各关键字描述具体见方案详情。
安装WordPress网站
一键部署资源后,进入WordPress安装页面,完成WordPress安装。
- 访问资源编排管理控制台,在资源栈列表中单击刚创建的资源栈。
- 在资源栈顶部单击输出页签,并在输出关键字列表中找到ECSWordPressUrl参数对应的值,单击进入网站。
- 在WordPress安装页面,填写网站相关信息,然后单击Install WordPress。如下图所示:
浏览WordPress网站
- 返回资源编排管理控制台,在资源栈列表中单击刚创建的资源栈。
- 单击输出页签中ECSWordPressUrl参数对应的值,即可进入网站浏览。
现在,您可以使用DTS数据传输服务,配置源库和目标库信息,开始迁移数据库的库表结构、全量数据和增量数据。
- 登录DMS数据管理服务。
- 在顶部菜单栏选择集成与开发(DTS) > 数据传输(DTS) > 数据迁移。
- 单击创建任务。
- 配置源库及目标库信息。(具体配置请点击方案详情)
- 单击测试连接以进行下一步,系统会自动为ECS添加DTS安全组,为RDS添加DTS服务器IP至白名单,以允许DTS访问ECS和RDS。如果有失败信息,参考对应的错误提示进行修改即可。
- 配置迁移任务。(具体配置方法请点击方案详情)
- 预检查通过率达到100%后,单击下一步购买。选择数据迁移实例的链路规格(本案例以small规格为例),阅读并选中《数据传输(按量付费)服务条款》,单击购买并启动。
- 迁移任务正式开始。
单击迁移任务ID可以查看具体进度。当您看到如下界面,表示存量数据已迁移完成,增量数据会实时同步。此时您可以进入下一步,验证RDS里的数据。
通过查看RDS实例中的数据,验证数据迁移结果
- 登录RDS实例
a. 单击资源栈顶部资源按钮,然后单击Database资源ID进入RDS控制台,单击登录数据库。
b. 在弹出的DMS页面中,填写RDS高权限数据库账号和密码,然后单击登录。
- 全量数据验证
a. 在SQLConsole窗口,在左侧双击目标数据库名称wordpressdb,可以看到自建数据库所有库、表数据已经完成迁移。
3. 增量数据验证
a. 在SQLConsole窗口,双击wp_comments表名,再单击执行,查看wp_comments表的数据。
b. 前往资源编排管理控制台,在资源栈列表中单击之前创建的资源栈。
c. 在资源栈顶部单击输出页签,并在输出关键字列表中找到ECSWordPressUrl参数对应的值,单击进入网站,往下浏览找到如下图,点击进入评论区。
d. 在网站中新增一条评论或多条评论,如下图
e. 再次查看RDS实例中wp_comments表的数据,执行查询语句可以看到增加的评论,说明增量数据已迁移成功。
通过切换数据库连接并访问网站,验证RDS服务可用性
- 从自建数据库切换到RDS
为避免数据丢失,建议先停止写入数据,然后再将应用程序的数据库连接配置修改为云数据库RDS的连接地址。
a. 停止写入数据到源数据库。
b.修改WordPress配置文件中的数据库连接配置。
(1) 在资源列表中单击WebServer资源ID进入ECS控制台,点击远程连接使用ECS账户登录。本示例中,ECS账号为root,密码为用户自定义密码。
【说明:如果提示用户名或密码不正确,可能是因为密码错误或者操作系统未完全启动,请确认输入的用户名和密码,或者稍后再尝试登录。】
(2) 打开配置文件。
sudo vim /usr/share/nginx/html/wp-config.php
(3) 按i进入插入模式。
(4) 修改数据库连接配置:
- 修改数据库账号:将wordpressuser改为RDS高权限账号dbuser。
- 修改数据库密码:将password修改为您自定义的密码。
- 修改数据库连接地址:将localhost修改为RDS内网连接地址(可以直接复制资源栈输出页签中RDSInternalAddress关键字对应的值)。
- 按Esc键退出插入模式。
- 输入:wq,并按Enter键退出vim编辑器。
【说明:以上仅为本示例教程的切换步骤,关于生产环境的切换和回滚方案,请参见业务切换流程。】
- 验证切换后的服务可用性
a. 返回资源编排管理控制台,在资源栈列表中单击刚创建的资源栈。
b. 单击输出页签中ECSWordPressUrl参数对应的值,进入网站浏览,可观察到网站与切换前保持一致。如下图:
c. 在网站新增一条评论,再次查看RDS实例中wp_comments表的数据,执行查询语句可以看到增加的评论。
想必你通过阅读,已经学会如何将网站的自建数据库迁移至云数据库 RDS。现在邀请你体验【】
对话墨奇科技CTO汤林鹏:向量数据库的技术路线与选型策略
随着大语言模型(LLMs)的崛起,对话界面正逐渐融入我们的日常生活,从搜索引擎到代码生成器,再到数据分析工具,其身影无处不在。
在这一变革中,向量相似性搜索技术发挥着举足轻重的作用,为LLMs的性能提升注入了新的活力。然而,面对市场上琳琅满目的向量数据库产品,企业该如何选择?
我们IT168有幸采访到了墨奇科技联合创始人兼 CTO 汤林鹏针对向量数据库的技术路线选择,以及 SQL + 向量列存数据库有哪些独特的优势,向量数据库未来的发展趋势以及选型建议等问题进行了深入交流。
▴墨奇科技联合创始人& CTO 汤林鹏
平衡性能与通用性的技术选型新策略
在当今的数据库市场,众多产品争奇斗艳,各自为阵。面对这样的多样化选择,如何找到一种既具备高性能又满足通用数据需求的数据库技术,成为众多企业面临的挑战。在这方面,墨奇科技最初的数据库技术选型展现出了独特的特点和优势。
传统的专有向量数据库,诸如Pinecone、Zilliz、Chroma等,虽然向量检索性能优秀,但在处理复杂多变的通用数据时往往力不从心。而另一方面,传统数据库加上外挂模块如pgvector等,虽在通用性上有所弥补,但在向量性能上却难以企及专有向量数据库。在这样的背景下,墨奇科技敏锐地洞察到了市场的痛点,并决心打破这一僵局。
墨奇科技选择了高性能的列存分析数据库 ClickHouse 作为基础进行改造。ClickHouse 处理大规模结构化数据的性能出色,在改造的过程中,墨奇科技对向量化的算法、系统以及SQL与向量的联合查询和存储进行了深入的优化,确保了在保持高性能向量检索和复杂查询的同时,也能够满足企业对通用数据的全面需求。
与传统的专有向量数据库和pgvector相比,汤林鹏透露,MyScale在综合性能、精度、数据密度和性价比等方面都实现了质的飞跃,提升幅度高达3~10倍。这些都是这些都是墨奇研发团队在算法和系统做了很多创新得到的成果。
汤林鹏坦言尽管在初期的选型过程中面临着重重挑战,但现在已经成功搭建起了集成向量数据库的基本框架。并在SQL数据管理和查询、数据类型支持、数据连接等方面积累了丰富的实践经验。
SQL和向量深度结合,核心优势凸显
谈到向量数据库MyScale的核心优势,汤林鹏最先提及的是SQL和向量的深度结合。传统数据库在处理结构化数据时表现出色,但对于文本、图像、语音等非结构化数据则显得捉襟见肘。现在我们可以通过向量化模型,将这些非结构化数据转换为语义向量,并在向量数据中统一管理、查询。MyScale不仅拥有强大的向量管理和查询能力,更通过深度整合SQL技术,使得用户可以使用熟悉的SQL语法来查询向量数据。这一创新性的结合为用户带来了前所未有的灵活性和便利性。
除了SQL与向量的融合优势外,MyScale在性能和性价比方面也表现卓越。其高数据密度设计使得在相同存储容量下,MyScale能够存储更多的数据,从而降低了企业硬件和运维成本。同时,MyScale在构建索引方面实现了大幅的速度提升。根据墨奇科技提供的开源Benchmark数据显示,与同类产品相比,MyScale在构建索引时所需的时间大大缩短:同样上传1000万向量,用pgvector可能需要几个小时甚至是十几个小时,而MyScale只需要构建三十四分钟。这意味着用户可以更快地完成数据准备工作,将更多精力投入到数据查询、分析和挖掘中。
此外,MyScale还支持任意过滤比例的查询功能。在处理海量向量数据时,用户往往需要根据实际需求,利用结构化、字符串等属性对数据进行过滤和筛选,再进行近似向量查询。MyScale提供了灵活的过滤查询功能,使得用户可以根据不同的业务和数据模型进行过滤查询,实现高速高精度的混合信息检索。这一特性对于需要处理大规模复杂数据集并保持高精度、高性能查询的企业来说具有重要意义。
在墨奇科技不断创新和完善的过程中,他们还将关键词倒排表功能引入到了产品中。关键词倒排表是搜索引擎中常用的一种数据结构,它能够帮助用户快速找到包含特定关键词的文档。通过集成关键词倒排表功能,MyScale进一步增强了其自然语言查询能力,能够更好地支撑复杂的大模型 RAG 应用和多样化查询需求。这对于企业级 RAG 开发者来说无疑是一个好消息。
需求出发,综合考量向量数据库的全面能力
当考虑选择向量数据库时,汤林鹏强调,不同客户群体会关注不同的关键因素。对于实验性质的需求,客户可能更倾向于选择开源的向量数据库,如Qdrant和Chroma。这些产品通常具有较为简单的使用接口,能够满足基本的实验需求。
对于需要搭建稳定 SaaS服务的客户,尤其是那些有出海需求的客户,购买SaaS向量数据库产品可能是一个更优选的选择。SaaS 产品的全托管模式,降低了使用和服务运维的成本。
对于那些需要处理大规模数据复杂数据的客户来说,全面数据管理能力和复杂查询的能力,以及海量数据时的性价比是一个非常重要的考虑因素。在这方面,具有相关优势的产品如MyScale可能会成为客户的重点考虑对象。MyScale 同时提供了开源社区版,企业版和 SaaS 服务,基于 SQL 接口,强大通用又容易上手,可以满足不同类型客户的需求。
写在最后
采访最后,汤林鹏对向量数据库未来的发展方向做出了深入的总结。从技术层面来看,他认为复杂数据建模、向量与关键字的联合查询、复杂查询的优化以及基于数据库的大模型与复杂数据调度的 agent workflow 将成为核心发展重点。特别是Data-centric LLM 等前沿技术,被寄予厚望,预期能大幅提升数据处理和分析的能力。
而在行业应用上,汤林鹏预测今年的向量数据库市场将迎来爆发式增长,可能比去年高出五倍以上。他认为这种增长将主要集中在科研、金融、工业、医疗、法律企业服务以及泛娱乐等领域。特别是随着大模型能力的不断提升和成本的下降,这些行业的向量数据库应用规模有望比去年扩大数倍。
尽管向量数据库的前景广阔,但仍需紧密关注技术和市场的变化,确保发展方向与行业需求紧密结合,从而推动向量数据库在更多领域的广泛和深入应用。
经过近 6 年的开发和数次版本迭代,MyScale已于近期开源,他向所有开发者和企业用户发出邀请,开启使用 SQL 构建生产级 AI 应用的新玩法!
(项目地址:https://github.com/myscale/myscaledb)
自己要做一个简单的查询类APP需要从哪入手
自己想做一个自己工作使用的,提供方便,实现无纸化现场快捷查询的查询类软件。不用很复杂,提前做一个数据库,使用时点击界面模块进入相应需查询内容即可
创建者也无需专业的知识,无需编程经验。只需上传Excel文件,使用手机便能制作出相对应的查询系统。创建者和查询人都无需登录和注册,点开即用。查询人可以通过扫描二维码、群聊、公众号来进入查询页面去查询相关内容。
普通人也能实现自定义Excel数据查询。方便查询人查询和下载自己的「成绩单」、「准考证」、「录取通知书」、「工资条」、「体检结果」等。
下面以成绩查询系统为例子,介绍制作流程。
制作“学生成绩查询系统”
成绩Excel样例
Excel文件表格中包含学生的基本信息和科目的考试成绩。
制作成绩查询系统
在表查查发布新的查询,填写查询的标题,将学生的成绩文件Excel表格的表头字段粘贴到对应位置。
设置查询条件
选择合适的字段作为成绩查询系统的查询条件,点击编辑进入到编辑页面,勾选作为查询条件。
上传成绩文件
选择批量的导入数据,按照上传文件的步骤,将学生的成绩excel文件上传导入。数据导入成功,可以在线查看导入的状态。
分享查询系统
可以选择多种分享方式,嵌入到公众号,分享二维码查询等,进入查询页面,输入个人信息,便可以查询到考试成绩。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。