All Projects → visiologyofficial → vixtract

visiologyofficial / vixtract

Licence: BSD-3-Clause license
www.vixtract.ru

Programming Languages

HTML
75241 projects
python
139335 projects - #7 most used programming language
Jupyter Notebook
11667 projects
shell
77523 projects
javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to vixtract

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 (-50%)
Mutual labels:  etl, etl-framework, etl-pipeline, etl-automation
redis-connect-dist
Real-Time Event Streaming & Change Data Capture
Stars: ✭ 21 (-47.5%)
Mutual labels:  etl, etl-framework, etl-pipeline, etl-automation
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 (-2.5%)
Mutual labels:  etl, etl-framework, etl-pipeline, etl-components
BETL-old
BETL. Meta data driven ETL generation using T-SQL
Stars: ✭ 17 (-57.5%)
Mutual labels:  etl, etl-framework, etl-automation
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 (-5%)
Mutual labels:  etl, etl-framework, etl-pipeline
csvplus
csvplus extends the standard Go encoding/csv package with fluent interface, lazy stream operations, indices and joins.
Stars: ✭ 67 (+67.5%)
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 (+1430%)
Mutual labels:  etl, etl-framework, etl-pipeline
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 (-40%)
Mutual labels:  etl, etl-framework, etl-pipeline
qwery
A SQL-like language for performing ETL transformations.
Stars: ✭ 28 (-30%)
Mutual labels:  etl, etl-framework
Metorikku
A simplified, lightweight ETL Framework based on Apache Spark
Stars: ✭ 361 (+802.5%)
Mutual labels:  etl, etl-framework
Choetl
ETL Framework for .NET / c# (Parser / Writer for CSV, Flat, Xml, JSON, Key-Value, Parquet, Yaml, Avro formatted files)
Stars: ✭ 372 (+830%)
Mutual labels:  etl, etl-framework
kafka-connect-datagen
A Kafka Connect source connector that generates data for tests
Stars: ✭ 27 (-32.5%)
Mutual labels:  etl, etl-pipeline
Pyetl
python ETL framework
Stars: ✭ 33 (-17.5%)
Mutual labels:  etl, etl-framework
Bender
Bender - Serverless ETL Framework
Stars: ✭ 171 (+327.5%)
Mutual labels:  etl, etl-framework
DataBridge.NET
Configurable data bridge for permanent ETL jobs
Stars: ✭ 16 (-60%)
Mutual labels:  etl, etl-framework
Getting Started
This repository is a getting started guide to Singer.
Stars: ✭ 734 (+1735%)
Mutual labels:  etl, etl-framework
cubetl
CubETL - Framework and tool for data ETL (Extract, Transform and Load) in Python (PERSONAL PROJECT / SELDOM MAINTAINED)
Stars: ✭ 21 (-47.5%)
Mutual labels:  etl, etl-framework
Etlalchemy
Extract, Transform, Load: Any SQL Database in 4 lines of Code.
Stars: ✭ 460 (+1050%)
Mutual labels:  etl, etl-framework
Stetl
Stetl, Streaming ETL, is a lightweight geospatial processing and ETL framework written in Python.
Stars: ✭ 64 (+60%)
Mutual labels:  etl, etl-framework
Transformalize
Configurable Extract, Transform, and Load
Stars: ✭ 125 (+212.5%)
Mutual labels:  etl, etl-framework

ViXtract

Удобный ETL инструмент с открытым исходным кодом на основе Python.

ViXtract – это сборка на основе популярных открытых инструментов обработки данных, которая помогает аналитикам BI самостоятельно выгружать, очищать и преобразовывать данные без помощи ETL разработчиков. Главные принципы ViXtract – удобство работы аналитика и неограниченные возможности развития. В основе ViXtract лежат три ключевых компонента: Jupyter - интерактивная среда для работы с Python, PETL – простая в освоении библиотека преобразования данных, Cronicle - планировщик с функциями мониторинга и оркестрации задач.

