Mostrando entradas 1 para 10 de 642
Próximo 10 Entradas mais antigos »
Dockerizando MySQL na Uber Engeneering

O sistema de armazenamento Schemaless da Uber Engeneering alimenta alguns dos maiores serviços da Uber, como o Mezzanine. Schemaless é um datastore escalável e altamente disponível no topo do grupo de clusters do MySQL[1]. Gerenciar esses clusters foi bastante fácil quando tínhamos 16 deles. Atualmente, temos mais de 1.000 clusters contendo mais de 4.000 servidores de banco de dados e isso requer uma classe diferente de ferramentas.

Inicialmente, todos os nossos clusters eram gerenciados pelo Puppet, um monte de scripts ad hoc e operações manuais que não podiam escalar no ritmo da Uber. Quando começamos a procurar por uma melhor maneira de gerenciar o crescente número de clusters do MySQL, tivemos alguns requisitos básicos:

[Leia mais]
Chame funções Lambda a partir de procedimentos armazenados

Muitos serviços da AWS funcionam muito bem por si só, mas são ainda melhores juntos! Este aspecto importante do nosso modelo permite-lhe selecionar um único serviço, aprender sobre ele, obter alguma experiência com ele, e, em seguida, estender o seu espaço para outros serviços relacionados com o tempo. Por outro lado, as oportunidades para fazer com que os serviços trabalhem em conjunto estão sempre presentes e nós temos algumas delas no nosso roteiro orientado para o cliente.

Hoje, eu gostaria de falar sobre dois novos recursos para o Amazon Aurora, o nosso banco de dados relacional compatível com MySQL:

  • Invocação de Funções Lambda – Os procedimentos armazenados que você cria dentro dos seus bancos de dados Amazon Aurora pode agora podem invocar …
[Leia mais]
Projetando o Euclid para tornar a engenharia de marketing do Uber mais sábia

Rápido, granular e com ROI confiável no desempenho de anúncios foram o nosso estopim para construir Euclid, a plataforma de marketing interno do Uber. No início deste ano, a Euclid substituiu um sistema legado que processava os dados do ROI manualmente, enquanto lutava para se manter escalável com o Uber e a complexidade dos dados.

Ao contrário de qualquer solução fora da caixa, o Hadoop, ecossistema Euclid baseado em Spark, nos permite escalar o crescimento do Uber com uma arquitetura de plugin de API agnóstico de canal chamada MaRS, bem como um pipeline ETL personalizado que cede dados heterogêneos em um único esquema para uma consulta simples. Uma camada visual em cima da Euclid permite que os profissionais de marketing tirem métricas de ROI para otimizar o gasto com anúncios. As capacidades de reconhecimento de …

[Leia mais]
Validação contínua do backup do MySQL: restaurando backups

Os bancos de dados MySQL do Facebook estão espalhados pelos nossos data centers globais e precisamos ser capazes de nos recuperar de uma interrupção em qualquer um desses locais, em qualquer momento. Em tal evento de desastre, não só temos que recuperar o serviço o mais rápido e confiável possível, mas também precisamos garantir que não percamos dados no processo. Para esse efeito, criamos um sistema que verifica continuamente a capacidade de restaurar os nossos bancos de dados a partir de backups.

Nosso sistema de restauração consiste em dois componentes principais:

  • Continuous Restore Tier (CRT) – Responsável por todo agendamento e monitoramento em torno de restaurações. Ele procura bancos de dados com novos backups e cria tarefas de restauração para eles, monitora o progresso da restauração e garante que cada backup seja restaurado com êxito.
  • ORC …
[Leia mais]
Automatizando seu trabalho e se tornando mais eficiente com Docker

Oi, pessoal!

A intenção hoje é trazer para vocês um conteúdo mais voltado para as equipes de desenvolvimento, ilustrando como é possível automatizar alguns pontos do seu trabalho utilizando Docker e como ele tornará as equipes mais eficientes naquilo que precisam ser: entrega de resultado, óbvio.

Neste exemplo, abordaremos um pouco sobre como é fácil montar um ambiente de desenvolvimento local utilizando nginx, php e mysql. Este será, é claro, o primeiro passo em seu caminho para utilizar Docker no seu dia-a-dia.

