refers http://c.raqsoft.com/article/1687916213139
In addition to common static code, sometimes dynamic code is also needed to solve problems, such as generating code (or part of code) based on parameters and dynamically executing it. For programming languages that lack dynamic coding mechanisms, it is usually necessary to write the variable parts of the code in string form. For example, when referencing dataset field names in Python, it is necessary to write them as strings to achieve the effect of dynamic code. However, this will make it inconvenient to read and write more common static code. SQL, on the other hand, can directly write field names (as well as filter conditions, grouping expressions, etc.) in the code without having to write them into strings, making it easier to read and write static code, but it is difficult to handle dynamic code.
SPL inherits the SQL style of static code, allowing for direct writing of code parts, such as field names, without the need to be written as strings. In addition, SPL also provides macros to achieve dynamic code effects.
Example 1: Dynamically sort the order table based on the parameter pSortList, which contains an indefinite number of sorting fields separated by commas.
This dynamic code can be implemented using SPL macros: T("Orders.txt").sort(${pSortList})
SQL e SPL são ambas tecnologias de processamento de propósito geral para dados estruturados, e cada uma tem suas próprias características. Especificamente, SQL é altamente popularizado e amplamente utilizado, muitos usuários têm uma habilidade natural para consultar dados com SQL, e é fácil para eles começarem uma vez que o motor de dados suporta SQL; é relativamente fácil migrar programas históricos. SPL é conciso e eficiente, fornecendo uma sintaxe mais ágil que pode simplificar cálculos complexos, enquanto suporta a computação procedural e naturalmente suporta a codificação passo a passo; o sistema de computação do SPL é mais aberto, tornando possível realizar computação mista para múltiplas fontes de dados ao mesmo tempo, e obter facilmente um desempenho de computação mais alto com armazenamento de alto desempenho embutido e algoritmos de alto desempenho; é mais flexível de utilizar, permitindo que seja usado de forma independente ou integrado em aplicações.
"Hadoop/Spark é muito pesado, esProc SPL é leve", consulte http://c.raqsoft.com/article/1665212186752
Com o advento da era dos grandes dados, a quantidade de dados continua a crescer. Nesse caso, é difícil e caro expandir a capacidade do banco de dados em execução em um computador tradicional pequeno, tornando difícil apoiar o desenvolvimento dos negócios. Para lidar com esse problema, muitos usuários começam a recorrer à rota de computação distribuída, ou seja, usar vários servidores de PC baratos para formar um cluster para realizar tarefas de computação de grandes dados. Hadoop/Spark é uma das importantes tecnologias de software nessa rota, que é popular porque é de código aberto e gratuito. Após anos de aplicação e desenvolvimento, o Hadoop foi amplamente aceito, e não só pode ser aplicado diretamente à computação de dados, mas muitos novos bancos de dados são desenvolvidos com base nele, como Hive e Impala.
Normalmente, as fontes de dados de streaming são dinâmicas e ilimitadas, e parecem bastante diferentes da fonte de dados em lote estática e limitada. Por razões de estrutura, é difícil para as tecnologias de banco de dados tradicionais processarem diretamente a fonte de dados de streaming, então os programadores precisam recorrer a tecnologias mais recentes. Os frameworks de computação como heron\samza\storm\spark\flink foram os primeiros a fazer avanços e ganharam vantagem de pioneirismo na tecnologia de computação de fluxo. Esses frameworks são tão bem-sucedidos que, assim que uma computação de fluxo está envolvida, os programadores de aplicativos naturalmente recorrem a um deles. Pelo contrário, para aquelas tecnologias de computação que não afirmam ser um determinado framework, elas são geralmente consideradas inadequadas para implementar a computação de fluxo.
Com mais de 2,5 milhões de avaliações, podemos fornecer os detalhes específicos que ajudam você a tomar uma decisão de compra de software informada para o seu negócio. Encontrar o produto certo é importante, deixe-nos ajudar.