This readme describes installing, building and running Kafka Algebra and it dependencies
- Install Secondo RDBS
The installation of Secondo in documented on http://dna.fernuni-hagen.de/Secondo.html/index.html
For our work we used the instructions in /General/User Manual
(http://dna.fernuni-hagen.de/Secondo.html/files/Documentation/General/SecondoManual.pdf)
- Kafka Algebra depends on some external libraries which should be installed before building it
-- Installing librdkafka - the Apache Kafka C/C++ client library
https://github.com/edenhill/librdkafka
sudo apt install librdkafka-dev
-- Installing WebSocket libraries
ssl and boost are required, the easiest way to install all needed:
sudo apt-get install libcpprest-dev
- Enable Algebra
activate the algebra by modifying the file makefile.algebras in Secondo's main directory.
Insert the 3 lines:
ALGEBRA_DIRS += Kafka
ALGEBRAS += KafkaAlgebra
ALGEBRA_DEPS += rdkafka++ ssl crypto boost_system
After that, insert a new entry in the file Algebras/Management/AlgebraList.i.cfg
e.g: ALGEBRA_INCLUDE(160,KafkaAlgebra)
- Running Kafka cluster on local machine
There are two possibilities of installing Kafka manual and using a script/operator.
We definitely recommend install Kafka manually.
-- Installing Kafka manually
Download and install Kafka as described on official site - https://kafka.apache.org/quickstart
-- Running Kafka manually
Running the zookeeper and Kafka server is also documented there, as example:
cd /home/gstancul/work/kafka/kafka_2.12-2.2.0/
bin/zookeeper-server-start.sh config/zookeeper.properties
bin/kafka-server-start.sh config/server.properties
-- Installing by script/operator
Run installLocalKafka in Secondo: query installLocalKafka();
Or run the script: ${SECONDO_BUILD_DIR}/Algebras/Kafka/scripts/installKafka.sh
-- Running by script/operator
Use the Secondo operators startLocalKafka, stopLocalKafka, statusLocalKafka
or the script ${SECONDO_BUILD_DIR}/Algebras/Kafka/scripts/kafkaStartup.sh
This script can work also with manually installed Kafka if KAFKA_HOME variable is set to
installation folder.
Example:
cd ${SECONDO_BUILD_DIR}
export KAFKA_HOME=/home/grisha/work/kafka/kafka_2.12-2.2.0
bin/Scripts/kafkaStartup.sh start
bin/Scripts/kafkaStartup.sh status
bin/Scripts/kafkaStartup.sh stop