paint-brush
Utilisation de tables externes pour stocker et interroger des données sur MinIO avec SQL Server 2022par@minio
8,832 lectures
8,832 lectures

Utilisation de tables externes pour stocker et interroger des données sur MinIO avec SQL Server 2022

par MinIO8m2023/07/27
Read on Terminal Reader

Trop long; Pour lire

Avec Microsoft SQL Server 2022, le stockage d'objets devient un citoyen de première classe grâce à une technique appelée tables externes. Il y a deux parties. Tout d'abord, un connecteur S3. Deuxièmement, des améliorations apportées au cadre de virtualisation des données Polybase. Avec cet ajout, les entreprises peuvent désormais interroger des magasins d'objets volumineux avec SQL Server 2022 - partout où ces magasins d'objets existent. La nouvelle fonctionnalité répond à deux défis clés des clients : les moyens d'accéder aux données là où elles se trouvent et de ne pas avoir à apprendre de nouvelles langues. Avec MinIO, les données peuvent être n'importe où - infrastructure de cloud public, clouds privés, distributions Kubernetes, périphérie.
featured image - Utilisation de tables externes pour stocker et interroger des données sur MinIO avec SQL Server 2022
MinIO HackerNoon profile picture
0-item

Les données sont une chose, la compréhension en est une autre. Il existe une gamme de façons d'extraire des informations à partir d'informations - et cette gamme s'accompagne de compromis. Si vous considérez cela comme une pyramide, vous avez l'IA en haut, ML juste en dessous, des analyses avancées en dessous et SQL comme base. Il s'agit d'une image simplifiée mais représentative de l'analytique dans l'entreprise.



Le défi est que les talents en IA/ML sont vraiment difficiles à trouver. Ce n'est pas nécessairement une nouvelle, mais cela s'est cristallisé lors de conversations avec des collègues responsables de l'exécution d'analyses pour certaines des plus grandes entreprises du Fortune 500. Alors que l'IA et le ML promettent de fournir certaines des informations les plus approfondies sur les données, la configuration et l'exploitation de ces pipelines de ML nécessitent des capacités de science des données hautement sophistiquées. Dans de nombreux cas, il s'agit de projets de longue haleine qui prennent des mois, voire des années, et peuvent nécessiter un recyclage du personnel existant pour apprendre ces nouveaux paradigmes de la science des données.


D'autre part, les compétences SQL sont omniprésentes dans l'organisation et sont la lingua franca des données. C'est ainsi que le monde parle aux bases de données. C'est pourquoi 95% des Fortune 500 exécutent SQL Server de Microsoft. Il n'y a peut-être pas de technologie de données plus omniprésente dans l'entreprise.


Avec Microsoft SQL Server 2022 , le stockage d'objets devient un citoyen de première classe grâce à une technique appelée tables externes. Il y a deux parties. Tout d'abord, un connecteur S3. Deuxièmement, des améliorations apportées au cadre de virtualisation des données Polybase.


Avec cet ajout, les entreprises peuvent désormais interroger des magasins d'objets volumineux avec SQL Server 2022 - partout où ces magasins d'objets existent. La nouvelle fonctionnalité répond à deux défis clés des clients : les moyens d'accéder aux données là où elles se trouvent et de ne pas avoir à apprendre de nouvelles langues.


Avec MinIO, les données peuvent être n'importe où - infrastructure de cloud public, clouds privés, distributions Kubernetes, périphérie.


Creusons un peu plus.

Accédez aux données n'importe où avec la combinaison Minio et Microsoft SQL Server 2022

Microsoft SQL Server 2022 possède deux fonctionnalités clés dont les utilisateurs de MinIO peuvent profiter.

Premièrement, il permet aux administrateurs de bases de données de sauvegarder et de restaurer des données dans n'importe quel environnement cloud à l'aide de l'API S3. Deuxièmement, SQL Server 2022 étend la fonction de tables externes initialement introduite dans SQL Server 2016.


Les tables externes permettent à l'utilisateur d'exécuter des requêtes sur des données qui ne sont pas stockées directement dans SQL Server. Cela permet à l'utilisateur de disposer de la flexibilité architecturale nécessaire pour exécuter SQL Server où il le souhaite et stocker ses données où et comment il le souhaite, tout en conservant la possibilité d'interroger ces données sans les déplacer. La nouvelle fonctionnalité de tables externes lui permet désormais d'atteindre tous les formats de fichiers généralement pris en charge, ainsi que le stockage orienté objet Parquet et S3.


Cela augmentera considérablement la quantité de données pouvant être interrogées par le serveur SQL.


