Apache Ignite 2.8.0 版本发布,内存计算平台,里程碑版本更新

栏目: 软件资讯 · 发布时间: 4年前

内容简介:Apache Ignite 2.8版本经过了一年多的开发,现已发布。这是个大版本更新,新增了大量的功能,也解决了近一年中开发者反馈的大量问题,推荐开发者更新,更新内容清单非常长,现把重点内容摘录如下: Apache Ignit...

Apache Ignite 2.8版本经过了一年多的开发,现已发布。这是个大版本更新,新增了大量的功能,也解决了近一年中开发者反馈的大量问题,推荐开发者更新,更新内容清单非常长,现把重点内容摘录如下:

Apache Ignite 2.8.0

Ignite 实验性 API:

  • 新增了监控API - 向外部接收者输出Ignite指标信息;
  • 使用withReadRepair扩展IgniteCache API对每个缓存执行备份节点一致性检查;
  • 将MVCC特性标记为试验性 (2.7.0版本新增);

Ignite 监控:

  • 新增将对象暴露为系统视图的支持 (直接支持SQL, JMX输出);
  • 新增对指标信息进行存储和更新的支持 (直接支持JMX, SQL, Log, OpenCensus的输出);
  • 新增SQL_QUERIES系统视图;
  • 新增CLIENT_CONNECTIONS系统视图 (JDBC, ODBC, 瘦客户端) ;
  • 新增NODES系统视图;
  • 新增TABLE_COLUMNS系统视图;
  • 新增CONTINUOUS_QUERIES系统视图;
  • 新增DATA_REGION_PAGE_LISTS系统视图;
  • 新增INDEXES系统视图;
  • 新增PME耗时的指标;
  • 新增事务持续时间的指标;
  • 新增度量缓存API性能的指标;
  • 新增显示索引构建过程的指标;
  • 新增SCAN_QUERIES系统视图;
  • 新增SCHEMAS系统视图;
  • 新增STRIPED_THREADPOOL_QUEUE系统视图;
  • 新增对通过JMX对指标进行配置的支持;
  • 新增TABLES系统视图;
  • 如果发生了检查点限流,新增了线程停顿的总时间指标;
  • 新增TRANSACTIONS系统视图;
  • 将CacheGroupMetrics移到了新的框架;
  • 将ClusterMetricsMxBean移到了新的框架;
  • 将Communication指标移到了新的框架;
  • 将GridJobMetricsProcessor移到了新的框架;
  • 将GridLocalMetrics移到了新的框架;
  • 将IgniteMXBean移到了新的框架;
  • 将QueryMetrics移到了新的框架;
  • 将TransactionMetricsMxBean移到了新的框架;

