在当今数据驱动的世界中,企业数据湖仓对于任何竞争的公司来说都是必不可少的。为了构建一个有用的集中式数据湖,必须从不同的来源摄取数据。由于这些生成的数据来自多个来源,每个来源都有自己的格式和协议,因此以可消费的形式将这些数据导入和导出数据湖是一个基本要求。如果数据是一种竞争优势,那么来自整个组织和合作伙伴的数据及时流入数据湖仓对于成功至关重要。
当然,显而易见的解决方案是重写所有应用程序以符合数据存储的API,但我们都知道这并不实用。当企业构建数据仓库时,行业就是这么认为的,但行业已经发展了。相反,当今的最佳实践是构建数据管道,它由多个模块化步骤组成,这些步骤在数据移向集中式数据湖仓的过程中移动、操作、过滤或丰富数据。所有内容都编写为使用S3 API,这将数据管道从手动创建和维护的混乱代码演变为一种优雅、直接且自动化的数据湖仓馈送方式,需要更少的维护。
企业架构师获得认可的一种解决方案是,放弃“再增加一层”的方法,而是使用存储层中内置的功能来构建数据管道。当将使用遍布整个企业运行的脚本从FTP服务器传输文件到FTP服务器的混乱情况折叠到构建在对象存储上的数据管道中时,它变得合乎逻辑且井然有序。利用Object Lambda调用脚本,使数据通过管道的每个阶段移动,这非常紧凑、简化且简单。
在MinIO,我们提供了一个标准接口——S3 SPI——作为我们的原生接口,所有云原生应用程序都已支持此接口。我们MinIO的一个基本指导原则就是系统必须简单。简单性减少人为错误并导致自动化。依赖复杂的外部数据管道基础设施与这一原则背道而驰。
我们创建了MinIO Batch Framework来简化数据管道的构建和操作,并简化将数据传输到企业数据湖仓的过程。然后我们开发了第一个内置管道,批量复制,提供了在MinIO部署之间批量移动客户选择的数据的能力。不用说,企业对批量复制的采用速度非常快,我们知道我们交付了一些真正有用的东西。
然后,我们解决了企业中用于移动内容的最常见协议之一,该协议几乎与互联网本身一样古老 - FTP和SFTP。从RELEASE.2023-04-20T17-56-55Z版本开始,我们在MinIO Server中添加了FTP/SFTP功能,您可以通过在MinIO配置中添加两行来启用它。MinIO Server不仅消除了任何外部FTP服务器代理并将FTP流量转换为S3的需要,而且还提供了一个完全分布式、高度可扩展的FTP服务器。使MinIO非常适合S3的相同机制也使MinIO非常适合FTP/SFTP——卓越的性能、数据持久性、容错性和安全性。
我们添加了这些构建简单数据管道的方法,以便更轻松地使用MinIO构建数据湖仓。管道以任何格式向数据湖仓馈送数据,S3 API将数据公开给云原生分析和AI/ML工作负载。请参阅MinIO用于现代数据湖以获取示例。
许多企业被锁定在FTP中,因为大量专有业务软件仅限于使用FTP进行数据导入/导出。一些软件存档和数据科学应用程序使用FTP分发软件工件或数据集。许多CRM、ERP和供应链应用程序使用SFTP传输数据。这些应用程序不能简单地从FTP或SFTP切换,因为这需要更改现有的应用程序内部和工作流程。用S3替换FTP或SFTP既不实用也不可行。
使用MinIO,企业无需做出选择。他们可以从字面上使用FTP和SFTP将数据移动到类似S3的数据存储中。这是“和”而不是“或”的原则。
从无数独立的FTP服务器发展到MinIO,这对数据和开发团队来说是一个巨大的推动力。他们现在可以利用MinIO的所有优点——使用擦除编码进行数据保护、性能、可扩展性和规模性能、与现有管理工具的集成、AWS风格的IAM和PBAC、生命周期管理/分层。数据湖仓通过FTP馈送数据,开发人员仍然可以自由使用他们喜欢的与S3兼容的云原生工具。
自动化馈送数据湖仓的繁琐任务
启用SFTP/FTP的MinIO克服了使用其他FTP服务器构建和维护数据管道的大多数痛点。如果您正在使用一系列脚本和FTP服务器在企业中ETL文件,那么您现在有机会使用云原生应用程序和MinIO Lambda通知来简化和增强此过程,从而馈送您选择的数据湖仓——我们喜欢开放式表格式,例如Apache Iceberg、Delta和Apache Hudi——并通过S3 API访问它以进行报告、分析和AI/ML。例如,请参阅使用Apache Kafka和MinIO编排复杂工作流和使用R、H2O和MinIO进行日志文件异常检测的完整工作流。
在S3和FTP之间,所有企业数据都可以进入MinIO。将其以原始格式存储在存储桶中。当文件写入存储桶时,Lambda通知会触发脚本以过滤、转换、运行ML模型并将数据作为对象从存储桶移动到存储桶。这一切都非常整洁,所有脚本都使用S3 API,因此它们比围绕应用程序API和FTP服务器编写的脚本更容易维护,这些脚本可以移动和文件系统可以更改。
创新自由
使用数据管道为企业数据湖仓馈送数据以进行报告、分析和ML的架构将在未来许多年内继续存在。我们的目标是从流程中消除手动繁琐的任务,以便开发人员可以从繁重的工作中解放出来,转而进行创新和增值。使用MinIO并减少维护数据管道所需的时间和精力,即使是您已经使用FTP构建的数据管道。
立即下载MinIO,并开始在您的数据管道中使用高级对象存储功能。您对数据管道有疑问吗?发送电子邮件至hello@min.io或在我们的社区Slack频道上提问。