📅  最后修改于: 2023-12-03 15:30:59.051000             🧑  作者: Mango
GM S2是一款由国内领先的软件研发企业「睿思科技」自主研发的、致力于解决大数据高性能计算问题的分布式内存计算引擎。
GM S2引擎结合流式计算和批量计算两种计算模型,支持分布式的In-memory数据存储与高性能计算,同时支持开发者使用Java编写计算逻辑以及普通SQL查询,具有以下特点:
高速读写:采用内存计算模式,支持秒级响应时间。
分布式计算:支持水平伸缩和动态扩容,适用于高并发数据计算场景。
内置SQL:支持使用SQL查询操作并计算海量数据。
多样数据源:支持从不同数据源读取数据,如Kafka、HDFS、HBase等。
易于开发:支持使用Java编写计算逻辑,提供了丰富的API接口和IDE插件,开发迅速且方便。
GM S2适用于大数据高性能计算领域的各种应用场景,如:
实时计算:适用于基于实时数据的分析和决策。
批量计算:适用于大数据分析和处理,如数据聚合、数据清洗、数据挖掘等。
时序数据处理:适用于对时间序列进行处理和分析。
推荐系统:适用于快速计算和更新用户画像、商品相似度等。
GM S2提供详尽的开发文档和技术支持,并在社区中积极分享最新的技术资讯和使用方法。开发者可以在「睿思社区」中找到各种资料和解决方案。
开发文档:https://www.gm-s2.com/book/index.html
社区:https://www.gm-s2.com/community/index.html
快速搭建GM S2环境并开始使用,可通过以下步骤完成:
下载GM S2引擎并解压缩。
安装JDK、Maven等开发软件。
按照文档指引,创建GM S2项目,编写计算逻辑并运行。
具体操作请参考GM S2开发文档。
# 示例代码片段
public class WordCountTopology extends Topology{
public WordCountTopology(){
SpoutDeclarer spoutDeclarer = super.setSpout("readFile", new ReadFileSpout());
BoltDeclarer boltDeclarer = super.setBolt("splitSentence", new SplitSentenceBolt(), 1);
boltDeclarer.shuffleGrouping("readFile");
boltDeclarer = super.setBolt("wordCount", new WordCountBolt(), 1);
boltDeclarer.fieldsGrouping("splitSentence", new Fields("word"));
}
}
以上示例代码片段展示了如何使用GM S2编写一个简单的单词计数程序。