Grande parte dos dados do mundo está em buckets do Amazon S3.
Neste guia, aprenderemos a consultar esses dados usando o chDB.
Primeiro, vamos criar um ambiente virtual:
E agora vamos instalar o chDB.
Certifique-se de ter a versão 2.0.2 ou mais recente:
Agora vamos instalar o IPython:
Vamos usar o ipython para executar os comandos no restante do guia, e você pode iniciá-lo com:
Você também pode usar o código em um script Python ou no notebook de sua preferência.
Listando arquivos em um bucket do S3
Vamos começar listando todos os arquivos em um bucket do S3 que contém avaliações da Amazon.
Para isso, podemos usar a função de tabela s3 e informar o caminho para um arquivo ou um caractere curinga para um conjunto de arquivos.
Se você passar apenas o nome do bucket, será gerada uma exceção.
Também vamos usar o formato de entrada One para que o arquivo não seja processado; em vez disso, uma única linha é retornada por arquivo, e podemos acessar o arquivo pela coluna virtual _file e o caminho pela coluna virtual _path.
Este bucket contém apenas arquivos Parquet.
Consultando arquivos em um bucket do S3
A seguir, vamos aprender a consultar esses arquivos.
Se quisermos contar o número de linhas em cada um desses arquivos, podemos executar a consulta a seguir:
Também podemos passar a URI HTTP de um bucket do S3 e obteremos os mesmos resultados:
Vamos ver o schema desses arquivos Parquet usando a cláusula DESCRIBE:
Vamos agora calcular as categorias de produtos com mais avaliações, bem como a média de estrelas:
Consultando arquivos em um bucket do S3 privado
Se estivermos consultando arquivos em um bucket do S3 privado, precisamos fornecer uma chave de acesso e uma chave secreta.
Podemos passar essas credenciais para a função de tabela s3:
Esta consulta não vai funcionar porque é um bucket público!
Uma alternativa é usar named collections, mas essa abordagem ainda não é compatível com o chDB.