Ignite 核心层:

  • 新增@IgniteExperimental注解,用于通知用户可用API的早期状态;
  • 新增IGNITE_CONSISTENT_ID系统属性;
  • 新增IGNITE_DISCOVERY_DISABLE_CACHE_METRICS_UPDATE系统属性;
  • 新增IGNITE_YARN_QUEUE属性,用于覆盖YARN队列名;
  • 新增JMX从拓扑中排除节点的功能;
  • 新增分区映射耗时的JMX指标;
  • 新增ZookeeperSpi的SSL支持;
  • 新增Spark SQL表模式规范;
  • 新增WAL页面快照记录压缩;
  • 新增通过JVM节点参数选项覆盖所有缓存的'rebalanceThrottle'选项的功能;
  • 新增在配置中设定索引重建的默认并行度的功能;
  • 新增跟踪事务中花费的系统/用户时间的功能;
  • 新增数据结构中的Queue的二进制模式 (withKeepBinary) ;
  • 新增主节点的缓存验证逻辑;
  • 新增集群的激活/冻结事件;
  • 新增通过Spring配置文件的显式插件配置;
  • 新增磁盘页面压缩的支持;
  • 在TcpDiscoverySpi实现中为客户端/服务端连接新增了额外的日志;
  • 在检查点启动消息中新增了可能的长时间GC信息;
  • 新增了Spark2.4的初始支持;
  • 在CacheWriteBehindStore中新增相同键的并行写入&退出功能;
  • 集群中的不同节点新增可以有不同的再平衡线程池大小的功能;
  • TcpCommunicationSpi新增TLSv1.3支持;
  • TcpDiscoveryS3IpFinder新增客户端侧加密支持;
  • UriDeploymentSpi新增对JAR文件的支持;
  • 缓存支持将数组作为主键;
  • 基线拓扑新增对自动调整的支持;
  • Kubernetes发现中新增对非就绪配置组的支持;
  • 新增对SpringData更新/删除操作的支持;
  • PME之外新增了逻辑恢复阶段;
  • 瘦客户端新增对最优映射的支持 (分区感知);
  • 新增通过AWS ELB进行节点发现的支持;
  • 新增事务化缓存的相关事件 (比如EVT_TX_STARTED, EVT_TX_COMMITTED);
  • 瘦客户端新增了事务支持;
  • 为TextQuery的构造函数和构造器新增了'limit'参数;
  • 新增ignite-spring-data_2.2模块,用于Spring Framework 5.2.x和Spring Data 2.2.x;
  • 新增hibernate 5.3的集成支持;
  • 在节点退出时新增对非阻塞PME的支持;
  • 在IgniteSpark的内部dataStreamer中新增了skipStore选项(IgniteRdd和Ignite DataFrame);
  • 在PME期间避免了存储管理器的同步初始化;
  • 禁止将持久化的节点加入内存集群;
  • IGNITE_DISABLE_WAL_DURING_REBALANCING属性默认打开;
  • Ignite内部优化了CRC32算法;
  • 改进了LRT诊断消息;
  • 改进了全分区映射生成期间的PME速度(并行执行);
  • 改进了全分区映射更新期间的PME速度(并行执行);
  • 改进了节点加入期间启动多个缓存时的PME速度;
  • 改进了大规模集群发现过程中的元数据交换 (通过数据压缩实现);
  • 改进了索引重建过程的日志输出;
  • 改进了WAL段归档的速度;
  • 优化了再平衡过程的GC压力;
  • 优化了HistoryAffinityAssignment的堆使用;
  • 启动缓存组时的映射初始化性能优化;
  • 删除了IGNITE_SERVICES_COMPATIBILITY_MODE系统属性;
  • 从IgniteSystemProperties和IgniteProductVersion中删除了 Java 7和AI 1.x残留;
  • 将IGNITE_BINARY_META_UPDATE_TIMEOUT替换为IGNITE_WAIT_SCHEMA_UPDATE;
  • 大量的性能、稳定性改进和错误修复。

SQL:

  • 新增了Decimal类型的精度和标度约束;
  • 新增了KILL QUERY命令;
  • 本地查询新增了行计数统计;
  • CREATE TABLE的WITH子句新增了查询并行度配置的支持;
  • 在发生CorruptedTreeException时新增了自动化的页面历史转储;
  • 为正在运行的查询新增了集群范围的唯一标识;
  • 在缓存组指标中新增了索引重建的分区离开计数;
  • 新增了默认的查询超时配置;
  • 新增了删除_VER字段的支持;
  • 对于整形类型,从BETWEEN和范围条件中抽取了分区信息;
  • 从JOIN中抽取了分区信息;
  • 为本地查询新增了延迟执行的能力;
  • 新增了查询历史统计API;
  • 在ScanQuery, SqlQuery 和 SqlFieldsQuery中新增了数据页扫描的支持;
  • 刚创建的数据区在第一次分配缓存时新增对内存分配的支持;
  • 查询游标迭代器在所有数据读完后支持自动关闭;
  • 在查询的发起节点支持对所有正在运行的查询的跟踪;
  • 在不使用包装对象时新增了对主键索引的验证;
  • 超时时新增了长时间执行的查询的警告信息(而不是查询完成时);
  • 当queryParallelizm > 1时,禁用了隐式分布式关联;
  • 对于CHAR/VARCHAR 和 DECIMAL类型,在QueryEntity中不再存储默认的精度和标度;
  • 在DML操作中禁止混合_key和主键列;
  • 将再平衡配置属性移动到IgniteConfiguration层;
  • 当只有一个或者没有分区时,优化了查询的执行;
  • 通过主键访问缓存时,减少了过多的整形装箱;
  • 表合并时删除了索引扫描;
  • 将IGNITE模式改名为SYS。

