{"id":3493,"date":"2022-04-25T07:19:32","date_gmt":"2022-04-25T15:19:32","guid":{"rendered":"https:\/\/www.gudusoft.com\/?p=3493"},"modified":"2022-05-19T01:40:00","modified_gmt":"2022-05-19T09:40:00","slug":"data-lineage-create-external-table","status":"publish","type":"post","link":"https:\/\/www.gudusoft.com\/pt\/linhagem-de-dados-criar-tabela-externa\/","title":{"rendered":"Linhagem de dados Criar tabela externa | Gudu SQLFlow"},"content":{"rendered":"<div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"background-color: rgba(255,255,255,0);background-position: center center;background-repeat: no-repeat;border-width: 0px 0px 0px 0px;border-color:#e8eaf0;border-style:solid;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start\" style=\"max-width:1310.4px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column\"><div class=\"fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column\" style=\"background-position:left top;background-repeat:no-repeat;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;padding: 0px 0px 0px 0px;\"><div class=\"fusion-text fusion-text-1\" style=\"line-height:26px;\"><h2><strong>Linhagem de dados Criar tabela externa | Gudu SQLFlow<\/strong><\/h2>\n<p>No data warehouse, os dados originais s\u00e3o sempre provenientes de armazenamento em massa, como Amazon S3, Google Cloud Storage e Microsoft Azure, e esses dados ser\u00e3o carregados no sistema, como BigQuery, Snowflake, Redshift e Microsoft Azure. Um dos m\u00e9todos usados para carregar ou usar esses dados \u00e9 usar a instru\u00e7\u00e3o SQL &quot;create external table&quot;. A linhagem dos dados do arquivo externo para a tabela externa pode ser facilmente capturada pelo <strong>Gudu SQLFlow<\/strong> analisando a consulta SQL de cria\u00e7\u00e3o de tabela externa. Com esses dados em m\u00e3os, <strong>Gudu SQLFlow<\/strong> simplifica muito a capacidade de rastrear erros at\u00e9 a causa raiz em um processo de an\u00e1lise de dados.<\/p>\n<div id=\"attachment_3544\" style=\"width: 596px\" class=\"wp-caption aligncenter\"><img aria-describedby=\"caption-attachment-3544\" decoding=\"async\" class=\"size-full wp-image-3544\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/Data_Lineage_Create_External_Table.png\" alt=\"Linhagem de Dados Criar Tabela Externa\" width=\"586\" height=\"482\" srcset=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/Data_Lineage_Create_External_Table-200x165.png 200w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/Data_Lineage_Create_External_Table-300x247.png 300w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/Data_Lineage_Create_External_Table-400x329.png 400w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/Data_Lineage_Create_External_Table.png 586w\" sizes=\"(max-width: 586px) 100vw, 586px\" \/><p id=\"caption-attachment-3544\" class=\"wp-caption-text\">Linhagem de Dados Criar Tabela Externa<\/p><\/div>\n<p>No artigo, apresentaremos a instru\u00e7\u00e3o SQL de cria\u00e7\u00e3o de tabela externa usada no BigQuery, Snowflake, Redshift e Microsoft Azure e veremos a linhagem de dados gerada pela <strong>Gudu SQLFlow<\/strong> depois de analisar o script SQL.<\/p>\n<h3>BigQuery cria tabela externa<\/h3>\n<p>Tabelas externas permitem que o BigQuery consulte dados armazenados fora do armazenamento do BigQuery. Para obter mais informa\u00e7\u00f5es sobre tabelas externas, consulte <strong><a href=\"https:\/\/cloud.google.com\/bigquery\/external-data-cloud-storage\">introdu\u00e7\u00e3o a fontes de dados externas<\/a><\/strong>.<\/p>\n<p><strong>Gudu SQLFlow<\/strong> pode analisar a instru\u00e7\u00e3o de cria\u00e7\u00e3o de tabela externa do BigQuery e criar a <strong><a href=\"https:\/\/www.gudusoft.com\/pt\/whats-data-lineage-why-important\/\">linhagem de dados<\/a><\/strong> depois de analisar esta instru\u00e7\u00e3o SQL.<\/p>\n<p>Aqui est\u00e1 uma consulta SQL para cria\u00e7\u00e3o de tabela externa do BigQuery:<\/p>\n<pre class=\"wp-block-code\"><code>CRIAR OU SUBSTITUIR TABELA EXTERNA dataset.CsvTable ( x INT64, y STRING ) OP\u00c7\u00d5ES ( format = &#039;CSV&#039;, uris = [&#039;gs:\/\/bucket\/path1.csv&#039;], field_delimiter = &#039;|&#039;, max_bad_records = 5 );<\/code><\/pre>\n<p>A linhagem de dados gerada para o SQL acima aqui, como voc\u00ea pode ver, o arquivo gs:\/\/bucket\/path1.csv armazenado no Google Storage \u00e9 tratado como a origem da tabela externa dataset.CsvTable.<\/p>\n<figure class=\"wp-block-image size-large\"><\/figure>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/sqlflow.gudusoft.com\"><img decoding=\"async\" width=\"439\" height=\"87\" class=\"wp-image-3576\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-bigquery-create-external-table-1.png\" alt=\"Linhagem de Dados Criar Tabela Externa\" srcset=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-bigquery-create-external-table-1-200x40.png 200w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-bigquery-create-external-table-1-300x59.png 300w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-bigquery-create-external-table-1-400x79.png 400w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-bigquery-create-external-table-1.png 439w\" sizes=\"(max-width: 439px) 100vw, 439px\" \/><\/a><figcaption>Linhagem de Dados Criar Tabela Externa<\/figcaption><\/figure>\n<\/div>\n<h3 class=\"wp-block-heading\">Floco de neve cria tabela externa<\/h3>\n<p>O Snowflake cria uma tabela externa para ler dados de um conjunto de um ou mais arquivos em um est\u00e1gio externo especificado e gera os dados em uma \u00fanica coluna VARIANT. <a class=\"rank-math-link\" href=\"https:\/\/docs.snowflake.com\/en\/sql-reference\/sql\/create-external-table.html\"><strong>Criar instru\u00e7\u00e3o de tabela externa<\/strong><\/a> cria uma nova tabela externa no esquema atual\/especificado ou substitui uma tabela externa existente.<\/p>\n<p>Antes de criar uma tabela externa, precisamos <a class=\"rank-math-link\" href=\"https:\/\/docs.snowflake.com\/en\/sql-reference\/sql\/create-stage.html\"><strong>criar um palco externo<\/strong><\/a> para o local de armazenamento onde os arquivos de dados s\u00e3o armazenados.<\/p>\n<pre class=\"wp-block-code\"><code>criar est\u00e1gio s1 url=&#039;s3:\/\/mybucket\/files\/logs\/&#039; ... ;<\/code><\/pre>\n<p>Crie a tabela externa particionada:<\/p>\n<pre class=\"wp-block-code\"><code>criar tabela externa et1( date_part data como to_date(split_part(metadata$filename, &#039;\/&#039;, 3) || &#039;\/&#039; || split_part(metadata$filename, &#039;\/&#039;, 4) || &#039;\/&#039; || split_part(metadata$filename, &#039;\/&#039;, 5), &#039;AAAA\/MM\/DD&#039;), timestamp bigint como (valor:timestamp::bigint), col2 varchar como (valor:col2::varchar)) parti\u00e7\u00e3o por (date_part) localiza\u00e7\u00e3o=@s1\/logs\/ atualiza\u00e7\u00e3o_autom\u00e1tica = true formato_de_arquivo = (tipo = parquet) aws_sns_topic = &#039;arn:aws:sns:us-west-2:001234567890:s3_mybucket&#039;;<\/code><\/pre>\n<p>O Gudu SQLFlow pode processar a instru\u00e7\u00e3o de consulta de cria\u00e7\u00e3o de tabela externa do Snowflake e construir uma linhagem de dados entre os arquivos no est\u00e1gio externo e a tabela externa como esta:<\/p>\n<figure class=\"wp-block-image size-large\"><\/figure>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/sqlflow.gudusoft.com\"><img decoding=\"async\" width=\"428\" height=\"108\" class=\"wp-image-3505\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-snowflake-create-external-table.png\" alt=\"Linhagem de Dados Criar Tabela Externa\" srcset=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-snowflake-create-external-table-200x50.png 200w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-snowflake-create-external-table-300x76.png 300w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-snowflake-create-external-table-400x101.png 400w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/04\/data-lineage-snowflake-create-external-table.png 428w\" sizes=\"(max-width: 428px) 100vw, 428px\" \/><\/a><figcaption>Linhagem de Dados Criar Tabela Externa<\/figcaption><\/figure>\n<\/div>\n<p>No Snowflake, os dados de arquivos externos tamb\u00e9m podem ser movidos para a tabela usando <strong><a class=\"rank-math-link\" href=\"https:\/\/github.com\/sqlparser\/sqlflow_public\/tree\/master\/databases\/snowflake\/copy-from-json\">copiar para<\/a><\/strong> A instru\u00e7\u00e3o SQL e o Gudu SQLFlow tamb\u00e9m podem detectar a linhagem de dados na c\u00f3pia para a instru\u00e7\u00e3o de consulta SQL.<\/p>\n<h2 class=\"wp-block-heading\">SQL Server e Azure Synapse Analytics<\/h2>\n<p>O comando Create external table cria uma tabela externa para o PolyBase acessar dados armazenados em um cluster Hadoop ou armazenamento de blobs do Azure. A tabela externa do PolyBase que faz refer\u00eancia a dados armazenados em um cluster Hadoop ou armazenamento de blobs do Azure.<\/p>\n<p>No Azure Synapse Analytics, a tabela externa criada:<\/p>\n<ul>\n<li>Consulte dados de armazenamento de blobs do Hadoop ou do Azure com instru\u00e7\u00f5es Transact-SQL.<\/li>\n<li>Importe e armazene dados do Hadoop ou do armazenamento de blobs do Azure.<\/li>\n<li>Importe e armazene dados do Azure Data Lake Store.<\/li>\n<\/ul>\n<p>Para criar uma tabela externa, uma fonte de dados externa deve ser criada primeiro:<\/p>\n<pre class=\"wp-block-code\"><code>CRIAR FONTE DE DADOS EXTERNA AzureDataLakeStore COM (TIPO = HADOOP, LOCALIZA\u00c7\u00c3O = &#039;abfss:\/\/data@pbasetr.azuredatalakestore.net&#039; )<\/code><\/pre>\n<p>Em seguida, crie uma tabela externa usando esta consulta SQL:<\/p>\n<pre class=\"wp-block-code\"><code>CRIAR TABELA EXTERNA [dbo].[DimProductexternal] ( [ProductKey] [int] N\u00c3O NULO, [ProductLabel] nvarchar NULO, [ProductName] nvarchar NULO ) COM ( LOCALIZA\u00c7\u00c3O=&#039;\/DimProduct\/&#039; , ORIGEM_DE_DADOS = AzureDataLakeStore , FORMATO_DE_ARQUIVO = TextFileFormat , TIPO_DE_REJEI\u00c7\u00c3O = VALOR , VALOR_DE_REJEI\u00c7\u00c3O = 0 ) ;<\/code><\/pre>\n<p>A linhagem de dados gerada pelo Gudu SQLFlow ap\u00f3s analisar a instru\u00e7\u00e3o create external table \u00e9:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/sqlflow.gudusoft.com\"><img decoding=\"async\" class=\"wp-image-3752\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-1024x119.png\" alt=\"\" width=\"899\" height=\"104\" srcset=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-200x23.png 200w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-300x35.png 300w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-400x46.png 400w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-600x69.png 600w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-768x89.png 768w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-800x93.png 800w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1-1024x119.png 1024w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-sqlserver-create-external-table-1.png 1080w\" sizes=\"(max-width: 899px) 100vw, 899px\" \/><\/a><figcaption>SQL Server create exernal table data lineage<\/figcaption><\/figure>\n<\/div>\n<h2 class=\"wp-block-heading\">AWS Redshift cria tabela externa<\/h2>\n<p>Voc\u00ea pode criar uma tabela externa no Amazon Redshift, AWS Glue, Amazon Athena ou em um metastore do Apache Hive. Se a sua tabela externa estiver definida no AWS Glue, Athena ou em um metastore do Hive, primeiro crie um esquema externo que fa\u00e7a refer\u00eancia ao banco de dados externo. Em seguida, voc\u00ea pode referenciar a tabela externa na sua instru\u00e7\u00e3o SELECT prefixando o nome da tabela com o nome do esquema, sem precisar criar a tabela no Amazon Redshift.\u00a0<\/p>\n<p>O exemplo a seguir cria uma tabela chamada SALES no esquema externo do Amazon Redshift chamado\u00a0<code>espectro<\/code>. Os dados est\u00e3o em arquivos de texto delimitados por tabula\u00e7\u00e3o.<\/p>\n<pre class=\"wp-block-code\"><code>create external table spectrum.sales(\r\nsalesid integer,\r\nlistid integer,\r\nsellerid integer,\r\nbuyerid integer,\r\neventid integer,\r\ndateid smallint,\r\nqtysold smallint,\r\npricepaid decimal(8,2),\r\ncommission decimal(8,2),\r\nsaletime timestamp)\r\nrow format delimited\r\nfields terminated by '\\t'\r\nstored as textfile\r\nlocation 's3:\/\/awssampledbuswest2\/tickit\/spectrum\/sales\/'\r\ntable properties ('numRows'='172000');<\/code><\/pre>\n<p>A linhagem de dados gerada pelo Gudu SQLFlow ap\u00f3s analisar o SQL acima \u00e9:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/sqlflow.gudusoft.com\"><img decoding=\"async\" width=\"644\" height=\"216\" class=\"wp-image-3799\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-redshift-create-external-table.png\" alt=\"\" srcset=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-redshift-create-external-table-200x67.png 200w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-redshift-create-external-table-300x101.png 300w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-redshift-create-external-table-400x134.png 400w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-redshift-create-external-table-600x201.png 600w, https:\/\/www.gudusoft.com\/wp-content\/uploads\/2022\/05\/data-lineage-redshift-create-external-table.png 644w\" sizes=\"(max-width: 644px) 100vw, 644px\" \/><\/a><figcaption>Redshift Create External Table Data Lineage<\/figcaption><\/figure>\n<\/div>\n<h2 class=\"wp-block-heading\">Conclus\u00e3o\u00a0<\/h2>\n<p>Obrigado por ler nosso artigo e se ele puder ajud\u00e1-lo a ter um melhor entendimento de <strong>como a linhagem de dados cria uma tabela externa<\/strong>, ficar\u00edamos muito felizes. Se voc\u00ea quiser saber mais sobre <strong>linhagem de dados cria tabela externa<\/strong>, gostar\u00edamos de aconselh\u00e1-lo a visitar o nosso site <strong><a href=\"https:\/\/sqlflow.gudusoft.com\">Gudu SQLFlow<\/a><\/strong> para mais informa\u00e7\u00f5es. (Editado por Ryan em 25 de abril de 2022)<\/p>\n<\/div><\/div><\/div><style type=\"text\/css\">.fusion-body .fusion-builder-column-0{width:100% !important;margin-top : 0px;margin-bottom : 0px;}.fusion-builder-column-0 > .fusion-column-wrapper {padding-top : 0px !important;padding-right : 0px !important;margin-right : 1.92%;padding-bottom : 0px !important;padding-left : 0px !important;margin-left : 1.92%;}@media only screen and (max-width:1024px) {.fusion-body .fusion-builder-column-0{width:100% !important;}.fusion-builder-column-0 > .fusion-column-wrapper {margin-right : 1.92%;margin-left : 1.92%;}}@media only screen and (max-width:640px) {.fusion-body .fusion-builder-column-0{width:100% !important;}.fusion-builder-column-0 > .fusion-column-wrapper {margin-right : 1.92%;margin-left : 1.92%;}}<\/style><\/div><style type=\"text\/css\">.fusion-body .fusion-flex-container.fusion-builder-row-1{ padding-top : 0px;margin-top : 0px;padding-right : 0px;padding-bottom : 0px;margin-bottom : 0px;padding-left : 0px;}<\/style><\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":27,"featured_media":3544,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[31],"tags":[81,83,79,55,75,82,80],"_links":{"self":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts\/3493"}],"collection":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/comments?post=3493"}],"version-history":[{"count":49,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts\/3493\/revisions"}],"predecessor-version":[{"id":3898,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts\/3493\/revisions\/3898"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/media\/3544"}],"wp:attachment":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/media?parent=3493"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/categories?post=3493"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/tags?post=3493"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}