1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/eliyanfei-CarpoSpark

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 15:34 1ac8ee1

CarpoSpark

Создание DAG-процесса Spark на основе конфигурации из JSON. Больше не нужно разрабатывать разные программы Spark в соответствии с разными требованиями.

В настоящее время поддерживаются следующие операции:

  • указание каталога файлов HDFS;
  • фильтрация строк;
  • фильтрация столбцов;
  • операция Join;
  • операция Union;
  • групповая агрегация (max, min, count, sum, avg).

Можно настроить выходной каталог и формат файла.

Формат:

{
  "id": "spark_00002",
  "name": "Объединение с последующей фильтрацией",
  "size": 10,
  "postfix": "test",
  "suffix": "",
  "extension": "csv",
  "format": "",
  "output": "/data/spark/testout",
  "split": "|",
  "nodes": {
    "node_11": {
      "input": "/data/grid/*.csv",
      "type": "input"
    },
    "node_12": {
      "type": "filter_col",
      "split": ",",
      "fields": {
        "time": {
          "name": "time",
          "text": "time",
          "idx": "0"
        },
        "type": {
          "name": "type",
          "text": "type",
          "idx": "1"
        }
      }
    },
    "node_13": {
      "type": "map",
      "split": ",",
      "key_col": -1
    },
    "node_21": {
      "input": "/data/num/*.csv",
      "type": "input"
    },
    "node_22": {
      "type": "filter_col",
      "split": ",",
      "fields": {
        "time": {
          "name": "time",
          "text": "time",
          "idx": "0"
        },
        "type": {
          "name": "type",
          "text": "type",
          "idx": "1"
        }
      }
    },
    "node_23": {
      "type": "map",
      "split": ",",
      "key_col": -1
    },
    "node_8": {
      "type": "distinct"
    },
    "node_6": {
      "type": "output",
      "time_col": "0",
      "time_format1": "yyyyMMdd",
      "time_format2": "yyyy",
      "split": ",",
      "fields": {
        "time": {
          "name": "time",
          "text": "time",
          "idx": "0"
        },
        "type": {
          "name": "type",
          "text": "type",
          "idx": "1"
        }
      }
    },
    "node_1": {
      "type": "union"
    }
  },
  "lines": {
    "line_4": {
      "inputs": "node_21",
      "outputs": "node_22"
    },
    "line_5": {
      "inputs": "node_22",
      "outputs": "node_23"
    },
    "line_6": {
      "inputs": "node_23",
      "outputs": "node_1"
    },
    "line_1": {
      "inputs": "node_11",
      "outputs": "node_12"
    },
    "line_2": {
      "inputs": "node_12",
      "outputs": "node_13"
    },
    "line_3": {
      "inputs": "node_13",
      "outputs": "node_1"
    },
    "line_7": {
      "inputs": "node_1",
      "outputs": "node_8"
    },
    "line_8": {
      "inputs": "node_8",
      "outputs": "node_6"
    }
  }
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/eliyanfei-CarpoSpark.git
git@api.gitlife.ru:oschina-mirror/eliyanfei-CarpoSpark.git
oschina-mirror
eliyanfei-CarpoSpark
eliyanfei-CarpoSpark
master