Apresentação sobre Big Data (.pptx)

Link para acesso ao PowerPoint (.pptx) usado durante a apresentação sobre Big Data do dia 27/07/2017, contendo links completares à apresentação, além das referências usadas durante a elaboração da mesma. Além dos links complementares presentes nesta apresentação ainda irei postar os links para alguns dos TED Talks que eu utilizei durante o estudo da Big Data.

Download:

Algoritmos : Noções



Algoritmos




Algoritmo é a base da programação. Programar, basicamente é construir um algoritmo. Todo programa de computador é feito por algoritmos que resolvem diversos problemas matemáticos e lógicos com fins específicos.


Qualquer pessoa que usa uma linguagem de programação na elaboração de seus programas de computador está  criando algoritmos em suas mentes.

Um algoritmo nada mais é que uma sequência lógica organizada com o objetivo de cumprir uma determinada tarefa. Os algoritmos podem ser Estruturados e Não Estruturados.

Toda e qualquer pessoa em nosso cotidiano utiliza  algoritmos Não Estruturados que são trabalhados em nossas mentes sem nem mesmo percebermos. Vamos aprender mais sobre eles.




Algoritmos Estruturados


São aqueles que tentam solucionar problemas através do uso de um computador e criados a partir de uma linguagem de programação .
Um algoritmo pode ser representado pelo chamado Português Estruturado, que é uma ferramenta que usa combinações de sequências, seleções e repetições.Além de muita pontuação.
Observe esse exemplo bem simples de Algoritmo Estruturado na linguagem de programação PYTHON.O algoritmo tem como entrada 3 notas, em seguida é calculada a média entre elas para que possamos saber se o aluno foi aprovado ou não de acordo com o valor de sua média.Se a média for superior ou igual a 7,0 o aluno estará aprovado, caso a média dele seja inferior a 7,0 estará reprovado.


nota1 = float(input('Informe a primeira nota: '))
nota2 = float(input('Informe a segunda nota: '))
nota3 = float(input('Informe a terceira nota: '))

media = (nota1 + nota2 + nota3) / 3.0

print 'Media do aluno: {}'.format(media)
if (media == 10):
    print 'Aprovado com Distincao'
elif (media >= 7):
    print 'Aprovado'
else:
    print 'Reprovado'
Pontos a serem observados para que possamos ter um algoritmo conciso:

  • Evitar comandos longos;
  • Evitar adjetivos e advérbios;
  • Ter comandos legíveis;
  • Ter os comandos bem alinhados;
  • Possuir comentários para o esclarecimento de comandos;
  • Evitar ninhos de SE (muitas possibilidades desnecessárias para uma única situação. Ex.: se chover, eu pego o guarda-chuva; se não chover, eu não pego o guarda-chuva ou se eu pegar o vermelho, ele combinará com a roupa; se eu usar o roxo, não combinará).



Algoritmos não estruturados

No cotidiano, elaboramos algoritmos inconscientemente. Quando dirigimos um carro, quando vamos trabalhar, quando comemos. Estamos constantemente executando tarefas enquanto fazemos decisões.

Dentre os diversos tipos de algoritmos temos os manuais de instruções. Eles sempre possuem informações detalhadas sobre o que fazer e como fazer em uma determinada situação.

Imagine a seguinte situação:Situação: Tomar um banho.


O que é preciso fazer ?

1º Passo: Entrar no banheiro.
2º Passo: Fechar a porta.
3 º Passo: Tirar a roupa.
4 º Passo: Abrir o box caso esteja fechado.
5º Passo: Entrar no box.
6 º Passo: Fechar o box.
7 º Passo: Abrir o chuveiro.
8 º Passo: Ficar embaixo do chuveiro.
9º Passo: Pegar o sabonete.
10º Passo: Passar o sabonete no corpo.
11º Passo:Colocar o sabonete no suporte.
12 º Passo: Retirar o sabonete do corpo.
13 º Passo: Fechar o chuveiro.
14º Passo: Pegar a toalha.
15 º Passo: Enxugar o corpo.
16º Vestir a roupa.
17º Abrir a porta.
18º Sair do banheiro.