MVCC:

  • 对于开启了MVCC的缓存,新增了持续查询的故障转移;
  • 新增了死锁检测器;
  • 对于键-值API,新增了兼容MVCC的缓存peek操作。

JDBC:

  • 新增缓存过期策略;
  • 新增JDBC瘦模式驱动的连接超时配置;
  • 新增JDBC的数据页扫描支持;
  • 新增并行处理多个异步请求的支持;
  • 新增支持查询的取消;
  • 新增支持查询超时;
  • 驱动启动时随机接入一个服务端节点;
  • 更新握手协议以使节点返回其UUID。

Web 代理:

  • 新增支持集群ID;
  • 新增支持2种方式的SSL认证;
  • 改进了REST命令执行失败时的信息输出;
  • 改进了集群拓扑变更时的日志输出。

Web 控制台:

  • 新增TypeScript支持;
  • 新增取消查询的功能;
  • 新增磁盘页面压缩的相关配置;
  • 新增WC启动时检查 MongoDB 的版本;
  • 新增邮件确认功能;
  • 新增管理事件(EVT_MANAGEMENT_TASK_STARTED);
  • 新增部分缺失的IgniteConfiguration配置项;
  • 新增禁用Web控制台的自注册选项;
  • 新增分布式MVCC的选项;
  • 输入框中新增对"date", "time" 和 "date-and-time"类型的支持;
  • 输入框中新增对"type=number"的支持;
  • 更新部分细节样式;
  • 更新到RxJS 6。

Ignite .NET:

  • 新增瘦客户端的分区感知;
  • 新增瘦客户端的过期策略;
  • 瘦客户端新增Cluster API;
  • 新增对.NET Core 3.x的支持;
  • 新增Ignite.NET Dockerfile;
  • 新增可运行的.NET Core程序集;
  • 新增ICache.GetLongSize;
  • 新增IClusterNode.Version;
  • 新增ICompute.WithExecutor;
  • 新增IIgnite.GetVersion;
  • 新增IBinaryObjectBuilder.SetField(name, val, type);
  • 新增分区预加载API (PreloadPartition, PreloadPartitionAsync)。

Ignite C++:

  • 新增BinaryType方法实现(GetTypeId, GetFieldId);
  • C++瘦客户端新实现了部分原子化Cache API(ReplaceIfEquals, RemoveIfEquals等);
  • 改进了C++瘦客户端的最优映射;
  • 删除了对Boost 1.58.0的强依赖。

REST:

  • top命令新增"caches"参数;
  • REST API新增拓扑相关命令;
  • REST新增内存策略等相关的指标。

Visor:

  • 在./control.sh --host HOST --cache idle_verify中,执行VisorIdleVerifyDumpTask时可以指定nodeId;
  • Visor中新增缓存统计的动态打开和关闭的功能;
  • 在Visor的任务执行中新增了缓存重启过程的向导。

