paint-brush
通过 SQL Server 2022 利用外部表在 MinIO 上存储和查询数据经过@minio
8,832 讀數
8,832 讀數

通过 SQL Server 2022 利用外部表在 MinIO 上存储和查询数据

经过 MinIO8m2023/07/27
Read on Terminal Reader

太長; 讀書

借助 Microsoft SQL Server 2022,对象存储通过称为外部表的技术成为一等公民。有两个部分。首先是 S3 连接器。其次,Polybase数据虚拟化框架的增强。 通过此功能,企业现在可以使用 SQL Server 2022 查询大量对象存储 - 无论这些对象存储存在何处。新功能解决了两个关键的客户挑战:如何访问现有数据以及无需学习新语言。 借助 MinIO,数据可以位于任何地方 - 公共云基础设施、私有云、Kubernetes 发行版、边缘。
featured image - 通过 SQL Server 2022 利用外部表在 MinIO 上存储和查询数据
MinIO HackerNoon profile picture
0-item

数据是一回事,洞察力是另一回事。有多种方法可以从信息中提取洞察力,而这些方法都需要权衡。如果你把它想象成一个金字塔,那么你的顶部是人工智能,下面是机器学习,下面是高级分析,而 SQL 是基础。这是企业中分析的简化但具有代表性的图片。



挑战在于人工智能/机器学习人才确实很难找到。这不一定是新闻,但它是在与负责为一些最大的财富 500 强公司运行分析的同事的对话中得到明确的。虽然人工智能和机器学习有望提供一些最深入的数据洞察,但设置和利用这些机器学习管道需要高度复杂的数据科学能力。在许多情况下,这些都是长期项目,需要数月甚至数年才能完成,并且可能需要对现有员工进行再培训以学习这些新的数据科学范例。


另一方面,SQL 技能在组织中无处不在,并且是数据的通用语言。这就是世界与数据库对话的方式。这就是为什么 95% 的财富 500 强企业都运行 Microsoft 的 SQL Server。在企业中可能没有比这更普遍的数据技术了。


借助Microsoft SQL Server 2022 ,对象存储通过称为外部表的技术成为一等公民。有两个部分。首先是 S3 连接器。其次,Polybase数据虚拟化框架的增强。


通过此功能,企业现在可以使用 SQL Server 2022 查询大量对象存储 - 无论这些对象存储存在何处。新功能解决了两个关键的客户挑战:如何访问现有数据以及无需学习新语言。


借助 MinIO,数据可以位于任何地方 - 公共云基础设施、私有云、Kubernetes 发行版、边缘。


让我们更深入地挖掘一下。

使用 Minio 和 Microsoft SQL Server 2022 组合随时随地访问数据

Microsoft SQL Server 2022 有两个 MinIO 用户可以利用的关键功能。

首先,它使数据库管理员能够使用 S3 API 将数据备份和恢复到任何云环境。其次,SQL Server 2022扩展了最初在SQL Server 2016中引入的外部表功能。


外部表允许用户对未直接存储在 SQL Server 中的数据运行查询。这使用户能够在架构上灵活地在他们想要的位置运行 SQL Server,并在他们想要的位置和方式存储数据,同时保留查询数据而不移动数据的能力。新的外部表功能现在允许它访问所有通常支持的文件格式以及 Parquet 和 S3 面向对象的存储。


这将极大地扩展 SQL Server 可以查询的数据量。


例如,EnterpriseCo 可以在 Azure 中运行 SQL Server。以前,他们将数据移动到 Azure/SQL 服务器中来执行查询。现在,EnterpriseCo 可以在本地访问该数据,而无需将数据移动到任何地方。这意味着这些查询可以针对 PB 大小的数据集运行。


架构选择几乎变得无限。在本地运行 SQL Server 并访问云中的数据。在本地运行 SQL Server 并访问私有云中的数据。在云中运行 SQL Server 并在边缘访问数据。使用 MinIO 和 SQL Server 构建具有主动-主动、多云复制的容错分析系统。主要考虑因素是性能,这些由 SQL Server 和数据的相对位置决定。


诀窍是优化部署。所有对象存储都将受益于外部表功能,但 MinIO 受益不成比例。原因很简单,在企业数据分布在多个云中的世界中,一致性很重要。 MinIO可以作为公共云、私有云和边缘上的数据存储。作为一致的数据层,安全性、访问管理、弹性和生命周期管理也是一致的。性能可以保持一致,也可以根据业务需求进行分层,而其他一切都保持不变。


SQL Server 2022 中执行此操作的机制是通过称为 Polybase 的数据虚拟化功能。


Polybase 允许用户使用 Transact-SQL 直接从 SQL Server 以及大多数其他数据库安装(如 Oracle、Teradata、MongoDB 等)以及现在的 S3 API 查询数据。 MinIO 提供了访问所有超大规模云环境的独特功能。两者(SQL Server 2022 和 MinIO)的结合使企业能够访问数据并从数据孤岛中获取见解,而到目前为止,这些数据孤岛都是分段且难以组合的。