Um pouco sobre BIG DATA

Big Data

Você Sabe o que é Big Data?


É um termo amplamente utilizado na atualidade que designa o crescimento, a disponibilidade e o uso exponencial de informações estruturadas e não estruturadas.
Segundo Edd Dumbill, colaborador da Forbes, "Big Data são dados que excedem a capacidade de processamento dos sistemas de banco de dados convencionais . Os dados são tão grandes, movem-se tão rápido ou não cabem nas estruturas de dados."



Hoje quase todas as ações humanas se convertem em dados.

Em outras palavras, é um conjunto de tecnologias para captura, armazenamento e análise de grandes volumes de dados.


O aumento de dispositivos móveis conectados à web, além de censores, e dispositivos que geram dados além das aplicações dedicadas ao entretenimento humano, como jogos on-line e redes sociais, home banking, significa um mar de possibilidades até a pouco não explorada, pois eram dados elaborados somente para a interpretação humana.

Em sua edição de 24/02/2012, Rennan Setti através da coluna Digital & Midia Do jornal O Globo acrescenta:

A grande novidade das soluções de Big Data é lidar também com os chamados dados não estruturados, que até então só podiam ser compreendidos por pessoas. São tweets, posts no facebook, vídeos, geolocalização e comportamento de clientes que dependem de contexto para ter sentido.Esses dados não-estruturados representam 85% das informações com as quais as empresas lidam hoje.

Uma das utilizações mais frequentes do Big Data é feita por empresas que utilizam esse recurso para armazenar dados de clientes e, posteriormente, acessá-lo. Isso torna o Big Data importante para o negócio, já que ele é convencional e oferece praticidade e velocidade na recuperação desses dados.




O que caracteriza o Big Data?

As principais características do Big Data são: volume, variedade e velocidade.

-Volume:


O aumento do volume de dados se dá principalmente devido as transações de dados armazenados ao longo dos anos. Esse grande volume de dados criou um problema de armazenamento no passado, mas com os atuais baixos custos de armazenamento isso não é mais um problema.

-Variedade:


Os dados de hoje vem em todos os tipos de formatos. Sejam bancos de dados tradicionais, arquivos de texto, e-mail, medidores e sensores de coleta de dados, vídeo, áudio, dados de ações do mercado e transações financeiras.

-Velocidade:


A velocidade é essencial tanto na produção de dados, quanto no tratamento dos mesmos para atender a demanda.




Problemas com o Big Data





Pense da seguinte maneira: Uma pequena quantidade de dados até pode ser facilmente gerenciada e analisada de forma simples, gerando aceitáveis níveis de inteligência. Afinal de contas, os volumes e componentes difusos analisados não são tão grandes assim. Mas quando os dados ganham novas proporções, crescendo de forma constante, adicionam problemas até então não vivenciados. 

Essa é a visão de Nate Silver. Fundador do site de jornalismo de dados FiveThirtyEight (agora propriedade da ESPN), ele trabalha escavando uma montanha de registros. O executivo falou durante uma conferência promovida pela HP, em Boston, e descreveu os problemas que podem vir junto com big data.

Ocupam muito espaço

Silver diz que mesmo pequenas quantidades de dados podem ser difíceis de gerir, tanto em termos de armazenamento quanto de análise. A lógica sugere que, quanto mais dados as empresas tiverem, mais complexa será a tarefa de geri-los. Você precisará responder perguntas do tipo: Vale comprar equipamentos para guardá-los? Melhor armazenar na nuvem? Com que frequência você precisa acessar esses registros? Como pode lidar com latência?

Trazem perspectivas difusas