控制脚本工具:

  • 新增存储页面的CRC校验和检查功能;
  • 新增从输出文件中排除缓存的功能;
  • 新增输出更多缓存配置信息的功能;
  • 在control.sh --cache idle_verify中新增了同步缓存过滤器的选项;
  • 新增处理共享缓存组中缓存销毁后留下的分区中的垃圾的命令;
  • 在control.sh的输出中新增关于协调器的信息;
  • 处理基线配置时新增对SSL的支持(CommandHandler);
  • 在console.sh中新增了对调整基线自动调整相关参数的支持;
  • 新增对请求SSL Keystore 密码和 SSL truststore 密码的支持;
  • 在console.sh中显示基线自动调整的时间;
  • 通过console.sh记录所有执行的动作。

机器学习:

  • 新增了固定分量的高斯混合模型(GMM)训练器;
  • 在Spark ML解析器中新增了ML日志记录器和相关的环境变量;
  • 在模型中用NamedVectors替换了HashMap;
  • 新增OneVsRest训练器用于处理一个数据集中有多个类标签的场景;
  • 交叉验证过程中新增了对管道的支持;
  • 新增了Ignite SQL和Ignite ML之间的集成;
  • 在遗传算法中新增了超参数调整;
  • 在Spark ML的DecisionTreeClassificationModel实例中新增了parquet文件的解析器;
  • 在Spark ML的DecisionTreeRegressor实例中新增了parquet文件的解析器;
  • 在Spark ML的GBTRegressionModel实例中新增了parquet文件的解析器;
  • 在Spark ML的GradientBoostedTreesModel实例中新增了parquet文件的解析器;
  • 在Spark ML的KMeansModel实例中新增了parquet文件的解析器;
  • 在Spark ML的LinearRegressionModel实例中新增了parquet文件的解析器;
  • 在Spark ML的LinearSVCModel实例中新增了parquet文件的解析器;
  • 在Spark ML的RandomForestClassificationModel实例中新增了parquet文件的解析器;
  • 在Spark ML的RandomForestRegressionModel实例中新增了parquet文件的解析器;
  • 新增在Ignite数据上使用H2O MOJO模型进行推断和预测的功能;
  • 在预处理训练器中新增了新特性标签提取的API(Vectorizers);
  • 新增了各种朴素贝叶斯分类器;
  • 新增了向量投影;
  • 分类功能的高级支持 (在矢量器中的LabelEncoding, Strings);
  • 实现了分布式估计器;
  • 支持从XGBoost中导入模型;
  • 改进从目录加载模型,而不是使用模型文件的完整路径;
  • 改进了和ML相关的lambdas的对等类加载;
  • 改进了用于IgniteModel和 SQL 功能的IgniteModelStorage;
  • Spark ML的初始集成 (从ML包中解析Spark ML模型);
  • 合并了InfModel和Model;
  • 将XGBoost和Ignite ML树合并在一起;
  • 新增了用于评价模型质量的指标;
  • 新增推荐引擎,以便通过Ignite缓存和SQL操作构建推荐系统;
  • 在新的矢量器中替换所有的标签/特性提取器;
  • 训练推理叠加;
  • 统一集成训练算法的API。

依赖更新:

  • 新增了spring-data-2.2依赖;
  • 新增了hibernate-5.3依赖;
  • 新增了spark-2.4依赖;
  • 新增了spring-5.2依赖;
  • 更新Jetbrains Annotations到16.0.3;
  • 更新Kafka到2.0.1;
  • 更新RocketMQ到4.4.0;
  • 更新Commons Beanutils到1.9.4;
  • 更新Jackson到2.9.10;
  • 更新Jetty到9.4.25;
  • 更新Spring到4.3.26;
  • 更新spring-5.0到5.0.16;
  • 更新spring-data-2.0到2.0.13;
  • 将Flink移动到ignite-extension中。

参考消息:https://ignite.apache.org/releases/2.8.0/release_notes.html


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First Python

Head First Python

Paul Barry / O'Reilly Media / 2010-11-30 / USD 49.99

Are you keen to add Python to your programming skills? Learn quickly and have some fun at the same time with Head First Python. This book takes you beyond typical how-to manuals with engaging images, ......一起来看看 《Head First Python》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具