Par exemple, EnterpriseCo pourrait exécuter SQL Server dans Azure. Auparavant, ils déplaçaient les données vers le serveur Azure/SQL pour effectuer leurs requêtes. Désormais, EnterpriseCo peut accéder à ces données sur site, sans avoir à déplacer les données où que ce soit. Cela signifie que ces requêtes peuvent être exécutées sur des ensembles de données de taille PB.


Les choix architecturaux deviennent presque infinis. Exécutez SQL Server sur site et accédez aux données dans le cloud. Exécutez SQL Server sur site et accédez aux données dans le cloud privé. Exécutez SQL Server dans le cloud et accédez aux données en périphérie. Créez un système d'analyse tolérant aux pannes avec une réplication multicloud active-active à l'aide de MinIO et de SQL Server. Les principales considérations sont les performances et celles-ci sont déterminées par les emplacements relatifs de SQL Server et des données.


L'astuce consiste à optimiser les déploiements. Tous les magasins d'objets bénéficieront de la fonctionnalité de table externe, mais MinIO en bénéficiera de manière disproportionnée. La raison est simple, dans un monde où les données d'entreprise sont réparties sur plusieurs clouds, la cohérence est importante. MinIO peut servir de magasin de données sur le cloud public, le cloud privé et la périphérie. En tant que couche de données cohérente, la sécurité, la gestion des accès, la résilience et la gestion du cycle de vie sont également cohérentes. Les performances peuvent être cohérentes ou modulées en fonction des besoins de l'entreprise, tandis que tout le reste reste le même.


Le mécanisme pour ce faire dans SQL Server 2022 passe par une fonctionnalité de virtualisation des données connue sous le nom de Polybase.


Polybase permet à un utilisateur d'interroger des données à l'aide de Transact-SQL directement à partir non seulement de SQL Server, mais aussi de la plupart des autres installations de base de données (comme Oracle, Teradata, MongoDB, etc.) et maintenant des API S3. MinIO offre la capacité unique d'accéder à tous les environnements cloud hyperscaler. La combinaison des deux (SQL Server 2022 et MinIO) permet à une entreprise d'accéder aux données et de générer des informations à partir de silos de données qui, jusqu'à présent, étaient segmentés et difficiles à combiner.


Une caractéristique clé de PolyBase est la possibilité de permettre aux données de rester dans leur emplacement et leur format d'origine. Les données externes peuvent être interrogées sur place comme n'importe quelle autre table dans SQL Server. Ce scénario minimise le besoin de déplacement et de réplication des données. L'un des plus gros problèmes que présente la réplication des données est la réconciliation, les entreprises gaspillent des milliers d'heures de travail et de puissance de calcul en réconciliant les données chaque nuit.


SQL Server 2022 permet une réplication continue des données vers et depuis le cloud, ce qui permet des capacités de reprise après sinistre. La combinaison avec MinIO permet aux données rapides de résider sur des moteurs de données rapides basés sur NVMe et de les hiérarchiser à n'importe quel nombre de niveaux plus lents. Ces composants s'exécutent côte à côte pour vous permettre de lire, d'écrire et de traiter le Big Data à l'aide des bibliothèques Transact-SQL ou Spark, ce qui vous permet de combiner et d'analyser facilement vos données relationnelles de grande valeur avec du Big Data non relationnel à grand volume.


De plus, SQL Server 2022 s'intègre à Active Directory et inclut un contrôle d'accès basé sur les rôles pour répondre aux besoins de sécurité et de conformité d'une entreprise.

Pourquoi c'est important

L'importance de l'ajout de tables externes ne peut pas être surestimée.


Premièrement, c'est une preuve supplémentaire que le stockage d'objets est devenu le stockage principal en matière d'infrastructure de données. La foule SAN / NAS n'aime pas ce message, mais chaque semaine qui passe, une autre base de données ou un composant de données majeur active le stockage d'objets d'une manière citoyenne de première classe. Il n'y a pas beaucoup de récalcitrants et ceux qui résistent semblent plutôt niches ces jours-ci.


Deuxièmement, cela permet d'exécuter des requêtes SQL sur des ensembles de données beaucoup plus volumineux que jamais auparavant. Cela génère à son tour la possibilité de générer plus de valeur à partir des données existantes et une nouvelle valeur à partir des données à longue traîne ou « sombres ». Les référentiels SAN/NAS se heurtent généralement à un mur à quelques PB. Imaginez exécuter une requête sur 10 ou 100 PB ? C'est sur la table à ce stade.


Troisièmement, cela cimente davantage l'histoire de désagrégation de deuxième génération que nous voyons depuis quelques années maintenant. La première génération étant la séparation du stockage et du calcul. La deuxième génération, parallèle, étant la couche applicative d'analyse (SQL ou Splunk ou Vertica) désagrégeant la fonction de requête de la fonction de stockage. C'est franchement partout et c'est dans le meilleur intérêt des acteurs de la requête, des acteurs du stockage et des clients. Cela signifie que les clients construiront les meilleures piles sur mesure pour leurs besoins spécifiques à chaque cas d'utilisation. Il mettra l'accent sur les performances, la résilience, la sécurité, le cloud-native-ness, l'évolutivité du côté du stockage - ce qui exigera à son tour que la solution soit définie par logiciel.