PolyBase 的一个关键功能是能够允许数据保留其原始位置和格式。可以像 SQL Server 中的任何其他表一样就地查询外部数据。此方案最大限度地减少了数据移动和数据复制的需求。数据复制带来的最大问题之一是协调,企业每晚浪费数千个工时和计算能力来协调数据。


SQL Server 2022 允许将数据持续复制到云或从云复制数据,从而实现灾难恢复功能。与 MinIO 的结合允许快速数据驻留在基于 NVMe 的快速数据引擎上,并将其分层到任意数量的较慢层。这些组件并行运行,使您能够使用 Transact-SQL 或 Spark 库读取、写入和处理大数据,从而使您能够轻松地将高价值关系数据与非关系大数据结合起来并进行分析。


此外,SQL Server 2022 与 Active Directory 集成,并包含基于角色的访问控制,以满足企业的安全性和合规性需求。

为什么这很重要

添加外部表的重要性怎么强调都不为过。


首先,进一步证明对象存储在数据基础设施方面已成为主存储。 SAN/NAS 人群不喜欢这个消息,但随着时间的推移,另一个主要数据库或数据组件以一流的方式开启对象存储。坚持的人并不多,而且那些坚持的人现在看起来相当小众。


其次,这使得 SQL 查询能够针对比以往更大的数据集执行。反过来,这有可能从现有数据中产生更多价值,并从长尾或“暗”数据中产生新价值。 SAN/NAS 存储库通常在几个 PB 时就会碰壁。想象一下针对 10 或 100 个 PB 运行查询吗?现在这已经摆在桌面上了。


第三,这进一步巩固了我们几年来看到的第二代分解故事。第一代是存储和计算的分离。第二代是并行生成,是分析应用程序层(SQL 或 Splunk 或 Vertica),将查询功能与存储功能分离。坦率地说,这是无处不在的,并且符合查询玩家、存储玩家和客户的最大利益。这意味着客户将根据其用例的特定需求构建最佳的定制堆栈。它将强调存储方面的性能、弹性、安全性、云原生性、可扩展性——这反过来又要求解决方案是软件定义的。


第四,这可以满足客户在多云方面的需求。客户不想在一处运行 SQL Server 2022 - 他们希望在数据所在的任何地方运行它。外部表(以及作为合作伙伴的 MinIO)的添加满足了这一需求。本地部署。查看。天蓝色。查看。所有其他公共云和 Kubernetes 发行版。查看。


对于 SQL Server 和 MinIO 来说,这是一个分水岭时刻。出于上述所有原因,我们将成为首选对象存储,这将扩大我们在 F500 帐户中已经深入的渗透。

客户用例示例

现阶段我们无法透露太多细节 - 但我们有一些客户一直在热切地等待抢先体验窗口,以便在 11 月正式发布日期之前开始构建。


例如,我们合作的财富 100 强银行之一在 S3 存储集群上存储大量客户行为数据。为了运行简单的 SQL 查询来从这些数据中获取基本情报,他们过去使用过一些技术将部分数据提取到某些数据库中,然后对其运行查询。该客户正在注册 Microsoft 早期访问计划,以便他们可以对其数据运行查询,而无需将其复制到新的数据库实例中。这将为他们节省大量时间,并解决大多数银行需要处理的数据核对难题。此外,如果该银行决定采用机器学习技术从这些数据中获得更复杂的见解,他们将能够利用 MLOps 平台,这些平台可以在 Kubernetes 集群上轻松扩展,并与其原始实现一起进行扩展。


在另一个示例中,我们有一个大型零售客户,需要将信息从分布式销售点系统引入集中式数据存储,该数据存储使用 MinIO 作为所有夜间活动的对象存储平台。文件可能采用 parquet 或 csv 格式,并传输到存储桶中。过去,业务分析团队需要将此数据导入到他们的 SQL Server 环境中,以对该数据运行批量分析。然而,随着 SQL Server 2022 的推出,像这样的客户端将能够直接针对 MinIO 上 S3 存储桶中的数据运行分析。这不仅可以节省他们的时间,还可以节省与数据复制和协调相关的费用。同样重要的是,零售商(任何企业)将能够利用 AI/ML 管道直接从这些数据中获取更深入的见解。就 Microsoft 而言,零售商提供了与 Azure Synapse 的集成来驱动深度 ML 管道。推动这种级别的洞察力的其他方法可能会利用 TensorFlow、Kubeflow 和 Pytorch,所有这些都与 MinIO 具有一流的集成。

会发生什么

随着今天的公告,抢先体验窗口已经打开。此版本中没有一些内容(例如灾难恢复),但这些内容很快就会准备就绪。


预计将于 11 月全面发布,但我们鼓励所有企业客户立即开始。它将有助于调整规模以满足特定工作负载的要求。一些客户会扩大规模,另一些客户会将其保持在数百 TB。关键是配置得当,两者都会很快。

下一步是什么

我们将于 7 月 12 日与 Hugo Queiroz 在 DevOps.com 上举办一次网络研讨会。这将概述联合价值主张,并有机会亲自动手并了解如何配置 SQL Server 2022,以通过外部表实现大规模扩展。注册即将开放。


在此期间,如果您有任何疑问,请随时联系[email protected]或加入我们的 Slack 频道。


也发布在这里