Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server 2019 (15.x) e versões posteriores
O Microsoft SQL Server 2019 Big Clusters é um complemento para a Plataforma SQL Server que permite implantar clusters escaláveis de contêineres SQL Server, Spark e HDFS em execução no Kubernetes. Esses componentes estão sendo executados lado a lado para permitir que você leia, escreva e processe big data usando bibliotecas Transact-SQL ou Spark, permitindo que você combine e analise facilmente seus dados relacionais de alto valor com big data não relacional de alto volume. Os clusters de Big Data também permitem virtualizar dados com o PolyBase, para que você possa consultar dados de SQL Server externos, Oracle, Teradata, MongoDB e outras fontes de dados usando tabelas externas. O complemento Microsoft SQL Server 2019 Big Clusters fornece alta disponibilidade para a instância mestra do SQL Server e todos os bancos de dados usando a tecnologia de grupo de disponibilidade Always On.
O complemento SQL Server 2019 Big Data Clusters é executado no local e na nuvem usando a plataforma Kubernetes, para qualquer implantação padrão do Kubernetes. Além disso, o complemento SQL Server 2019 Big Data Clusters integra-se ao Ative Directory e inclui controle de acesso baseado em função para satisfazer as necessidades de segurança e conformidade da sua empresa.
Desativação do complemento SQL Server 2019 Big Data Clusters
Em 28 de fevereiro de 2025, desativaremos os clusters de Big Data do SQL Server 2019. Todos os usuários existentes do SQL Server 2019 com Software Assurance terão suporte total na plataforma e o software continuará a ser mantido por meio de atualizações cumulativas do SQL Server até esse momento. Para obter mais informações, consulte a postagem do blog do anúncio.
Alterações no suporte ao PolyBase no SQL Server
Relacionados à desativação dos Clusters de Big Data do SQL Server 2019 estão alguns recursos relacionados a consultas de dimensionamento.
O recurso de grupos de expansão PolyBase do Microsoft SQL Server foi desativado. A funcionalidade de grupo de expansão é removida do produto no SQL Server 2022 (16.x). As versões no mercado do SQL Server 2019, SQL Server 2017 e SQL Server 2016 continuam a oferecer suporte à funcionalidade até o fim da vida útil desses produtos. A virtualização de dados PolyBase continua a ser totalmente suportada como um recurso de expansão no SQL Server.
As fontes de dados externas Cloudera (CDP) e Hortonworks (HDP) Hadoop também serão desativadas para todas as versões no mercado do SQL Server e não estão incluídas no SQL Server 2022. O suporte para fontes de dados externas é limitado às versões do produto no suporte base pelo respetivo fornecedor. É aconselhável usar a nova integração de armazenamento de objetos disponível no SQL Server 2022 (16.x).
No SQL Server 2022 (16.x) e versões posteriores, os usuários devem configurar suas fontes de dados externas para usar novos conectores ao se conectar ao Armazenamento do Azure. A tabela a seguir resume a alteração:
Fonte de dados externa | De | Para |
---|---|---|
Armazenamento de Blobs do Azure | wasb[s] |
abs |
ADLS Gen 2 | abfs[s] |
adls |
Observação
O Armazenamento de Blobs do Azure (abs
) exigirá o uso da Assinatura de Acesso Compartilhado (SAS) para o SECRET nas credenciais com escopo de base de dados. No SQL Server 2019 e versões anteriores, o conector usava a Chave da Conta de Armazenamento do wasb[s]
com credenciais de escopo de banco de dados ao autenticar-se numa conta de Armazenamento do Azure.
Compreender a arquitetura de Clusters de Big Data para opções de substituição e migração
Para criar sua solução substituta para um sistema de armazenamento e processamento de Big Data, é importante entender o que os Clusters de Big Data do SQL Server 2019 fornecem, e sua arquitetura pode ajudar a informar suas escolhas. A arquitetura de um cluster de big data é a seguinte:
Essa arquitetura fornece o seguinte mapeamento de funcionalidade:
Componente | Benefício |
---|---|
Kubernetes | Orquestrador de código aberto para implantar e gerenciar aplicativos baseados em contêiner em escala. Fornece um método declarativo para criar e controlar resiliência, redundância e portabilidade para todo o ambiente com escala elástica. |
Controlador de clusters de Big Data | Fornece gerenciamento e segurança para o cluster. Ele contém o serviço de controle, o repositório de configuração e outros serviços de nível de cluster, como Kibana, Grafana e Elastic Search. |
Pool de computação | Fornece recursos computacionais para o cluster. Ele contém nós que executam o SQL Server em pods Linux. Os pods no pool de computação são divididos em instâncias de computação SQL para tarefas de processamento específicas. Esse componente também fornece virtualização de dados usando o PolyBase para consultar fontes de dados externas sem mover ou copiar os dados. |
Conjunto de dados | Fornece persistência de dados para o cluster. O pool de dados consiste em um ou mais pods executando o SQL Server no Linux. Ele é usado para ingerir dados de consultas SQL ou trabalhos do Spark. |
Pool de armazenamento | A piscina de armazenamento consiste em pods de armazenamento compostos por SQL Server no Linux, Spark e HDFS. Todos os nós de armazenamento em um cluster de big data são membros de um cluster HDFS. |
Pool de aplicativos | Permite a implantação de aplicativos em um cluster de big data fornecendo interfaces para criar, gerenciar e executar aplicativos. |
Para obter mais informações sobre essas funções, consulte Introdução aos clusters de Big Data do SQL Server.
Opções de substituição de funcionalidade para Big Data e SQL Server
A função de dados operacionais facilitada pelo SQL Server dentro dos Clusters de Big Data pode ser substituída pelo SQL Server localmente em uma configuração híbrida ou usando a plataforma Microsoft Azure. O Microsoft Azure oferece uma escolha de bancos de dados relacionais, NoSQL e na memória totalmente gerenciados, abrangendo mecanismos proprietários e de código aberto, para atender às necessidades dos desenvolvedores de aplicativos modernos. O gerenciamento de infraestrutura, incluindo escalabilidade, disponibilidade e segurança, é automatizado, economizando tempo e dinheiro, e permite que você se concentre na criação de aplicativos, enquanto os bancos de dados gerenciados pelo Azure simplificam seu trabalho, fornecendo insights de desempenho por meio de inteligência incorporada, dimensionamento sem limites e gerenciamento de ameaças à segurança. Para obter mais informações, consulte Bancos de dados do Azure.
O próximo ponto de decisão são os locais de computação e armazenamento de dados para análise. As duas opções de arquitetura são implantações na nuvem e híbridas. A maioria das cargas de trabalho analíticas pode ser migrada para a plataforma Microsoft Azure. Os dados "nascidos na nuvem" (originados em aplicativos baseados em nuvem) são os principais candidatos para essas tecnologias, e os serviços de movimentação de dados podem migrar dados locais em grande escala com segurança e rapidez. Para obter mais informações sobre as opções de movimentação de dados, consulte Soluções de transferência de dados.
O Microsoft Azure possui sistemas e certificações que permitem dados seguros e processamento de dados em várias ferramentas. Para obter mais informações sobre essas certificações, consulte a Central de Confiabilidade.
Observação
A plataforma Microsoft Azure fornece um nível muito alto de segurança, várias certificações para vários setores e respeita a soberania de dados para requisitos governamentais. O Microsoft Azure também tem uma plataforma de nuvem dedicada para cargas de trabalho governamentais. A segurança por si só não deve ser o principal ponto de decisão para sistemas locais. Você deve avaliar cuidadosamente o nível de segurança fornecido pelo Microsoft Azure antes de decidir manter suas soluções de big data no local.
Na opção de arquitetura na nuvem , todos os componentes residem no Microsoft Azure. Sua responsabilidade recai sobre os dados e o código que você cria para armazenamento e processamento de suas cargas de trabalho. Essas opções são abordadas mais detalhadamente neste artigo.
- Essa opção funciona melhor para uma ampla variedade de componentes para armazenamento e processamento de dados, e quando você deseja se concentrar em dados e construções de processamento em vez de infraestrutura.
Nas opções de arquitetura híbrida , alguns componentes são mantidos no local e outros são colocados em um provedor de nuvem. A conectividade entre os dois foi projetada para o melhor posicionamento do processamento sobre dados.
- Essa opção funciona melhor quando você tem um investimento considerável em tecnologias e arquiteturas locais, mas deseja usar as ofertas do Microsoft Azure ou quando tem destinos de processamento e aplicativos residentes no local ou para um público mundial.
Para obter mais informações sobre como criar arquiteturas escaláveis, consulte Criar um sistema escalável para dados massivos.
Na nuvem
Azure SQL com Synapse
Você pode substituir a funcionalidade dos Clusters de Big Data do SQL Server usando uma ou mais opções de banco de dados SQL do Azure para dados operacionais e o Microsoft Azure Synapse para suas cargas de trabalho analíticas.
O Microsoft Azure Synapse é um serviço de análise empresarial que acelera o tempo de perceção em armazéns de dados e sistemas de big data, usando processamento distribuído e construções de dados. O Azure Synapse reúne tecnologias SQL usadas em data warehousing corporativo, tecnologias Spark usadas para big data, Pipelines para integração de dados e ETL/ELT e integração profunda com outros serviços do Azure, como Power BI, Cosmos DB e Azure Machine Learning.
Use o Microsoft Azure Synapse como um substituto para clusters de Big Data do SQL Server 2019 quando precisar:
- Use modelos de recursos dedicados e sem servidor. Para obter desempenho e custo previsíveis, crie pools SQL dedicados para reservar poder de processamento para dados armazenados em tabelas SQL.
- Processe cargas de trabalho não planeadas ou "burst", aceda a um endpoint SQL sempre disponível e sem servidor.
- Use recursos internos de streaming para transferir dados de fontes de dados na nuvem para tabelas SQL.
- Integre IA com SQL usando modelos de aprendizado de máquina para pontuar dados usando a função T-SQL PREDICT.
- Use modelos de ML com algoritmos SparkML e integração do Azure Machine Learning para Apache Spark 2.4 com suporte para Linux Foundation Delta Lake.
- Use um modelo de recursos simplificado que liberte você de ter que se preocupar com o gerenciamento de clusters.
- Processe dados que exijam inicialização rápida do Spark e dimensionamento automático agressivo.
- Processar dados using.NET para o Spark, permitindo que você reutilize sua experiência em C# e o código .NET existente em um aplicativo Spark.
- Trabalhe com tabelas definidas em ficheiros no data lake, consumidas sem problemas pelo Spark ou pelo Hive.
- Use SQL com o Spark para explorar e analisar diretamente arquivos Parquet, CSV, TSV e JSON armazenados em um data lake.
- Habilite o carregamento rápido e escalável de dados entre bancos de dados SQL e Spark.
- Ingerir dados de 90+ fontes de dados.
- Habilite o ETL "sem código" com atividades de fluxo de dados.
- Orquestre blocos de anotações, trabalhos do Spark, procedimentos armazenados, scripts SQL e muito mais.
- Monitore recursos, uso e usuários no SQL e no Spark.
- Use o controle de acesso baseado em função para simplificar o acesso aos recursos de análise.
- Escreva código SQL ou Spark e integre com processos de CI/CD corporativos.
A arquitetura do Microsoft Azure Synapse é a seguinte:
Para obter mais informações sobre o Microsoft Azure Synapse, consulte O que é o Azure Synapse Analytics?
Azure SQL mais Azure Machine Learning
Você pode substituir a funcionalidade dos Clusters de Big Data do SQL Server usando uma ou mais opções de banco de dados SQL do Azure para dados operacionais e o Microsoft Azure Machine Learning para suas cargas de trabalho preditivas.
O Azure Machine Learning é um serviço baseado na nuvem que pode ser utilizado para qualquer tipo de aprendizagem automática, desde o ML clássico até à aprendizagem profunda, supervisionada e não supervisionada. Quer prefira escrever código Python ou R com o SDK ou trabalhar com opções no-code/low-code no estúdio, pode criar, treinar e acompanhar modelos de aprendizagem automática e de aprendizagem profunda numa Área de Trabalho do Azure Machine Learning. Com o Azure Machine Learning, você pode começar o treinamento em sua máquina local e, em seguida, expandir para a nuvem. O serviço também interopera com ferramentas populares de aprendizagem profunda e reforço de código aberto, como PyTorch, TensorFlow, scikit-learn e Ray RLlib.
Use o Aprendizado de Máquina do Microsoft Azure como um substituto para os Clusters de Big Data do SQL Server 2019 quando precisar:
- Um ambiente web baseado em designer para Machine Learning: módulos de arrastar e soltar para criar os seus experimentos e, em seguida, desenvolver pipelines em um ambiente de baixo-código.
- Blocos de anotações Jupyter: use nossos blocos de anotações de exemplo ou crie seus próprios blocos de anotações para usar nossos exemplos de SDK para Python para seu aprendizado de máquina.
- Scripts R ou blocos de anotações nos quais você usa o SDK para R para escrever seu próprio código ou usar os módulos R no designer.
- O Acelerador de Solução de Muitos Modelos baseia-se no Azure Machine Learning e permite-lhe treinar, operar e gerir centenas ou até milhares de modelos de aprendizagem automática.
- As extensões de aprendizado de máquina para Visual Studio Code (visualização) fornecem um ambiente de desenvolvimento completo para criar e gerenciar seus projetos de aprendizado de máquina.
- Uma Interface de Command-Line de Aprendizado de Máquina (CLI), o Aprendizado de Máquina do Azure inclui uma extensão da CLI do Azure que fornece comandos para gerenciar com recursos do Azure Machine Learning a partir da linha de comando.
- Integração com estruturas de código aberto como PyTorch, TensorFlow e scikit-learn e muito mais para treinamento, implantação e gerenciamento do processo de aprendizado de máquina de ponta a ponta.
- Aprendizagem por reforço com Ray RLlib.
- MLflow para rastrear métricas e implantar modelos ou Kubeflow para criar pipelines de fluxo de trabalho de ponta a ponta.
A arquitetura de uma implantação do Microsoft Azure Machine Learning é a seguinte:
Para obter mais informações sobre o Aprendizado de Máquina do Microsoft Azure, consulte Como funciona o Aprendizado de Máquina do Azure.
Azure SQL do Databricks
Você pode substituir a funcionalidade dos Clusters de Big Data do SQL Server usando uma ou mais opções de banco de dados SQL do Azure para dados operacionais e o Microsoft Azure Databricks para suas cargas de trabalho analíticas.
O Azure Databricks é uma plataforma de análise de dados otimizada para a plataforma de serviços de nuvem do Microsoft Azure. O Azure Databricks oferece dois ambientes para desenvolver aplicativos com uso intensivo de dados: Azure Databricks SQL Analytics e Azure Databricks Workspace.
O Azure Databricks SQL Analytics fornece uma plataforma fácil de usar para analistas que desejam executar consultas SQL em seu data lake, criar vários tipos de visualização para explorar os resultados da consulta de diferentes perspetivas e criar e compartilhar painéis.
O Azure Databricks Workspace fornece um espaço de trabalho interativo que permite a colaboração entre engenheiros de dados, cientistas de dados e engenheiros de aprendizado de máquina. Para um pipeline de big data, os dados (brutos ou estruturados) são ingeridos no Azure por meio do Azure Data Factory em lotes ou transmitidos quase em tempo real usando Apache Kafka, Hubs de Eventos ou Hub IoT. Esses dados são inseridos em um data lake para armazenamento persistente de longo prazo, no Armazenamento de Blobs do Azure ou no Armazenamento do Azure Data Lake. Como parte do seu fluxo de trabalho de análise, use o Azure Databricks para ler dados de várias fontes de dados e transformá-los em informações inovadoras usando o Spark.
Use o Microsoft Azure Databricks como um substituto para clusters de Big Data do SQL Server 2019 quando precisar:
- Clusters Spark totalmente gerenciados com Spark SQL e DataFrames.
- Streaming para processamento e análise de dados em tempo real para aplicações analíticas e interativas, integração com HDFS, Flume e Kafka.
- Acesso à biblioteca MLlib, que consiste em algoritmos e utilitários de aprendizagem comuns, incluindo classificação, regressão, clustering, filtragem colaborativa, redução de dimensionalidade e primitivos de otimização subjacentes.
- Documentação do seu progresso em blocos de anotações em R, Python, Scala ou SQL.
- Visualização de dados em poucos passos, usando ferramentas familiares como Matplotlib, ggplot ou d3.
- Painéis interativos para criar relatórios dinâmicos.
- GraphX, para gráficos e computação gráfica para um amplo escopo de casos de uso, desde análise cognitiva até exploração de dados.
- Criação de clusters em segundos, com clusters dinâmicos de dimensionamento automático, partilhando-os entre equipas.
- Acesso programático a clusters usando APIs REST.
- Acesso instantâneo aos recursos mais recentes do Apache Spark a cada versão.
- A Spark Core API: Inclui suporte para R, SQL, Python, Scala e Java.
- Um espaço de trabalho interativo para exploração e visualização.
- Pontos de extremidade SQL geridos totalmente na nuvem.
- Consultas SQL que são executadas em pontos de extremidade SQL totalmente gerenciados, dimensionados de acordo com a latência da consulta e o número de usuários simultâneos.
- Integração com o Microsoft Entra ID (anteriormente Azure Ative Directory).
- Acesso baseado em funções para permissões de utilizador detalhadas para notebooks, clusters, trabalhos e dados.
- SLAs de nível empresarial.
- Painéis para compartilhar insights, combinando visualizações e texto para compartilhar insights extraídos de suas consultas.
- Os alertas ajudam a monitorar e integrar, além de notificar quando um campo retornado por uma consulta atinge um limite. Utilize os alertas para monitorizar a atividade do seu negócio ou integre-os em ferramentas para começar fluxos de trabalho, como a inclusão de utilizadores ou pedidos de suporte.
- Segurança corporativa, incluindo integração com o Microsoft Entra ID, controles baseados em funções e SLAs que protegem seus dados e sua empresa.
- Integração com serviços do Azure e bases de dados e armazenamento do Azure, incluindo Synapse Analytics, Cosmos DB, Data Lake Store e armazenamento de Blobs.
- Integração com o Power BI e outras ferramentas de BI, como o Tableau Software.
A arquitetura de uma implantação do Microsoft Azure Databricks é a seguinte:
Para obter mais informações sobre o Microsoft Azure Databricks, consulte O que é Databricks Data Science & Engineering?
Híbrido
Banco de dados espelhado de malha
Como uma experiência de replicação de dados, o Database Mirroring in Fabric é uma solução de baixo custo e baixa latência para reunir dados de vários sistemas em uma única plataforma de análise. Você pode replicar continuamente seu conjunto de dados existente diretamente no OneLake do Fabric, incluindo dados do Banco de Dados SQL do Azure, Snowflake e Cosmos DB.
Com os dados mais atualizados em um formato consultável no OneLake, agora você pode usar todos os diferentes serviços no Fabric, como executar análises com o Spark, executar blocos de anotações, engenharia de dados, visualizar por meio de Relatórios do Power BI e muito mais.
O espelhamento no Fabric proporciona uma experiência simples para acelerar o tempo para obter valor a partir de insights e decisões e para eliminar silos de dados entre soluções tecnológicas, sem a necessidade de desenvolver processos caros de Extração, Transformação e Carregamento (ETL) para mover dados.
Com o Mirroring no Fabric, não precisa juntar serviços diferentes de vários fornecedores. Em vez disso, você pode desfrutar de um produto altamente integrado, de ponta a ponta e fácil de usar, projetado para simplificar suas necessidades de análise e criado para abertura e colaboração entre soluções de tecnologia que podem ler o formato de tabela Delta Lake de código aberto.
Para obter mais informações, consulte:
- Bancos de dados espelhados do Microsoft Fabric
- Monitoramento de bancos de dados espelhados do Microsoft Fabric
- Explore os dados em seu banco de dados espelhado usando o Microsoft Fabric
- O que é o Microsoft Fabric?
- Dados do modelo no modelo semântico padrão do Power BI no Microsoft Fabric
- Qual é o ponto de acesso de análise SQL para um Lakehouse?
- Lago Direto
Usar o SQL Server 2022 com o Azure Synapse Link for SQL
O SQL Server 2022 (16.x) contém um novo recurso que permite a conectividade entre tabelas do SQL Server e a plataforma Microsoft Azure Synapse, o Azure Synapse Link for SQL. O Azure Synapse Link for SQL Server 2022 (16.x) fornece feeds de alteração automática que capturam as alterações no SQL Server e as carregam no Azure Synapse Analytics. Ele fornece análise quase em tempo real e processamento transacional e analítico híbrido com impacto mínimo nos sistemas operacionais. Quando os dados estiverem no Synapse, você poderá combiná-los com muitas fontes de dados diferentes, independentemente de seu tamanho, escala ou formato, e executar análises poderosas sobre todos eles usando sua escolha de Aprendizado de Máquina do Azure, Spark ou Power BI. Como os feeds de alteração automatizados apenas enviam por push o que é novo ou diferente, a transferência de dados acontece muito mais rápido e agora permite insights quase em tempo real, com impacto mínimo no desempenho do banco de dados de origem no SQL Server 2022 (16.x).
Para suas cargas de trabalho operacionais e até mesmo muitas de suas cargas de trabalho analíticas, o SQL Server pode lidar com grandes tamanhos de banco de dados - para obter mais informações sobre especificações de capacidade máxima para o SQL Server, consulte Limites de capacidade de computação por edição do SQL Server. O uso de várias instâncias do SQL Server em máquinas separadas com solicitações T-SQL particionadas permite um ambiente de expansão para aplicativos.
O uso do PolyBase permite que sua instância do SQL Server consulte dados com T-SQL diretamente do SQL Server, Oracle, Teradata, MongoDB e Cosmos DB sem instalar separadamente o software de conexão do cliente. Você também pode usar o conector ODBC genérico em uma instância baseada no Microsoft Windows para se conectar a provedores adicionais usando drivers ODBC de terceiros. O PolyBase permite que consultas T-SQL juntem os dados de fontes externas a tabelas relacionais em uma instância do SQL Server. Isso permite que os dados permaneçam em seu local e formato originais. Você pode virtualizar os dados externos por meio da instância do SQL Server, para que eles possam ser consultados no local como qualquer outra tabela no SQL Server. O SQL Server 2022 (16.x) também permite consultas ad hoc e backup/restauro sobre Object-Store usando as opções de armazenamento mediante hardware ou software do S3-API.
Duas arquiteturas de referência gerais consistem em usar o SQL Server em um servidor dedicado para consultas de dados estruturados e uma instalação distinta de um sistema não relacional expansível (como Apache Hadoop ou Apache Spark) para uma ligação local ao Synapse. A outra opção é usar um conjunto de contêineres em um cluster Kubernetes com todos os componentes para a sua solução.
Microsoft SQL Server no Windows, Apache Spark e armazenamento de objetos no local
Você pode instalar o SQL Server no Windows ou Linux e aumentar a escala da arquitetura de hardware, usando o recurso de consulta de armazenamento de objetos do SQL Server 2022 (16.x) e o recurso PolyBase para habilitar consultas em todos os dados do seu sistema.
A instalação e configuração de uma plataforma de expansão, como Apache Hadoop ou Apache Spark, permite consultar dados não relacionais em escala. O uso de um conjunto central de sistemas Object-Storage que suportam o S3-API permite que o SQL Server 2022 (16.x) e o Spark acessem o mesmo conjunto de dados em todos os sistemas.
Você também pode usar o sistema de orquestração de contêineres do Kubernetes para sua implantação. Isso permite uma arquitetura declarativa que pode ser executada no local ou em qualquer nuvem que suporte Kubernetes ou a plataforma Red Hat OpenShift. Para saber mais sobre como implantar o SQL Server em um ambiente Kubernetes, consulte Implantar um cluster de contêiner do SQL Server no Azure ou assista Implantando o SQL Server 2019 no Kubernetes.
Use o SQL Server e o Hadoop/Spark local como um substituto para os Clusters de Big Data do SQL Server 2019 quando precisar:
- Mantenha toda a solução no local
- Use hardware dedicado para todas as partes da solução
- Acesse dados relacionais e não relacionais da mesma arquitetura, em ambas as direções
- Compartilhar um único conjunto de dados não relacionais entre o SQL Server e o sistema não relacional de expansão
Executar a migração
Depois de escolher uma localização (In-Cloud ou híbrida) para sua migração, deve pesar os vetores de tempo de inatividade e custo para determinar se se deve executar um novo sistema e mover os dados do sistema anterior para o novo em tempo real (migração lado a lado), efetuar um backup e restauração, ou um reinício do sistema utilizando fontes de dados existentes (migração in-situ).
Sua próxima decisão é reescrever a funcionalidade atual em seu sistema usando a nova opção de arquitetura ou mover o máximo possível do código para o novo sistema. Embora a primeira escolha possa levar mais tempo, ela permite que você use os novos métodos, conceitos e vantagens que a nova arquitetura oferece. Nesse caso, os mapas de acesso a dados e funcionalidade são os principais esforços de planejamento nos quais você deve se concentrar.
Se você planeja migrar o sistema atual com o mínimo de alteração de código possível, a compatibilidade de idioma é seu foco principal para o planejamento.
Migração de código
Sua próxima etapa é auditar o código que o sistema atual usa e quais alterações ele precisa para ser executado no novo ambiente.
Há dois vetores principais a serem considerados pela migração de código:
- Fontes e sumidouros
- Migração de funcionalidades
Fontes e sumidouros
A primeira tarefa na migração de código é identificar os métodos de conexão da fonte de dados, cadeias de caracteres ou APIs que o código usa para acessar os dados importados, seu caminho e seu destino final. Documente essas fontes e crie um mapa para os locais da nova arquitetura.
- Se a solução atual estiver a usar um sistema de pipeline para mover os dados através do sistema, mapeie as novas fontes, etapas e saídas da arquitetura para os componentes do pipeline.
- Se a nova solução também estiver substituindo a arquitetura de pipeline , trate o sistema como uma nova instalação para fins de planejamento, mesmo que você esteja reutilizando o hardware ou a plataforma de nuvem como substituto.
Migração de funcionalidades
O trabalho mais complexo necessário em uma migração é referenciar, atualizar ou criar a documentação da funcionalidade do sistema atual. Se estiver a planear uma atualização no local e tentar reduzir ao máximo a quantidade de reescrita de código, esta etapa é a mais demorada.
No entanto, uma migração de uma tecnologia anterior é muitas vezes um momento ideal para se atualizar sobre os mais recentes avanços em tecnologia e aproveitar as construções que ela fornece. Muitas vezes você pode ganhar mais segurança, desempenho, opções de recursos e até otimizações de custos por uma reescrita do seu sistema atual.
Em ambos os casos, você tem dois fatores principais envolvidos na migração: o código e os idiomas suportados pelo novo sistema e as opções em torno da movimentação de dados. Normalmente, você deve ser capaz de alterar cadeias de conexão do cluster de big data atual para a instância do SQL Server e o ambiente Spark. Qualquer informação de conexão de dados e a transferência de código devem ser mínimas.
Se você estiver prevendo uma reescrita de sua funcionalidade atual, mapeie as novas bibliotecas, pacotes e DLLs para a arquitetura escolhida para a migração. Você encontrará uma lista de cada uma das bibliotecas, idiomas e funções que cada solução oferece nas referências de documentação mostradas nas seções anteriores. Mapeie quaisquer idiomas suspeitos ou não suportados e planeje a substituição pela arquitetura escolhida.
Opções de migração de dados
Existem duas abordagens comuns para a movimentação de dados em um sistema analítico de grande escala. A primeira é criar um processo de "transição" em que o sistema original continua a processar dados e esses dados são acumulados em um conjunto menor de fontes de dados para relatórios agregados. O novo sistema começa com dados novos e é usado a partir da data de migração.
Em alguns casos, todos os dados precisam ser movidos do sistema legado para o novo sistema. Nesse caso, pode montar os arquivos originais dos Clusters de Big Data do SQL Server, se o novo sistema oferecer suporte, e depois copiar os dados por partes para o novo sistema, ou pode realizar uma movimentação física.
A migração de seus dados atuais dos Clusters de Big Data do SQL Server 2019 para outro sistema depende muito de dois fatores: o local dos dados atuais e o destino ser local ou na nuvem.
Migração de dados no local
Para migrações locais para locais, você pode migrar os dados do SQL Server com uma estratégia de backup e restauração ou pode configurar a replicação para mover alguns ou todos os seus dados relacionais. O SQL Server Integration Services também pode ser usado para copiar dados do SQL Server para outro local. Para obter mais informações sobre como mover dados com o SSIS, consulte SQL Server Integration Services.
Para os dados HDFS em seu ambiente atual de Cluster de Big Data do SQL Server, a abordagem padrão é montar os dados em um Cluster Spark autônomo e usar o processo de Armazenamento de Objetos para mover os dados para que uma instância do SQL Server 2022 (16.x) possa acessá-los ou deixá-los as-is e continuar a processá-los com o Spark Jobs.
Migração de dados na nuvem
Para dados localizados no armazenamento em nuvem ou no local, você pode usar o Azure Data Factory, que tem mais de 90 conectores para um pipeline completo de transferência, com agendamento, monitoramento, alerta e outros serviços. Para obter mais informações sobre o Azure Data Factory, consulte O que é o Azure Data Factory?
Se você quiser mover grandes quantidades de dados de forma segura e rápida de seu conjunto de dados local para o Microsoft Azure, poderá usar o Serviço de Importação/Exportação do Azure. O serviço de Importação/Exportação do Azure é usado para importar com segurança grandes quantidades de dados para o armazenamento de Blob do Azure e Arquivos do Azure enviando unidades de disco para um datacenter do Azure. Este serviço também pode ser utilizado para transferir dados do Armazenamento de blobs do Azure para unidades de disco rígido e enviar para as suas instalações locais. Os dados de uma ou mais unidades de disco podem ser importados para o armazenamento de Blob do Azure ou para os Arquivos do Azure. Para quantidades extremamente grandes de dados, usar esse serviço pode ser o caminho mais rápido.
Se quiser transferir dados usando unidades de disco fornecidas pela Microsoft, você pode usar o Azure Data Box Disk para importar dados para o Azure. Para obter mais informações, consulte O que é o serviço de Importação/Exportação do Azure?
Para obter mais informações sobre essas opções e as decisões que as acompanham, consulte Usando o Azure Data Lake Storage Gen1 para requisitos de big data.