Julio Viegas é um engenheiro de software e instrutor com 15 anos de experiência na área de tecnologia. Ele apresenta sobre várias tecnologias NoSQL como Redis, MongoDB, CouchDB, Memcached e Cassandra, discutindo suas características, arquitetura, instalação e uso.
Palestra feito na PHPConf - 2016
Apresento uma estrutra de escabilidade, passando pelos passos de crescimento de um software web.
Conceitos como cache, concorrências, storage para arquivos estáticos, servidores de busca, sessões em memória e afins.
Palestra feito na PHPConf - 2016
Tudo sobre cache em aplicativos PHP, comento sobre os pontos de falha, o problema de invalidação, estrategias de como aplicar cache, bem como todos os tipos de cache, opções e possibilidades de multiplos caches e afins.
Tópicos importantes:
-- Planejamento de cache
-- Estrátegias de invalidação
-- Cache em back end
-- Cache para front end
-- Cache reverso
-- Localstorage
Com a consolidação da linguagem PHP no mercado de aplicações de grande porte, o desenvolvimento de sistemas operando sobre servidores distribuídos torna-se vital para a sobrevivência do negócio e garantia de acesso e atendimento a todos os seus usuários. Nesse contexto, a palestra abordará técnicas para o planejamento e desenvolvimento de aplicações clusterizadas, cloudcomputing e balanceamento de carga de bases de dados.
Palestra feito na PHPConf - 2016
Apresento uma estrutra de escabilidade, passando pelos passos de crescimento de um software web.
Conceitos como cache, concorrências, storage para arquivos estáticos, servidores de busca, sessões em memória e afins.
Palestra feito na PHPConf - 2016
Tudo sobre cache em aplicativos PHP, comento sobre os pontos de falha, o problema de invalidação, estrategias de como aplicar cache, bem como todos os tipos de cache, opções e possibilidades de multiplos caches e afins.
Tópicos importantes:
-- Planejamento de cache
-- Estrátegias de invalidação
-- Cache em back end
-- Cache para front end
-- Cache reverso
-- Localstorage
Com a consolidação da linguagem PHP no mercado de aplicações de grande porte, o desenvolvimento de sistemas operando sobre servidores distribuídos torna-se vital para a sobrevivência do negócio e garantia de acesso e atendimento a todos os seus usuários. Nesse contexto, a palestra abordará técnicas para o planejamento e desenvolvimento de aplicações clusterizadas, cloudcomputing e balanceamento de carga de bases de dados.
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLOrlando Vitali
Uma analise teórica e pratica sobre as diferenças entre bancos de dados Relacionais, NoSQL e NewSQL desenvolvida como TCC para o curso de Ciências da Computação da UNESC
Avaliando o Apache Cassandra como cache distribuido no SPC Brasil - NoSQLBRJulio Viegas
Nessa apresentacao eu descrevo as necessidades de caching do SPC Brasil e como as capacidades oferecidas pelo Apache Cassandra se aplicam na solucao do problema. Tambem eh descrita a arquitetura, modelo de dados e API de uso do Cassandra. E algumas Cassandras... :)
Sempre buscando atuar com inteligência na área de desenvolvimento, como DevOps, arquiteto, líder de projeto e desenvolvedor fullstack, sempre visando a melhor implementação (tecnologia certa para a tarefa certa), análise de custo benefício, eficiência, arquitetura macro de serviços, fluxograma de desenvolvimento, automatização de tarefas e controle de qualidade e principalmente valor ao negócio.
O Elastic Cache é um serviço de cache avançado que voce pode usar nas suas aplicações que estão na nuvem da AWS. Apresentamos aqui os seus conceitos básicos e modos de uso.
Desenvolvendo aplicativos web escaláveisManuel Lemos
Palestra dada por Elton Minetto no CONAPHP 2008 - Congresso Nacional de PHP que ocorreu em São Paulo nos dias 18 e 19 de Outubro dentro do CONISLI 2008
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLOrlando Vitali
Uma analise teórica e pratica sobre as diferenças entre bancos de dados Relacionais, NoSQL e NewSQL desenvolvida como TCC para o curso de Ciências da Computação da UNESC
Avaliando o Apache Cassandra como cache distribuido no SPC Brasil - NoSQLBRJulio Viegas
Nessa apresentacao eu descrevo as necessidades de caching do SPC Brasil e como as capacidades oferecidas pelo Apache Cassandra se aplicam na solucao do problema. Tambem eh descrita a arquitetura, modelo de dados e API de uso do Cassandra. E algumas Cassandras... :)
Sempre buscando atuar com inteligência na área de desenvolvimento, como DevOps, arquiteto, líder de projeto e desenvolvedor fullstack, sempre visando a melhor implementação (tecnologia certa para a tarefa certa), análise de custo benefício, eficiência, arquitetura macro de serviços, fluxograma de desenvolvimento, automatização de tarefas e controle de qualidade e principalmente valor ao negócio.
O Elastic Cache é um serviço de cache avançado que voce pode usar nas suas aplicações que estão na nuvem da AWS. Apresentamos aqui os seus conceitos básicos e modos de uso.
Desenvolvendo aplicativos web escaláveisManuel Lemos
Palestra dada por Elton Minetto no CONAPHP 2008 - Congresso Nacional de PHP que ocorreu em São Paulo nos dias 18 e 19 de Outubro dentro do CONISLI 2008
Turbine sua carreira com redes sociaisJulio Viegas
Apresentação de 15min que fiz no último Profissão Java onde falo como utilizar as principais redes sociais disponíveis em mercado para impulsionar sua carreira.
Essa apresentação foi exibida na Semana Acadêmica 2014 da UFSM (SAINF 2014). Ela explica o funcionamento do BigData, qual o papel do Apache Hadoop, e como os dados são coletados e analisados pelas grandes companhias de mineração de dados.
Apresentação da segunda edição do evento Meritt CC, espaço semanal onde cada meritt pode compartilhar seu conhecimento.
Nesta apresentação, Fernando Jorge Mota <fjorgemota@meritt.com.br> apresentou o conceito de banco de dados NoSQL e três de suas implementações: 1) MongoDB, 2) Cassandra e 3) HBase.
Um dos objetivos é que a equipe esteja melhor preparada para quando surgirem desafios que exigirão o uso de diferentes bancos de dados.
"Varios clientes estão migrando suas aplicações analíticas, processamento de dados (ETL) e aplicações de data science rodando com Apache Hadoop, Spark e data warehouse a partir de ambientes em datacenter local para o Amazon EMR com o objetivo de economia, maior disponibilidade e melhoria de desempenho.
Amazon EMR é um serviço gerenciado que permite com que você analise uma quantidade imensa de dados usando as ultimas versões de mais de 15 ferramentas open-source presentes no ecossistema Apache Hadoop e Spark. Essa sessão permitirá idenficar os componentes, aplicações e tarefas presentes no seu atual ambiente e demonstrar as melhores práticas para migrar esses componentes para o Amazon EMR. Nos iremos expliar como mover seus HDFS para o Amazon S3, um serviço de armazenamento altamente durável e como os baixos custos de instâncias EC2 Spot e auto-scaling podem ajudá-lo a ter mais eficiência com baixo custo. Também iremos explicar os fundamentos de segurança e dicas de ajustes para acelerar a migração de sua aplicação de produção."
https://aws.amazon.com/pt/emr/
2. Palestrante
~15 anos trabalhando com tecnologia
Instrutor, arquiteto, mentor e engenheiro de software e
eletronica
Participa de comunidades de usuarios: RSJUG, XP-RS,
CEJUG, Open4Education, NoSQLBr...
Sun Certified Trainer, SCEA 1 e 5, SCDJWS 1.4 e 5,
SCWCD 1.4, SCBCD 5, SCJP 5, SCJA 1
Engenheiro de Software da Summa Technologies e
Instrutor Globalcode
6. NoSQL?
Geracao web
RDBMS nao eh arquitetura padrao
Centralizar?
Consistencia?
Fail-over?
Backup/recovery?
Uso como cache: mais disco, mais memoria
7. NoSQL?
CAP
Consistencia: nem sempre o dado visualizado eh o mais
atual
Disponibilidade: sempre no ar, rapido e otima resposta
Particionamento: o sistema opera mesmo perdendo
dados
Disponibilidade versus consistencia
Latencia versus consistencia
Centralizacao versus particionamento
8. Redis
Em memoria e persistencia
Tipos de dados: Strings, Lists, Sets e SortedSets
Atomico
Clientes para varias linguagens
Master/Slave
Sharding manual
Configuracao, gerenciamento e instalacao simples
9. Redis
Instalacao: download, unpack, make
Servidor: ./redis-server
Cliente(teste): ./redis-cli set key value; ./redis-cli get key
10. MongoDB
Muitas funcionalidades, grandes cases
Orientado a documentos estilo JSON
Indexacao de atributos
Auto Sharding, Resharding, Replicacao, Alta
Disponibilidade
Muitas facilidades para consulta
Atualizacoes de documentos ou dados pontuais internos
Map Reduce
18. Memcached
Em memoria apenas
Chave/valor
Suporte a timeout
Reciclavel usando LRU
Toda a logica de hashing, sharding e particionamento no
cliente
Protocolo binario ou texto. Em texto vc pode usar
comandos via telnet.
20. Memcached
Instalacao: unpack; ./configure; make; sudo make install
Necessita de libevent
Servidor: ./memcached -d -m 4096 -p 11212
Cliente:
function get_foo(foo_id)
foo = memcached_get("foo:" . foo_id)
return foo if defined foo
foo = fetch_foo_from_database(foo_id)
memcached_set("foo:" . foo_id, foo)
return foo
end
21. Cassandra
Criado pelo Facebook, e usado em parte dele
Baseado no Amazon Dynamo
Usuarios: Digg, Reddit, Cisco Webex, Rackspace, Twitter
Chave+valor
Tipos dinamicos versionados com timestamp
Atomicidade por chave
Configuracao simples
22. Cassandra
MySQL: muito IO imprevisivel!
Solucoes baseadas em arquivos precisam de lock!
Armazenamento descentralizado
Tolerante a falhas
Elastico: adicione mais servidores a quente
Escala horizontalmente
23. Cassandra
Disponibilidade e tolerancia a perda de particoes sobre
consistencia(CAP)
Consistencia configuravel
Tradeoff: Consistencia versus Latencia
Particionamento e replicacao baseado no Dynamo
(Amazon) e modelo de dados estruturado(ColumnFamily)
baseado no Bigtable(Google)
24. Cassandra
Administracao minima
Sem ponto unico de falha
Particionador configuravel
Replicacao configuravel: quantidade, rack e site “aware”
Gossip, messaging, bootstrap, compaction
Memtable
Monitoracao e ferramentas de administracao
Commit log
25. Cassandra
Escritas: quorum(maioria) ou assincronas(1), sem leituras,
posicionamento, rapida(0.12ms vs 300ms do MySQL),
atomica, sempre garantida
Leitura: memtable e +RAM, mais lenta que a escrita(15ms
vs 350ms do MySQL), escala a bilhoes de linhas
Consistencia: 1, quorum, all. Cuidado com a latencia!
26. Cassandra
Keyspace: grupo de chaves ou banco/schema
Column: chave e valor ou tabela de uma coluna e linha
32. Cassandra
Autenticador
Particionador: Random por padrao ou ordenado
InitialToken: armazena chaves com token similar
CommitLogDirectory
DataFileDirectory
Seed
ListenAddress/StoragePort
ThriftAddress/ThriftPort