Quatrièmement, cela rejoint les clients là où ils se trouvent en termes de multi-cloud. Les clients ne veulent pas exécuter SQL Server 2022 à un seul endroit - ils veulent l'exécuter partout où se trouvent leurs données. L'ajout de tables externes (et de MinIO en tant que partenaire) répond à ce besoin. Sur place. Vérifier. Azur. Vérifier. Tous les autres cloud publics et distribution Kubernetes. Vérifier.


C'est un moment décisif pour SQL Server et pour MinIO. Nous allons être le magasin d'objets incontournable pour toutes les raisons décrites ci-dessus et cela étendra notre pénétration déjà profonde sur les comptes F500.

Exemples de cas d'utilisation client

Nous ne pouvons pas entrer dans trop de détails à ce stade, mais nous avons plusieurs clients qui attendaient avec impatience la fenêtre d'accès anticipé pour commencer à construire vers la date de l'AG de novembre.


Par exemple, l'une des banques Fortune100 avec lesquelles nous travaillons stocke de grandes quantités de données comportementales des clients sur des clusters de stockage S3. Afin d'exécuter des requêtes SQL simples pour générer des informations de base à partir de ces données, ils ont utilisé des techniques dans le passé pour ingérer des parties de ces données dans certaines bases de données, puis exécuter des requêtes dessus. Ce client s'inscrit au programme d'accès anticipé de Microsoft afin qu'il puisse exécuter des requêtes sur ses données sans avoir à les répliquer dans de nouvelles instances de base de données. Cela leur fera gagner beaucoup de temps et leur évitera le casse-tête de la réconciliation des données auquel la plupart des banques doivent faire face. De plus, si cette banque décide d'utiliser des techniques d'apprentissage automatique pour générer des informations plus sophistiquées à partir de ces données, elle aura la possibilité de tirer parti des plates-formes MLOps qui peuvent facilement être mises à l'échelle sur les clusters Kubernetes parallèlement à leur implémentation d'origine.


Dans un autre exemple, nous avons un grand client de détail qui a besoin d'apporter des informations à partir de systèmes de points de vente distribués dans un magasin de données centralisé qui utilise MinIO comme plate-forme de stockage d'objets pour toutes les activités nocturnes. Les fichiers peuvent être au format parquet ou csv et sont transférés dans des buckets. Auparavant, les équipes d'analyse commerciale devaient importer ces données dans leurs environnements SQL Server pour exécuter des analyses par lots sur ces données. Cependant, avec l'introduction de SQL Server 2022, des clients comme celui-ci auront la possibilité d'exécuter directement des analyses sur les données stockées dans les compartiments S3 sur MinIO. Cela leur fera non seulement gagner du temps, mais leur évitera également les dépenses associées à la réplication et à la réconciliation des données. Tout aussi important, le détaillant (toute entreprise d'ailleurs) pourra tirer parti des pipelines AI/ML pour tirer des informations plus approfondies directement à partir de ces données. Dans le cas de Microsoft, le détaillant a fourni une intégration avec Azure Synapse pour piloter des pipelines ML profonds. D'autres méthodes pour générer ce niveau d'informations peuvent tirer parti de TensorFlow, Kubeflow et Pytorch, qui ont tous une intégration de première classe avec MinIO.

À quoi s'attendre

Avec l'annonce d'aujourd'hui, la fenêtre d'accès anticipé est ouverte. Il y a quelques éléments qui ne sont pas présents dans cette version (reprise après sinistre par exemple) mais ceux-ci seront prêts sous peu.


Nous nous attendons à une sortie générale en novembre, mais nous encourageons toutes nos entreprises clientes à commencer dès maintenant. Cela aidera au dimensionnement pour répondre aux exigences de la charge de travail spécifique. Certains clients iront gros, d'autres le garderont dans les centaines de To. La clé est que correctement configuré, les deux iront vite.

Et après

Nous allons faire un webinaire avec Hugo Queiroz sur DevOps.com le 12 juillet. Cela fournira un aperçu de la proposition de valeur commune et une opportunité d'aller de l'avant et de voir exactement comment configurer SQL Server 2022 pour crier à grande échelle avec des tables externes. Les inscriptions seront ouvertes sous peu.


En attendant, n'hésitez pas à nous contacter sur [email protected] ou à nous rejoindre sur notre chaîne Slack pour toute question que vous pourriez avoir.


Également publié ici .