Obviamente, nesse artigo não abordaremos como você deve instalar o Docker; para isso temos esse artigo que vai lhe ajudar muito. Veja também que vamos usar nesse ambiente o docker compose, e claro, levamos em …

[Leia mais]
Apresentando InfraKit, kit de ferramentas de código aberto para criar e gerenciar infraestrutura de autorrecuperação declarativa

A missão do Docker é construir ferramentas de inovação em massa, começando com uma camada programável para a Internet que permite que desenvolvedores e equipes de operações de TI construam e executem aplicações distribuídas. Como parte dessa missão, temos sempre procurado contribuir com kits de ferramentas de software de volta para a comunidade, seguindo a filosofia UNIX da construção de pequenas ferramentas de baixo acoplamento que são criadas para simplesmente fazer uma coisa bem. Com a adoção do Docker crescendo de 0 para 6 bilhões, temos trabalhado para atender às necessidades de um conjunto crescente e diversificado de usuários de sistemas distribuídos. Esse trabalho levou à criação de muitos componentes de canalização de infraestrutura que foram contribuídos de volta para a comunidade.

Tudo começou em 2014, …

[Leia mais]
Guia da Certificação MySQL

Tudo sobre as certificações do SGBD open source mais popular do mundo!

Provas necessárias para cada certificação, conteúdo de cada prova, valores, número de questões, tempo disponível de realização da prova, e muitas outras informações.

6 práticas de segurança para WordPress

Segurança é um tópico importante para qualquer proprietário de sites. Infelizmente, esse é um assunto pelo qual muitas pessoas se interessam apenas após terem passado por algum grande susto. Para termos uma ideia da quantidade de sites maliciosos presentes na web, o Google tem em suas listas negras mais de 20 mil sites de malware e cerca de 50 mil phishing. Além disso, o WordPress é extremamente popular e essa característica faz com que a plataforma seja alvo de ataques específicos.

Ter seu site WordPress hackeado pode causar sérios danos tanto à receita  quanto à reputação do seu negócio. Hackers podem roubar informações de usuários, senhas, instalar software malicioso, podendo inclusive distribuir malware para seus usuários. Em alguns casos, você pode ter que pagar uma espécie de resgate para hackers, só para recuperar o acesso ao seu site. Aqui estão reunidas 6 dicas úteis para quem zela pela segurança dos …

[Leia mais]
Migrando Legados para MySQL 5.7 com Query Rewrite Plugin - Parte 2


No post anterior, vimos o que são os Query Rewrite Plugins, tanto preparse, quanto postparse. Agora é o momento de ver como este recurso pode viabilizar a migração de uma aplicação legada real. Para exemplificar, usaremos uma versão antiga do Moodle que é incompatível com MySQL 5.7. Veremos como implementar um preparse QR plugin.
O legado: Moodle 2.3Moodle é uma plataforma de aprendizado extremamente popular criada com o LAMP Stack. A versão 2.3 já é bastante antiga e não recebe mais atualizações desde janeiro de 2014.
Ao tentar instalar o Moodle 2.3 com MySQL 5.7, ocorre o erro:

[Leia mais]
Migrando Legados para MySQL 5.7 com Query Rewrite Plugin - Parte 1

Uma funcionalidade que pode fazer a diferença e viabilizar projetos de migração de legado para MySQL é a Query Rewrite Plugin. Com ela é possível interceptar comandos que são enviados ao MySQL e modificá-los online, sem a necessidade de alterar a aplicação.
Neste post, vamos entender como utilizar este recurso, com um exemplo real usando Moodle 2.3 no MySQL 5.7.

O que é o Query Rewrite PluginA partir do MySQL 5.7.6 há suporte para os Rewrite Plugins, que podem examinar e seletivamente reescrever comandos recebidos pelo servidor antes que sejam executados.
Quando uma instrução é recebido pelo MySQL Server, por exemplo um SELECT * FROM tabela where id = 1, ele passa por um parser que vai validar sintaxe e semântica, entre outros passos. Depois disso, o Otimizador de Consultas entra em ação, gerando e selecionando o melhor plano de execução para a query. Finalmente, o melhor …

[Leia mais]
Mostrando entradas 1 para 10 de 642
Próximo 10 Entradas mais antigos »