掘金 人工智能 07月18日 10:53
Zion 无代码上线全新的数据导入与导出,原生支持千万级数据,每分钟可达 10 万行
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Zion对数据导入导出功能进行了全面重构,旨在解决用户在映射配置、处理过程透明度和错误排查方面的痛点。新功能在保持易用性的同时,大幅提升了性能,原生支持千万级数据导入,每分钟可达10万行,远超市面同类产品。体验方面,配置过程化繁为简,通过“唯一约束”规则主动防错;新增“历史记录”和“启用触发器”选项,提升了流程的可观察性和可控性;采用“事务性操作”和清晰的错误日志,确保数据的精准可靠。技术上,通过数据库事务、独立的数据库连接池以及文件的流式读写,保证了处理的稳定性和效率,让用户能专注于业务本身。

✨ 简化配置与主动防错:Zion通过直观的界面引导简化了数据关联配置,特别是通过强制使用“唯一约束”字段,从源头杜绝了因数据重复导致的匹配错误,确保数据关系的精准性,让用户无需深入理解复杂的数据库逻辑。

👁️‍🗨️ 提升流程可观察性与可控性:新增的“历史记录”功能(保存7天)让用户可以追踪每次导入导出的状态,而“启用触发器”选项则将自动化控制权交还给用户,避免了对现有业务逻辑的意外干扰,消除了用户对耗时操作的不确定感。

🔒 保证数据精准可靠的“事务性操作”:Zion将每一次导入视为一个完整的“事务”,确保要么所有数据成功写入,要么在出现任何错误时整个操作回滚,不留任何痕迹。配合清晰的错误日志,使得问题排查和重试变得高效,从根本上保障了数据的完整性。

🚀 突破性能瓶颈,兼顾易用与强大:Zion打破了“易用”与“强大”难以兼得的局面,原生支持千万级数据的导入,每分钟处理可达10万行,远超同类产品如Bubble、Webflow等。同时,通过技术优化,即使处理海量数据,也能保持服务器内存占用的可控性,实现高性能与良好用户体验的统一。

一个好工具的目标,是让使用者专注于业务本身,而非在工具的操作上消耗心力。

然而,作为许多业务基石的数据导入导出功能,过去恰恰是这方面的“重灾区”。它本应可靠、智能且无感。基于这样的反思,我们审视了过去的功能中存在的几个核心问题:

为了解决这些根源问题,我们对整个导入导出功能进行了重构。

🚀 更强大的性能

市面上的产品存在一个普遍的矛盾:易用的无代码平台,数据处理能力往往受限;而强大的开发者平台,又需要使用者编写复杂的脚本。

工具的易用性不应该成为其性能的上限,而强大的性能也不应该以牺牲用户体验为代价。这两者理应相辅相成。Zion 的这次迭代,正是为了打破“易用”与“强大”无法兼得的局面。

平台最大导入行数/文件大小性能特点与限制
Zion高达 10,000,000 行无需代码,原生支持千万级数据,每分钟可达 10 万行
Bubble最高 30,000 行 (企业版)依赖前端上传,大文件支持不稳,受套餐等级限制
Webfllow最高 10,000 行 (商业版)4MB 文件大小上限,主要用于 CMS 内容填充
Supabase无明确上限,但需专业工具需使用命令行工具及 COPY 命令,对没有计算机基础的用户不友好
Firebase无明确上限,但有写入限制导出到 Google 表格

✨ 更良好的体验

    化繁为简的配置

过去,用户需要理解复杂的数据库ID逻辑才能建立关联,而现在,这一过程被简化为直观的界面引导。

更进一步,我们认为好的设计不应只停留在简化操作,更要能主动地防止错误发生。为此,我们设定了一条规则:在进行关联匹配时,必须使用设置了 “唯一约束” 的字段(如用户名、手机号)。这并非限制,而是一道前置的“安全锁”,从根源上杜绝了因数据重复而导致的匹配错误,确保了每一条数据关系都绝对精准

    保证流程的可观察性和可控性

工具不应是“黑盒”。任何耗时较长的操作,都应该给予用户清晰的反馈和充分的掌控感,以消除不确定性带来的焦虑。

基于此,新增的“历史记录”功能,会保存每次导入或导出的记录(保存7天),长时间运行的任务也可以放心地在后台处理。此外,导入流程中新增的“启用触发器”选项,则将“是否触发自动化”的控制权完全交还给用户,避免了对现有业务逻辑的意外干扰。

    保证数据的精准可靠

对于数据工具而言,可靠性是信任的基石。任何可能导致数据不一致或“脏数据”的情况,都应该在产品设计阶段被根除。

这就是为什么每一次导入都被设计成一个“事务性操作”。这意味着,要么100%的数据都成功写入;要么,哪怕只有一行数据出错,整个导入任务也会被安全地回滚,不在数据库中留下任何痕迹。清晰的错误日志则保证了问题的可追溯性,让修正和再次导入变得轻松。

🛠️ 技术实现

    数据库操作的事务性处理

为了保证导入/导出数据的正确性,我们在整个导入的过程中使用一个数据库事务进行操作,同时引入了PostgreSQL的临时表机制,所有的导入文件的数据处理先在临时表上进行操作,再由临时表根据自增主键(PostgreSQL中的Sequence)将数据同步至正式表中,当出现数据错误或者冲突时进行事务回滚,保证了数据的一致性。

    独立的数据库连接池

由于导入/导出经常伴随着大量的数据,如果需要保证事务性处理则需要长时间占用数据库连接。为了保证在导入过程中整个应用的常规业务尽可能正常进行,我们为整个导入/导出服务建立了独立的数据库连接池,将导入/导出任务与日常的数据库访问进行隔离,避免因导入/导出过程中对于数据库连接长时间的占用而造成的日常业务无法执行。

    导入/导出文件的流式读写

大量的数据导入/导出经常伴随着一个较大文件的读取/写入,如果先将文件数据全部写入服务器内存中会导致服务器的因内存空间不足而卡顿或报错。我们基于阿里云OSS服务的文件流针对xlsx和csv文件进行了流式读写,(以导入为例)即每次读取一定行数的数据进入内存,在将这些数据写入临时表后再进行下一部分数据的读取。经过流式读写优化后即使是需要导入/导出百万、千万行级别的数据,服务器的内存使用压力仍然处于一个可控范围。

结语

数据处理是业务发展的基石。我们相信,一个好的工具,理应将复杂留给自身,将简单交给用户。欢迎即刻体验 Zion 全新升级的导入导出功能。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Zion 数据导入导出 功能重构 性能优化 用户体验
相关文章