All Projects → redis-field-engineering → redis-connect-dist

redis-field-engineering / redis-connect-dist

Licence: other
Real-Time Event Streaming & Change Data Capture

Projects that are alternatives of or similar to redis-connect-dist

DIRECT
DIRECT, the Data Integration Run-time Execution Control Tool, is a data logistics framework that can be used to monitor, log, audit and control data integration / ETL processes.
Stars: ✭ 20 (-4.76%)
Mutual labels:  etl, etl-framework, etl-pipeline, etl-automation
vixtract
www.vixtract.ru
Stars: ✭ 40 (+90.48%)
Mutual labels:  etl, etl-framework, etl-pipeline, etl-automation
DaFlow
Apache-Spark based Data Flow(ETL) Framework which supports multiple read, write destinations of different types and also support multiple categories of transformation rules.
Stars: ✭ 24 (+14.29%)
Mutual labels:  csv, etl, etl-framework, etl-pipeline
datalake-etl-pipeline
Simplified ETL process in Hadoop using Apache Spark. Has complete ETL pipeline for datalake. SparkSession extensions, DataFrame validation, Column extensions, SQL functions, and DataFrame transformations
Stars: ✭ 39 (+85.71%)
Mutual labels:  etl, etl-framework, etl-pipeline
BETL-old
BETL. Meta data driven ETL generation using T-SQL
Stars: ✭ 17 (-19.05%)
Mutual labels:  etl, etl-framework, etl-automation
qwery
A SQL-like language for performing ETL transformations.
Stars: ✭ 28 (+33.33%)
Mutual labels:  csv, etl, etl-framework
csvplus
csvplus extends the standard Go encoding/csv package with fluent interface, lazy stream operations, indices and joins.
Stars: ✭ 67 (+219.05%)
Mutual labels:  etl, etl-framework, etl-pipeline
hamilton
A scalable general purpose micro-framework for defining dataflows. You can use it to create dataframes, numpy matrices, python objects, ML models, etc.
Stars: ✭ 612 (+2814.29%)
Mutual labels:  etl, etl-framework, etl-pipeline
cubetl
CubETL - Framework and tool for data ETL (Extract, Transform and Load) in Python (PERSONAL PROJECT / SELDOM MAINTAINED)
Stars: ✭ 21 (+0%)
Mutual labels:  csv, etl, etl-framework
etlflow
EtlFlow is an ecosystem of functional libraries in Scala based on ZIO for writing various different tasks, jobs on GCP and AWS.
Stars: ✭ 38 (+80.95%)
Mutual labels:  etl, etl-framework, etl-pipeline
Choetl
ETL Framework for .NET / c# (Parser / Writer for CSV, Flat, Xml, JSON, Key-Value, Parquet, Yaml, Avro formatted files)
Stars: ✭ 372 (+1671.43%)
Mutual labels:  csv, etl, etl-framework
Pyetl
python ETL framework
Stars: ✭ 33 (+57.14%)
Mutual labels:  csv, etl, etl-framework
seatunnel-example
seatunnel plugin developing examples.
Stars: ✭ 27 (+28.57%)
Mutual labels:  etl-framework, etl-pipeline
csv-cruncher
Treats CSV and JSON files as SQL tables, and exports SQL SELECTs back to CSV or JSON.
Stars: ✭ 32 (+52.38%)
Mutual labels:  etl, etl-automation
FlowMaster
ETL flow framework based on Yaml configs in Python
Stars: ✭ 19 (-9.52%)
Mutual labels:  etl, etl-automation
pgcapture
A scalable Netflix DBLog implementation for PostgreSQL
Stars: ✭ 94 (+347.62%)
Mutual labels:  replication, cdc
incubator-eventmesh
EventMesh is a dynamic event-driven application runtime used to decouple the application and backend middleware layer, which supports a wide range of use cases that encompass complex multi-cloud, widely distributed topologies using diverse technology stacks.
Stars: ✭ 939 (+4371.43%)
Mutual labels:  event-sourcing, event-streaming
link-move
A model-driven dynamically-configurable framework to acquire data from external sources and save it to your database.
Stars: ✭ 32 (+52.38%)
Mutual labels:  etl, etl-framework
OpenKettleWebUI
一款基于kettle的数据处理web调度控制平台,支持文档资源库和数据库资源库,通过web平台控制kettle数据转换,可作为中间件集成到现有系统中
Stars: ✭ 138 (+557.14%)
Mutual labels:  etl, etl-framework
dogETL
A lib to transform data from jdbc,csv,json to ecah other.
Stars: ✭ 15 (-28.57%)
Mutual labels:  csv, etl

Redis Connect

Redis Connect 🚀 is a distributed platform that enables real-time event streaming, transformation, and propagation of changed-data events from heterogeneous data platforms to multi-model Redis Enterprise and Redis Stack.

