Índice:
Vídeo: Otimizar imagens com shell script e Smush.it (find sed grep sh pbcopy) — Tela Preta #3 2024
Quando você precisa de escritas incrivelmente rápidas, o armazenamento flash é chamado (ao contrário de chamar o Flash Gordon). Isto vem ao custo de usar o espaço RAM, é claro. Escrever para a RAM irá levá-lo, bem, quanto ao tamanho da sua RAM. Então, ter uma opção de armazenamento de alta velocidade imediatamente atrás da RAM do seu servidor é uma boa idéia.
Desta forma, quando uma operação de ponto de verificação para descarregar os dados no disco é feita, ele limpa o espaço na RAM o mais rápido possível.
Gastar dinheiro para velocidade
O flash é caro - mais do que o tradicional disco giratório e a RAM. É possível fazer sem flash usando RAID 10 arrays de discos giratórios, mas isso só o levará até agora.
Uma abordagem lógica é analisar o quão rápido os fluxos de dados em seu banco de dados. Talvez forneça 100% do tamanho dos dados da sua loja para um disco giratório, 10% para flash e um por cento para RAM. Esses números variam de acordo com o perfil de acesso de dados do seu aplicativo e com que frequência esses mesmos dados são acessados.
Claro, se você estiver em uma indústria onde os dados envelhecem rapidamente e você precisa garantir o rendimento de gravação, então uma infra-estrutura de todo o flash pode ser para você.
Para dar-lhe uma ideia sobre a possível escala possível em uma loja de valor-chave que suporte flash nativo, a Aerospike alega que, com flash nativo para dados e RAM para índices, 99. 9 por cento das leituras e gravações são completadas dentro de um milissegundo.
Contexto de computação
Aerospike defende um conceito chamado contexto - informática consciente . A computação com conhecimento de contexto é onde você tem uma janela de tempo muito curta para responder a uma solicitação e a resposta correta é ditada por algumas propriedades do usuário, como idade ou produtos adquiridos. Essas propriedades podem incluir:
-
Identidade: IDs de sessão, cookies, endereços IP
-
Atributos: Comportamento demográfico ou geográfico
-
: Presença (deslize, pesquisa, compartilhamento), canais (web, telefone), serviços (frequência, sofisticação)
-
Segmentos: Atitudes, valores, estilo de vida, histórico
-
Transações: Pagamentos, campanhas
A idéia geral é extrair dados de um transacional sistema para determinar o mais adequado ou recomendação para um cliente com base em vários fatores. Você pode fazer isso usando um mapa Hadoop / reduzir trabalho, por exemplo, em um banco de dados relacional transacional Oracle.
As saídas são armazenadas na Aerospike para que, quando um cliente particular chegue no seu site e eles tenham uma mistura da lista de fatores precedentes (modelada como uma chave compósita), o apropriado ou recomendação é imediatamente dado ao cliente.
Avaliando Aerospike
Aerospike é o rei do suporte de flash. Em vez de usar o suporte do sistema de arquivos do sistema operacional em cima do flash, como outros bancos de dados (ou seja, eles basicamente tratam um disco flash como qualquer outro disco rígido), a Aerospike acessa nativamente o flash.
Esse comportamento fornece o Aerospike com o rendimento máximo, porque não precisa esperar para que as chamadas de função do sistema operacional sejam concluídas; simplesmente acessa diretamente os blocos de flash em bruto. Além disso, a Aerospike pode tirar proveito dos atributos físicos do armazenamento flash, a fim de avaliar cada último desempenho.
Aerospike no início de ultrapassagem Riak em grandes empresas e casos de uso crítico de missão, no entanto. Tem empresa - nível características que não possuem outros bancos de dados, incluindo o seguinte:
-
consistência ACID total: Garante que os dados sejam seguros e consistentes.
-
cluster compartilhado: Tem replicação síncrona para manter os dados consistentes.
-
Reequilíbrio automático: Move automaticamente alguns dados para novos nós, abrindo os tempos de leitura e permitindo dimensionar e dimensionar novamente em um cluster.
-
Suporte para UDFs e Hadoop: Funções definidas pelo usuário podem ser executadas ao lado dos dados para consultas de agregação, e o Hadoop Map / Reduce é suportado para requisitos mais complexos.
-
Índices secundários: Adiciona índices nos campos de valor de dados para consultas rápidas.
-
Tipos de dados grandes: Suporta tipos de dados personalizados e grandes; permite modelos de dados complexos e casos de uso.
-
Nível de armazenamento automático nivelado nas gravações: Limpa RAM para armazenamento flash (SSDs) e disco quando o espaço no nível mais rápido está quase esgotado.
Se você precisa ou não de suporte de flash rápido, esses outros recursos devem realmente interessar pessoas com casos de uso crítico de missão. Se você estiver avaliando o Riak para um sistema de missão crítica, avalie definitivamente a Aerospike também.