Get Started

Get Started

These guides demonstrate how to get started quickly with Hazelcast IMDG and Hazelcast Jet.

Hazelcast IMDG

Learn how to store and retrieve data from a distributed key-value store using Hazelcast IMDG. In this guide you’ll learn how to:

  • Create a cluster of 3 members.
  • Start Hazelcast Management Center
  • Add data to the cluster using a sample client in the language of your choice
  • Add and remove some cluster members to demonstrate data balancing capabilities of Hazelcast

Hazelcast Jet

Learn how to build a distributed data processing pipeline in Java using Hazelcast Jet. In this guide you’ll learn how to:

  • Install Hazelcast Jet and form a cluster on your computer
  • Build a simple pipeline that receives a stream of data, does some calculations and outputs some results
  • Submit the pipeline as a job to the cluster and observe the results
  • Scale the cluster up and down while the job is still running

Hazelcast IMDG C++ Client

Extend the benefits of operational in-memory computing to your C++ applications running in Linux, Windows, and macOS.

  • Use the Hazelcast Near Cache feature to store frequently read data in your C++ process. This provides faster read speeds than traditional caches such as Redis or Memcached.
  • Access all of the Hazelcast data structures plus distributed queues, topics, and more with the Hazelcast IMDG C++ Client.
  • Provides SSL support for your enterprise-level security requirements.
  • Ability to discover the existing Hazelcast clusters in an AWS environment.
  • Asynchronously execute your tasks in the cluster, such as database queries, complex calculations, and image rendering.
  • Non-Blocking asynchronous methods for more powerful operations like batched writing or reading.
  • Ability to send multiple requests in parallel using a single thread via Pipelining API, which increases the throughput.
Download
Roadmap

Roadmap

C++ Client 4.0 (Mid November 2020)

  • Hazelcast IMDG 4.0 Changes: Client protocol enhancements, architectural improvements, Serialization improvements.
  • Idiomatic API: Redesign of the API in a way that C++ developers used to.
  • CP Subsystem Support: New Concurrency APIs including FencedLock, AtomicLong, Semaphore, CountDownLatch, and AtomicReference.
  • Backup Acknowledgment: Significantly improved client performance by eliminating the sync backup wait from the client and send the backup ACK to the client.
  • Ownerless Client: Simpler design to track member leaves and joins to the cluster.
  • C++ 11/14/17 Compatible API and Implementation: Design a new API which supports new language features of C++ 11/14/17. Also, utilise the new capabilities of the language.
  • Partition Predicate: Ability to run a predicate on a given partition.
  • Mutual Authentication: Allows the clients to have their keyStores and members to have their trustStores so that the members can know which clients they can trust.

 

C++ Client Backlog

  • Envoy Proxy Caching: Utilize Hazelcast for microservices behind an Envoy Proxy.
  • Hazelcast Cloud Discovery: Ability to connect to your cluster on Hazelcast Cloud with a C++ client.
  • Configuration Improvements: Declarative configuration, client configuration import, Fail Fast on Invalid Configuration
  • Blue/Green Deployments: Ability to divert the client automatically to another cluster on demand or when the intended cluster becomes unavailable.
Client Features

Features Implemented for this Client

DATA STRUCTURES

C++ Client 3.12.1

Map

Queue

Set

List

MultiMap

Replicated Map

Ring Buffer

Topic

Reliable Topic

JCache

N/A

Cardinality Estimator


CONCURRENCY PRIMITIVES

C++ Client 3.12.1

Lock

Condition

Semaphore

AtomicLong

AtomicReference

ID Generator

CountDownLatch

CRDT PN Counter

Flake ID Generator

DISTRIBUTED PROCESSING

C++ Client 3.12.1

Distributed Executor Service

Event Listeners

Sub-Listener Interfaces for Map Listener

Entry Processor

TRANSACTIONS

C++ Client 3.12.1

TxnMap

TxnMultiMap

TxnQueue

TxnList

TxnSet

QUERY

C++ Client 3.12.1

Query (Predicates)

Paging predicates

Partition predicate

Built-in Predicates

Continuous Query Caching

N/A

Listener with Predicate

Projections

Fast Aggregations

NEAR CACHE

C++ Client 3.12.1

Near Cache Support

HD Memory

N/A

Preload Cache from Last Used

Eventual Consistency Control

CONFIGURATION

C++ Client 3.12.1

Declarative Config (XML/JSON/YAML)

Programmatic Configuration

Client Configuration Import

Fail Fast on Invalid Configuration

SECURITY

C++ Client 3.12.1

SSL Support

XA Transactions

Mutual Authentication

Authorization

Custom Authentication Modules

MANAGEMENT CENTER

C++ Client 3.12.1

Management Center Integration / Awareness

Client Near Cache Stats

Client Runtime Stats

Client Operating Systems Stats

CLOUD

C++ Client 3.12.1

Hazelcast Cloud

Kubernetes

AWS

Azure

Google Cloud Platform

Pivotal Cloud Foundry

Docker

Apache jclouds

Consul

etcd

Eureka

Heroku

Zookeeper

INFRASTRUCTURE

C++ Client 3.12.1

Smart Client

Unisocket Client

Lifecycle Service

HeartBeat

Backup Acknowledgement to Client

Diagnostics

SERIALIZATION

C++ Client 3.12.1

DataSerializable

N/A

IdentifiedDataSerializable

Portable Serialization

Portable Serialization

Global Serializers

CLIENT CONNECTIVITY

C++ Client 3.12.1

Connection Strategy

Connection Retry

Blue/Green Deployments and Disaster Recovery

Support for Clients & Languages

Jump into the discussion on our groups.

Join Us On Slack