Closed SPLWare closed 1 year ago
开源地址:https://github.com/SPLWare/esProc
**SPL(Structured Process Language)专门用于结构化数据计算的程序语言
一、特点描述:
1、超越数据库的计算能力 2、开放的计算体系 3、敏捷语法**
二、与竞争技术的对比
---SPL` VS SQL--- T9NE0FBUB%Z0DHK}N2P~I49
---SPL VS Java--- )8KF2}PX%FGZ3YV`K109J%O
---SPL VS python--- AU`$XG$LMOM30U$9W38 @8I
三、应用场景
SPL应用场景非常多。主要分以下六个方面 image
Got SQL SQL有一定的计算能力,但很多场景下没有SQL用,只能编写复杂的Java代码。SPL提供了不依赖于数据库的轻量级计算能力,可以在任意场景处理数据:
结构化文本(txt/csv)计算
Excel计算
在文件上执行SQL
多层json数据计算
多层xml数据计算
Java计算类库,超越Stream/Kotlin/Scala
取代ORM实现业务逻辑
Mongodb上的SQL式计算,关联运算
WebService/Restful的后计算
Salesforce的后计算,SAP的后计算
各种数据源的后计算:HBase,Cassandra,Redis,ElasticSearch,Kafka,…
Beyond SQL 对于复杂的集合和有序运算很难处理,常常还要读出来再用Java计算。SPL有彻底的集合化能力,特别支持有序和分步计算,可以简化这些运算:
有序集合、位置引用、分组子集、非等值分组、多层关联运算、静态和动态转置、递归与迭代计算、分步及循环运算
HV_58~JABK%W2SSWHJ$OVCM
%250OAG__Z )DLJ)60W8F
Cooperate DB 数据库的计算能力是封闭的,无法处理数据库外的数据,常常需要先做ETL导入同一个数据库后才能处理。 SPL提供了开放简易的计算能力,可以直接读取多个数据库实现混合数据计算,协助数据库做更好的运算。
并行取数加速JDBC、不同类型数据库的SQL移植、跨数据库的运算、T+0统计查询、替代存储过程运算,提高代码可移植性、降低耦合性、避免ETL做成ELT甚至LET、多样数据源的混合计算、减少数据库中的中间表、报表数据源开发,支持热切换、多样数据源、提高开发效率、微服务实现,占用更少资源,可热切换… JUER8Z`(UG9YF LC67Q%OP2
2A GG60ZH1R5WFSIC5)E@_2
XRZV3QM{B1QKZE}ISGUE7CG
SQL难以实现高性能算法,大数据运算性能只能指望数据库的优化引擎,但复杂情况常常靠不住。 SPL提供大量基础高性能算法(有许多是业界创新)以及高效的存储格式,同等硬件环境下可以获得远超过数据库的运算性能,可以全面替代大数据平台与数据仓库。
内存查找:二分法、序号定位、位置索引、哈希索引、多层序号定位 外存数据集: 文本文件并行、二进制存、倍增分段、列存组表、有序存储与更新 外存查找:二分法、哈希索引、排序索引、行存和带值索引、索引预加载、批量查找与集合查找、多索引归并、全文检索 遍历技术:游标后过滤、遍历复用、并行遍历与多路游标、聚合扩展、有序遍历、程序游标、半序分组与排序、序号分组与可控分段 关联技术:外键地址化、外键序号化、索引复用、对位序列、大维表查找、单边分堆、有序归并、关联定位、附表 多维分析:预汇总与时间段预汇总、对位序列、标签位维度 分布式:自由计算与数据分布、集群复组表、集群维表、冗余式容错、备胎式容错、Fork-Reduce、多作业负载均衡
2V9%2@M@6D9HFS2) N BO)1
image
0}RX(S2A8 6UPQLIWA$ O
时序游标:按粒度聚合、平移、相邻引用、关联合并 历史数据压缩固化,透明引用 向量与矩阵运算 各种线性拟合:最小二乘、偏最小二乘、lasso、ridge、… … 工业算法常常需要反复实验,SPL开发效率极高,同时间内可以尝试更多:
仪表异常发现算法 异常测量样本定位 曲线升降及振荡模式识别 有约束线性拟合 管道传输调度算法
非常感谢您推荐项目,请按照提示编写描述。
该项目暂不能收录到 HelloGitHub 月刊中,HelloGitHub 推荐项目审核标准 #271。 期待持续完善该项目,后续推荐更多的项目。
再次感谢您对 HelloGitHub 的支持 🙏
开源地址:https://github.com/SPLWare/esProc
**SPL(Structured Process Language)专门用于结构化数据计算的程序语言
一、特点描述:
1、超越数据库的计算能力 2、开放的计算体系 3、敏捷语法**
二、与竞争技术的对比
---SPL` VS SQL--- T9NE0FBUB%Z0DHK}N2P~I49
---SPL VS Java--- )8KF2}PX%FGZ3YV`K109J%O
---SPL VS python--- AU`$XG$LMOM30U$9W38 @8I
三、应用场景
SPL应用场景非常多。主要分以下六个方面 image
Got SQL SQL有一定的计算能力,但很多场景下没有SQL用,只能编写复杂的Java代码。SPL提供了不依赖于数据库的轻量级计算能力,可以在任意场景处理数据:
结构化文本(txt/csv)计算
Excel计算
在文件上执行SQL
多层json数据计算
多层xml数据计算
Java计算类库,超越Stream/Kotlin/Scala
取代ORM实现业务逻辑
Mongodb上的SQL式计算,关联运算
WebService/Restful的后计算
Salesforce的后计算,SAP的后计算
各种数据源的后计算:HBase,Cassandra,Redis,ElasticSearch,Kafka,…
Beyond SQL 对于复杂的集合和有序运算很难处理,常常还要读出来再用Java计算。SPL有彻底的集合化能力,特别支持有序和分步计算,可以简化这些运算:
有序集合、位置引用、分组子集、非等值分组、多层关联运算、静态和动态转置、递归与迭代计算、分步及循环运算
HV_58~JABK%W2SSWHJ$OVCM
%250OAG__Z )DLJ)60W8F
Cooperate DB 数据库的计算能力是封闭的,无法处理数据库外的数据,常常需要先做ETL导入同一个数据库后才能处理。 SPL提供了开放简易的计算能力,可以直接读取多个数据库实现混合数据计算,协助数据库做更好的运算。
并行取数加速JDBC、不同类型数据库的SQL移植、跨数据库的运算、T+0统计查询、替代存储过程运算,提高代码可移植性、降低耦合性、避免ETL做成ELT甚至LET、多样数据源的混合计算、减少数据库中的中间表、报表数据源开发,支持热切换、多样数据源、提高开发效率、微服务实现,占用更少资源,可热切换… JUER8Z`(UG9YF LC67Q%OP2
2A GG60ZH1R5WFSIC5)E@_2
XRZV3QM{B1QKZE}ISGUE7CG
SQL难以实现高性能算法,大数据运算性能只能指望数据库的优化引擎,但复杂情况常常靠不住。 SPL提供大量基础高性能算法(有许多是业界创新)以及高效的存储格式,同等硬件环境下可以获得远超过数据库的运算性能,可以全面替代大数据平台与数据仓库。
内存查找:二分法、序号定位、位置索引、哈希索引、多层序号定位 外存数据集: 文本文件并行、二进制存、倍增分段、列存组表、有序存储与更新 外存查找:二分法、哈希索引、排序索引、行存和带值索引、索引预加载、批量查找与集合查找、多索引归并、全文检索 遍历技术:游标后过滤、遍历复用、并行遍历与多路游标、聚合扩展、有序遍历、程序游标、半序分组与排序、序号分组与可控分段 关联技术:外键地址化、外键序号化、索引复用、对位序列、大维表查找、单边分堆、有序归并、关联定位、附表 多维分析:预汇总与时间段预汇总、对位序列、标签位维度 分布式:自由计算与数据分布、集群复组表、集群维表、冗余式容错、备胎式容错、Fork-Reduce、多作业负载均衡
2V9%2@M@6D9HFS2) N BO)1
image
0}RX(S2A8 6UPQLIWA$ O
时序游标:按粒度聚合、平移、相邻引用、关联合并 历史数据压缩固化,透明引用 向量与矩阵运算 各种线性拟合:最小二乘、偏最小二乘、lasso、ridge、… … 工业算法常常需要反复实验,SPL开发效率极高,同时间内可以尝试更多:
仪表异常发现算法 异常测量样本定位 曲线升降及振荡模式识别 有约束线性拟合 管道传输调度算法