{"id":109628,"date":"2018-03-06T23:18:49","date_gmt":"2018-03-07T02:18:49","guid":{"rendered":"https:\/\/www.estrategiaconcursos.com.br\/blog\/?p=109628"},"modified":"2018-03-07T14:22:12","modified_gmt":"2018-03-07T17:22:12","slug":"prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm","status":"publish","type":"post","link":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/","title":{"rendered":"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM"},"content":{"rendered":"<p style=\"text-align: justify\">Prezados alunos,<\/p>\n<p style=\"text-align: justify\">Abaixo comento as quest\u00f5es de banco de dados, business intelligence e processo de neg\u00f3cio da prova de analista de sistemas do concurso do STM. A prova veio num n\u00edvel bastante elevado, mas \u00e9 sempre bom aprender com os erros. Temos dois recursos poss\u00edveis. Sem mais delongas, vamos aos coment\u00e1rios.<\/p>\n<ol style=\"text-align: justify\">\n<li>\n<h3><strong>Ano: 2018 Banca: CESPE \u00d3rg\u00e3o: STM Cargo: Analista de Sistemas Quest\u00e3o: 51 a 54<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p style=\"text-align: justify\">No contexto do desenvolvimento de sistemas de processamento de dados, julgue os itens a seguir, relativos ao gerenciamento de processos de neg\u00f3cio.<\/p>\n<p style=\"text-align: justify\">51 Al\u00e9m de buscarem medir, monitorar e controlar atividades e administrar o presente e o futuro do neg\u00f3cio, os processos de suporte entregam valor para outros processos, mas n\u00e3o o fazem diretamente para os clientes.<\/p>\n<p style=\"text-align: justify\">52 Para melhor compreender o processo e a organiza\u00e7\u00e3o, modelos AS-IS (estado atual) realizam avalia\u00e7\u00e3o inicial baseada em fatos documentados e validados; e modelos TO-BE (estado futuro) utilizam simula\u00e7\u00e3o para compreender as lacunas no processo atual que impedem a transi\u00e7\u00e3o para o estado desejado.<\/p>\n<p style=\"text-align: justify\">53 No BPMN (Business Process Model and Notation), utiliza-se o modelo de uma piscina (pool) que cont\u00e9m uma ou mais raias (lanes), na(s) qual(is) \u00e9 poss\u00edvel inserir diversos s\u00edmbolos, como ret\u00e2ngulos arredondados (para representar processos, atividades ou tarefas ou subprocessos), setas (para representar uma sequ\u00eancia de fluxo) e losangos (para, a partir de avalia\u00e7\u00e3o de determinada condi\u00e7\u00e3o, representar caminhos alternativos ou paralelos).<\/p>\n<p style=\"text-align: justify\">54 A partir da redefini\u00e7\u00e3o dos processos e de suas respectivas atividades e tarefas, os custos associados \u00e0 mudan\u00e7a dever-se-\u00e3o a fatores como resist\u00eancia das pessoas \u00e0s mudan\u00e7as, interesses ocultos, conflitos de interesse e esfor\u00e7o na padroniza\u00e7\u00e3o de processos para aumentar a efici\u00eancia organizacional.<\/p>\n<p style=\"text-align: justify\"><strong>Coment\u00e1rio:<\/strong> Vamos comentar cada uma das alternativas acima.<\/p>\n<ol style=\"text-align: justify\" start=\"51\">\n<li>Ao analisar o valor da utiliza\u00e7\u00e3o de processo para melhoria do desempenho organizacional temos que identificar quais as atividades agregam valor e quais s\u00e3o desnecess\u00e1rias e contribuem para aumentar o tempo, os custos, os erros e a insatisfa\u00e7\u00e3o de clientes. A an\u00e1lise do valor classifica cada atividade de um processo em tr\u00eas tipos b\u00e1sicos:<\/li>\n<\/ol>\n<ul style=\"text-align: justify\">\n<li><strong><u>Adiciona valor ao cliente<\/u><\/strong>. Produz valor ou contribui para a satisfa\u00e7\u00e3o do cliente.<\/li>\n<li><strong><u>Adiciona valor ao neg\u00f3cio<\/u><\/strong>. Contribui para garantir o cumprimento de pol\u00edticas ou regulamenta\u00e7\u00f5es.<\/li>\n<li><strong><u>N\u00e3o adiciona valor<\/u><\/strong>. Atividade que n\u00e3o adiciona valor ao cliente nem ao neg\u00f3cio e deveria ser candidata \u00e0 elimina\u00e7\u00e3o.<\/li>\n<\/ul>\n<p style=\"text-align: justify\">Esse \u00e9 uma das classifica\u00e7\u00f5es poss\u00edveis para os processos. Outra taxonomia divide os processos em prim\u00e1rios ou final\u00edsticos, de suporte e gerenciais.<\/p>\n<p style=\"text-align: justify\">Os processos gerencias s\u00e3o os processos estabelecidos para <strong>coordenar e controlar<\/strong> as atividades da empresa. Ou seja, os processos gerenciais garantem que os processos prim\u00e1rios e os processos de suporte sejam bem executados e tra\u00e7am planos para a continuidade das opera\u00e7\u00f5es. Esses processos <strong>n\u00e3o agregam valor direto ao cliente<\/strong>, mas est\u00e3o presentes antes, durante e depois do processo. Vejam que a quest\u00e3o apresenta conceitos associados aos processos gerenciais como se fosse de suporte. Logo, temos uma afirma\u00e7\u00e3o <strong><u>incorreta<\/u><\/strong> no enunciado.<\/p>\n<p style=\"text-align: justify\">Como o pr\u00f3prio nome j\u00e1 diz, <strong><u>os processos de suporte<\/u><\/strong> s\u00e3o aqueles que oferecem suporte aos processos prim\u00e1rios, ou seja, s\u00e3o os processos que agregam valor ao produto ou ao neg\u00f3cio, mas que, por se tratarem de procedimentos internos, s\u00e3o vis\u00edveis aos clientes. Note que esses processos n\u00e3o entregam valor direto ao cliente, contudo s\u00e3o essenciais para a empresa e aumentam a capacidade de efetividade dos processos prim\u00e1rios.<\/p>\n<p style=\"text-align: justify\">Os <strong><u>processos prim\u00e1rios<\/u><\/strong> tamb\u00e9m s\u00e3o chamados de processos final\u00edsticos. Eles s\u00e3o processos essenciais e que representam as atividades que uma organiza\u00e7\u00e3o desempenha para cumprir sua miss\u00e3o. Por isso, eles<strong>\u00a0t\u00eam rela\u00e7\u00e3o direta com o cliente<\/strong>, ou seja, s\u00e3o os processos mais percept\u00edveis ao consumidor.<\/p>\n<ol style=\"text-align: justify\" start=\"52\">\n<li>A an\u00e1lise de processos envolve a compreens\u00e3o de processos de neg\u00f3cio, incluindo sua efici\u00eancia e efic\u00e1cia para atendimento dos objetivos para os quais foram desenhados. O foco \u00e9 compreender os <strong><u>processos atuais (&#8220;AS-IS&#8221;)<\/u><\/strong>.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">J\u00e1 o desenho de processos \u00e9 a concep\u00e7\u00e3o de novos processos de neg\u00f3cio e a especifica\u00e7\u00e3o de como esses funcionar\u00e3o, ser\u00e3o medidos, controlados e gerenciados. Envolve a cria\u00e7\u00e3o do <strong><u>modelo futuro de processos de neg\u00f3cio (&#8220;TO-BE&#8221;)<\/u><\/strong> no contexto dos objetivos de neg\u00f3cio e de desempenho de processos, e fornece planos e diretrizes sobre como fluxos de trabalho, aplica\u00e7\u00f5es de neg\u00f3cio, plataformas tecnol\u00f3gicas, recursos de dados e controles financeiros e operacionais interagem com os processos.<\/p>\n<p style=\"text-align: justify\">Partindo destas defini\u00e7\u00f5es, podemos marcar a afirma\u00e7\u00e3o acima como <strong><u>correta<\/u><\/strong>.<\/p>\n<ol style=\"text-align: justify\" start=\"53\">\n<li>De fato a nota\u00e7\u00e3o usa piscinas e raias. Essa podem conter diversos s\u00edmbolos. Os ret\u00e2ngulos com cantos arredondados para representar tarefas, as setas que representam a sequ\u00eancia de fluxo e os losangos que apresentam os desvios. Um losango, em um ponto de ramifica\u00e7\u00e3o, seleciona exatamente um caminho de sa\u00edda dentre as alternativas existentes. Em um ponto de converg\u00eancia, basta a execu\u00e7\u00e3o completa de um bra\u00e7o de entrada para que seja ativado o fluxo de sa\u00edda. Confesso que fiquei com uma pulga atr\u00e1s da orelha com o ret\u00e2ngulo representando um processo, mesmo assim acho que a afirma\u00e7\u00e3o est\u00e1 <strong>correta<\/strong>.<\/li>\n<li><strong>54<\/strong>. \u00c9 dif\u00edcil implementar BPM. Os principais problemas diante de qualquer mudan\u00e7a significativa s\u00e3o as barreiras humanas, in\u00e9rcia e interesses ocultos. Muitos trabalhadores do conhecimento resistem \u00e0 transforma\u00e7\u00e3o de processos, pois veem isso como uma diminui\u00e7\u00e3o de suas experi\u00eancias e vis\u00e3o singular. Tal fato acaba por influenciar os custos de redefini\u00e7\u00e3o dos processos <strong><u>se eles forem efetivados<\/u><\/strong>. Mas, na minha percep\u00e7\u00e3o, os fatores descritos est\u00e3o mais para um risco do que para um custo. Nesse contexto, a gest\u00e3o de mudan\u00e7as \u00e9 fundamental para reduzir os riscos e custos, e maximizar os benef\u00edcios de grandes mudan\u00e7as relacionadas ao neg\u00f3cio e \u00e0 tecnologia que suporta as iniciativas BPM.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Quando falamos de custos, ele \u00e9 o valor (normalmente monet\u00e1rio) associado ao processo. Pode assumir diferentes perspectivas, por exemplo, custo do recurso \u00e9 a medida de valor associado aos recursos (humanos ou n\u00e3o) necess\u00e1rios para completar o processo e custo de oportunidade \u00e9 o valor que \u00e9 perdido no processo por n\u00e3o ter obtido seu resultado esperado. Logo, a alternativa est\u00e1 <strong>correta<\/strong>.<\/p>\n<p style=\"text-align: justify\"><strong>Gabarito:<\/strong> E C C C<\/p>\n<ol style=\"text-align: justify\" start=\"2\">\n<li>\n<h3><strong>Ano: 2018 Banca: CESPE \u00d3rg\u00e3o: STM Cargo: Analista de Sistemas Quest\u00e3o: 71 a 74<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Um sistema gerenciador de banco de dados (SGBD) instalado no Linux deve ser configurado de modo a permitir os seguintes requisitos:<\/p>\n<p style=\"text-align: justify\">I no m\u00e1ximo, 1000 conex\u00f5es simult\u00e2neas;<\/p>\n<p style=\"text-align: justify\">II somente conex\u00f5es originadas a partir do servidor de<\/p>\n<p style=\"text-align: justify\">aplica\u00e7\u00e3o com IP 10.10.10.2.<\/p>\n<p style=\"text-align: justify\">Tendo como refer\u00eancia essas informa\u00e7\u00f5es, julgue os seguintes itens.<\/p>\n<p style=\"text-align: justify\">71 Caso o SGBD instalado seja o Postgres 9.6, para atendimento do requisito I, deve-se modificar o arquivo postgres.conf para o referido cluster; alterar o par\u00e2metro max_connections para 1000; e reiniciar o servi\u00e7o do SGBD.<\/p>\n<p style=\"text-align: justify\">72 Caso o SGBD instalado seja o Postgres 9.6, para atendimento do requisito II, deve-se modificar o arquivo pg_hba.conf para o referido cluster; alterar o par\u00e2metro listen_addresses para o IP fornecido; e reiniciar o servi\u00e7o do SGBD.<\/p>\n<p style=\"text-align: justify\">73 Caso o SGBD instalado seja o MySQL 5.7, para atendimento dos requisitos I e II, deve-se modificar o arquivo my.cnf, alterando-se os par\u00e2metros max_user_connections para 1000 e connection_source para o IP fornecido; e reiniciar o servi\u00e7o do SGBD.<\/p>\n<p style=\"text-align: justify\">74 Caso o SGBD instalado seja o Oracle 12C, os requisitos I e II podem ser atendidos em tempo de execu\u00e7\u00e3o, respectivamente, por meio dos comandos SET system sessions = 1000 e SET system listener = 10.10.10.2.<\/p>\n<p style=\"text-align: justify\"><strong>Coment\u00e1rio:<\/strong> Vamos comentar cada uma das alternativas acima:<\/p>\n<ol style=\"text-align: justify\" start=\"71\">\n<li>O par\u00e2metro <em>max_connections<\/em> determina o n\u00famero m\u00e1ximo de conex\u00f5es simult\u00e2neas para o servidor de banco de dados. O padr\u00e3o geralmente \u00e9 100 conex\u00f5es, mas pode ser menor se as configura\u00e7\u00f5es do kernel n\u00e3o o suportarem. Este par\u00e2metro s\u00f3 pode ser configurado no in\u00edcio do servidor. Ou seja, para alterar esse valor precisamos reiniciar o SGBD. Contudo a afirma\u00e7\u00e3o apresenta o nome do arquivo de configura\u00e7\u00e3o incorreto, o certo seria <strong><em>postgresql.conf<\/em><\/strong>. Sendo assim, embora a alternativa tenha sido dada como <strong>correta<\/strong>, acho que cabe RECURSO!<\/li>\n<li>O arquivo pg_hba.conf indicar\u00e1 ao PostgreSQL como autenticar usu\u00e1rios que fazem acesso ao banco de dados. Em geral, as entradas do arquivo pg_hba.conf t\u00eam o seguinte layout:<\/li>\n<\/ol>\n<p style=\"text-align: justify\"># local\u00a0\u00a0\u00a0\u00a0\u00a0 DATABASE\u00a0 USER\u00a0 METHOD\u00a0 [OPTIONS]<\/p>\n<p style=\"text-align: justify\"># host\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 DATABASE\u00a0 USER\u00a0 ADDRESS\u00a0 METHOD\u00a0 [OPTIONS]<\/p>\n<p style=\"text-align: justify\"># hostssl\u00a0\u00a0\u00a0 DATABASE\u00a0 USER\u00a0 ADDRESS\u00a0 METHOD\u00a0 [OPTIONS]<\/p>\n<p style=\"text-align: justify\"># hostnossl\u00a0 DATABASE\u00a0 USER\u00a0 ADDRESS\u00a0 METHOD\u00a0 [OPTIONS]<\/p>\n<p style=\"text-align: justify\">Vejamos alguns exemplo de regras que podem estar registradas em um arquivp pg_hba.conf:<\/p>\n<p style=\"text-align: justify\"># TYPE\u00a0\u00a0 DATABASE\u00a0\u00a0\u00a0\u00a0\u00a0 USER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ADDRESS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 METHOD<\/p>\n<p style=\"text-align: justify\">\u00a0local\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0trust<\/p>\n<p style=\"text-align: justify\">\u00a0host\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 127.0.0.1\/32\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0trust<\/p>\n<p style=\"text-align: justify\">\u00a0host\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ::1\/128\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0trust<\/p>\n<p style=\"text-align: justify\">O termo local diz que todos os usu\u00e1rios usando sockets Unix locais devem ser confi\u00e1veis para todos os bancos de dados. O m\u00e9todo <em>trust<\/em> significa que nenhuma senha deve ser enviada para o servidor e as pessoas podem fazer <em>login<\/em> diretamente. As outras duas regras dizem que o mesmo se aplica \u00e0s conex\u00f5es do localhost 127.0.0.1 e ::1\/128, que \u00e9 um endere\u00e7o IPv6.<\/p>\n<p style=\"text-align: justify\">Perceba que at\u00e9 agora <strong>n\u00e3o<\/strong> falamos do par\u00e2metro <em>listen_addresses<\/em>. \u00c9 porque ele n\u00e3o est\u00e1 no arquivo <strong><em>pg_hba.conf<\/em><\/strong>, ele \u00e9 configurado no arquivo <strong><u>postgresql.conf<\/u><\/strong>. Desta forma, a alternativa est\u00e1 <strong><u>incorreta<\/u><\/strong>.<\/p>\n<ol style=\"text-align: justify\" start=\"73\">\n<li>Neste caso, n\u00e3o existe o connection_source no arquivo my.cnf. \u00c9 poss\u00edvel restringir os IPs que acessam o banco usando a vari\u00e1vel bind-address. J\u00e1 a vari\u00e1vel que limita a quantidade de requisi\u00e7\u00f5es por usu\u00e1rios \u00e9 <strong><em>max_user_connections<\/em><\/strong>. Se voc\u00ea quiser definir a quantidade de requisi\u00e7\u00f5es globais use o termo <strong><em><u>max_connections<\/u><\/em><\/strong>. Logo, temos mais uma alternativa <strong><u>errada<\/u><\/strong>.<\/li>\n<li>Primeiramente para alterar o par\u00e2metro que define a quantidade de sess\u00f5es usamos o comando ALTER SYSTEM SET SESSIONS = 1000. Assim, essa alternativa j\u00e1 est\u00e1 <strong><u>errada<\/u><\/strong>. Ainda no servidor de banco de dados Oracle, o <em>Oracle Net<\/em> usa um processo ativo chamado <em>listener<\/em> para gerenciar conex\u00f5es entre as aplica\u00e7\u00f5es e o servidor de Banco de Dados. As aplica\u00e7\u00f5es (remotas) n\u00e3o podem se conectar ao servidor de BD sem um <em>listener<\/em>. Um \u00fanico listener pode servir m\u00faltiplas inst\u00e2ncias de BD e milhares de conex\u00f5es clientes. Segue abaixo um exemplo de conte\u00fado do arquivo de configura\u00e7\u00e3o do listener, chamado listener.ora:<\/li>\n<\/ol>\n<p style=\"text-align: justify\"># listener.ora Network Configuration File:<\/p>\n<p style=\"text-align: justify\">LISTENER =\u00a0 (DESCRIPTION_LIST =<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0 (DESCRIPTION =<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0\u00a0\u00a0 (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)))<\/p>\n<p style=\"text-align: justify\"><strong>Gabarito:<\/strong> \u00a0C(Recurso neles!)\u00a0 E\u00a0 E\u00a0 E<\/p>\n<ol style=\"text-align: justify\" start=\"3\">\n<li>\n<h3><strong>Ano: 2018 Banca: CESPE \u00d3rg\u00e3o: STM Cargo: Analista de Sistemas Quest\u00e3o: 51 a 54<\/strong><\/h3>\n<\/li>\n<\/ol>\n<ul style=\"text-align: justify\">\n<li>CREATE TABLE IF NOT EXISTS &#8216;software&#8217; (<\/li>\n<li>&#8216;id&#8217; int NOT NULL,<\/li>\n<li>&#8216;nome&#8217; varchar(70) NOT NULL,<\/li>\n<li>PRIMARY KEY (&#8216;id&#8217;)<\/li>\n<li>) DEFAULT CHARSET=utf8;<\/li>\n<li>INSERT INTO &#8216;software&#8217; (&#8216;id&#8217;, &#8216;nome&#8217;) VALUES<\/li>\n<li>(&#8216;1&#8217;, &#8216;Programa ABC&#8217;),<\/li>\n<li>(&#8216;2&#8217;, &#8216;Programa WYZ&#8217;),<\/li>\n<li>(&#8216;3&#8217;, &#8216;Programa DFG&#8217;);<\/li>\n<li>CREATE TABLE IF NOT EXISTS &#8216;vsoftware&#8217; (<\/li>\n<li>&#8216;idsoft&#8217; int UNSIGNED NOT NULL REFERENCES software(id),<\/li>\n<li>&#8216;versao&#8217; int(3) NOT NULL,<\/li>\n<li>&#8216;descricao&#8217; varchar(70) NOT NULL,<\/li>\n<li>PRIMARY KEY (&#8216;idsoft&#8217;,&#8217;versao&#8217;));<\/li>\n<li>INSERT INTO &#8216;vsoftware'(&#8216;idsoft&#8217;, &#8216;versao&#8217;, &#8216;descricao&#8217;) VALUES<\/li>\n<li>(&#8216;1&#8217;, &#8216;1&#8217;, &#8216;criacao do programa.&#8217;),<\/li>\n<li>(&#8216;2&#8217;, &#8216;1&#8217;, &#8216;1a versao.&#8217;),<\/li>\n<li>(&#8216;1&#8217;, &#8216;2&#8217;, &#8216;atualizacao na tela A.&#8217;),<\/li>\n<li>(&#8216;1&#8217;, &#8216;3&#8217;, &#8216;adicao da tela C.&#8217;),<\/li>\n<li>(&#8216;2&#8217;, &#8216;2&#8217;, &#8216;adicao da tela D.&#8217;);<\/li>\n<\/ul>\n<p style=\"text-align: justify\">Com base nos comandos MySQL 5.6 precedentes, julgue os itens a seguir.<\/p>\n<p style=\"text-align: justify\">75 Especialmente devido \u00e0 express\u00e3o na linha 11, o comando a seguir, ap\u00f3s executado, retornar\u00e1 tr\u00eas registros.<\/p>\n<p style=\"text-align: justify\">SELECT a.idsoft, a.versao, a.descricao<\/p>\n<p style=\"text-align: justify\">FROM &#8216;vsoftware&#8217; a<\/p>\n<p style=\"text-align: justify\">INNER JOIN (<\/p>\n<p style=\"text-align: justify\">\u00a0SELECT idsoft, MAX(versao) versao<\/p>\n<p style=\"text-align: justify\">\u00a0FROM &#8216;vsoftware&#8217;<\/p>\n<p style=\"text-align: justify\">\u00a0GROUP BY idsoft) b ON a.idsoft = b.idsoft<\/p>\n<p style=\"text-align: justify\">AND a.versao = b.versao;<\/p>\n<p style=\"text-align: justify\">76 A execu\u00e7\u00e3o do comando<\/p>\n<p style=\"text-align: justify\">SELECT a.idsoft, a.versao, a.descricao<\/p>\n<p style=\"text-align: justify\">FROM &#8216;vsoftware&#8217; a<\/p>\n<p style=\"text-align: justify\">LEFT OUTER JOIN &#8216;vsoftware&#8217; b<\/p>\n<p style=\"text-align: justify\">\u00a0ON a.idsoft = b.idsoft AND a.versao &lt; b.versao<\/p>\n<p style=\"text-align: justify\">WHERE b.idsoft IS NULL;<\/p>\n<p style=\"text-align: justify\">retornar\u00e1 os seguintes dados.<\/p>\n<p style=\"text-align: justify\">idsoft \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 versao \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 descricao<\/p>\n<p style=\"text-align: justify\">1 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 adicao da tela C.<\/p>\n<p style=\"text-align: justify\">2 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 adicao da tela D.<\/p>\n<p style=\"text-align: justify\">77 A execu\u00e7\u00e3o do comando<\/p>\n<p style=\"text-align: justify\">SELECT a.id<\/p>\n<p style=\"text-align: justify\">FROM &#8216;software&#8217; a<\/p>\n<p style=\"text-align: justify\">where a.id not in (<\/p>\n<p style=\"text-align: justify\">SELECT b.idsoft<\/p>\n<p style=\"text-align: justify\">FROM &#8216;vsoftware&#8217; b);<\/p>\n<p style=\"text-align: justify\">ter\u00e1 resultado id\u00eantico \u00e0 execu\u00e7\u00e3o do comando a seguir.<\/p>\n<p style=\"text-align: justify\">SELECT distinct a.id<\/p>\n<p style=\"text-align: justify\">FROM &#8216;software&#8217; a left outer join &#8216;vsoftware&#8217; b<\/p>\n<p style=\"text-align: justify\">on a.id=b.idsoft;<\/p>\n<p style=\"text-align: justify\">78 A tabela vsoftware est\u00e1 na segunda forma normal (2FN), porque cont\u00e9m uma chave estrangeira referenciada \u00e0 tabela software.<\/p>\n<p style=\"text-align: justify\">79 O comando ALTER TABLE software add data datetime; no MySQL 5.6 adiciona um novo campo data \u00e0 tabela software.<\/p>\n<p style=\"text-align: justify\">80 O comando a seguir no MySQL 5.6 modifica o tipo do campo nome para CHAR na tabela software.<\/p>\n<p style=\"text-align: justify\">ALTER TABLE software MODIFY nome char(100);<\/p>\n<p style=\"text-align: justify\"><strong>Coment\u00e1rio:<\/strong> Vamos comentar cada uma das quest\u00f5es acima:<\/p>\n<ol style=\"text-align: justify\" start=\"75\">\n<li>Essa alternativa tem uma consulta interna que agrupa por software id. Veja que cada software vai retornar sua \u00faltima vers\u00e3o na outra coluna. Como temos dois softwares o resultado intermedi\u00e1rio s\u00e3o apenas duas tuplas. Logo em seguida, temos um inner join que vai compara o valor da vers\u00e3o e do id na clausula ON. Tal fato, mantem apenas duas tuplas no resultado. Logo, a alternativa est\u00e1 <strong><u>errada<\/u><\/strong>.<\/li>\n<li>A l\u00f3gica para resolver essa quest\u00e3o \u00e9 seguinte, n\u00e3o existir\u00e1 elementos no lado direito quando a retri\u00e7\u00e3o \u201ca.versao &lt; b.versao\u201d n\u00e3o for satisfeita. Logo, temos as seguintes tuplas abaixo onde b.idsoft IS NULL, isso \u00e9 de fato o que consta na sugest\u00e3o de resposta. Logo, a afirma\u00e7\u00e3o est\u00e1 <strong><u>correta<\/u><\/strong>.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">(&#8216;1&#8217;, &#8216;3&#8217;, &#8216;adicao da tela C.&#8217;),<\/p>\n<p style=\"text-align: justify\">(&#8216;2&#8217;, &#8216;2&#8217;, &#8216;adicao da tela D.&#8217;);<\/p>\n<ol style=\"text-align: justify\" start=\"77\">\n<li>A primeira retornar\u00e1 os programas que n\u00e3o tem vers\u00f5es ainda publicadas, neste caso concreto, apenas o id 3. J\u00e1 a segunda, retornar\u00e1 todos os valores de id que tenham ou n\u00e3o vers\u00e3o publicada. Como elas n\u00e3o apresentam o mesmo resultado, temos uma alternativa <strong><u>incorreta<\/u><\/strong>.<\/li>\n<li>A tabelas est\u00e1 de fato na segunda forma normal, mas isso acontece pois n\u00e3o existe depend\u00eancia parcial da chave prim\u00e1ria. A justificativa presente na alternativa afirma algo diferente disto, logo temos uma alternativa <strong><u>errada<\/u><\/strong>.<\/li>\n<li>A afirma\u00e7\u00e3o usa a sintaxe correta do MySQL para altera\u00e7\u00e3o de tabela. Lembrando que o column \u00e9 opcional. Logo, alternativa <strong><u>correta<\/u><\/strong>.<\/li>\n<li>Para mudar o tipo de dados ou a defini\u00e7\u00e3o da coluna voc\u00ea pode usar o comando MODIFY que \u00e9 uma extens\u00e3o do MySQL para ser compat\u00edvel com o SGBD Oracle. \u00c9 uma forma de mudar a defini\u00e7\u00e3o sem mexer no nome do atributo. Desta forma, a alternativa est\u00e1 <strong><u>correta<\/u><\/strong>.<\/li>\n<\/ol>\n<p style=\"text-align: justify\"><strong>Gabarito:<\/strong> E C E E C<\/p>\n<ol style=\"text-align: justify\" start=\"4\">\n<li>\n<h3><strong>Ano: 2018 Banca: CESPE \u00d3rg\u00e3o: STM Cargo: Analista de Sistemas Quest\u00f5es: 81 e 82<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Julgue os itens subsequentes, a respeito do Postgres 9.6.<\/p>\n<p style=\"text-align: justify\">81 Ao se criar uma trigger, a vari\u00e1vel especial TG_OP permite identificar que opera\u00e7\u00e3o est\u00e1 sendo executada, por exemplo, DELETE, UPDATE, INSERT ou TRUNCATE.<\/p>\n<p style=\"text-align: justify\">82 Nas instru\u00e7\u00f5es seguintes, a palavra-chave IMMUTABLE indica que a fun\u00e7\u00e3o criada n\u00e3o pode modificar o banco de dados. CREATE FUNCTION add(integer, integer) RETURNS integer<\/p>\n<p style=\"text-align: justify\">\u00a0AS &#8216;select $1 + $2;&#8217;<\/p>\n<p style=\"text-align: justify\">\u00a0LANGUAGE SQL<\/p>\n<p style=\"text-align: justify\">\u00a0IMMUTABLE<\/p>\n<p style=\"text-align: justify\">\u00a0RETURNS NULL ON NULL INPUT;<\/p>\n<p style=\"text-align: justify\"><strong>Coment\u00e1rio:<\/strong> Vamos comentar as alternativas acimas. Primeiramente a quest\u00e3o 81 est\u00e1 correta. De fato, TG_OP \u00e9 uma vari\u00e1vel do tipo texto que pode ser preenchida com os valores INSERT, UPDATE, DELETE ou TRUNCATE que identificam quais opera\u00e7\u00f5es ir\u00e3o disparar o TRIGGER. Vejamos alguns exemplos:<\/p>\n<p style=\"text-align: justify\">CREATE TRIGGER emp_stamp BEFORE INSERT OR UPDATE ON emp<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0 FOR EACH ROW EXECUTE PROCEDURE emp_stamp();<\/p>\n<p style=\"text-align: justify\">CREATE TRIGGER emp_audit<\/p>\n<p style=\"text-align: justify\">AFTER INSERT OR UPDATE OR DELETE ON emp<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0 FOR EACH ROW EXECUTE PROCEDURE process_emp_audit();<\/p>\n<ol style=\"text-align: justify\" start=\"82\">\n<li>A quest\u00e3o 82 trata dos par\u00e2metros IMMUTABLE, STABLE, VOLATILE. Esses atributos informam ao otimizador de consulta sobre o comportamento da fun\u00e7\u00e3o. No m\u00e1ximo, uma op\u00e7\u00e3o pode ser especificada. Se nenhum deles aparecer, VOLATILE \u00e9 a definido por padr\u00e3o.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Ser o valore passado for <strong><u>IMMUTABLE<\/u><\/strong> vai indicar que <strong>a fun\u00e7\u00e3o n\u00e3o pode modificar o banco de dados e sempre retorna o mesmo resultado quando dados os mesmos valores de argumento<\/strong>; ou seja, n\u00e3o faz pesquisas de banco de dados ou, de outra forma, usa informa\u00e7\u00f5es que n\u00e3o est\u00e3o diretamente presentes na lista de argumentos. Se esta op\u00e7\u00e3o for dada, qualquer chamada da fun\u00e7\u00e3o com argumentos constantes pode ser imediatamente substitu\u00edda pelo valor da fun\u00e7\u00e3o. Desta forma, temos mais uma alternativa <strong><u>correta<\/u><\/strong>.<\/p>\n<p style=\"text-align: justify\">STABLE indica que a fun\u00e7\u00e3o n\u00e3o pode modificar o banco de dados, e que, dentro de uma \u00fanica tabela, retornar\u00e1 consistentemente o mesmo resultado para os mesmos valores de argumento, mas que seu resultado pode mudar em declara\u00e7\u00f5es SQL. Esta \u00e9 a sele\u00e7\u00e3o apropriada para fun\u00e7\u00f5es cujos resultados dependem de pesquisas de banco de dados, vari\u00e1veis \u200b\u200bde par\u00e2metros (como o fuso hor\u00e1rio atual), etc.<\/p>\n<p style=\"text-align: justify\">VOLATILE indica que o valor da fun\u00e7\u00e3o pode mudar mesmo dentro de uma varredura de tabela \u00fanica, portanto, nenhuma otimiza\u00e7\u00e3o pode ser feita. Relativamente poucas fun\u00e7\u00f5es de banco de dados s\u00e3o vol\u00e1teis nesse sentido; alguns exemplos s\u00e3o aleat\u00f3rios (), currval (), timeofday (). Mas note que qualquer fun\u00e7\u00e3o que tenha efeitos colaterais deve ser classificada como vol\u00e1til, mesmo que seu resultado seja bastante previs\u00edvel, para evitar que as chamadas sejam otimizadas; um exemplo \u00e9 setval ().<\/p>\n<p style=\"text-align: justify\"><strong>Gabarito:<\/strong> C C<\/p>\n<ol style=\"text-align: justify\" start=\"5\">\n<li>\n<h3><strong>Ano: 2018 Banca: CESPE \u00d3rg\u00e3o: STM Cargo: Analista de Sistemas Quest\u00f5es: 83 a 85<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Acerca do Oracle 12C, julgue os pr\u00f3ximos itens.<\/p>\n<p style=\"text-align: justify\">83 Especialmente voltado para o armazenamento de dados de sistemas de suporte a decis\u00e3o (DSS) e data warehouse, os dados no Oracle podem ser armazenados em uma nova \u00e1rea opcional denominada In-Memory (IM). A IM \u00e9 um suplemento que substitui a system global area (SGA), pois se sobrep\u00f5e ao cache de buffer do banco de dados, permitindo alto poder de processamento ao varrer dados colunares rapidamente por meio de vetoriza\u00e7\u00e3o.<\/p>\n<p style=\"text-align: justify\">84 Os dados nos SGBDs s\u00e3o organizados em blocos, em que os sistemas de suporte \u00e0 decis\u00e3o (DSS) e os ambientes de banco de dados de data warehouse tendem a se beneficiar de valores de tamanho de bloco maiores.<\/p>\n<p style=\"text-align: justify\">85 Os blocos de dados s\u00e3o organizados em cabe\u00e7alho (row header) e dados (column data); a cada nova transa\u00e7\u00e3o, o registro \u00e9 armazenado como uma nova linha na tabela e, assim, um registro \u00e9 armazenado em v\u00e1rias colunas em blocos de dados no disco.<\/p>\n<p style=\"text-align: justify\"><strong>Coment\u00e1rio:<\/strong> Vamos comentar cada uma das alternativas:<\/p>\n<ol style=\"text-align: justify\" start=\"83\">\n<li>Vamos come\u00e7ar relembrando alguns conceitos. Uma Inst\u00e2ncia Oracle cont\u00e9m mem\u00f3ria e conjunto de processos em background. A mem\u00f3ria \u00e9 dividida em duas \u00e1reas distintas: System Global Area (SGA) e Program Global Area (PGA). O Oracle cria processos servidores para lidar com os pedidos de processamento dos usu\u00e1rios conectados \u00e0 instancia. Uma das mais importantes tarefas do Processo Servidor: ler blocos de dados de objetos a partir de datafile dentro de um buffer do banco de dados que por padr\u00e3o, armazena os dados no buffer cache do banco de dados Oracle em formato de linha.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">A partir do 12c o Oracle Database Release 1 (12.1.0.2) adicionou uma nova \u00e1rea opcional na SGA chamado de In-Memory, que s\u00e3o objetos armazenados com o novo formato <strong>In-Memory Column Store\u00a0<\/strong>(IM column store). A IM Column store \u00e9 opcional e armazena c\u00f3pias das tabelas, partitions, colunas, materialized views (objetos especificados como INMEMORY usando DDL) em um formato especial de colunas otimizadas para leituras r\u00e1pidas.<\/p>\n<p style=\"text-align: justify\">A IM column store \u00e9 um suplemento em vez de ser um substituto para o cache de buffer do banco de dados. A IM column store n\u00e3o substitui o buffer cache. Mas ambas as \u00e1reas de mem\u00f3ria podem armazenar os mesmos dados em formatos diferentes e n\u00e3o \u00e9 necess\u00e1rio para objetos armazenados na IM column store serem carregados no buffer cache do banco de dados, ou seja, os objetos s\u00e3o armazenados unicamente na IM column store. Sendo assim, temos uma afirma\u00e7\u00e3o <strong><u>incorreta<\/u><\/strong>.<\/p>\n<p style=\"text-align: justify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-109629\" src=\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png\" alt=\"\" width=\"571\" height=\"297\" srcset=\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png 571w, https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/p>\n<ol style=\"text-align: justify\" start=\"84\">\n<li>Um bloco \u00e9 um conjunto cont\u00edguo de bits ou bytes que forma uma unidade de dados identific\u00e1vel. Em alguns bancos de dados, um bloco \u00e9 a menor quantidade de dados que um programa pode solicitar. \u00c9 um m\u00faltiplo de um bloco do sistema operacional, que \u00e9 a menor quantidade de dados que podem ser recuperados do armazenamento ou da mem\u00f3ria. V\u00e1rios blocos em um banco de dados compreendem uma extens\u00e3o.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">No Oracle, o valor do DB_BLOCK_SIZE em vigor quando voc\u00ea cria o banco de dados determina o tamanho dos blocos. O valor deve permanecer definido como seu valor inicial. Para Real Application Clusters, este par\u00e2metro afeta o valor m\u00e1ximo do par\u00e2metro de armazenamento <strong>FREELISTS<\/strong> para tabelas e \u00edndices. O Oracle usa um bloco de banco de dados para cada grupo freelist. O sistema de suporte \u00e0 decis\u00e3o (DSS) e os ambientes de banco de dados de data warehouse tendem a se beneficiar de valores de tamanho de bloco maiores.<\/p>\n<ol style=\"text-align: justify\" start=\"85\">\n<li>A figura abaixo descreve um bloco de arquivos no Oracle. Veja que existe um cabe\u00e7alho de bloco, que cont\u00e9m o endere\u00e7o do bloco de dados, o diret\u00f3rio da tabela e o diret\u00f3rio da linha e os slots de transa\u00e7\u00e3o usados quando as transa\u00e7\u00f5es fazem altera\u00e7\u00f5es em linhas do bloco. Esses cabe\u00e7alhos crescem de cima para baixo. Temos tamb\u00e9m os espa\u00e7os de dados, esses dados de colunas s\u00e3o inseridos no bloco de baixo para cima. Veja que quando inserirmos os dados eles ser\u00e3o armazenados os registros em tabelas organizadas em linhas por colunas e estruturadas em blocos.<\/li>\n<\/ol>\n<p style=\"text-align: justify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-109630\" src=\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230650\/figura-1-oracle-blocks.png\" alt=\"\" width=\"740\" height=\"410\" srcset=\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230650\/figura-1-oracle-blocks.png 740w, https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230650\/figura-1-oracle-blocks.png 300w, https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230650\/figura-1-oracle-blocks.png 610w\" sizes=\"auto, (max-width: 740px) 100vw, 740px\" \/><\/p>\n<p style=\"text-align: justify\"><strong>Gabarito:<\/strong> E C C<\/p>\n<ol style=\"text-align: justify\" start=\"6\">\n<li>\n<h3><strong>Ano: 2018 Banca: CESPE \u00d3rg\u00e3o: STM Cargo: Analista de Sistemas Quest\u00f5es: 86 a 90<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Julgue os itens que se seguem, a respeito do processamento de transa\u00e7\u00f5es e otimiza\u00e7\u00e3o de desempenho do SGBD e de consultas SQL.<\/p>\n<p style=\"text-align: justify\">86 O controle de n\u00edvel de isolamento de transa\u00e7\u00f5es \u00e9 importante para gerenciar a forma como as transa\u00e7\u00f5es concorrentes se comportar\u00e3o no SGBD. No Postgres 9.6, o n\u00edvel de isolamento padr\u00e3o \u00e9 READ COMMITTED, mas pode ser alterado para SERIAZABLE por meio do comando SET TRANSACTION ISOLATION LEVEL SERIAZABLE.<\/p>\n<p style=\"text-align: justify\">87 No MySQL 5.6, o modo padr\u00e3o de execu\u00e7\u00e3o das transa\u00e7\u00f5es \u00e9 autocommit, o qual faz que as mudan\u00e7as realizadas se tornem permanentes ap\u00f3s a execu\u00e7\u00e3o bem-sucedida desse comando; entretanto, esse modo ser\u00e1 desabilitado implicitamente, se uma s\u00e9rie de instru\u00e7\u00f5es for iniciada por meio do comando START TRANSACTION.<\/p>\n<p style=\"text-align: justify\">88 No Oracle 12C, a Automatic Workload Repository (AWR) \u00e9 uma funcionalidade similar ao autovacuum no Postgres 9.6, haja vista que ambos processam e mant\u00eam estat\u00edsticas de desempenho para detec\u00e7\u00e3o de problemas e manuten\u00e7\u00e3o autom\u00e1tica do banco de dados, por exemplo, reusando, ajustando e excluindo dados tempor\u00e1rios e reusando espa\u00e7o em blocos por linhas exclu\u00eddas.<\/p>\n<p style=\"text-align: justify\">89 No MySQL 5.6, o banco de dados information_schema guarda dados estat\u00edsticos e eventos para serem utilizados caso se queira encontrar problemas de velocidade de acesso aos dados e(ou) problemas de integridades no SGBD.<\/p>\n<p style=\"text-align: justify\">90 No MySQL 5.6, os \u00edndices s\u00e3o usados para, entre outras opera\u00e7\u00f5es, desconsiderar linhas a serem pesquisadas e(ou) encontrar linhas abrangidas pelo WHERE mais rapidamente<\/p>\n<p style=\"text-align: justify\"><strong>Coment\u00e1rio:<\/strong> Vamos comentar cada uma das alternativas acima:<\/p>\n<ol style=\"text-align: justify\" start=\"86\">\n<li>Por padr\u00e3o, o PostgreSQL \u00e9 executado no modo de isolamento de transa\u00e7\u00e3o READ COMMITTED. Isso significa que cada declara\u00e7\u00e3o dentro de uma transa\u00e7\u00e3o obter\u00e1 um novo instant\u00e2neo dos dados, que ser\u00e1 constante ao longo da consulta. Para mudar de n\u00edvel de isolamento usamos o comando SET TRANSACTION que possui a seguinte sintaxe.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">SET TRANSACTION <strong><em>transaction_mode<\/em><\/strong> [, &#8230;]<\/p>\n<p style=\"text-align: justify\">SET TRANSACTION SNAPSHOT <strong><em>snapshot_id<\/em><\/strong><\/p>\n<p style=\"text-align: justify\">SET SESSION CHARACTERISTICS AS TRANSACTION <strong><em>transaction_mode<\/em><\/strong> [, &#8230;]<\/p>\n<p style=\"text-align: justify\">onde <strong><em>transaction_mode<\/em><\/strong> pode ser definido da seguinte forma:<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0 ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0 READ WRITE | READ ONLY<\/p>\n<p style=\"text-align: justify\">\u00a0\u00a0\u00a0 [ NOT ] DEFERRABLE<\/p>\n<p style=\"text-align: justify\">Logo a afirma\u00e7\u00e3o estaria <strong><u>correta<\/u><\/strong>. Contudo, observem que o enunciado apresenta o termo SERIAZABLE, quando o correto seria SERIALIZABLE. Sendo assim: RECURSO NELES!!!<\/p>\n<ol style=\"text-align: justify\" start=\"87\">\n<li>Por padr\u00e3o, o MySQL \u00e9 executado no modo <em>autocommit<\/em>, o que significa que as altera\u00e7\u00f5es feitas por declara\u00e7\u00f5es ou comandos individuais s\u00e3o commitados no banco de dados imediatamente para torn\u00e1-los permanentes. Com efeito, cada declara\u00e7\u00e3o ou comando \u00e9 uma transa\u00e7\u00e3o implicitamente. Para executar as transa\u00e7\u00f5es explicitamente, desative o modo de <em>autocommit<\/em> e depois diga ao MySQL quando confirmar ou reverter as mudan\u00e7as.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">Uma forma de executar uma transa\u00e7\u00e3o \u00e9 emitir uma declara\u00e7\u00e3o de START TRANSACTION (ou BEGIN) para suspender o modo de <em>autocommit<\/em>, executar as declara\u00e7\u00f5es que comp\u00f5em a transa\u00e7\u00e3o e encerrar a transa\u00e7\u00e3o com uma declara\u00e7\u00e3o de COMMIT para tornar as altera\u00e7\u00f5es permanentes. Se ocorrer um erro durante a transa\u00e7\u00e3o, voc\u00ea pode cancelar emitindo uma instru\u00e7\u00e3o ROLLBACK para desfazer as altera\u00e7\u00f5es. Logo, a alternativa est\u00e1 <strong>correta<\/strong>.<\/p>\n<ol style=\"text-align: justify\" start=\"88\">\n<li>Falamos sobre AWR e Autovacuum na nossa revis\u00e3o para o concurso do STM. O PostgreSQL e outros bancos de dados relacionais usam uma t\u00e9cnica chamada <strong>Multi-Version Concurrency Control<\/strong> (MVCC) para manter o controle das transa\u00e7\u00f5es. Uma penalidade de espa\u00e7o surge quando usamos o MVCC, ela \u00e9 conhecida como incha\u00e7o. O PostgreSQL precisa de ajuda de uma ferramenta externa chamada <strong><u>VACUUM<\/u><\/strong> para poder limpar essa \u201csujeira\u201d.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">As tabelas e \u00edndices inchados n\u00e3o somente desperdi\u00e7am espa\u00e7o, como tamb\u00e9m deixam as consultas mais lentas. Ent\u00e3o, isso n\u00e3o \u00e9 s\u00f3 uma quest\u00e3o de conseguir mais espa\u00e7o no disco r\u00edgido. Antigamente, os DBAs precisavam executar o VACUUM manualmente. Hoje, \u00e9 poss\u00edvel configurar um deamon chamado Autovacuum para executar essas limpezas em momentos oportunos.<\/p>\n<p style=\"text-align: justify\">Veja que Autovacuum n\u00e3o guarda nenhuma rela\u00e7\u00e3o de similaridade funcional com o AWR. Podemos afirmar, portanto, que a alternativa est\u00e1 <strong>incorreta<\/strong>. Sabemos que o AWR significa Automatic Workload Repository, ou seja, \u00e9 um reposit\u00f3rio de informa\u00e7\u00f5es a respeito da carga de trabalho do banco de dados. O framework do AWR coleta, processa e mant\u00e9m estat\u00edsticas de desempenho para possibilitar detec\u00e7\u00e3o de problemas e \u00e9 a base para as tarefas de tuning autom\u00e1ticas do Oracle. Estas estat\u00edsticas s\u00e3o coletadas atrav\u00e9s de snapshots regulares e armazenadas no AWR por um per\u00edodo definido, elas s\u00e3o baseadas no momento do snapshot e podem ser utilizadas para elaborar um relat\u00f3rio. Os valores capturados pelo snapshot representam as mudan\u00e7as em cada estat\u00edstica coletada no per\u00edodo.<\/p>\n<ol style=\"text-align: justify\" start=\"89\">\n<li>No MySQL, o INFORMATION_SCHEMA fornece acesso a metadados de banco de dados, informa\u00e7\u00f5es sobre o servidor MySQL, como o nome de um banco de dados ou tabela, o tipo de dados de uma coluna ou privil\u00e9gios de acesso. Outros termos que \u00e0s vezes s\u00e3o usados para esta informa\u00e7\u00e3o s\u00e3o o dicion\u00e1rio de dados e o cat\u00e1logo do sistema.<\/li>\n<\/ol>\n<p style=\"text-align: justify\">O INFORMATION_SCHEMA \u00e9 um banco de dados dentro de cada inst\u00e2ncia do MySQL, trata-se do local que armazena informa\u00e7\u00f5es sobre todos os outros bancos de dados que o servidor MySQL mant\u00e9m. O banco de dados INFORMATION_SCHEMA cont\u00e9m <strong>v\u00e1rias tabelas somente leitura<\/strong>. Eles s\u00e3o, na verdade, visualiza\u00e7\u00f5es, n\u00e3o tabelas de base, portanto, n\u00e3o h\u00e1 arquivos associados a elas, e voc\u00ea n\u00e3o pode definir gatilhos ou triggers. Al\u00e9m disso, n\u00e3o h\u00e1 um diret\u00f3rio de banco de dados com esse nome, as tabelas s\u00e3o constru\u00eddas temporariamente enquanto a inst\u00e2ncia do SGBD estiver executando.<\/p>\n<p style=\"text-align: justify\">Existe outro esquema padr\u00e3o no MySQL denominado PERFORMANCE_SCHEMA que \u00e9 usado para inspecionar a execu\u00e7\u00e3o de consultas e eventos em tempo real. Esse esquema destina-se a fornecer acesso a informa\u00e7\u00f5es \u00fateis sobre a <strong><u>execu\u00e7\u00e3o do servidor<\/u><\/strong>, tendo um impacto m\u00ednimo no desempenho. O PERFORMANCE_SCHEMA centra-se principalmente nos dados de desempenho. Isso difere de INFORMATION_SCHEMA, que serve para inspe\u00e7\u00e3o dos metadados. Sendo assim, a afirma\u00e7\u00e3o mistura os dois conceitos, logo est\u00e1 <strong>incorreta<\/strong>.<\/p>\n<ol style=\"text-align: justify\" start=\"90\">\n<li>O MySQL usa \u00edndices de v\u00e1rias maneiras:<\/li>\n<\/ol>\n<ul style=\"text-align: justify\">\n<li>Os \u00edndices s\u00e3o usados para acelerar pesquisas de linhas que combinam termos de uma cl\u00e1usula WHERE ou linhas que combinam tuplas de outras tabelas quando executam jun\u00e7\u00f5es. Por isso, a alternativa est\u00e1 <strong>correta<\/strong>.<\/li>\n<li>Para consultas que usam as fun\u00e7\u00f5es MIN() ou MAX(), o MySQL pode encontrar o menor ou maior valor em uma coluna indexada rapidamente sem examinar cada linha.<\/li>\n<li>O MySQL geralmente pode usar \u00edndices para executar eficientemente opera\u00e7\u00f5es de classifica\u00e7\u00e3o e agrupamento para cl\u00e1usulas ORDER BY e GROUP BY.<\/li>\n<\/ul>\n<p style=\"text-align: justify\"><strong>Gabarito:<\/strong> C (Recurso Neles!) C E E C<\/p>\n<p style=\"text-align: justify\">Qualquer d\u00favida estou \u00e0s ordens,<\/p>\n<p>Forte abra\u00e7o e bons estudos,<\/p>\n<p style=\"text-align: justify\">Thiago Cavalanti<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Prezados alunos, Abaixo comento as quest\u00f5es de banco de dados, business intelligence e processo de neg\u00f3cio da prova de analista de sistemas do concurso do STM. A prova veio num n\u00edvel bastante elevado, mas \u00e9 sempre bom aprender com os erros. Temos dois recursos poss\u00edveis. Sem mais delongas, vamos aos coment\u00e1rios. Ano: 2018 Banca: CESPE [&hellip;]<\/p>\n","protected":false},"author":215,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"post_tipo":"article","footnotes":""},"categories":[],"tags":[1193,2591,867],"tax_estado":[],"class_list":["post-109628","post","type-post","status-publish","format-standard","hentry","tag-banco-de-dados","tag-concurso-stm","tag-prova-comentada"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM\" \/>\n<meta property=\"og:description\" content=\"Prezados alunos, Abaixo comento as quest\u00f5es de banco de dados, business intelligence e processo de neg\u00f3cio da prova de analista de sistemas do concurso do STM. A prova veio num n\u00edvel bastante elevado, mas \u00e9 sempre bom aprender com os erros. Temos dois recursos poss\u00edveis. Sem mais delongas, vamos aos coment\u00e1rios. Ano: 2018 Banca: CESPE [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\" \/>\n<meta property=\"og:site_name\" content=\"Estrat\u00e9gia Concursos\" \/>\n<meta property=\"article:published_time\" content=\"2018-03-07T02:18:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-03-07T17:22:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-content\/uploads\/2018\/03\/figura-0-IM-Column-Store.png\" \/>\n<meta name=\"author\" content=\"Thiago Rodrigues Cavalcanti\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@EstratConcursos\" \/>\n<meta name=\"twitter:site\" content=\"@EstratConcursos\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Thiago Rodrigues Cavalcanti\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"24 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\"},\"author\":{\"name\":\"Thiago Rodrigues Cavalcanti\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/person\/fcaf7747a784c860b8a4feb3dd2c528e\"},\"headline\":\"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM\",\"datePublished\":\"2018-03-07T02:18:49+00:00\",\"dateModified\":\"2018-03-07T17:22:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\"},\"wordCount\":4781,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-content\/uploads\/2018\/03\/figura-0-IM-Column-Store.png\",\"keywords\":[\"banco de dados\",\"Concurso STM\",\"prova comentada\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#respond\"]}],\"copyrightYear\":\"2018\",\"copyrightHolder\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\",\"url\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\",\"name\":\"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM\",\"isPartOf\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-content\/uploads\/2018\/03\/figura-0-IM-Column-Store.png\",\"datePublished\":\"2018-03-07T02:18:49+00:00\",\"dateModified\":\"2018-03-07T17:22:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage\",\"url\":\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png\",\"contentUrl\":\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png\",\"width\":571,\"height\":297},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#website\",\"url\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/\",\"name\":\"Estrat\u00e9gia Concursos\",\"description\":\"O blog da Estrat\u00e9gia Concursos traz not\u00edcias sobre concursos e artigos de professores oferecendo cursos para concursos (pdf + videaulas) no site.\",\"publisher\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization\",\"name\":\"Estrat\u00e9gia Concursos\",\"url\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2025\/06\/03203428\/logo_concursos-1.jpg\",\"contentUrl\":\"https:\/\/dhg1h5j42swfq.cloudfront.net\/2025\/06\/03203428\/logo_concursos-1.jpg\",\"width\":230,\"height\":60,\"caption\":\"Estrat\u00e9gia Concursos\"},\"image\":{\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/EstratConcursos\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/person\/fcaf7747a784c860b8a4feb3dd2c528e\",\"name\":\"Thiago Rodrigues Cavalcanti\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/08e6c519fe84ceb0618b23307f2dee18afb2b5dce83a93b6a66dfdd007a08564?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/08e6c519fe84ceb0618b23307f2dee18afb2b5dce83a93b6a66dfdd007a08564?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/08e6c519fe84ceb0618b23307f2dee18afb2b5dce83a93b6a66dfdd007a08564?s=96&d=mm&r=g\",\"caption\":\"Thiago Rodrigues Cavalcanti\"},\"url\":\"https:\/\/www.estrategiaconcursos.com.br\/blog\/author\/rcthiagogmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/","og_locale":"pt_BR","og_type":"article","og_title":"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM","og_description":"Prezados alunos, Abaixo comento as quest\u00f5es de banco de dados, business intelligence e processo de neg\u00f3cio da prova de analista de sistemas do concurso do STM. A prova veio num n\u00edvel bastante elevado, mas \u00e9 sempre bom aprender com os erros. Temos dois recursos poss\u00edveis. Sem mais delongas, vamos aos coment\u00e1rios. Ano: 2018 Banca: CESPE [&hellip;]","og_url":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/","og_site_name":"Estrat\u00e9gia Concursos","article_published_time":"2018-03-07T02:18:49+00:00","article_modified_time":"2018-03-07T17:22:12+00:00","og_image":[{"url":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-content\/uploads\/2018\/03\/figura-0-IM-Column-Store.png","type":"","width":"","height":""}],"author":"Thiago Rodrigues Cavalcanti","twitter_card":"summary_large_image","twitter_creator":"@EstratConcursos","twitter_site":"@EstratConcursos","twitter_misc":{"Escrito por":"Thiago Rodrigues Cavalcanti","Est. tempo de leitura":"24 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#article","isPartOf":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/"},"author":{"name":"Thiago Rodrigues Cavalcanti","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/person\/fcaf7747a784c860b8a4feb3dd2c528e"},"headline":"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM","datePublished":"2018-03-07T02:18:49+00:00","dateModified":"2018-03-07T17:22:12+00:00","mainEntityOfPage":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/"},"wordCount":4781,"commentCount":2,"publisher":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization"},"image":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage"},"thumbnailUrl":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-content\/uploads\/2018\/03\/figura-0-IM-Column-Store.png","keywords":["banco de dados","Concurso STM","prova comentada"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#respond"]}],"copyrightYear":"2018","copyrightHolder":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/","url":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/","name":"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM","isPartOf":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage"},"image":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage"},"thumbnailUrl":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-content\/uploads\/2018\/03\/figura-0-IM-Column-Store.png","datePublished":"2018-03-07T02:18:49+00:00","dateModified":"2018-03-07T17:22:12+00:00","breadcrumb":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#primaryimage","url":"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png","contentUrl":"https:\/\/dhg1h5j42swfq.cloudfront.net\/2018\/03\/06230649\/figura-0-IM-Column-Store.png","width":571,"height":297},{"@type":"BreadcrumbList","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/prova-da-semana-comentario-da-prova-do-stm-analista-de-sistemas-banco-de-dados-bi-e-bpm\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.estrategiaconcursos.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Prova da Semana \u2013 Coment\u00e1rio da prova do STM \u2013 Analista de Sistemas \u2013 Banco de dados, BI e BPM"}]},{"@type":"WebSite","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#website","url":"https:\/\/www.estrategiaconcursos.com.br\/blog\/","name":"Estrat\u00e9gia Concursos","description":"O blog da Estrat\u00e9gia Concursos traz not\u00edcias sobre concursos e artigos de professores oferecendo cursos para concursos (pdf + videaulas) no site.","publisher":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.estrategiaconcursos.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#organization","name":"Estrat\u00e9gia Concursos","url":"https:\/\/www.estrategiaconcursos.com.br\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/dhg1h5j42swfq.cloudfront.net\/2025\/06\/03203428\/logo_concursos-1.jpg","contentUrl":"https:\/\/dhg1h5j42swfq.cloudfront.net\/2025\/06\/03203428\/logo_concursos-1.jpg","width":230,"height":60,"caption":"Estrat\u00e9gia Concursos"},"image":{"@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/EstratConcursos"]},{"@type":"Person","@id":"https:\/\/www.estrategiaconcursos.com.br\/blog\/#\/schema\/person\/fcaf7747a784c860b8a4feb3dd2c528e","name":"Thiago Rodrigues Cavalcanti","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/08e6c519fe84ceb0618b23307f2dee18afb2b5dce83a93b6a66dfdd007a08564?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/08e6c519fe84ceb0618b23307f2dee18afb2b5dce83a93b6a66dfdd007a08564?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/08e6c519fe84ceb0618b23307f2dee18afb2b5dce83a93b6a66dfdd007a08564?s=96&d=mm&r=g","caption":"Thiago Rodrigues Cavalcanti"},"url":"https:\/\/www.estrategiaconcursos.com.br\/blog\/author\/rcthiagogmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/posts\/109628","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/users\/215"}],"replies":[{"embeddable":true,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/comments?post=109628"}],"version-history":[{"count":1,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/posts\/109628\/revisions"}],"predecessor-version":[{"id":109632,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/posts\/109628\/revisions\/109632"}],"wp:attachment":[{"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/media?parent=109628"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/categories?post=109628"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/tags?post=109628"},{"taxonomy":"tax_estado","embeddable":true,"href":"https:\/\/www.estrategiaconcursos.com.br\/blog\/wp-json\/wp\/v2\/tax_estado?post=109628"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}