Сайт проекта - https://www.vixtract.ru

Установка

Для установки ViXtract на Ubuntu 18.04 LTS используйте команду ниже:

sudo apt-get update && sudo apt-get install git -y && git clone https://github.com/visiologyofficial/vixtract && cd vixtract && sudo chmod +x *.sh && sudo ./install.sh

Для установки на других ОС нужно вносить изменения в скрипт или производить установку вручную. Также есть форк с обновленными компонентами для установки на Debian 11 https://github.com/svnikolaev/vixtract

Если планируется использовать ViXtract с публичным доменом и HTTPS, рекомендуется до установки ViXtract настроить домен на DNS-сервере. В этом случае при установке ViXtract можно будет сразу настроить получение SSL сертификата через Letsencypt.

Установщик запросит следующую информацию:

  1. Домен/hostname. Можно оставить пустым для доступа к серверу по IP, но в этом случае автоматическая настройка HTTPS будет недоступна.
  2. Согласие на автоматическую настройку HTTPS
  3. Имя пользователя и пароль для первой учетной записи. С помощью этой учетной записи можно будет сразу приступить к работе с ViXtract.
  4. Пароль для учетной записи администратора Cronicle ('admin')
  5. Пароль для учетной записи 'etl' в предустановленной PostgreSQL

После установки ViXtract будет доступен в браузере по адресу http(s)://<домен или IP>

При необходимости можно запускать скрипт install.sh многократно.

Начало работы

Рекомендуем начать знакомство с ViXtract в следующем порядке:

  1. Посмотрите вводный ролик по ViXtract в разделе документация на сайте https://www.vixtract.ru
  2. Установите ViXtract или зарегистрируйтесь на публичном тестовом сервере
  3. Пройдите вводные уроки по ViXtract в формате Jupyter Notebook - папка 'tutorials'
  4. Ознакомьтесь со вводным курсом по Python, например "Python за 15 минут" https://www.youtube.com/watch?v=h8ajN8_XiBk
  5. Возьмите свою реальную задачу и попробуйте ее реализовать. При этом вам будут полезны:
    1. Примеры реализации коннекторов - папка 'examples'
    2. Чат сообщества ViXtract - https://t.me/vixtract_ru
    3. Документация PETL - https://petl.readthedocs.io/en/stable/

Настройка ViXtract

Для настройки ViXtract после установки предусмотрен скрипт 'conf.sh'. Доступны следующие ключи:

'-u' Добавление учетной записи

'-ssl' Включение/выключение HTTPS

'-h' Настройка домена/hostname

'-s' Настройка монтирования облачного хранилища по протоколу S3

'-p' Настройка пароля учетной записи 'etl' в PostgreSQL

'-a' Настройка пароля учетной записи 'admin' в Chronicle

Технические подробности состава сборки

При установке выполняются следующие действия:

  1. Установлен JupyterHub с интерфейсом JupyterLab
  2. Установлен менеджер окружений Anaconda
  3. Созданы два окружения - dev и prod, а также настроены соответствующие ядра в Jupyter
  4. В оба окружения установлен базовый набор пакетов, включая PETL и вспомогательные библиотек
  5. Установлен планировшик Cronicle и модуль исполнения papermill
  6. Установлен Nginx
  7. Установлен S3FS для монтирования облачного хранилища по протоколу S3
  8. Установлен и настроен PostgreSQL
  9. Создана база etl в PostgreSQL
  10. Сделаны дополнительные настройки, интегрирующие все компоненты сборки, в том числе настройки прав, systemd, nginx и др.

Известные проблемы

  1. В текущей версии ViXtract не поддерживает установку в окружении за корпоративным прокси с авторизацией. В таком случае необходимо до установки вручную прописать конфигурацию прокси для npm, anaconda, wget, причем для wget также может потребоваться отключение проверки сертификата 'check_certificate = off'
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].