Uma questão relativa à grande quantidade de dados é que isso cria polarização e diferentes perspectivas. Vamos dizer que existam dois silos em sua empresa. Parece simples decifrar o que esses dois recipientes contem de maneira macro. Agora, se você está analisando 100 pesquisas, pode haver muitas nuances dentro desses dados. Certamente, já deve ter ouvido que os números dizem o que as pessoas querem ouvir e que, espremidos, podem dizer qualquer coisa. Pois bem, quanto mais dados tiver, mais espaço de manobra existe para respostas imprecisas.

Geram falsos positivos

Silver cita o livro de Daniel Kahneman intitulado “Thinking, Fast and Slow” para apontar o fato de que as pessoas tomam decisões baseadas em um subconjunto de dados a partir do pensamento rápido. A melhor pratica é o “pensamento lento” e a verdadeira racionalização dos dados. Com big data, pensamento rápido (e não analisar dados por completo) pode levar a falsos positivos.

A imensidão é complexa

O especialista usa o termo “encontrar sinal em meio ao barulho”, que seria uma versão um pouco diferente do velho “agulha no palheiro”. Quanto mais dados você tem, mais difícil é encontrar algo de fato valioso naquela montanha.

Nem sempre trazem aquilo que você estava procurando...

Imagine o Google Maps dando-lhe instruções e sugerindo como alternativa uma rota “mais rápida”. Porém, apenas depois de pegar esse caminho descobrirá que ele é esburacado ou sem asfalto. Às vezes, sistemas de big data oferecem atalhos que, na verdade, não são exatamente aquilo que você estaria procurando.




Referências: http://oglobo.globo.com/infograficos/bigdata/
                     http://pt.wikipedia.org/wiki/Big_data
                     http://www.forbes.com/sites/edddumbill/2014/05/07/defining-big-data/
                     http://marketingpordados.com/analise-de-dados/o-que-e-big-data/
                     http://www.techoje.com.br/site/techoje/categoria/detalhe_artigo/1754

Introdução a Lógica da Programação








 Bom caros leitores, hoje iremos falar sobre a lógica de programação, para alguns o desentendimento sobre o assunto pode ser grande, isso pode ser resolvido com algum esforço de aprendizado, e sendo para outros uma coisa fácil de ser entendida, a tal da lógica de programação.

  Primeiro devemos saber o que é algoritmo. Algoritmo é uma sequência de passos finitos para atingir determinado objetivo, traduzindo, seria como os passos para fazer um bolo ou um suco de laranja, mas vocês podem me perguntar, e onde a lógica se encaixa nisso? Então, ai que está o ponto chave da questão, a lógica é a forma que o algoritmo é escrito, o computador não usa a mesma linguagem que nós humanos no desenvolvimento da programação, e sim, uma linguagem construída com símbolos, funções e variáveis. Mas lógica não deve ser entendida só como essa parte da construção de programas e sim também como coisas do dia a dia que te levam a construir uma lógica básica para serem processadas como:

1.um livro está no armário e eu sei disso
2. o armário está trancado.
3. logo, concluo que tenho que abrir o armário para pegar o livro.

  caso seu entendimento sobre o assunto exposto acima ainda continuar vago, no fim desse texto irei colocar um link que vai direto para um jogo criado com o intuito de “ensinar” o que é a lógica de programação, com perguntas que vão se “intensificando” gradativamente, espero que você que leu isso tenha conseguido entender algo sobre o princípio da lógica de programação, nos próximos posts irei comentar e me aprofundar mais sobre o assunto aqui iniciado, então espero que vejam eles caso queiram saber mais sobre.

Bom aprendizado








Uma breve introdução



Olá, esse blog é um projeto acadêmico de alunos de Fundamentos da Computação do 1º período do curso de Sistemas de Informação da UFS (Universidade Federal de Sergipe). Nesse blog iremos postar vários conteúdos sobre noções e projetos de algoritmos, estruturas de dados, introdução à lógica de programação e big data, esperamos que aproveitem bem essas informações e tenham um aprendizado valioso.
Com tecnologia do Blogger.