
{"id":203516,"date":"2025-03-12T11:23:27","date_gmt":"2025-03-12T14:23:27","guid":{"rendered":"https:\/\/goias.gov.br\/ligo\/?p=203516"},"modified":"2025-08-29T10:39:39","modified_gmt":"2025-08-29T13:39:39","slug":"tutorial-copia-de-tabelas-relacionais-para-a-estrutura-de-dados-do-big-data-estadual","status":"publish","type":"post","link":"https:\/\/goias.gov.br\/ligo\/tutorial-copia-de-tabelas-relacionais-para-a-estrutura-de-dados-do-big-data-estadual\/","title":{"rendered":"Tutorial \u2013 C\u00f3pia de tabelas relacionais para a estrutura de dados do Big Data Estadual."},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"960\" height=\"500\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter.png\" alt=\"\" class=\"wp-image-205158\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter.png 960w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-300x156.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-768x400.png 768w\" sizes=\"(max-width: 960px) 100vw, 960px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Nesse pequeno tutorial demonstrar-se-\u00e1 o procedimento para copia de dados de tabelas de um BD relacional para a estrutura de dados do ambiente de Big Data Cloudera.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Esta tarefa ser\u00e1 realizada com a utiliza\u00e7\u00e3o do PySpark via JupyterNotebook dispon\u00edvel na su\u00edte do Big Data da Supadia\/SGG.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c9 necess\u00e1rio ter acesso ao Jupyter Notebook do Big Data. O mesmo encontra-se no endere\u00e7o abaixo:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/jupyter.bigdata.go.gov.br\/jupyter\" data-type=\"link\" data-id=\"https:\/\/jupyter.bigdata.go.gov.br\/jupyter\">https:\/\/jupyter.bigdata.go.gov.br\/jupyter<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para a realiza\u00e7\u00e3o da tarefa o usu\u00e1rio dever\u00e1 estar logado no ambiente.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1 \u2013 Configura\u00e7\u00e3o do ambiente para a correta conex\u00e3o com o Cloudera.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Na tela inicial do Jupyter escolher a op\u00e7\u00e3o Notebook-&gt;Python 3(ipykernel)<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"460\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tela-inicial-jupyter.png\" alt=\"\" class=\"wp-image-203518\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tela-inicial-jupyter.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tela-inicial-jupyter-300x135.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tela-inicial-jupyter-768x345.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Ap\u00f3s clicar no \u00edcone anterior ser\u00e1 aberta uma nova Aba com um notebook em branco:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"128\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/aba-notebook.png\" alt=\"\" class=\"wp-image-203519\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/aba-notebook.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/aba-notebook-300x38.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/aba-notebook-768x96.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Colar o c\u00f3digo abaixo na c\u00e9lula edit\u00e1vel<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\"><\/g><\/svg><\/span><span role=\"button\" data-code=\"# In\u00edcio do c\u00f3digo (cortar e colar o c\u00f3digo abaixo)\n---- (Corte aqui)----\nimport base64\nimport json\n# Preencher suas credenciais abaixo\nusuario = &quot;meu.usuario&quot; (usuario do AD o mesmo do email @goias)\nsenha    = &quot;minha@senha&quot;  (senha do AD a mesma do email @goias)\nconfigJson = {\n&quot;session_configs&quot;: {\n    &quot;conf&quot;: {\n      &quot;spark.yarn.queue&quot;: &quot;default&quot;\n    }\n},\n&quot;livy_session_startup_timeout_seconds&quot;: 3600,\n&quot;should_heartbeat&quot;: True,\n&quot;livy_server_heartbeat_timeout_seconds&quot;: 0,\n&quot;heartbeat_refresh_seconds&quot;: 5,\n&quot;heartbeat_retry_seconds&quot;: 1,\n&quot;ignore_ssl_errors&quot;: True,\n&quot;retry_policy&quot;: &quot;configurable&quot;,\n&quot;retry_seconds_to_sleep_list&quot;: [0.2, 0.5, 1, 3, 5],\n&quot;configurable_retry_policy_max_retries&quot;: 8,\n&quot;spark.yarn.queue&quot;: &quot;developers&quot;,\n&quot;kernel_python_credentials&quot;: {\n&quot;username&quot;: &quot;&quot;,\n&quot;base64_password&quot;: &quot;&quot;,\n&quot;url&quot;: &quot;https:\/\/cdpprodedgenode01.intra.goias.gov.br:8443\/gateway\/cdp-proxy-api\/livy&quot;,\n&quot;auth&quot;: &quot;Basic_Access&quot;\n},\n&quot;custom_headers&quot;: {\n&quot;X-Requested-By&quot;: &quot;jupyter-hub&quot;\n}\n}\nconfigJson[&quot;kernel_python_credentials&quot;][&quot;username&quot;] = usuario\nconfigJson[&quot;kernel_python_credentials&quot;][&quot;base64_password&quot;] = base64.b64encode(senha.encode()).decode('utf-8')\nwith open('.sparkmagic\/config.json', 'w') as f:\n    json.dump(configJson, f)\n---- (Corte aqui)----\" style=\"color:#D4D4D4\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\"><code><span class=\"line\"><span style=\"color: #D4D4D4\"># <\/span><span style=\"color: #9CDCFE\">In\u00edcio<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #DCDCAA\">c\u00f3digo<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">cortar<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">e<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">colar<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">c\u00f3digo<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">abaixo<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">---- (<\/span><span style=\"color: #9CDCFE\">Corte<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">aqui<\/span><span style=\"color: #D4D4D4\">)----<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">import<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">base64<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">import<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">json<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"># <\/span><span style=\"color: #9CDCFE\">Preencher<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">suas<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">credenciais<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">abaixo<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">usuario<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #CE9178\">&quot;meu.usuario&quot;<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">usuario<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">AD<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">mesmo<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">email<\/span><span style=\"color: #D4D4D4\"> @<\/span><span style=\"color: #9CDCFE\">goias<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">senha<\/span><span style=\"color: #D4D4D4\">    = <\/span><span style=\"color: #CE9178\">&quot;minha@senha&quot;<\/span><span style=\"color: #D4D4D4\">  (<\/span><span style=\"color: #9CDCFE\">senha<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">AD<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">mesma<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">email<\/span><span style=\"color: #D4D4D4\"> @<\/span><span style=\"color: #9CDCFE\">goias<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">configJson<\/span><span style=\"color: #D4D4D4\"> = {<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">&quot;<\/span><span style=\"color: #9CDCFE\">session_configs<\/span><span style=\"color: #D4D4D4\">&quot;: {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    &quot;<\/span><span style=\"color: #9CDCFE\">conf<\/span><span style=\"color: #D4D4D4\">&quot;: {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">      &quot;<\/span><span style=\"color: #9CDCFE\">spark<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">yarn<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">queue<\/span><span style=\"color: #D4D4D4\">&quot;: &quot;<\/span><span style=\"color: #C586C0\">default<\/span><span style=\"color: #D4D4D4\">&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">},<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;livy_session_startup_timeout_seconds&quot;<\/span><span style=\"color: #D4D4D4\">: 3600,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;should_heartbeat&quot;<\/span><span style=\"color: #D4D4D4\">: <\/span><span style=\"color: #9CDCFE\">True<\/span><span style=\"color: #D4D4D4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;livy_server_heartbeat_timeout_seconds&quot;<\/span><span style=\"color: #D4D4D4\">: 0,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;heartbeat_refresh_seconds&quot;<\/span><span style=\"color: #D4D4D4\">: 5,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;heartbeat_retry_seconds&quot;<\/span><span style=\"color: #D4D4D4\">: 1,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;ignore_ssl_errors&quot;<\/span><span style=\"color: #D4D4D4\">: <\/span><span style=\"color: #9CDCFE\">True<\/span><span style=\"color: #D4D4D4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;retry_policy&quot;<\/span><span style=\"color: #D4D4D4\">: <\/span><span style=\"color: #CE9178\">&quot;configurable&quot;<\/span><span style=\"color: #D4D4D4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;retry_seconds_to_sleep_list&quot;<\/span><span style=\"color: #D4D4D4\">: [0.2, 0.5, 1, 3, 5],<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;configurable_retry_policy_max_retries&quot;<\/span><span style=\"color: #D4D4D4\">: 8,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;spark.yarn.queue&quot;<\/span><span style=\"color: #D4D4D4\">: <\/span><span style=\"color: #CE9178\">&quot;developers&quot;<\/span><span style=\"color: #D4D4D4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;kernel_python_credentials&quot;<\/span><span style=\"color: #D4D4D4\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">&quot;<\/span><span style=\"color: #9CDCFE\">username<\/span><span style=\"color: #D4D4D4\">&quot;: &quot;&quot;,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">&quot;<\/span><span style=\"color: #9CDCFE\">base64_password<\/span><span style=\"color: #D4D4D4\">&quot;: &quot;&quot;,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">&quot;<\/span><span style=\"color: #9CDCFE\">url<\/span><span style=\"color: #D4D4D4\">&quot;: &quot;<\/span><span style=\"color: #9CDCFE\">https<\/span><span style=\"color: #D4D4D4\">:<\/span><span style=\"color: #6A9955\">\/\/cdpprodedgenode01.intra.goias.gov.br:8443\/gateway\/cdp-proxy-api\/livy&quot;,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">&quot;<\/span><span style=\"color: #9CDCFE\">auth<\/span><span style=\"color: #D4D4D4\">&quot;: &quot;<\/span><span style=\"color: #9CDCFE\">Basic_Access<\/span><span style=\"color: #D4D4D4\">&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">},<\/span><\/span>\n<span class=\"line\"><span style=\"color: #CE9178\">&quot;custom_headers&quot;<\/span><span style=\"color: #D4D4D4\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">&quot;<\/span><span style=\"color: #9CDCFE\">X<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">Requested<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">By<\/span><span style=\"color: #D4D4D4\">&quot;: &quot;<\/span><span style=\"color: #9CDCFE\">jupyter<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">hub<\/span><span style=\"color: #D4D4D4\">&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">configJson<\/span><span style=\"color: #D4D4D4\">[<\/span><span style=\"color: #CE9178\">&quot;kernel_python_credentials&quot;<\/span><span style=\"color: #D4D4D4\">][<\/span><span style=\"color: #CE9178\">&quot;username&quot;<\/span><span style=\"color: #D4D4D4\">] = <\/span><span style=\"color: #9CDCFE\">usuario<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">configJson<\/span><span style=\"color: #D4D4D4\">[<\/span><span style=\"color: #CE9178\">&quot;kernel_python_credentials&quot;<\/span><span style=\"color: #D4D4D4\">][<\/span><span style=\"color: #CE9178\">&quot;base64_password&quot;<\/span><span style=\"color: #D4D4D4\">] = <\/span><span style=\"color: #9CDCFE\">base64<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">b64encode<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">senha<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">encode<\/span><span style=\"color: #D4D4D4\">()).<\/span><span style=\"color: #9CDCFE\">decode<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&#039;utf-8&#039;<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">with<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">open<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&#039;.sparkmagic\/config.json&#039;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&#039;w&#039;<\/span><span style=\"color: #D4D4D4\">) <\/span><span style=\"color: #9CDCFE\">as<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">f<\/span><span style=\"color: #D4D4D4\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">json<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">dump<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">configJson<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">f<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">---- (<\/span><span style=\"color: #9CDCFE\">Corte<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">aqui<\/span><span style=\"color: #D4D4D4\">)----<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Ap\u00f3s colar o c\u00f3digo a tela ficar\u00e1 semelhante a seguir:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"504\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Codigo-Colado.png\" alt=\"\" class=\"wp-image-203520\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Codigo-Colado.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Codigo-Colado-300x148.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Codigo-Colado-768x378.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Executar o c\u00f3digo colado acima utilizando o bot\u00e3o (ou utilizando Shift+Enter)<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo.png\" alt=\"\" class=\"wp-image-203521\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo-300x171.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo-768x437.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">po\u015b a execu\u00e7\u00e3o ser\u00e1 criado o arquivo \u201c.sparkmagic\/config.json\u201d no seu home<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Se nenhum erro ocorreu o ambiente est\u00e1 apto a conectar e criar sess\u00f5es Spark no Cloudera.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2 \u2013 Cria\u00e7\u00e3o de uma sess\u00e3o Spark no Hadoop<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Na tela inicial do Jupyter criar um novo \u201cLauncher\u201d. Isso pode ser feito no menu File-&gt;New Launcher,, ou com o bot\u00e3o \u201c+\u201d no topo esquerdo da janela logo abaixo do Menu principal,<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ou pode ser aberto diretamente pela combina\u00e7\u00e3o de teclas Ctrl+Shift+L.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher.png\" alt=\"\" class=\"wp-image-203522\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher-300x171.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher-768x437.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">ou<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher-outra-forma.png\" alt=\"\" class=\"wp-image-203523\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher-outra-forma.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher-outra-forma-300x171.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-Launcher-outra-forma-768x437.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Uma nova Aba ser\u00e1 aberta como a seguir:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"474\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-aba-launcher.png\" alt=\"\" class=\"wp-image-203524\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-aba-launcher.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-aba-launcher-300x139.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-aba-launcher-768x356.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Criar um novo notebook PySpark. Para isso, selecionar \u201cPySpark\u201d na se\u00e7\u00e3o \u201cNotebook\u201d do Launcher (criado no passo anterior) como mostrado abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-PySpark.png\" alt=\"\" class=\"wp-image-203525\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-PySpark.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-PySpark-300x171.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Novo-PySpark-768x437.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Ser\u00e1 exibida uma nova aba com um notebook PySpark como mostrado abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"473\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-Aba-PySpark.png\" alt=\"\" class=\"wp-image-203526\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-Aba-PySpark.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-Aba-PySpark-300x139.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-Aba-PySpark-768x355.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No campo edit\u00e1vel, digitar (ou copiar e colar) o c\u00f3digo abaixo para criar uma sess\u00e3o Spark:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\"><\/g><\/svg><\/span><span role=\"button\" data-code=\"sc\" style=\"color:#D4D4D4\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\"><code><span class=\"line\"><span style=\"color: #9CDCFE\">sc<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Ap\u00f3s a inclus\u00e3o do c\u00f3digo acima a tela dever\u00e1 ser semelhante a mostrada a seguir:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"228\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Inclusao-de-codigo.png\" alt=\"\" class=\"wp-image-203527\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Inclusao-de-codigo.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Inclusao-de-codigo-300x67.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Inclusao-de-codigo-768x171.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Executar o c\u00f3digo anterior. Utilizar o bot\u00e3o como mostrado a seguir (ou usar a combina\u00e7\u00e3o de teclas Shift+Enter com a c\u00e9lula em quest\u00e3o selecionada):<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo-anterior.png\" alt=\"\" class=\"wp-image-203528\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo-anterior.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo-anterior-300x171.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Executar-codigo-anterior-768x437.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Aguardar alguns instantes. Uma nova sess\u00e3o ser\u00e1 criada no servidor. Ser\u00e1 exibida uma mensagem semelhante \u00e0 seguinte:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"279\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-sessao-servidor.png\" alt=\"\" class=\"wp-image-203529\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-sessao-servidor.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-sessao-servidor-300x82.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Nova-sessao-servidor-768x209.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3 \u2013 Copiar uma tabela do seu BD relacional<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ap\u00f3s o passo 2 na mesma tela em que foi criada a sess\u00e3o Spark, copiar e colar o c\u00f3digo abaixo na pr\u00f3xima linha edit\u00e1vel (se n\u00e3o houver nenhuma c\u00e9lula acrescentar. Utilizar o bot\u00e3o \u201c+\u201d como mostrado na figura seguinte):<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Apos-passo-2.png\" alt=\"\" class=\"wp-image-203530\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Apos-passo-2.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Apos-passo-2-300x171.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Apos-passo-2-768x437.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Copiar e colar o c\u00f3digo seguinte:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\"><\/g><\/svg><\/span><span role=\"button\" data-code=\"from pyspark.sql import SparkSession\nspark = SparkSession.builder.getOrCreate()\njdbcDF = spark.read \\\n    .format(&quot;jdbc&quot;) \\\n    .option(&quot;url&quot;, &quot;jdbc:banco_de_dados:\/\/ip_ou_dns_do_servidor:porta_do_servidor;trustServerCertificate=true;databaseName=nome_do_banco_de_dados&quot;) \\\n    .option(&quot;user&quot;, &quot;usuario do seu banco&quot;) \\\n    .option(&quot;password&quot;, &quot;senha do seu BD&quot;) \\\n    .option(&quot;driver&quot;, &quot;jdbc_driver_do_seu_banco&quot;) \\\n    .option(&quot;dbtable&quot;, &quot;esquema.nome_da_tabela&quot;) \\\n    .load()\njdbcDF.show(5)\njdbcDF.write.mode(&quot;overwrite&quot;).saveAsTable(&quot;esquema.nome_da_tabela&quot;)\" style=\"color:#D4D4D4\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\"><code><span class=\"line\"><span style=\"color: #9CDCFE\">from<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">pyspark<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">sql<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">import<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">SparkSession<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">spark<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #9CDCFE\">SparkSession<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">builder<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">getOrCreate<\/span><span style=\"color: #D4D4D4\">()<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">jdbcDF<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #9CDCFE\">spark<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">read<\/span><span style=\"color: #D4D4D4\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">format<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;jdbc&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;url&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;jdbc:banco_de_dados:\/\/ip_ou_dns_do_servidor:porta_do_servidor;trustServerCertificate=true;databaseName=nome_do_banco_de_dados&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;user&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;usuario do seu banco&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;password&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;senha do seu BD&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;driver&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;jdbc_driver_do_seu_banco&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;dbtable&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;esquema.nome_da_tabela&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">load<\/span><span style=\"color: #D4D4D4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">jdbcDF<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">show<\/span><span style=\"color: #D4D4D4\">(5)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">jdbcDF<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">write<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">mode<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;overwrite&quot;<\/span><span style=\"color: #D4D4D4\">).<\/span><span style=\"color: #9CDCFE\">saveAsTable<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;esquema.nome_da_tabela&quot;<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Detalhamento do c\u00f3digo acima que dever\u00e1 ser adaptado ao ambiente de BD relacional de onde deseja-se copiar as tabelas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na primeira linha executa-se a importa\u00e7\u00e3o da lib necess\u00e1ria para que se possa ler da base de dados relacional e escrever no cloudera.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na segunda linha cria-se uma vari\u00e1vel com uma inst\u00e2ncia de sess\u00e3o Spark (j\u00e1 instanciada na primeira linha de c\u00f3digo) a qual ser\u00e1 o objeto com as fun\u00e7\u00f5es necess\u00e1rias para realizar a tarefa de c\u00f3pia.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Caso n\u00e3o haja sess\u00e3o ela ser\u00e1 criada com o comando .getOrCreate()<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Os par\u00e2metros das linhas da fun\u00e7\u00e3o read da vari\u00e1vel spark:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\"><\/g><\/svg><\/span><span role=\"button\" data-code=\".format(&quot;jdbc&quot;) - indica o formato da fonte de dados ,  no caso em quest\u00e3o \u00e9 o jdbc.\n .option(&quot;url&quot;, .....) -  indica a url\/string JDBC de conex\u00e3o que ser\u00e1 utilizada\nOs par\u00e2metros da url s\u00e3o:\n    banco_de_dados - \u00e9 o nome do SGBD (sistema gerenciador de banco de dados) em quest\u00e3o. Ex.: mysql, postgresql, sqlserver, oracle, db2, etc...\n    ip_ou_dns_do_servidor - \u00e9 o endere\u00e7o ou nome do servidor de banco de dados. Ex.: localhost, 10.6.32.19, meuservidor.org, etc...\n    porta_do_servidor - \u00e9 a porta utilizada para as conex\u00f5es com o banco de dados. Ex.: 5432 (porta padr\u00e3o do postgresql), 1433 (porta padr\u00e3o do sqlserver), 3306 (porta padr\u00e3o do mysql), 1521 (porta padr\u00e3o do oracle) , 50000 (porta padr\u00e3o do DB2), etc...\n    trustServerCertificate - \u00e9 um parametro opcional caso utilize-se um sevidor de banco de dados com certificado autoassinado. Incluir essa op\u00e7\u00e3o com o valor booleano true para confiar no certificado: trustServerCertificate=true\n    databaseName - \u00e9 o nome do banco de dados de onde ser\u00e1 feita a c\u00f3pia da tabela.\n    \nContinuando a descri\u00e7\u00e3o dos par\u00e2metros:\n  .option(&quot;user&quot;, &quot;...&quot;) - indica o nome de usuario de conex\u00e3o com o banco de dados. Ex. root, joao.silveira, maria, etc...\n .option(&quot;password&quot;, &quot;...&quot;) - indica a senha do usu\u00e1rio de conex\u00e3o com o banco de dados.\n .option(&quot;driver&quot;, &quot;...&quot;) - indica a classe de driver JDBC do banco de dados.  Ex.: org.postgresql.Driver(postgesql), com.microsoft.sqlserver.jdbc.SQLServerDriver(sqlserver), org.mariadb.jdbc.Driver (mysql\/MariaDB), oracle.jdbc.driver.OracleDriver (oracle), com.ibm.db2.jcc.DB2Driver(DB2), etc...\n .option(&quot;dbtable&quot;, &quot;...&quot;) - indica o nome do banco no SGBD onde encontra-se a(s) tabela(s) a serem copiada(s). Ex.: meuBanco, etc...\n .load() - carrega as op\u00e7\u00f5es para o leitor de dados da sess\u00e3o spark.\n .show(5) - exibe as 5 primeiras linhas da tabela em quest\u00e3o\n .write.mode(&quot;overwrite&quot;).saveAsTable(&quot;esquema.nome_da_tabela&quot;) - realiza a escrita da tabela no BigData\n   A op\u00e7\u00e3o &quot;overwrite&quot; indica que qualquer tabela\/arquivo anterior com mesmo nome ser\u00e1 sobrescrito. Ao utilizar este modo de grava\u00e7\u00e3o, o Spark excluir\u00e1 o arquivo existente ou deletar\u00e1 a tabela existente no Bigdata antes de gravar a nova c\u00f3pia.\n .saveAsTable(&quot;esquema.nome_da_tabela&quot;) - indica o nome da tabela que ser\u00e1 gravada no Big Data;  \n    \" style=\"color:#D4D4D4\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">format<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;jdbc&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">formato<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">fonte<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\"> ,  <\/span><span style=\"color: #9CDCFE\">no<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">caso<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">em<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">quest\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">\u00e9<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">jdbc<\/span><span style=\"color: #D4D4D4\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;url&quot;<\/span><span style=\"color: #D4D4D4\">, .....) -  <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">url<\/span><span style=\"color: #D4D4D4\">\/<\/span><span style=\"color: #9CDCFE\">string<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4FC1FF\">JDBC<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">conex\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">que<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">ser\u00e1<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">utilizada<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">Os<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">par\u00e2metros<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">url<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C8C8C8\">s\u00e3o<\/span><span style=\"color: #D4D4D4\">:<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">banco_de_dados<\/span><span style=\"color: #D4D4D4\"> - <\/span><span style=\"color: #9CDCFE\">\u00e9<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #DCDCAA\">SGBD<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">sistema<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">gerenciador<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\">) <\/span><span style=\"color: #9CDCFE\">em<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">quest\u00e3o<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #9CDCFE\">Ex<\/span><span style=\"color: #D4D4D4\">.: <\/span><span style=\"color: #9CDCFE\">mysql<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">postgresql<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">sqlserver<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">oracle<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">db2<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">etc<\/span><span style=\"color: #D4D4D4\">...<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">ip_ou_dns_do_servidor<\/span><span style=\"color: #D4D4D4\"> - <\/span><span style=\"color: #9CDCFE\">\u00e9<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">endere\u00e7o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">ou<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">servidor<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #9CDCFE\">Ex<\/span><span style=\"color: #D4D4D4\">.: <\/span><span style=\"color: #9CDCFE\">localhost<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #B5CEA8\">10.6<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #B5CEA8\">32.19<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">meuservidor<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">org<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">etc<\/span><span style=\"color: #D4D4D4\">...<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">porta_do_servidor<\/span><span style=\"color: #D4D4D4\"> - <\/span><span style=\"color: #9CDCFE\">\u00e9<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">porta<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">utilizada<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">para<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">as<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">conex\u00f5es<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">com<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">dados<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #4EC9B0\">Ex<\/span><span style=\"color: #D4D4D4\">.: <\/span><span style=\"color: #B5CEA8\">5432<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">porta<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">padr\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">postgresql<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #B5CEA8\">1433<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">porta<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">padr\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">sqlserver<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #B5CEA8\">3306<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">porta<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">padr\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">mysql<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #B5CEA8\">1521<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">porta<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">padr\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">oracle<\/span><span style=\"color: #D4D4D4\">) , <\/span><span style=\"color: #B5CEA8\">50000<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">porta<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">padr\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4FC1FF\">DB2<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #9CDCFE\">etc<\/span><span style=\"color: #D4D4D4\">...<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">trustServerCertificate<\/span><span style=\"color: #D4D4D4\"> - <\/span><span style=\"color: #9CDCFE\">\u00e9<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">um<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">parametro<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">opcional<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">caso<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">utilize<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">se<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">um<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">sevidor<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">certificado<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">autoassinado<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #9CDCFE\">Incluir<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">essa<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">op\u00e7\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">valor<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">booleano<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #569CD6\">true<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">para<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">confiar<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">no<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C8C8C8\">certificado<\/span><span style=\"color: #D4D4D4\">: <\/span><span style=\"color: #9CDCFE\">trustServerCertificate<\/span><span style=\"color: #D4D4D4\">=<\/span><span style=\"color: #569CD6\">true<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">databaseName<\/span><span style=\"color: #D4D4D4\"> - <\/span><span style=\"color: #9CDCFE\">\u00e9<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">onde<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">ser\u00e1<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">feita<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">c\u00f3pia<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">tabela<\/span><span style=\"color: #D4D4D4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">Continuando<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">descri\u00e7\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dos<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C8C8C8\">par\u00e2metros<\/span><span style=\"color: #D4D4D4\">:<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">  .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;user&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;...&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">usuario<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">conex\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #9CDCFE\">Ex<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #9CDCFE\">root<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">joao<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">silveira<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">maria<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">etc<\/span><span style=\"color: #D4D4D4\">...<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;password&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;...&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">senha<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">usu\u00e1rio<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">conex\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;driver&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;...&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">classe<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">driver<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4FC1FF\">JDBC<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">dados<\/span><span style=\"color: #D4D4D4\">.  <\/span><span style=\"color: #9CDCFE\">Ex<\/span><span style=\"color: #D4D4D4\">.: <\/span><span style=\"color: #9CDCFE\">org<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">postgresql<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">Driver<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">postgesql<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">microsoft<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">sqlserver<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">jdbc<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">SQLServerDriver<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">sqlserver<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #9CDCFE\">org<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">mariadb<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">jdbc<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">Driver<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">mysql<\/span><span style=\"color: #D4D4D4\">\/<\/span><span style=\"color: #9CDCFE\">MariaDB<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #9CDCFE\">oracle<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">jdbc<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">driver<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">OracleDriver<\/span><span style=\"color: #D4D4D4\"> (<\/span><span style=\"color: #9CDCFE\">oracle<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">ibm<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">db2<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">jcc<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">DB2Driver<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #4FC1FF\">DB2<\/span><span style=\"color: #D4D4D4\">), <\/span><span style=\"color: #9CDCFE\">etc<\/span><span style=\"color: #D4D4D4\">...<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;dbtable&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;...&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">do<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">banco<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">no<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4FC1FF\">SGBD<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">onde<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">encontra<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">se<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #DCDCAA\">a<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">s<\/span><span style=\"color: #D4D4D4\">) <\/span><span style=\"color: #DCDCAA\">tabela<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">s<\/span><span style=\"color: #D4D4D4\">) <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">serem<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #DCDCAA\">copiada<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">s<\/span><span style=\"color: #D4D4D4\">). <\/span><span style=\"color: #9CDCFE\">Ex<\/span><span style=\"color: #D4D4D4\">.: <\/span><span style=\"color: #9CDCFE\">meuBanco<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">etc<\/span><span style=\"color: #D4D4D4\">...<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">load<\/span><span style=\"color: #D4D4D4\">() - <\/span><span style=\"color: #9CDCFE\">carrega<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">as<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">op\u00e7\u00f5es<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">para<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">leitor<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">dados<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">sess\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">spark<\/span><span style=\"color: #D4D4D4\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">show<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #B5CEA8\">5<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">exibe<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">as<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #B5CEA8\">5<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">primeiras<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">linhas<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">tabela<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">em<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #4EC9B0\">quest\u00e3o<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #9CDCFE\">write<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">mode<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;overwrite&quot;<\/span><span style=\"color: #D4D4D4\">).<\/span><span style=\"color: #DCDCAA\">saveAsTable<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;esquema.nome_da_tabela&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">realiza<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">escrita<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">tabela<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">no<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">BigData<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">   <\/span><span style=\"color: #4FC1FF\">A<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">op\u00e7\u00e3o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #CE9178\">&quot;overwrite&quot;<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">que<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">qualquer<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">tabela<\/span><span style=\"color: #D4D4D4\">\/<\/span><span style=\"color: #9CDCFE\">arquivo<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">anterior<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">com<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">mesmo<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">ser\u00e1<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">sobrescrito<\/span><span style=\"color: #D4D4D4\">. <\/span><span style=\"color: #9CDCFE\">Ao<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">utilizar<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">este<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">modo<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">grava\u00e7\u00e3o<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">Spark<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">excluir\u00e1<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">arquivo<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">existente<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">ou<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">deletar\u00e1<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">tabela<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">existente<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">no<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">Bigdata<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">antes<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">de<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">gravar<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">a<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nova<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">c\u00f3pia<\/span><span style=\"color: #D4D4D4\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\"> .<\/span><span style=\"color: #DCDCAA\">saveAsTable<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;esquema.nome_da_tabela&quot;<\/span><span style=\"color: #D4D4D4\">) - <\/span><span style=\"color: #9CDCFE\">indica<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">o<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">nome<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">da<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">tabela<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">que<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">ser\u00e1<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">gravada<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">no<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">Big<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">Data<\/span><span style=\"color: #D4D4D4\">;  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Mais op\u00e7\u00f5es de escrita podem se encontradas na refer\u00eancia abaixo :<br>https:\/\/sparkbyexamples.com\/spark\/spark-write-modes-explained\/<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A seguir encontra-se um exemplo de acesso a um banco de dados MS-SqlServer :<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\"><\/g><\/svg><\/span><span role=\"button\" data-code=\"jdbcDF = spark.read \\\n    .format(&quot;jdbc&quot;) \\\n    .option(&quot;url&quot;, &quot;jdbc:sqlserver:\/\/10.206.122.31:2733;trustServerCertificate=true;databaseName=sigeon&quot;) \\\n    .option(&quot;user&quot;, &quot;rodrigo.furtado&quot;) \\\n    .option(&quot;password&quot;, &quot;XXXXXX&quot;) \\\n    .option(&quot;driver&quot;, &quot;com.microsoft.sqlserver.jdbc.SQLServerDriver&quot;) \\\n    .option(&quot;dbtable&quot;, &quot;dbo.PAP_uf&quot;) \\\n    .load()\njdbcDF.show(5)\njdbcDF.write.mode(&quot;overwrite&quot;).saveAsTable(&quot;sbx_ligo.PAP_uf&quot;)\" style=\"color:#D4D4D4\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\"><code><span class=\"line\"><span style=\"color: #9CDCFE\">jdbcDF<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #9CDCFE\">spark<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">read<\/span><span style=\"color: #D4D4D4\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">format<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;jdbc&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;url&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;jdbc:sqlserver:\/\/10.206.122.31:2733;trustServerCertificate=true;databaseName=sigeon&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;user&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;rodrigo.furtado&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;password&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;XXXXXX&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;driver&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;com.microsoft.sqlserver.jdbc.SQLServerDriver&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">option<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;dbtable&quot;<\/span><span style=\"color: #D4D4D4\">, <\/span><span style=\"color: #CE9178\">&quot;dbo.PAP_uf&quot;<\/span><span style=\"color: #D4D4D4\">) \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #DCDCAA\">load<\/span><span style=\"color: #D4D4D4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">jdbcDF<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">show<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #B5CEA8\">5<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #9CDCFE\">jdbcDF<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">write<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">mode<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;overwrite&quot;<\/span><span style=\"color: #D4D4D4\">).<\/span><span style=\"color: #DCDCAA\">saveAsTable<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;sbx_ligo.PAP_uf&quot;<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Apo\u015b configurar corretamente os par\u00e2metros do c\u00f3digo anterior de acordo com o ambiente de onde deseja-se copiar as tabelas, executar o mesmo (Shift+Enter). Se nenhum erro ocorrer haver\u00e1 um retorno semelhante a figura a seguir:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"150\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tabela-de-retorno.png\" alt=\"\" class=\"wp-image-203531\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tabela-de-retorno.png 1024w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tabela-de-retorno-300x44.png 300w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Tabela-de-retorno-768x113.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Pronto, a importa\u00e7\u00e3o da tabela para a estrutura do Big Data foi realizada.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized is-style-rounded\"><img loading=\"lazy\" decoding=\"async\" width=\"763\" height=\"1024\" src=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/06\/Rodrigo-Furtado-2-763x1024.jpg\" alt=\"\" class=\"wp-image-204880\" style=\"aspect-ratio:0.6666666666666666;object-fit:cover;width:97px;height:auto\" srcset=\"https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/06\/Rodrigo-Furtado-2-763x1024.jpg 763w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/06\/Rodrigo-Furtado-2-223x300.jpg 223w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/06\/Rodrigo-Furtado-2-768x1031.jpg 768w, https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/06\/Rodrigo-Furtado-2.jpg 1080w\" sizes=\"(max-width: 763px) 100vw, 763px\" \/><figcaption class=\"wp-element-caption\">Autor: Rodrigo Peres Franco Furtado<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nesse pequeno tutorial demonstrar-se-\u00e1 o procedimento para copia de dados de tabelas de um BD relacional para a estrutura de dados do ambiente de Big Data Cloudera. Esta tarefa ser\u00e1 realizada com a utiliza\u00e7\u00e3o do PySpark via JupyterNotebook dispon\u00edvel na su\u00edte do Big Data da Supadia\/SGG. \u00c9 necess\u00e1rio ter acesso ao Jupyter Notebook do Big Data. O mesmo encontra-se no endere\u00e7o abaixo: https:\/\/jupyter.bigdata.go.gov.br\/jupyter Para a realiza\u00e7\u00e3o da tarefa o usu\u00e1rio dever\u00e1 estar logado no ambiente. 1 \u2013 Configura\u00e7\u00e3o do ambiente para a correta conex\u00e3o com o Cloudera. Na tela inicial do Jupyter escolher a op\u00e7\u00e3o Notebook-&gt;Python 3(ipykernel) Ap\u00f3s clicar no \u00edcone anterior ser\u00e1 aberta uma nova Aba com um notebook em branco: Colar o c\u00f3digo abaixo na c\u00e9lula edit\u00e1vel Ap\u00f3s colar o c\u00f3digo a tela ficar\u00e1 semelhante a seguir: Executar o c\u00f3digo colado acima utilizando o bot\u00e3o (ou utilizando Shift+Enter) po\u015b a execu\u00e7\u00e3o ser\u00e1 criado o arquivo \u201c.sparkmagic\/config.json\u201d no seu home Se nenhum erro ocorreu o ambiente est\u00e1 apto a conectar e criar sess\u00f5es Spark no Cloudera. 2 \u2013 Cria\u00e7\u00e3o de uma sess\u00e3o Spark no Hadoop Na tela inicial do Jupyter criar um novo \u201cLauncher\u201d. Isso pode ser feito no menu File-&gt;New Launcher,, ou com o bot\u00e3o \u201c+\u201d no topo esquerdo da janela logo abaixo do Menu principal, ou pode ser aberto diretamente pela combina\u00e7\u00e3o de teclas Ctrl+Shift+L. ou Uma nova Aba ser\u00e1 aberta como a seguir: Criar um novo notebook PySpark. Para isso, selecionar \u201cPySpark\u201d na se\u00e7\u00e3o \u201cNotebook\u201d do Launcher (criado no passo anterior) como mostrado abaixo: Ser\u00e1 exibida uma nova aba com um notebook PySpark como mostrado abaixo: No campo edit\u00e1vel, digitar (ou copiar e colar) o c\u00f3digo abaixo para criar uma sess\u00e3o Spark: Ap\u00f3s a inclus\u00e3o do c\u00f3digo acima a tela dever\u00e1 ser semelhante a mostrada a seguir: Executar o c\u00f3digo anterior. Utilizar o bot\u00e3o como mostrado a seguir (ou usar a combina\u00e7\u00e3o de teclas Shift+Enter com a c\u00e9lula em quest\u00e3o selecionada): Aguardar alguns instantes. Uma nova sess\u00e3o ser\u00e1 criada no servidor. Ser\u00e1 exibida uma mensagem semelhante \u00e0 seguinte: 3 \u2013 Copiar uma tabela do seu BD relacional Ap\u00f3s o passo 2 na mesma tela em que foi criada a sess\u00e3o Spark, copiar e colar o c\u00f3digo abaixo na pr\u00f3xima linha edit\u00e1vel (se n\u00e3o houver nenhuma c\u00e9lula acrescentar. Utilizar o bot\u00e3o \u201c+\u201d como mostrado na figura seguinte): Copiar e colar o c\u00f3digo seguinte: Detalhamento do c\u00f3digo acima que dever\u00e1 ser adaptado ao ambiente de BD relacional de onde deseja-se copiar as tabelas. Na primeira linha executa-se a importa\u00e7\u00e3o da lib necess\u00e1ria para que se possa ler da base de dados relacional e escrever no cloudera. Na segunda linha cria-se uma vari\u00e1vel com uma inst\u00e2ncia de sess\u00e3o Spark (j\u00e1 instanciada na primeira linha de c\u00f3digo) a qual ser\u00e1 o objeto com as fun\u00e7\u00f5es necess\u00e1rias para realizar a tarefa de c\u00f3pia. Caso n\u00e3o haja sess\u00e3o ela ser\u00e1 criada com o comando .getOrCreate() Os par\u00e2metros das linhas da fun\u00e7\u00e3o read da vari\u00e1vel spark: Mais op\u00e7\u00f5es de escrita podem se encontradas na refer\u00eancia abaixo :https:\/\/sparkbyexamples.com\/spark\/spark-write-modes-explained\/ A seguir encontra-se um exemplo de acesso a um banco de dados MS-SqlServer : Apo\u015b configurar corretamente os par\u00e2metros do c\u00f3digo anterior de acordo com o ambiente de onde deseja-se copiar as tabelas, executar o mesmo (Shift+Enter). Se nenhum erro ocorrer haver\u00e1 um retorno semelhante a figura a seguir: Pronto, a importa\u00e7\u00e3o da tabela para a estrutura do Big Data foi realizada. &nbsp;<\/p>\n","protected":false},"author":713,"featured_media":205159,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[54,26],"tags":[27],"class_list":["post-203516","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programacao","category-publicacoes-ligo","tag-big-data"],"rttpg_featured_image_url":{"full":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false],"landscape":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false],"portraits":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false],"thumbnail":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida-150x150.png",150,150,true],"medium":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false],"large":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false],"1536x1536":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false],"2048x2048":["https:\/\/goias.gov.br\/ligo\/wp-content\/uploads\/sites\/61\/2025\/03\/Imagem-jupyter-reduzida.png",200,260,false]},"rttpg_author":{"display_name":"C\u00e9sar Augusto","author_link":"https:\/\/goias.gov.br\/ligo\/author\/cesarpacheco\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/goias.gov.br\/ligo\/categoria\/publicacoes-ligo\/programacao\/\" rel=\"category tag\">Programa\u00e7\u00e3o<\/a> <a href=\"https:\/\/goias.gov.br\/ligo\/categoria\/publicacoes-ligo\/\" rel=\"category tag\">Publica\u00e7\u00f5es Ligo<\/a>","rttpg_excerpt":"Nesse pequeno tutorial demonstrar-se-\u00e1 o procedimento para copia de dados de tabelas de um BD relacional para a estrutura de dados do ambiente de Big Data Cloudera. Esta tarefa ser\u00e1 realizada com a utiliza\u00e7\u00e3o do PySpark via JupyterNotebook dispon\u00edvel na su\u00edte do Big Data da Supadia\/SGG. \u00c9 necess\u00e1rio ter acesso ao Jupyter Notebook do Big&hellip;","_links":{"self":[{"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/posts\/203516","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/users\/713"}],"replies":[{"embeddable":true,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/comments?post=203516"}],"version-history":[{"count":2,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/posts\/203516\/revisions"}],"predecessor-version":[{"id":205160,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/posts\/203516\/revisions\/205160"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/media\/205159"}],"wp:attachment":[{"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/media?parent=203516"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/categories?post=203516"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/goias.gov.br\/ligo\/wp-json\/wp\/v2\/tags?post=203516"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}