Интеграция Kerbenous kafka и Acache pinot

Я пытаюсь интегрировать Kerbonous Kafka и apache pinot.

У меня есть некоторые данные в моей теме, и я хочу загрузить их в свою таблицу Пино в реальном времени. Я завершил этот процесс с помощью пользовательского интерфейса, где в пользовательском интерфейсе Pinot мне нужно добавить одну схему и одну таблицу в реальном времени, а затем передать список брокеров Kafka и имя темы и его работу, как ожидалось. Теперь то же самое, что я делаю на сервере через командную строку, где я передаю схему для создания таблиц.

Я использую следующие шаги.

  1. Создайте одну тему Kafka.
  2. Напишите какие-то события в теме Кафки.

Теперь я указал свой сервер Pinot и создал два файла.

  1. TableSchema.json
  2. TableConfig.Json
    • Расположение файла TableSchema.json: home / username / apache-pinot-incubating-0.7.1 / apache-pinot-incubating-0.7.1-bin / examples / stream / airlinesStats / TableSchema.json
    • Расположение файла TableConfig.Json: home / username / apache-pinot-incubating-0.7.1 / apache-pinot-incubating-0.7.1-bin / examples / stream / airlinesStats / TableConfig.json

После этого в другом терминале Pinot я выполняю команду ниже

           bin/pinot-admin.sh AddTable -schemaFile home/username/apache-pinot-incubating-
     0.7.1/apache-pinot-incubating-0.7.1-bin/examples/stream/airlineStats/TableSchema.json 
     -tableConfigFile home/username/apache-pinot-incubating-0.7.1/apache-pinot-incubating-0.7.1-bin/
      examples/stream/airlineStats/TableConfig.json -exec

Содержимое файла TableSchema.json:

          {
    "schemaName": "transcript",
    "dimensionFieldSpecs": [
        {
    "name": "studentID",
     "dataType": "INT"
        },
        {
    "name": "firstName",
    "dataType": "STRING"
        },
        {
    "name": "lastName",
    "dataType": "STRING"
        },
        {
    "name": "gender",
    "dataType": "STRING"
        },
        {
    "name": "subject",
    "dataType": "STRING"
        }
    ],
    "metricFieldSpecs": [
        {
    "name": "score",
    "dataType": "FLOAT"
        }
    ],
    "dateTimeFieldSpecs": [{
        "name": "timestampInEpoch",
        "dataType": "LONG",
        "format" : "1:MILLISECONDS:EPOCH",
        "granularity": "1:MILLISECONDS"
    }]
    }

Содержимое файла TableConfig.Json:

          {
    "tableName": "transcript",
    "tableType": "REALTIME",
    "segmentsConfig": {
        "timeColumnName": "timestampInEpoch",
        "timeType": "MILLISECONDS",
     "schemaName": "transcript",
        "replicasPerPartition": "1"
    },
    "tenants": {},
    "tableIndexConfig": {
        "loadMode": "MMAP",
        "streamConfigs": {
    "streamType": "kafka",
    "stream.kafka.consumer.type": "lowlevel",
    "stream.kafka.topic.name": "transcript-topic",
    "stream.kafka.decoder.class.name": "org.apache.pinot.plugin.stream.kafka.KafkaJSONMessageDecoder",
    "stream.kafka.consumer.factory.class.name": "org.apache.pinot.plugin.stream.kafka20.KafkaConsumerFactory",
    "stream.kafka.broker.list": "localhost:9876",
    "realtime.segment.flush.threshold.size": "0",
    "realtime.segment.flush.threshold.time": "24h",
    "realtime.segment.flush.desired.size": "50M",
    "stream.kafka.consumer.prop.auto.offset.reset": "smallest"
        }
    },
    "metadata": {
        "customConfigs": {}
    }
    }

Мои выписки по теме данных.

          {"studentID":205,"firstName":"Natalie","lastName":"Jones","gender":"Female","subject":"Maths","score":3.8,"timestampInEpoch":1571900400000}
    {"studentID":205,"firstName":"Natalie","lastName":"Jones","gender":"Female","subject":"History","score":3.5,"timestampInEpoch":1571900400000}
    {"studentID":207,"firstName":"Bob","lastName":"Lewis","gender":"Male","subject":"Maths","score":3.2,"timestampInEpoch":1571900400000}
    {"studentID":207,"firstName":"Bob","lastName":"Lewis","gender":"Male","subject":"Chemistry","score":3.6,"timestampInEpoch":1572418800000}
    {"studentID":209,"firstName":"Jane","lastName":"Doe","gender":"Female","subject":"Geography","score":3.8,"timestampInEpoch":1572505200000}
    {"studentID":209,"firstName":"Jane","lastName":"Doe","gender":"Female","subject":"English","score":3.5,"timestampInEpoch":1572505200000}
    {"studentID":209,"firstName":"Jane","lastName":"Doe","gender":"Female","subject":"Maths","score":3.2,"timestampInEpoch":1572678000000}
    {"studentID":209,"firstName":"Jane","lastName":"Doe","gender":"Female","subject":"Physics","score":3.6,"timestampInEpoch":1572678000000}
    {"studentID":211,"firstName":"John","lastName":"Doe","gender":"Male","subject":"Maths","score":3.8,"timestampInEpoch":1572678000000}
    {"studentID":211,"firstName":"John","lastName":"Doe","gender":"Male","subject":"English","score":3.5,"timestampInEpoch":1572678000000}
    {"studentID":211,"firstName":"John","lastName":"Doe","gender":"Male","subject":"History","score":3.2,"timestampInEpoch":1572854400000}
    {"studentID":212,"firstName":"Nick","lastName":"Young","gender":"Male","subject":"History","score":3.6,"timestampInEpoch":1572854400000}

До этого процесса все работает без проблем. но я не могу понять, как мне реализовать то же самое с kerberos kafka вместо Kafka. Т.е. как и где мне обновить настройку аутентификации SASL PLAIN.

0 ответов

Другие вопросы по тегам