What's New in GigaSpaces Version 16.4
Release Date: October-2023
This page describes product changes, along with new features and functionality for GigaSpaces release 16.4.
Security
-
Authentication, Authorization and Roles Management.
-
Securing your data is paramount! To this end, security is now set as default in our Kubernetes orchestration (see Security Settings section).
-
Our SpaceDeck is now securely managed. Refer to Security Overview for additional details.
-
To enhance usability, Space
Where GigaSpaces data is stored. It is the logical cache that holds data objects in memory and might also hold them in layered in tiering. Data is hosted from multiple SoRs, consolidated as a unified data model. security settings can be set per instance. Per cluster roles are managed through the RBAC
Role-based access control (RBAC), also known as role-based security, is a mechanism that restricts system access. It involves setting permissions and privileges to enable access to authorized users. model. -
For SSO login to SpaceDeck. GigaSpaces supports using any IDP
An identity provider, or IDP, stores and manages users' digital identities. IDP and SSO can work together to authenticate users. that supports OpenID Connect (OIDC
OpenID Connect (OIDC) is an open authentication protocol that works on top of the OAuth 2.0 framework. Targeted toward consumers, OIDC allows individuals to use single sign-on (SSO) to access relying party sites using OpenID Providers (OPs), such as an email provider to authenticate their identities.). For additional information refer to SpaceDeck - SSO IDP Setup.
-
Data Integration (DI) Updates
-
Express Upload. For Smart DIH as-a-Service customers only. For additional details, please contact our Customer Support team.
-
Our SpaceDeck UI now offers a far simpler user journey using the new Express Upload option.
-
The advantages of this are exemplified by users having a quicker and simpler user experience by being fully self-service whilst using common standards of data migration to create data services.
-
This features supports the basic importing of data into GigaSpaces Smart DIH
Smart DIH allows enterprises to develop and deploy digital services in an agile manner, without disturbing core business applications. This is achieved by creating an event-driven, highly performing, efficient and available replica of the data from multiple systems and applications, as-a-Service platform from standard data formats of .csv or .json files. This data can be imported from an Amazon S3 bucket. Using this data, through SpaceDeck, a Data Source can be defined as well as a Space, and a new Pipeline can be created and schemas/tables selected . After the data setup and configuration, queries can be run and services created. -
GigaSpaces has added the ability to bring data not only from relational database but rather from Kafka
Apache Kafka is a distributed event store and stream-processing platform. Apache Kafka is a distributed publish-subscribe messaging system.
A message is any kind of information that is sent from a producer (application that sends the messages) to a consumer (application that receives the messages).
Producers write their messages or data to Kafka topics. These topics are divided into partitions that function like logs.
Each message is written to a partition and has a unique offset, or identifier. Consumers can specify a particular offset point where they can begin to read messages. directly using StreamSQL. For information about using Stream SQL in SpaceDeck refer to the StreamSQL Overview and StreamSQL Implementation pages.. -
There is now no need to manually configure IIDR
IBM Infosphere Data Replication.
This is a solution to efficiently capture and replicate data, and changes made to the data in real-time from various data sources, including mainframes, and streams them to target systems. For example, used to move data from databases to the In-Memory Data Grid. It is used for Continuous Data Capture (CDC) to keep data synchronized across environments. subscription via the DI
The Data Integration (DI) layer is a vital part of the Digital Integration Hub (DIH) platform. It is responsible for a wide range of data integration tasks such as ingesting data in batches or streaming data changes. This is performed in real-time from various sources and systems of record (SOR. The data then resides in the In-Memory Data Grid (IMDG), or Space, of the GigaSpaces Smart DIH platform. Subscription Manager as this is now performed automatically. For more information refer to Pipeline Setup Via SpaceDeck.
Services
Through our SpaceDeck UI, low code development of data micro-services provide our clients with the ability to deploy and execute data services efficiently.
For additional details about Service Creator refer to Deploying Services
SQL Pagination Support
In some cases, services can return multiple rows from a Space. In order to avoid all the data being displayed on one long page, which is not practical we have introduced pagination which allows the data to be divided into smaller, more manageable pages.
Service Auto Discovery
Discovery of Endpoints for Viewing Documentation:
-
Swagger UI for is now available for each service.
-
API docs in Open API format is now available for each service.
Security Roles and Permissions
-
A regular user without permissions can only create or delete a service as this function is currently created and stored on the UI server side only.
-
In order to deploy or undeploy a service, the user will require Manage Service permission, as these operations make backend calls. Refer to the SpaceDeck Services page for more details.
-
Refer to Security Overview for more details.
SpaceDeck Enhancements for Services
-
Service Monitoring - For each deployed service, there is monitoring supplied through SpaceDeck.
-
Download Service Logs - Service logs can now be downloaded from SpaceDeck.
-
Update Log Level - The ability to update the log level through Postman or CURL.
-
Only relevant actions are presented for any given state. For example, there is no delete option displayed for a deployed service.
Integrations
GigaSpaces have a supported reference integration with AWS API Gateway to register a query service. Additional reference integrations will be added in the future.
SpaceDeck Enhancements
Hosts Menu
Through SpaceDeck you can now view information about specific hosts. In addition, single or multiple logs can be generated. Hosts can be used to monitor the health of all your hosts to ensure that if limits are being reached, there is an opportunity to reorganize data or increase the amount of RAM or nodes.
SpaceDeck for XAP
SpaceDeck is now available for the first time for XAP installations that use Kubernetes orchestration. In the future there will be more features added. For a reminder of which UIs are used for which operations refer to our Platform Feature Access page.
The features currently available are:
-
Security: Authentication, Authorization and Roles Management.
-
Hosts: This menu displays specific hosts information and can be used to generate logs.
-
Spaces: Deploy, undeploy and view dynamic metrics of Spaces.
-
Data Query: Execute SQL queries against the data in the Space.
Redo Log Update
Redo capabilities now include the ability to flush the redo log to disk upon shutdown.
Disclaimers
-
Self-signed certificate has been removed in favor of the BouncyCastle package (org.bouncycastle v1.50) which is now bundled with the product. Due to the missing "sun.security.provider.Sun" in the newer JDK versions, users of IBM JDK are required to have this package in the classpath. For more information, refer to Securing the Transport Layer.
-
ASM (Java bytecode manipulation framework): Until version 16.3.0, GigaSpacesbundles ASM v3.3.1.
Starting with ASM v4.0, there was a breaking change made to their API, specifically converting interfaces to classes, e.g., ClassVisitor and Method Visitor.
In GigaSpaces16.4, the bundle was updated to include ASM v9.5, mainly to support future upgrades to Java 11. For more information refer to Third-Party License Agreements
Release Date: February-2025
This page describes product changes, along with new features and functionality for GigaSpaces release 16.4.
Aggregator and Tier Improvements
This applies for XAP and XAP Skyline
A highly customizable developer platform that allows building scalable HA with high throughput and ultra-low latency Java applications running on Kubernetes clusters
Aggregator Memory Consumption Improvements
Prior to this version, aggregation kept UIDs of all scanned objects during an operation, in case the same object ID is deleted and recreated. When the relevant table is very large, such as in tiered storage
Automatically assigns data to different categories of storage types based on considerations of cost, performance, availability, and recovery., this could lead to high memory consumption. To solve this, parameters were added to control UID storage for tiered storage and in-memory spaces. For more information, see Aggregators.
Aggregator Local Space Injection
Aggregation usually iterates over a group of entries and aggregates values from related entries. There are some cases in which there is a need to access another object in the local Space. Local Space injection was added for this purpose. For more information, see Aggregators.
Aggregator Index Usage
In some scenarios, using indexes for aggregations can avoid a full table scan and reduce execution time significantly. However, relying on the index can be risky in cases with a high load of transactions. Therefore, changes were made to optimize index usage for different cases: For more information, see Aggregators.
New Custom Aggregator Methods
The following custom Aggregator methods were added:
-
isIndexUsed() - check if aggregation index optimization can be used.
-
skipProcessedUidStore() - when iterating one by one, determine whether or not to store UIDs in order to avoid duplication.
-
handleIntermediateResultOfMemoryStorage() - determine how to handle partition results for memory space if one by one aggregation is skipped.
-
handleIntermediateResultOfDbStorage() - determine how to handle partition results for tiered space if one by one aggregation is skipped.
-
getSQLQuery() - set the query to be used for tiered storage if one by one aggregation is skipped.
For more information, see Custom Aggregators.
Counters for Count Aggregation and API
Counters can be used when asking for a table count (count(*)) with no conditions, or Ignoring transactions or there are no active transactions & lease expirations. For more information, see Aggregators.
Push Down Aggregation to Tiered Storage (SQLite)
When tiered storage is used and the query should be performed in the underlying database, queries can now be pushed down. For more information, see Aggregators.
Tiered Storage Initial Load
In order to improve recovery time from tiered storage space, counters initialization was moved to async mode, allowing the space to be ready before filling up statistics.
Read-only Quiesce Mode
This applies for XAP and XAP Skyline
Read-only quiesce mode
This is a maintenance mode that differs from the regular quiesce mode by allowing read-only operations so the space is available to read but not for write/update/take operations. For more information, see Quiesce Mode.
Durable Tasks
This applies for XAP and XAP Skyline
Durable Tasks
A Durable Task is a Task that can be canceled and recovered. It extends distributed tasks.
Use cases :
-
A task that does a job that takes long time and needs the ability to be cancelled.
-
Business logic - adds the ability to change the business logic of the space without redeploying the space.
Durable Tasks can be created using the Durable Task API. For more information, see Task Execution.
Query Protective Mode
This applies for XAP, XAP Skyline and Smart DIH
Digital Integration Hub.
An application architecture that decouples digital applications from the systems of record, and aggregates operational data into a low-latency data fabric.
Query Protection Mode
The new query protection mode provides protection against executing queries that perform a full scan if the table size is above a limit. By default, protective mode is disabled. If enabled, an exception will be thrown when a query as” select * from the table” is performed and the table size is larger than the specified limit.
If protective mode is disabled, a warning message will be logged if a query meets the protective mode conditions. It is recommended to enable this property in QA and stage environments.
For more information, see Space Index.
JDBC V3 Improvements
This applies for XAP, XAP Skyline and Smart DIH
The following improvements to JDBC
Java DataBase Connectivity.
This is an application programming interface (API) for the Java programming language, which defines how a client may access a database. V3 have been made:
-
Support for queries starting with “with”.
-
Support for the NVL function, as in Oracle.
-
Dynamic filters hints - a different algorithm to execute a query, to be used when a join condition significantly reduces results. For more information, see Hints.
-
Colocated joining based on routing
The mechanism that is in charge of routing the objects into and out of the corresponding partitions. The routing is based on a designated attribute inside the objects that are written to the Space, called the Routing Index. -
IN query improvement-previously, the IN condition was translated into OR conditions, which is not efficient when used for many items,. Now, if there are more than 10 items, the condition will be propagated to the gigaspace api.
Note: It's important to have equal index for the related property to avoid a full table scan.
Secured ZooKeeper
You can now set up secured ZooKeeper. For more information, see GigaSpaces Manager.
New Service Level Script
A new service-overrides script was added to allow changes per service without restarting the GSA
Grid Service Agent.
This is a process manager that can spawn and manage Service Grid processes (Operating System level processes) such as The Grid Service Manager, The Grid Service Container, and The Lookup Service. Typically, the GSA is started with the hosting machine's startup. Using the agent, you can bootstrap the entire cluster very easily, and start and stop additional GSCs, GSMs and lookup services at will.. For more information, see Scripts.
Embedded Replication Mode Change Listener
Relevant for primary backup replication, to identify situations when replication moves to async mode. For more information, see Replication.
LDAP Changes
This applies for XAP
Due to changes in Spring LDAP
Lightweight Directory Access Protocol.
An open, vendor-neutral, industry standard application protocol for accessing and maintaining distributed directory information services over an Internet Protocol (IP) network., the class attribute in LDACP configuration must be updated to com.gigaspaces.security.ldap.XAPLdapAuthoritiesPopulator.
For example:
<bean id=“populator” class=“com.gigaspaces.security.ldap.XAPLdapAuthoritiesPopulator”> <constructor-arg ref=“contextSource” /> <!-- group based DN - we will be searching for groups in “ou=groups,dc=example,dc=com” --> <constructor-arg value=“ou=groups” /> <!-- the name of the attribute that will contain role information (which effectively translates to a user’s granted authorities. Default is “cn” --> <property name=“groupRoleAttribute” value=“ou” /> … </bean>
XAP.NET Improvements
This applies for XAP
The following XAP.NET improvements have been made:
-
Support for Broadcast tables
-
Ability to get replication statistics from an embedded space
Kubernetes Improvements
The following Kubernetes
An open-source container orchestration system for automating software deployment, scaling, and management of containerized applications. improvements have been made:
-
Readiness probe for xap manager to allow safe rolling upgrade of managers.
-
Parallel mode deployment of space with multi partitions when HA is false to allow faster deployment and faster rolling upgrade
-
Added jvm utilities as jmap to the image.
-
Utility to backup and restore tiered storage space data.
-
Added OOB alert system with installation of Kapacitor and config map for default alert settings.
-
Auto scaler operator that can add/remove more clusters (including copy data from original cluster if needed), according to defined rules.
Data Integration (DI) Updates
This applies for Smart DIH
DIHCTL Command Line Application
DIHCTL Application
The new DIHCTL command line application is intended to perform different actions on the working Smart DIH installation (environment). It can be run manually, or as part of a CI/CD pipeline. For more information, see DIHCTL.
Import & Export Capabilities
Import and Export
You now have the ability to:
-
Import/export pipeline definitions
-
Import/export service configurations
-
Import/export GraphQL relationship definitions
These actions can be performed through SpaceDeck or using the DIHCTL application. Fore more information, see SpaceDeck and DIHCTL.
GraphQL and SpaceQL
GraphQL
Smart DIH now includes embedded GraphQL API Gateway functionality. The GraphQL API Gateway service allows to query XAP spaces using GraphQL syntax.
The service detects all Spaces and corresponding types that exist in each Space. It then auto-generates GraphQL functions that can be used to easily query the Space and retrieve faster results in comparison to using the equivalent SQL queries.
You can query the GraphQL service through SpaceQL, or using the DIHCTL application.
For more information, see GraphQL and SpaceQL.
Kafka as a Data Source
You can now add Confluent Kafka as a data source. For more information, see Kafka as a Data Source.
Grafana Alerts
You can now enable Grafana
Grafana is a multi-platform open source analytics and interactive visualization web application. It provides charts, graphs, and alerts for the web when connected to supported data sources. alerts. See Using Grafana for Monitoring and Analytics.
Manage User Access Tokens using SpaceDeck
You can now manage user access token using SpaceDeck. For more information, see SpaceDeck – Administration.
In-Memory Data Grid - achieve unparalleled speed, persistence, and accuracy.