No Code Seamless Integration Multi-Tenancy Linear-Scalability High-Availability Support

Redis Connect Source and Sinks

Table of Contents

Core Capabilities

Cloud-Native Architecture
Redis Connect has a cloud-native and shared-nothing architecture which allows any node to operate stand-alone or as a cluster member. Its platform-agnostic and lightweight design requires minimal infrastructure and avoids complex dependencies on 3rd-party platforms. All you need is Redis Enterprise.
Redis Connect Architecture
 
Multi-Tenancy | Partitioning | Linear Scalability
Redis Connect can manage multi-tenant (jobs) data replication pipelines end-to-end within a single cluster node. Jobs support a variety of different source databases which can be collocated without becoming noisy neighbors. Streaming and initial load jobs can be partitioned for linear scalability across a single or multiple cluster nodes.
 
High-Availability | Recovery
Redis Connect jobs update their checkpoint upon each committed changed-data event within a transactional scope. In the occurrence of node failure, or network split, a job would failover to another node and seamlessly begin replication from the last committed checkpoint. Data would not be lost, and order would be maintained. Redis Connect is supported on Kubernetes environments including OpenShift.
 
Custom Transformations
Redis Connect Jobs support user-defined business logic simply by adding a JAR to the /extlib directory. Users can create custom workflows that include user-defined stages for proprietary business rules, custom transformations, de-tokenization, and more. Users can also extend the supported list of Target Sinks.
 
REST API | CLI | Swagger UI
Redis Connect is entirely data-driven and relies on Redis Enterprise as its metadata store. Users can configure, start, stop, migrate, and restart jobs via its built-in REST API and/or interactive CLI. Redis Connect also exposes a Swagger UI to simplify endpoint discovery and operational experience.
 
Enterprise-Grade Security
Redis Connect jobs are stateless so changed-data events are always in-transit. Redis Connect benefits from Redis Enterprise’s enterprise-grade security capabilities including RBAC, TLS, and more. Credentials, secrets, and trust-store passwords are never stored within Redis Connect however can be dynamically rotated with minimal disruption to the replication pipeline. Vault integration is supported.

Requirements

Minimum Production Hardware Requirements

  • 1GB of RAM
  • 4 CPU cores
  • 20GB of disk space
  • 1G Network

Runtime Requirements

Quick Start

Download

Download latest release for Linux or Windows and unarchive redis-connect-<version>.<build>.[tar.gz|zip] archive
Docker image can be found at DockerHub

Linux:

tar vxf <tarfile name>

Windows:

unzip <zipfile name>

The following subdirectories will be extracted under /redis-connect -
bin – Startup scripts
lib – Dependencies
config – Credentials property files, jobmanager.properties, and job-config (JSON) examples
extlib – Custom/External dependencies e.g. custom stage, source-database drivers, etc.

Getting Started

Review options by running Redis Connect startup script
Linux:

redis-connect/bin$ ./redisconnect.sh    
-------------------------------
Redis Connect startup script.
*******************************
Please ensure that the value of REDISCONNECT_JOB_MANAGER_CONFIG_PATH points to the correct jobmanager.properties in /home/viragtripathi/qa/vm/redis-connect/bin/redisconnect.conf before executing any of the options below
Check the value of redis.connection.url and credentials.file.path in jobmanager.properties e.g.
redis.connection.url=redis://redis-19836.c9.us-east-1-2.ec2.cloud.redislabs.com:19836
credentials.file.path=/var/secrets/redis
*******************************
Usage: [-h|cli|start]
options:
-h: Print this help message and exit.
cli: init Redis Connect CLI
start: init Redis Connect Instance (Cluster Member)
-------------------------------

Windows:

redis-connect\bin> redisconnect.bat
Prerequisite Configuration
Update credentials.file.path and redis.connection.url within /config/jobmanager.properties
Example - jobmanager.properties

Start Redis Connect Instance
Linux:

redis-connect/bin$ ./redisconnect.sh start

Windows:

redis-connect\bin> redisconnect.bat start

Open browser to access Swagger UI - http://localhost:8282/swagger-ui/index.html
For quick start, use 'cdc_job' as jobName

Create Job Configuration - /connect/api/vi/job/config/{jobName}
For quick start, use a sample job configuration: PostgreSQL, Oracle, SQL Server, MySQL, DB2 and VERTICA

Prerequisite Configuration
Update credentialsFilePath, databaseURL, database.dbname, database.hostname, database.port, schemaAndTableName, and columns within sample job configuration for source and target, where applicable

Start Job - /connect/api/vi/job/transition/start/{jobName}/{jobType}
For quick start, use 'stream' as jobType

Confirm Job Claim - /connect/api/vi/jobs/claim/{jobStatus}
For quick start, use 'all' as jobStatus

Insert some records to the source and confirm they have arrived in Redis. Enjoy!

End-to-End Dockerized Demos

Video Tutorials

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].