![Fragpunk, atirador de heróis 5v5 que quebra regras, será lançado em 2025](https://optimuscloud.com.br/wp-content/uploads/2024/06/1718023442_Mude-as-regras-do-heroi-de-tiro-5v5-FPS-FragPunk-150x150.jpeg)
Mude as regras do herói de tiro 5v5 FPS FragPunk, lançado em 2025
10 de junho de 2024![Upstreaming do Linux Vector Packet Processor (VPP) para o FreeBSD](https://optimuscloud.com.br/wp-content/uploads/2024/06/Upstreaming-do-Linux-Vector-Packet-Processor-VPP-para-o-FreeBSD-150x150.jpg)
Upstreaming do Linux Vector Packet Processor (VPP) para o FreeBSD
10 de junho de 2024Muitas empresas têm sua própria API para acesso programático – vários aplicativos SaaS corporativos, serviços de nuvem hiperescaladores e serviços de desenvolvedor como GitHub. Mas todas essas APIs funcionam de maneira diferente e exigem código imperativo em linguagens como Python, Java ou C#. Não seria legal se todos esses serviços pudessem se parecer com bancos de dados relacionais, permitindo a inspeção deles usando SQL declarativo, juntamente com relatórios e visualização de seu conteúdo com ferramentas populares de business intelligence (BI)?
O SQL simples e antigo pode se tornar uma linguagem específica de domínio para inúmeras plataformas na Internet.
Com essa abordagem, o SQL simples e antigo poderia se tornar uma linguagem específica de domínio para inúmeras plataformas na Internet. A referência cruzada de diferentes aspectos das plataformas poderia ser obtida com junções, o aprimoramento de itens específicos do aplicativo poderia ser implementado usando uma cláusula WHERE e uma lista de colunas SELECT permitiria trazer de volta apenas os atributos específicos dos itens nos quais você estava interessado. .
Encanamento de serviços de Internet com pipelines baseados em SQL
Na verdade, existe uma ótima opção de código aberto para fazer isso. Chama-se Steampipe e funciona muito bem, com um ecossistema de mais de cem plug-ins específicos de serviços para plataformas como Airtable, GitHub, Jira, LinkedIn e Kubernetes; serviços de banco de dados, incluindo MongoDB Atlas e Snowflake (para dados administrativos, em vez de dados nos bancos de dados); e consultar dados de fontes baseadas em arquivos, como arquivos CSV e Planilhas Google.
Agora existe uma maneira ainda mais fácil de trabalhar com o Steampipe, instalando extensões no Postgres ou no SQLite.
Fazer tudo isso funcionar é tão simples quanto instalar o Steampipe em um ambiente Linux (incluindo o subsistema Windows para Linux), baixar os plug-ins dos serviços de seu interesse e executar consultas SQL de forma interativa. A documentação simples facilita a compreensão dos esquemas de tabela suportados por cada plug-in, colocando detalhes de vários serviços online a apenas uma consulta SQL.
E agora há uma maneira ainda mais fácil de trabalhar com o Steampipe, instalando extensões específicas do plug-in do Steampipe no Postgres ou no SQLite. Isso permite consultar os serviços correspondentes diretamente nesses dois bancos de dados conhecidos, em vez de precisar da interface SQL separada implementada pela versão convencional do Steampipe. Isto torna possível não apenas junções federadas entre os dados de vários serviços, mas também entre esses serviços e os seus. ter dados.
As possibilidades são vastas e surgem não apenas no prompt SQL, mas em qualquer ferramenta de BI que possa se comunicar com o Postgres (essencialmente, todas elas). Enquanto isso, a implementação do SQLite torna possível consultar esses dados em diversos ambientes Linux minimalistas.
Aplicações práticas
O conjunto de casos de uso que se aplicam aqui é enorme. Por exemplo, imagine obter uma lista de clientes, com seus IDs, que você está rastreando no Salesforce e, em seguida, juntá-la aos registros de clientes e vendas em um banco de dados de linha de negócios local.
Uma coisa engraçada acontece quando você transforma informações em dados tabulares: elas não apenas se tornam passíveis de consulta por desenvolvedores e ferramentas de business intelligence, mas também podem ser utilizadas em outros domínios.
Então imagine obter estatísticas sobre check-ins de código para desenvolvedores específicos em um repositório GitHub específico e armazenar esses números agregados em seu sistema de RH e/ou gerar relatórios sobre eles em um painel que você construiu em uma ferramenta como Tableau ou Power BI.
Aqui está outro: pesquisar conversas do Slack em busca de menções a um aplicativo interno e fazer referência cruzada com tickets abertos no Zendesk para o mesmo aplicativo.
Gratificação SQL quase instantânea
Quer alguma especificidade técnica? Podemos fazer isso muito rápido. Instalar a variante autônoma do Steampipe é tão fácil quanto executar um ondulação comando na linha de comando. Depois, use o instalação do plugin steampipe comando para instalar um plugin de sua escolha e cuidar de todos os detalhes de autenticação e conexão necessários. A partir daí, basta digitar consulta de tubo de vapor para obter um prompt interativo para inserir consultas SQL.
Se você acha tudo isso muito simples (e deveria), observe que trabalhar com Steampipe em SQLite ou Postgres é ainda mais fácil, pois provavelmente você já terá esses bancos de dados instalados.
Falei com Jon Udell, evangelista da Turbot, a empresa por trás do Steampipe (Editor: ele também contribui para The New Stack, incluindo artigos sobre SQL). Udell me conduziu passo a passo pelos recursos do produto e como instalá-lo e usá-lo, até o ponto em que ele foi executado em minha própria máquina. Se você estiver interessado nos detalhes, continue lendo enquanto exploramos um exemplo específico, copiado diretamente das etapas que executei com sucesso em meu próprio computador, com o suporte da Udell.
Faça Você Mesmo
Para trabalhar com Steampipe com SQLite ou Postgres, basta instalar uma extensão específica do plug-in e configurar os detalhes da conexão. Então você pode começar a consultar imediatamente, diretamente do ambiente de banco de dados existente. Por exemplo, para realizar a descoberta do SQLite em ativos em uma conta de nuvem do Microsoft Azure, basta seguir estas etapas:
1. No shell do Linux, execute o seguinte comando para instalar uma extensão SQLite específica do plug-in:
sudo /bin/sh -c "$(curl -fsSL https://steampipe.io/install/sqlite.sh)"
(O texto acima pode parecer misterioso, mas você pode simplesmente copiá-lo de cima ou daqui e colá-lo.)
2. Quando for solicitado o nome do plugin, basta digitar “azure” e tocar em Enter, depois tocar em Enter mais duas vezes para aceitar os valores padrão para a versão e o local de instalação.
3. Insira o seguinte comando da CLI do Azure para autenticar:
az login
Em seguida, insira suas credenciais na janela resultante do navegador.
4. Agora, inicie o SQLite e, a partir do seu prompt, carregue a extensão do plug-in com o comando:
.load <install folder>/steampipe_sqlite_azure.so
(onde
5. Agora defina sua assinatura do Azure com
SELECT steampipe_configure_azure('subscription_id="<subscription id>"');
Substitua
6. É isso! Agora você está pronto para interrogar todos os tipos de ativos do Azure. Por exemplo, para listar todos os blobs do Azure em uma conta de Armazenamento do Azure específica (fornecendo essencialmente uma enorme listagem de diretórios recursivos), use a seguinte consulta SQL:
SELECT name, container_name, storage_account_name, region, type, is_snapshot FROM azure_storage_blob WHERE resource_group=<resource group> AND storage_account_name=<storage account name> AND region=<azure region>;
Certifique-se, é claro, de substituir
Ainda mais fácil daqui
Isso é tudo que há para fazer. Além disso, as etapas 1 e 2 nunca precisarão ser repetidas e as etapas 3, 4 e 5 não precisarão ser executadas novamente até que você esteja em uma nova sessão do SQLite. Isso significa que você está livre para executar uma série de consultas SQL subsequentes para obter um rico conjunto de informações adicionais sobre seu ambiente Azure.
Quer instalar outra extensão de plug-in? Basta repetir o procedimento acima, mas inserir um nome de plug-in diferente, iniciar o SQLite e carregar o nome apropriado steampipe_sqlite_xxx.so extensão, configure-a com o apropriado steampipe_configure_xxx funcionar e começar a consultar. Cada plug-in steampipe possui documentação simples, listando todas as tabelas que podem ser consultadas e fornecendo uma série de exemplos de consultas que você pode copiar, colar, editar e executar.
Mashup Nirvana
Uma coisa engraçada acontece quando você transforma informações em dados tabulares: elas não apenas se tornam passíveis de consulta por desenvolvedores e ferramentas de business intelligence, mas também podem ser utilizadas em outros domínios, incluindo planilhas, plataformas sem código/low-code, sistemas de fluxo de trabalho, e até mesmo plataformas de aprendizado de máquina e IA. Imagine construir um modelo preditivo sobre a produtividade do desenvolvedor com base em check-ins observados em repositórios públicos do GitHub ou em discussões nos canais da empresa no Slack.
Depois de fazer as coisas parecerem linhas e colunas, surgem todos os tipos de possibilidades. Steampipe estabeleceu um ecossistema crescente que permite esses cenários de forma elegante e robusta.
A postagem Pipelines baseados em SQL: Steampipe transforma todo o mundo em um banco de dados apareceu pela primeira vez em The New Stack.