From 1e22791dd6175b9e9bb1f3347f7a2eae0149e7da Mon Sep 17 00:00:00 2001 From: Vojtech Juranek Date: Thu, 14 Sep 2023 10:21:19 +0200 Subject: [PATCH 1/4] Add k-mean clustring with Flink and Spark blog post --- ...023-09-22-flink-spark-online-learning.adoc | 530 ++++++++++++++++++ .../flink_dag.png | Bin 0 -> 102095 bytes .../iris_versicolor.jpg | Bin 0 -> 26380 bytes .../postgres_to_flink.png | Bin 0 -> 107810 bytes .../postgres_to_spark.png | Bin 0 -> 76292 bytes 5 files changed, 530 insertions(+) create mode 100644 _posts/2023-09-22-flink-spark-online-learning.adoc create mode 100644 assets/images/2023-09-15-flink-spark-online-learning/flink_dag.png create mode 100644 assets/images/2023-09-15-flink-spark-online-learning/iris_versicolor.jpg create mode 100644 assets/images/2023-09-15-flink-spark-online-learning/postgres_to_flink.png create mode 100644 assets/images/2023-09-15-flink-spark-online-learning/postgres_to_spark.png diff --git a/_posts/2023-09-22-flink-spark-online-learning.adoc b/_posts/2023-09-22-flink-spark-online-learning.adoc new file mode 100644 index 00000000000..8854efd7f58 --- /dev/null +++ b/_posts/2023-09-22-flink-spark-online-learning.adoc @@ -0,0 +1,530 @@ +--- +layout: post +title: Online machine learning with the data streams from the database +date: 2023-09-15 10:20:00 -0100 +tags: [ machine-learning, flink, spark, online-learning, examples, apache-kafka ] +featured: true +author: vjuranek +--- + +In https://debezium.io/blog/2023/05/02/tensorflow-mnist-classification/[the previous blog post], we have shown how to leverage Debezium to train neural-network model with the existing data from the database and use this pre-trained model to classify images newly stored into the database. +In this blog post we will move it one step further - we will use Debezium to create multiple data streams from the database and use one of the streams for continuous learning and improving of our model and the second one for making predictions on the data. +This approach, when the model is constantly improved or adjusted to recent data samples is known as https://en.wikipedia.org/wiki/Online_machine_learning[online machine learning]. +Online learning is not suitable for every use case and implementing an online variant of a given type of algorithm may be challenging or even not possible. +However, in situations where online learning is possible, it becomes a very powerful tool not only as it allows to react to the changes in the data in real time, but also allows to avoid the need to re-train and re-deploy new models, thus saving the hardware and operational costs. +As the streams of data become more and more common, e.g. with the advent of IoT, we can expect online learning to become more and more popular. +In use-cases where it's possible to use it, it's usually a perfect fit for analyzing streaming data. + +++++++ + +As mentioned in the previous blog, our goal here is not to build the best possible model for a given use-case, but to investigate how we can build a complete pipeline from inserting the data into the database, through delivering it to the model and using it for model training and predictions. +To keep things simple, we will use another well known data sample, which is often used in ML tutorials. +We will explore how to classify various species of the Iris flower using an online variant of https://en.wikipedia.org/wiki/K-means_clustering[k-mean clustering algorithm]. +For processing the data streams we use https://flink.apache.org/[Apache Flink] and https://spark.apache.org/[Apache Spark]. +Both these frameworks are very popular data processing frameworks and both include a machine learning library, which, besides others, contains implementation of online k-means algorithms. +Thus, we can focus on building a complete pipeline for delivering the data from the database into a given model and processing it in real time and don't have to deal with implementation details of the algorithm itself. + +All the code mentioned later in this blog post is available as a Debezium example in https://TBD[Debezium example repository], with all other useful stuff, like Docker composes and step-by-step instructions in the README file. + +== Data set preparation + +We will use https://en.wikipedia.org/wiki/Iris_flower_data_set[Iris flower data set]. +Our goal is to determine the Iris species based on a couple of measurements of the Iris flower, namely its sepal length, sepal width, petal length and petal width. + +++++ +
+
+ Iris versicolor +
Iris versicolor, source Wikipedia
+
+
+++++ + + +The data set can be downloaded from various sources. +We can take advantage of the fact that it's available already pre-processed in e.g. https://scikit-learn.org[scikit-learn] toolkit and use it from there. +Each sample row contains a data point (sepal length, sepal width, petal length and petal width) and a label. +Label is number 0, 1 or 2, where 0 stands for Iris setosa, 1 stands for Iris versicolor and 2 for Iris virginica. +The data set itself is pretty small - it contains only 150 data points. + +As we will load the data into the database, we will first prepare SQL files, which we will later pass to the database. +We would need to divide the original data sample into three sub-samples - two for training and one testing. +The first training data sample will be used for initial training. +This data sample is intentionally very small to get not very good predictions when we test the model for the first time, so that we can see how the prediction of the model will increase in real time when we feed it with more data. + +You can use the following Python script from the accompanied demo repository for generating all three SQL files. + +``` +$ ./iris2sql.py +``` + +The files are located in `postgres` directory of this demo. +`train1.sql` will be loaded automatically into the Postgres database upon its start. +`test.sql` and `train2.sql` will be loaded manually into the database later on. + +== Classification with Apache Flink + +First let's take a look at how to do online Iris flower classification and learning in Apache Flink. +High level schema of the whole pipeline is depicted on the figure below. + +++++ +
+ Postgres to Flink schema +
+++++ + +We would use Postgres as our source database. +Debezium is deployed as a Kafka Connect source connector, tracks the changes in the database and from newly inserted data creates the streams of data which are sent to Kafka. +These streams are sent by Kafka to Apache Flink, which employs the streaming k-means algorithm for model fitting as well as for the data classification. +The predictions of the model for test data streams are produced as another stream and sent back to Kafka. + +[NOTE] +==== +You can also ingest database changes directly into the Flink without using Kafka. +Ververika's implementation of CDC source connectors embeds the Debezium directly into the Flink. +See Flink CDC connectors https://ververica.github.io/flink-cdc-connectors/[documentation] for more details. +==== + +Our database would contain two tables. +In the first table we will store our training data, while our test data will be stored into the second table. +Therefore there are two streams of data, each corresponding to one table - one data stream for learning and one with data points which need to be classified. +In real applications you can use only one table or, on the contrary, many more tables. +You can even deploy more Debezium connectors and thus combine data from several databases. + +=== Using Debezium and Kafka as a source data stream + +Apache Flink has a very good integration with Kafka. +We can pass the Debezium records as e.g. JSON records. +For creating Flink tables it even has support for Debezium record format, but for streams we need to extract part of the Debezium message which contains the newly stored row of the table. +However, this is very easy as Debezium provides SMT, https://debezium.io/documentation/reference/nightly/transformations/event-flattening.html[extract new record state SMT], which does exactly this. +So the complete Debezium configuration can look like this: + +[source,json] +---- +{ + "name": "iris-connector-flink", + "config": { + "connector.class": "io.debezium.connector.postgresql.PostgresConnector", + "tasks.max": "1", + "database.hostname": "postgres", + "database.port": "5432", + "database.user": "postgres", + "database.password": "postgres", + "database.dbname" : "postgres", + "topic.prefix": "flink", + "table.include.list": "public.iris_.*", + "key.converter": "org.apache.kafka.connect.json.JsonConverter", + "value.converter": "org.apache.kafka.connect.json.JsonConverter", + "transforms": "unwrap", + "transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState" + } +} +---- + +This will capture all the tables in the `public` schema whose name begins with `iris_` prefix. +Corresponding Kafka topics will be `flink.public.iris_train` and `flink.public.iris_test` for training and testing data, respectively. +Incoming stream of data is represented by Flink's `DataStreamSource` class. +As we encode the records as a JSON, it will be a stream of JSON `ObjectNode` objects. +Constructing the source stream is very straightforward: + +[source,java] +---- +KafkaSource train = KafkaSource.builder() + .setBootstrapServers("kafka:9092") + .setTopics("flink.public.iris_train") + .setClientIdPrefix("train") + .setGroupId("dbz") + .setStartingOffsets(OffsetsInitializer.earliest()) + .setDeserializer(KafkaRecordDeserializationSchema.of(new JSONKeyValueDeserializationSchema(false))) + .build(); +DataStreamSource trainStream = env.fromSource(train, WatermarkStrategy.noWatermarks(), "Debezium train"); +---- + +Most of the Flinks operations are done on the `Table` abstraction objects. +Also ML models accept only tables as an input and predictions are produced as tables as well. +Therefore we need to first convert our input stream into a `Table` object. +We will start with transforming our input data stream into a stream of table rows. +We need to define a map function which would return a `Row` object with a vector containing one data point. +As k-means algorithm belongs to https://en.wikipedia.org/wiki/Unsupervised_learning[unsupervised learning] algorithms, i.e. the model doesn't need corresponding "right answers" for the data points, we can skip the `label` field from the vector: + +[source,java] +---- +private static class RecordMapper implements MapFunction { + @Override + public Row map(ObjectNode node) { + JsonNode payload = node.get("value").get("payload"); + StringBuffer sb = new StringBuffer(); + return Row.of(Vectors.dense( + payload.get("sepal_length").asDouble(), + payload.get("sepal_width").asDouble(), + payload.get("petal_length").asDouble(), + payload.get("petal_width").asDouble())); + } +} +---- + +Various parts of the internal Flink pipeline can run on different worker nodes and therefore we also need to provide type information about the table. +With that, we are ready to create table object: + +[source,java] +---- +StreamTableEnvironment tEnv = StreamTableEnvironment.create(env); +TypeInformation[] types = {DenseVectorTypeInfo.INSTANCE}; +String names[] = {"features"}; +RowTypeInfo typeInfo = new RowTypeInfo(types, names); + +DataStream inputStream = trainStream.map(new RecordMapper()).returns(typeInfo); +Table trainTable = tEnv.fromDataStream(inputStream).as("features"); +---- + +=== Building Flink stream k-means + +Once we have a `Table` object, we are ready to pass it to our model. +So let's create one and pass out train stream to it for continuous model training: + +[source,java] +---- +OnlineKMeans onlineKMeans = new OnlineKMeans() + .setFeaturesCol("features") + .setPredictionCol("prediction") + .setInitialModelData(tEnv.fromDataStream(env.fromElements(1).map(new IrisInitCentroids()))) + .setK(3); +OnlineKMeansModel model = onlineKMeans.fit(trainTable); +---- + +To make the things more simple and straightforward, we set directly the number of desired clusters to 3 instead of finding the optimal number of cluster by digging into the data (using e.g. https://en.wikipedia.org/wiki/Elbow_method_(clustering)[elbow method]). +We also set some initial values for the centers of the clusters instead of using random numbers (Flink provides a convenient method for it - `KMeansModelData.generateRandomModelData()` if you want to try with random centers). + +To obtain the predictions for our test data, we again need to convert our test stream into a table. +The model transforms the table with test data into a table with predictions. +Predictions table can be converted back to a stream and stored e.g. back in the Kafka: + +[source,java] +---- +DataStream testInputStream = testStream.map(new RecordMapper()).returns(typeInfo); +Table testTable = tEnv.fromDataStream(testInputStream).as("features"); +Table outputTable = model.transform(testTable)[0]; + +DataStream resultStream = tEnv.toChangelogStream(outputTable); +resultStream.map(new ResultMapper()).sinkTo(kafkaSink); +---- + +Now we are ready to build our application and almost ready to submit it into the Flink for execution. +To be completely ready to submit our application to Flink, we need to create the required Kafka topic first. +Topics can be empty, but Flink requires them to exist. +As we include a small set of data into the training table of the Postgres when the database starts, Debezium will create a corresponding topic once the Debezium Postgres connector is registered in Kafka Connect. +However, as the table with test data doesn't exists yet, we need to create the topic in Kafka manually: + +[source,bash] +---- +$ docker compose -f docker-compose-flink.yaml exec kafka /kafka/bin/kafka-topics.sh --create --bootstrap-server kafka:9092 --replication-factor 1 --partitions 1 --topic flink.public.iris_test +---- + +Now, we are really ready to submit our application to Flink. +For the complete code, please see corresponding source code in Debezium https://github.com/debezium/debezium-examples[example repository] + +[NOTE] +==== +If you don't use Docker compose provided as part of the source code for this demo, please mind to include https://nightlies.apache.org/flink/flink-ml-docs-master/[Flink ML library] into Flink `lib` folder, as the ML library in not part of default Flink distribution. +==== + +Flink provides a nice UI, which is available on http://localhost:8081/. +There you can check, besides other thinks, the status of your jobs and also e.g. job execution plan in a nice graphical representation: + +++++ +
+ Postgres to Flink schema +
+++++ + +=== Evaluating the model + +From the user point of view, all the interaction with our model would happen either by inserting new records into the database or reading Kafka topic with predictions. +As we already created a very small initial training data sample in the database when it started, we can directly check our model predictions by inserting our test data sample into the database: + +[source,bash] +---- +$ psql -h localhost -U postgres -f postgres/iris_test.sql +---- + +This will result in an immediate data stream of test data into Kafka, passing them into our model and sending the prediction back to Kafka’s `iris_predictions` topic. +As the initial model was trained on a very small set of data, predictions are pretty bad and we have actually only 2 clusters so far: + +[source] +---- +[5.4, 3.7, 1.5, 0.2] is classified as 0 +[4.8, 3.4, 1.6, 0.2] is classified as 0 +[7.6, 3.0, 6.6, 2.1] is classified as 2 +[6.4, 2.8, 5.6, 2.2] is classified as 2 +[6.0, 2.7, 5.1, 1.6] is classified as 2 +[5.4, 3.0, 4.5, 1.5] is classified as 2 +[6.7, 3.1, 4.7, 1.5] is classified as 2 +[5.5, 2.4, 3.8, 1.1] is classified as 2 +[6.1, 2.8, 4.7, 1.2] is classified as 2 +[4.3, 3.0, 1.1, 0.1] is classified as 0 +[5.8, 2.7, 3.9, 1.2] is classified as 2 +---- + +In our case the correct answer should be: + +[source] +---- +[5.4, 3.7, 1.5, 0.2] is 0 +[4.8, 3.4, 1.6, 0.2] is 0 +[7.6, 3.0, 6.6, 2.1] is 2 +[6.4, 2.8, 5.6, 2.2] is 2 +[6.0, 2.7, 5.1, 1.6] is 1 +[5.4, 3.0, 4.5, 1.5] is 1 +[6.7, 3.1, 4.7, 1.5] is 1 +[5.5, 2.4, 3.8, 1.1] is 1 +[6.1, 2.8, 4.7, 1.2] is 1 +[4.3, 3.0, 1.1, 0.1] is 0 +[5.8, 2.7, 3.9, 1.2] is 1 +---- + +so we have only 5 data points of 11 correctly classified. +This is not very good, but this is expected, as our initial training sample was very small. +On the other hand, as we didn't start with completely random clusters, our predictions are also not completely wrong. + +Let's see how the things change when we supply more training data into the model: + +[source,bash] +---- +$ psql -h localhost -U postgres -f postgres/iris_train2.sql +---- + +To see the updated predictions, we insert the same test data sample again into the database: + +[source,bash] +---- +$ psql -h localhost -U postgres -f postgres/iris_test.sql +---- + +Now we get + +[source] +---- +[5.4, 3.7, 1.5, 0.2] is classified as 0 +[4.8, 3.4, 1.6, 0.2] is classified as 0 +[7.6, 3.0, 6.6, 2.1] is classified as 2 +[6.4, 2.8, 5.6, 2.2] is classified as 2 +[6.0, 2.7, 5.1, 1.6] is classified as 2 +[5.4, 3.0, 4.5, 1.5] is classified as 2 +[6.7, 3.1, 4.7, 1.5] is classified as 2 +[5.5, 2.4, 3.8, 1.1] is classified as 1 +[6.1, 2.8, 4.7, 1.2] is classified as 2 +[4.3, 3.0, 1.1, 0.1] is classified as 0 +[5.8, 2.7, 3.9, 1.2] is classified as 1 +---- + +which is much better as now we have all three categories present and have correctly classified 7 out of 11 data points. + +As the whole data sample is pretty small, for further model training we can re-use our second train data sample: + +[source,bash] +---- +$ psql -h localhost -U postgres -f postgres/iris_train2.sql +$ psql -h localhost -U postgres -f postgres/iris_test.sql +---- + +resulting into + +[source] +---- +[5.4, 3.7, 1.5, 0.2] is classified as 0 +[4.8, 3.4, 1.6, 0.2] is classified as 0 +[7.6, 3.0, 6.6, 2.1] is classified as 2 +[6.4, 2.8, 5.6, 2.2] is classified as 2 +[6.0, 2.7, 5.1, 1.6] is classified as 2 +[5.4, 3.0, 4.5, 1.5] is classified as 1 +[6.7, 3.1, 4.7, 1.5] is classified as 2 +[5.5, 2.4, 3.8, 1.1] is classified as 1 +[6.1, 2.8, 4.7, 1.2] is classified as 1 +[4.3, 3.0, 1.1, 0.1] is classified as 0 +[5.8, 2.7, 3.9, 1.2] is classified as 1 +---- + +So we end up with 9 data points correctly classified out of 11 data points. +This is still not an excellent result, but as mentioned at the beginning, we don't aim for the best results. +The main motivation here is to show the whole pipeline and demonstrate that the model improves the predictions immediately once the new data points are stored in the database, without the need to re-train and re-deploy the model. + +== Classification with Apache Spark + +Apache Spark is, from the user point of view, very similar to Flink in many regards and thus also implementation would be quite similar. +Not to make this blog post too long, this chapter would be a little bit more brief. + + +Spark has two streaming models. +Older https://spark.apache.org/docs/latest/streaming-programming-guide.html[DStreams], which is now in legacy state, and more recent https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html[structured streaming], which is recommended to use. +However, as the streaming k-means algorithm contained in Spark ML library works only with the DStreams, for the sake of simplicity DStreams are used in this example. +Better approach would be to use structured streaming and implement the streaming k-means ourselves. +This is however outside the scope and main goal of this blog post. + + +Spark supports streaming from Kafka using DStreams. +However, writing DStreams back to Kafka is not supported. +It can be done, but it's not very straightforward. + +[NOTE] +==== +Structured streaming supports both directions, reading as well as writing to Kafka, in a very easy way. +==== + +Again, for the sake of simplicity, we skip the final part and will write the predictions only to the console instead of writing them back to Kafka. +The big picture of our pipelines thus looks like this: + +++++ +
+ Postgres to Spark schema +
+++++ + +=== Defining the data streams + +Similarly to Flink, creating Spark streams from Kafka streams is straightforward and most of the parameters are self-explanatory: + +[source, java] +---- +Set trainTopic = new HashSet<>(Arrays.asList("spark.public.iris_train")); +Set testTopic = new HashSet<>(Arrays.asList("spark.public.iris_test")); +Map kafkaParams = new HashMap<>(); +kafkaParams.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, "kafka:9092"); +kafkaParams.put(ConsumerConfig.GROUP_ID_CONFIG, "dbz"); +kafkaParams.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest"); +kafkaParams.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class); +kafkaParams.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class); + +JavaInputDStream> trainStream = KafkaUtils.createDirectStream( + jssc, + LocationStrategies.PreferConsistent(), + ConsumerStrategies.Subscribe(trainTopic, kafkaParams)); +JavaDStream train = trainStream.map(ConsumerRecord::value) + .map(SparkKafkaStreamingKmeans::toLabeledPointString) + .map(LabeledPoint::parse); +---- + +On the last line we transform Kafka stream to a stream of labeled points, which Spark ML library uses for working with its ML models. +Labeled points are expected as the strings formatted as data point labels separated by the comma from space-separated data point values. +So the map function looks like this: + +[source, java] +---- +private static String toLabeledPointString(String json) throws ParseException { + JSONParser jsonParser = new JSONParser(); + JSONObject o = (JSONObject)jsonParser.parse(json); + return String.format("%s, %s %s %s %s", + o.get("iris_class"), + o.get("sepal_length"), + o.get("sepal_width"), + o.get("petal_length"), + o.get("petal_width")); +} +---- + +Still applies that k-means is an unsupervised algorithm and doesn't use the data point labels. +However, it's convenient to pass them to `LabeledPoint` class as later on we can show them together with model predictions. + +We chain one more map function to parse the string and create a labeled data point from it. +In this case, it's a built-in function of Spark `LabeledPoint`. + +Contrary to Flink, Spark doesn't require Kafka topics to exist in advance, so when deploying the model, we don't have to create the topics and can let Debezium to create them once the table with the test data is created and populated with the data. + +=== Defining and evaluating the model + +Defining the streaming k-means model is very similar to Flink: + +[source, java] +---- +StreamingKMeans model = new StreamingKMeans() + .setK(3) + .setInitialCenters(initCenters, weights); +model.trainOn(train.map(lp -> lp.getFeatures())); +---- + +Also in this case we directly set the number of clusters to 3 and provide the same initial central points of the clusters. +You can also see that we really pass only the data point for the training, not the labels. + +As mentioned above, we can use the labels to show them together with the predictions: + +[source, java] +---- +JavaPairDStream predict = test.mapToPair(lp -> new Tuple2<>(lp.label(), lp.features())); +model.predictOnValues(predict).print(11); +---- + +On the resulting stream with the predictions we print 11 elements of the stream to the console, as this is the size of our test sample. +Similar to Flink, the results after initial training on a very small data sample are bad. +The first number in the tuple is data point label, while the second one is the corresponding prediction done by our model: + +[source] +---- +spark_1 | (0.0,0) +spark_1 | (0.0,0) +spark_1 | (2.0,2) +spark_1 | (2.0,2) +spark_1 | (1.0,0) +spark_1 | (1.0,0) +spark_1 | (1.0,2) +spark_1 | (1.0,0) +spark_1 | (1.0,0) +spark_1 | (0.0,0) +spark_1 | (1.0,0) +---- + +However, when we provide more training data, predictions are much better: + +[source] +---- +spark_1 | (0.0,0) +spark_1 | (0.0,0) +spark_1 | (2.0,2) +spark_1 | (2.0,2) +spark_1 | (1.0,1) +spark_1 | (1.0,1) +spark_1 | (1.0,2) +spark_1 | (1.0,0) +spark_1 | (1.0,1) +spark_1 | (0.0,0) +spark_1 | (1.0,0) +---- + +and if we pass the second training data sample once again for training, our model makes correct predictions for whole test sample: + +[source] +--- +spark_1 | (0.0,0) +spark_1 | (0.0,0) +spark_1 | (2.0,2) +spark_1 | (2.0,2) +spark_1 | (1.0,1) +spark_1 | (1.0,1) +spark_1 | (1.0,1) +spark_1 | (1.0,1) +spark_1 | (1.0,1) +spark_1 | (0.0,0) +spark_1 | (1.0,1) +---- + +[WARNING] +==== +The prediction is a number of the cluster which k-means algorithm created and has no relation to labels in our data sample. +This means that e.g. `(0.0,1)` doesn't have to be a wrong prediction. +It can happen that a data point with label 0 was assigned to the correct cluster, however, Spark internally marked it as a cluster number 1. +This needs to be kept in mind when evaluating the model. +==== + +So, similar to Flink, we get better results as we pass more training data, without the need to re-train and re-deploy the model. +In this case, we get even better results than from the Flink model. + +== Conclusions + +In this blog post we continued with the exploration how Debezium can help to make data ingestion into various ML frameworks seamless. +We have shown how to pass the data from the database to Apache Flink and Apache Spark in the real time as a stream of the data. +In both cases the integration is easy to set up and works very well. +We demonstrated it in an example which allows us to use an online learning algorithm, namely online k-means algorithm, to highlight the power of data streaming. +Online machine learning allows not only to do the predictions on the stream of the data in the real time, but also allows to improve or adjust the model immediately as the new training data arrives. +Model adjustment doesn't require any model re-training on a separate compute cluster and re-deploying a new model, which makes ML-ops much more easy and cost effective. + +As usual, we would appreciate any feedback on this blog post. +We would also appreciate any new ideas on how Debezium, or in general, change data capture, can be helpful in this area as well as your tips, what would be helpful for you to investigate, being it either integration with another ML framework, integration with e.g. ML feature store or anything else. +In case you have any input any this regard, don't hesitate to reach out to us on the http://debezium.zulipchat.com/[Zulip chat], https://groups.google.com/forum/#!forum/debezium[mailing list] or you can transform your ideas directly into http://issues.redhat.com/projects/DBZ/issues[Jira feature requests]. diff --git a/assets/images/2023-09-15-flink-spark-online-learning/flink_dag.png b/assets/images/2023-09-15-flink-spark-online-learning/flink_dag.png new file mode 100644 index 0000000000000000000000000000000000000000..b5fc97cb02a06a5bedf35561eb67d649fd0ad679 GIT binary patch literal 102095 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 _~{>uA&nOKCYo@dXV!CIcf& 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 z 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 Wzh;X!t0)Nf8!jd*S}3CX?tcN0-8~)v literal 0 HcmV?d00001 diff --git a/assets/images/2023-09-15-flink-spark-online-learning/iris_versicolor.jpg b/assets/images/2023-09-15-flink-spark-online-learning/iris_versicolor.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e62de282a54d7789f8db02140576b75cf062dcde GIT binary patch literal 26380 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

<^B(hRnA>2%T0Z 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 Date: Fri, 22 Sep 2023 17:04:51 -0400 Subject: [PATCH 2/4] Grammar edits --- ...023-09-22-flink-spark-online-learning.adoc | 211 +++++++++--------- 1 file changed, 105 insertions(+), 106 deletions(-) diff --git a/_posts/2023-09-22-flink-spark-online-learning.adoc b/_posts/2023-09-22-flink-spark-online-learning.adoc index 8854efd7f58..76e6597dccb 100644 --- a/_posts/2023-09-22-flink-spark-online-learning.adoc +++ b/_posts/2023-09-22-flink-spark-online-learning.adoc @@ -1,35 +1,35 @@ --- layout: post title: Online machine learning with the data streams from the database -date: 2023-09-15 10:20:00 -0100 +date: 2023-09-22 00:00:00 -0000 tags: [ machine-learning, flink, spark, online-learning, examples, apache-kafka ] featured: true author: vjuranek --- In https://debezium.io/blog/2023/05/02/tensorflow-mnist-classification/[the previous blog post], we have shown how to leverage Debezium to train neural-network model with the existing data from the database and use this pre-trained model to classify images newly stored into the database. -In this blog post we will move it one step further - we will use Debezium to create multiple data streams from the database and use one of the streams for continuous learning and improving of our model and the second one for making predictions on the data. -This approach, when the model is constantly improved or adjusted to recent data samples is known as https://en.wikipedia.org/wiki/Online_machine_learning[online machine learning]. -Online learning is not suitable for every use case and implementing an online variant of a given type of algorithm may be challenging or even not possible. -However, in situations where online learning is possible, it becomes a very powerful tool not only as it allows to react to the changes in the data in real time, but also allows to avoid the need to re-train and re-deploy new models, thus saving the hardware and operational costs. +In this blog post, we will move it one step further - we will use Debezium to create multiple data streams from the database and use one of the streams for continuous learning and to improve our model, and the second one for making predictions on the data. +When the model is constantly improved or adjusted to recent data samples, this approach is known as https://en.wikipedia.org/wiki/Online_machine_learning[online machine learning]. +Online learning is only suitable for some use cases, and implementing an online variant of a given algorithm may be challenging or even impossible. +However, in situations where online learning is possible, it becomes a very powerful tool as it allows one to react to the changes in the data in real-time and avoids the need to re-train and re-deploy new models, thus saving the hardware and operational costs. As the streams of data become more and more common, e.g. with the advent of IoT, we can expect online learning to become more and more popular. -In use-cases where it's possible to use it, it's usually a perfect fit for analyzing streaming data. +It's usually a perfect fit for analyzing streaming data in use cases where it's possible. ++++++ -As mentioned in the previous blog, our goal here is not to build the best possible model for a given use-case, but to investigate how we can build a complete pipeline from inserting the data into the database, through delivering it to the model and using it for model training and predictions. -To keep things simple, we will use another well known data sample, which is often used in ML tutorials. +As mentioned in the previous blog, our goal here is not to build the best possible model for a given use case but to investigate how we can build a complete pipeline from inserting the data into the database through delivering it to the model and using it for model training and predictions. +To keep things simple, we will use another well-known data sample often used in ML tutorials. We will explore how to classify various species of the Iris flower using an online variant of https://en.wikipedia.org/wiki/K-means_clustering[k-mean clustering algorithm]. -For processing the data streams we use https://flink.apache.org/[Apache Flink] and https://spark.apache.org/[Apache Spark]. -Both these frameworks are very popular data processing frameworks and both include a machine learning library, which, besides others, contains implementation of online k-means algorithms. -Thus, we can focus on building a complete pipeline for delivering the data from the database into a given model and processing it in real time and don't have to deal with implementation details of the algorithm itself. +We use https://flink.apache.org/[Apache Flink] and https://spark.apache.org/[Apache Spark] to process the data streams. +Both these frameworks are very popular data processing frameworks and include a machine learning library, which, besides others, implements online k-means algorithms. +Thus, we can focus on building a complete pipeline for delivering the data from the database into a given model, processing it in real time, and not having to deal with the algorithm's implementation details. -All the code mentioned later in this blog post is available as a Debezium example in https://TBD[Debezium example repository], with all other useful stuff, like Docker composes and step-by-step instructions in the README file. +All the code mentioned later in this blog post is available as a Debezium example in https://github.com/debezium/debezium-examples/tree/main/machine-learning[Debezium example repository], with all other useful stuff, like Docker composes and step-by-step instructions in the README file. == Data set preparation We will use https://en.wikipedia.org/wiki/Iris_flower_data_set[Iris flower data set]. -Our goal is to determine the Iris species based on a couple of measurements of the Iris flower, namely its sepal length, sepal width, petal length and petal width. +Our goal is to determine the Iris species based on a couple of measurements of the Iris flower: its sepal length, sepal width, petal length, and petal width. ++++

@@ -43,29 +43,29 @@ Our goal is to determine the Iris species based on a couple of measurements of t The data set can be downloaded from various sources. We can take advantage of the fact that it's available already pre-processed in e.g. https://scikit-learn.org[scikit-learn] toolkit and use it from there. -Each sample row contains a data point (sepal length, sepal width, petal length and petal width) and a label. -Label is number 0, 1 or 2, where 0 stands for Iris setosa, 1 stands for Iris versicolor and 2 for Iris virginica. -The data set itself is pretty small - it contains only 150 data points. +Each sample row contains a data point (sepal length, sepal width, petal length, and petal width) and a label. +Label is number 0, 1, or 2, where 0 stands for Iris setosa, 1 stands for Iris versicolor, and 2 for Iris virginica. +The data set is small - containing only 150 data points. -As we will load the data into the database, we will first prepare SQL files, which we will later pass to the database. -We would need to divide the original data sample into three sub-samples - two for training and one testing. -The first training data sample will be used for initial training. -This data sample is intentionally very small to get not very good predictions when we test the model for the first time, so that we can see how the prediction of the model will increase in real time when we feed it with more data. +As we load the data into the database, we will first prepare SQL files, which we will later pass to the database. +We need to divide the original data sample into three sub-samples - two for training and one for testing. +The initial training will use the first training data sample. +This data sample is intentionally small to not generate good predictions when we test the model for the first time so that we can see how the model's prediction will increase in real-time when we feed it with more data. -You can use the following Python script from the accompanied demo repository for generating all three SQL files. +You can use the following Python script from the accompanying demo repository for generating all three SQL files. ``` $ ./iris2sql.py ``` -The files are located in `postgres` directory of this demo. +The `postgres` directory contains the files used for this demo. `train1.sql` will be loaded automatically into the Postgres database upon its start. -`test.sql` and `train2.sql` will be loaded manually into the database later on. +`test.sql` and `train2.sql` will be loaded manually into the database later. == Classification with Apache Flink -First let's take a look at how to do online Iris flower classification and learning in Apache Flink. -High level schema of the whole pipeline is depicted on the figure below. +First, let's look at how to do online Iris flower classification and learning in Apache Flink. +The following figure depicts the high-level schema for the entire pipeline. ++++
@@ -73,9 +73,9 @@ High level schema of the whole pipeline is depicted on the figure below.
++++ -We would use Postgres as our source database. -Debezium is deployed as a Kafka Connect source connector, tracks the changes in the database and from newly inserted data creates the streams of data which are sent to Kafka. -These streams are sent by Kafka to Apache Flink, which employs the streaming k-means algorithm for model fitting as well as for the data classification. +We will use Postgres as our source database. +Debezium, deployed as a Kafka Connect source connector, tracks the changes in the database and creates the streams of data sent to Kafka from newly inserted data. +Kafka sends these streams to Apache Flink, which employs the streaming k-means algorithm for model fitting and data classification. The predictions of the model for test data streams are produced as another stream and sent back to Kafka. [NOTE] @@ -85,19 +85,19 @@ Ververika's implementation of CDC source connectors embeds the Debezium directly See Flink CDC connectors https://ververica.github.io/flink-cdc-connectors/[documentation] for more details. ==== -Our database would contain two tables. -In the first table we will store our training data, while our test data will be stored into the second table. -Therefore there are two streams of data, each corresponding to one table - one data stream for learning and one with data points which need to be classified. -In real applications you can use only one table or, on the contrary, many more tables. +Our database contains two tables. +The first stores our training data, while the second stores the test data. +Therefore, there are two data streams, each corresponding to one table - one data stream for learning and one with data points that need to be classified. +In real applications, you can use only one table or, on the contrary, many more tables. You can even deploy more Debezium connectors and thus combine data from several databases. === Using Debezium and Kafka as a source data stream -Apache Flink has a very good integration with Kafka. +Apache Flink has excellent integration with Kafka. We can pass the Debezium records as e.g. JSON records. -For creating Flink tables it even has support for Debezium record format, but for streams we need to extract part of the Debezium message which contains the newly stored row of the table. -However, this is very easy as Debezium provides SMT, https://debezium.io/documentation/reference/nightly/transformations/event-flattening.html[extract new record state SMT], which does exactly this. -So the complete Debezium configuration can look like this: +For creating Flink tables, it even has support for Debezium's record format, but for streams, we need to extract part of the Debezium message, which contains the newly stored row of the table. +However, this is very easy as Debezium provides SMT, https://debezium.io/documentation/reference/nightly/transformations/event-flattening.html[extract new record state SMT], which does precisely this. +The complete Debezium configuration can look like this: [source,json] ---- @@ -121,9 +121,9 @@ So the complete Debezium configuration can look like this: } ---- -This will capture all the tables in the `public` schema whose name begins with `iris_` prefix. -Corresponding Kafka topics will be `flink.public.iris_train` and `flink.public.iris_test` for training and testing data, respectively. -Incoming stream of data is represented by Flink's `DataStreamSource` class. +The configuration captures all tables in the `public` schema with tables that begin with the `iris_` prefix. +Since we are storing training and test data in two tables, two Kafka topics named `flink.public.iris_train` and `flink.public.iris_test` are created, respectively. +Flink's `DataStreamSource` represents the incoming stream of data. As we encode the records as a JSON, it will be a stream of JSON `ObjectNode` objects. Constructing the source stream is very straightforward: @@ -140,12 +140,12 @@ KafkaSource train = KafkaSource.builder() DataStreamSource trainStream = env.fromSource(train, WatermarkStrategy.noWatermarks(), "Debezium train"); ---- -Most of the Flinks operations are done on the `Table` abstraction objects. -Also ML models accept only tables as an input and predictions are produced as tables as well. -Therefore we need to first convert our input stream into a `Table` object. -We will start with transforming our input data stream into a stream of table rows. -We need to define a map function which would return a `Row` object with a vector containing one data point. -As k-means algorithm belongs to https://en.wikipedia.org/wiki/Unsupervised_learning[unsupervised learning] algorithms, i.e. the model doesn't need corresponding "right answers" for the data points, we can skip the `label` field from the vector: +Flink operates primarily on the `Table` abstraction object. +Also, ML models accept only tables as input, and predictions are produced as tables too. +Therefore, we must first convert our input stream into a `Table` object. +We will start by transforming our input data stream into a stream of table rows. +We need to define a map function that would return a `Row` object with a vector containing one data point. +As the k-means algorithm belongs to https://en.wikipedia.org/wiki/Unsupervised_learning[unsupervised learning] algorithms, i.e. the model doesn't need corresponding "right answers" for the data points, we can skip the `label` field from the vector: [source,java] ---- @@ -163,8 +163,8 @@ private static class RecordMapper implements MapFunction { } ---- -Various parts of the internal Flink pipeline can run on different worker nodes and therefore we also need to provide type information about the table. -With that, we are ready to create table object: +Various parts of the internal Flink pipeline can run on different worker nodes, and therefore, we also need to provide type information about the table. +With that, we are ready to create the table object: [source,java] ---- @@ -179,8 +179,8 @@ Table trainTable = tEnv.fromDataStream(inputStream).as("features"); === Building Flink stream k-means -Once we have a `Table` object, we are ready to pass it to our model. -So let's create one and pass out train stream to it for continuous model training: +Once we have a `Table` object, we can pass it to our model. +So let's create one and pass a train stream to it for continuous model training: [source,java] ---- @@ -192,12 +192,12 @@ OnlineKMeans onlineKMeans = new OnlineKMeans() OnlineKMeansModel model = onlineKMeans.fit(trainTable); ---- -To make the things more simple and straightforward, we set directly the number of desired clusters to 3 instead of finding the optimal number of cluster by digging into the data (using e.g. https://en.wikipedia.org/wiki/Elbow_method_(clustering)[elbow method]). +To make things more straightforward, we directly set the number of desired clusters to 3 instead of finding the optimal number of clusters by digging into the data (using e.g. https://en.wikipedia.org/wiki/Elbow_method_(clustering)[elbow method]). We also set some initial values for the centers of the clusters instead of using random numbers (Flink provides a convenient method for it - `KMeansModelData.generateRandomModelData()` if you want to try with random centers). To obtain the predictions for our test data, we again need to convert our test stream into a table. The model transforms the table with test data into a table with predictions. -Predictions table can be converted back to a stream and stored e.g. back in the Kafka: +Finally, convert the prediction into a stream and persisted, e.g. in a Kafka topic: [source,java] ---- @@ -209,27 +209,27 @@ DataStream resultStream = tEnv.toChangelogStream(outputTable); resultStream.map(new ResultMapper()).sinkTo(kafkaSink); ---- -Now we are ready to build our application and almost ready to submit it into the Flink for execution. -To be completely ready to submit our application to Flink, we need to create the required Kafka topic first. -Topics can be empty, but Flink requires them to exist. -As we include a small set of data into the training table of the Postgres when the database starts, Debezium will create a corresponding topic once the Debezium Postgres connector is registered in Kafka Connect. -However, as the table with test data doesn't exists yet, we need to create the topic in Kafka manually: +Now, we are ready to build our application and almost ready to submit it to Flink for execution. +Before we do, we need to create the required Kafka topics first. +While the topics can be empty, Flink requires that they at least exist. +As we include a small set of data in the Postgres training table when the database starts, Debezium will create a corresponding topic when registering the Debezium Postgres connector in Kafka Connect. +Since the test data table does not yet exist, we need to create the topic in Kafka manually: [source,bash] ---- $ docker compose -f docker-compose-flink.yaml exec kafka /kafka/bin/kafka-topics.sh --create --bootstrap-server kafka:9092 --replication-factor 1 --partitions 1 --topic flink.public.iris_test ---- -Now, we are really ready to submit our application to Flink. -For the complete code, please see corresponding source code in Debezium https://github.com/debezium/debezium-examples[example repository] +Now, we are ready to submit our application to Flink. +For the complete code, please see the corresponding source code in Debezium https://github.com/debezium/debezium-examples[example repository] [NOTE] ==== -If you don't use Docker compose provided as part of the source code for this demo, please mind to include https://nightlies.apache.org/flink/flink-ml-docs-master/[Flink ML library] into Flink `lib` folder, as the ML library in not part of default Flink distribution. +If you don't use Docker compose provided as part of the source code for this demo, please include https://nightlies.apache.org/flink/flink-ml-docs-master/[Flink ML library] in the Flink `lib` folder, as the ML library is not part of default Flink distribution. ==== -Flink provides a nice UI, which is available on http://localhost:8081/. -There you can check, besides other thinks, the status of your jobs and also e.g. job execution plan in a nice graphical representation: +Flink provides a friendly UI, which is available on http://localhost:8081/. +There, you can check, besides other things, the status of your jobs and also, e.g. job execution plan in an excellent graphical representation: ++++
@@ -239,7 +239,7 @@ There you can check, besides other thinks, the status of your jobs and also e.g. === Evaluating the model -From the user point of view, all the interaction with our model would happen either by inserting new records into the database or reading Kafka topic with predictions. +From the user's point of view, all the interactions with our model occur by inserting new records into the database or reading Kafka topics with predictions. As we already created a very small initial training data sample in the database when it started, we can directly check our model predictions by inserting our test data sample into the database: [source,bash] @@ -247,8 +247,9 @@ As we already created a very small initial training data sample in the database $ psql -h localhost -U postgres -f postgres/iris_test.sql ---- -This will result in an immediate data stream of test data into Kafka, passing them into our model and sending the prediction back to Kafka’s `iris_predictions` topic. -As the initial model was trained on a very small set of data, predictions are pretty bad and we have actually only 2 clusters so far: +The insert results in an immediate data stream of test data in Kafka, passing it into the model and sending the prediction back to the `iris_predictions` Kafka topic. +The predictions are not accurate when training the model on a very small data set with just two clusters. +The following shows our initial predictions: [source] ---- @@ -265,7 +266,7 @@ As the initial model was trained on a very small set of data, predictions are pr [5.8, 2.7, 3.9, 1.2] is classified as 2 ---- -In our case the correct answer should be: +In our case, the correct answer should be: [source] ---- @@ -282,11 +283,10 @@ In our case the correct answer should be: [5.8, 2.7, 3.9, 1.2] is 1 ---- -so we have only 5 data points of 11 correctly classified. -This is not very good, but this is expected, as our initial training sample was very small. +When comparing the result, we only have 5 of 11 data points correctly classified due to the initial sample training data size. On the other hand, as we didn't start with completely random clusters, our predictions are also not completely wrong. -Let's see how the things change when we supply more training data into the model: +Let's see how things change when we supply more training data into the model: [source,bash] ---- @@ -300,7 +300,8 @@ To see the updated predictions, we insert the same test data sample again into t $ psql -h localhost -U postgres -f postgres/iris_test.sql ---- -Now we get +The following predictions are much better since we have all three categories present. +We have also correctly classified 7 out of the 11 data points. [source] ---- @@ -317,8 +318,6 @@ Now we get [5.8, 2.7, 3.9, 1.2] is classified as 1 ---- -which is much better as now we have all three categories present and have correctly classified 7 out of 11 data points. - As the whole data sample is pretty small, for further model training we can re-use our second train data sample: [source,bash] @@ -327,7 +326,7 @@ $ psql -h localhost -U postgres -f postgres/iris_train2.sql $ psql -h localhost -U postgres -f postgres/iris_test.sql ---- -resulting into +This results in the following prediction. [source] ---- @@ -344,30 +343,28 @@ resulting into [5.8, 2.7, 3.9, 1.2] is classified as 1 ---- -So we end up with 9 data points correctly classified out of 11 data points. -This is still not an excellent result, but as mentioned at the beginning, we don't aim for the best results. -The main motivation here is to show the whole pipeline and demonstrate that the model improves the predictions immediately once the new data points are stored in the database, without the need to re-train and re-deploy the model. +We now find we have 9 out of 11 data points correctly classified. +While this is still not an excellent result, we expect only partially accurate results as this is simply a prediction. +The primary motivation here is to show the whole pipeline and demonstrate that the model improves the predictions without re-training and re-deploying the model when adding new data. == Classification with Apache Spark -Apache Spark is, from the user point of view, very similar to Flink in many regards and thus also implementation would be quite similar. -Not to make this blog post too long, this chapter would be a little bit more brief. +From the user's point of view, Apache Spark is very similar to Flink, and the implementation would be quite similar. +This chapter is briefer to make this blog post more digestible. -Spark has two streaming models. -Older https://spark.apache.org/docs/latest/streaming-programming-guide.html[DStreams], which is now in legacy state, and more recent https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html[structured streaming], which is recommended to use. -However, as the streaming k-means algorithm contained in Spark ML library works only with the DStreams, for the sake of simplicity DStreams are used in this example. -Better approach would be to use structured streaming and implement the streaming k-means ourselves. -This is however outside the scope and main goal of this blog post. +Spark has two streaming models: the older https://spark.apache.org/docs/latest/streaming-programming-guide.html[DStreams], which is now in legacy state, and the more recent and recommended https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html[structured streaming]. +However, as the streaming k-means algorithm contained in the Spark ML library works only with the DStreams, for simplicity, DStreams are used in this example. +A better approach would be to use structured streaming and implement the streaming k-means ourselves. +This is, however, outside this blog post's scope and main goal. Spark supports streaming from Kafka using DStreams. -However, writing DStreams back to Kafka is not supported. -It can be done, but it's not very straightforward. +However, writing DStreams back to Kafka is not supported, although it is possible but isn't straightforward. [NOTE] ==== -Structured streaming supports both directions, reading as well as writing to Kafka, in a very easy way. +Structured streaming supports both directions, reading and writing to Kafka, very easily. ==== Again, for the sake of simplicity, we skip the final part and will write the predictions only to the console instead of writing them back to Kafka. @@ -381,7 +378,7 @@ The big picture of our pipelines thus looks like this: === Defining the data streams -Similarly to Flink, creating Spark streams from Kafka streams is straightforward and most of the parameters are self-explanatory: +Similarly to Flink, creating Spark streams from Kafka streams is straightforward, and most of the parameters are self-explanatory: [source, java] ---- @@ -403,7 +400,7 @@ JavaDStream train = trainStream.map(ConsumerRecord::value) .map(LabeledPoint::parse); ---- -On the last line we transform Kafka stream to a stream of labeled points, which Spark ML library uses for working with its ML models. +On the last line, we transform the Kafka stream to a labeled point stream, which the Spark ML library uses for working with its ML models. Labeled points are expected as the strings formatted as data point labels separated by the comma from space-separated data point values. So the map function looks like this: @@ -421,13 +418,14 @@ private static String toLabeledPointString(String json) throws ParseException { } ---- -Still applies that k-means is an unsupervised algorithm and doesn't use the data point labels. -However, it's convenient to pass them to `LabeledPoint` class as later on we can show them together with model predictions. +It still applies that k-means is an unsupervised algorithm and doesn't use the data point labels. +However, it's convenient to pass them to `LabeledPoint` class as later on, we can show them together with model predictions. We chain one more map function to parse the string and create a labeled data point from it. In this case, it's a built-in function of Spark `LabeledPoint`. -Contrary to Flink, Spark doesn't require Kafka topics to exist in advance, so when deploying the model, we don't have to create the topics and can let Debezium to create them once the table with the test data is created and populated with the data. +Contrary to Flink, Spark doesn't require Kafka topics to exist in advance, so when deploying the model, we don't have to create the topics. +We can let Debezium create them once the table with the test data is created and populated with the data. === Defining and evaluating the model @@ -441,8 +439,8 @@ StreamingKMeans model = new StreamingKMeans() model.trainOn(train.map(lp -> lp.getFeatures())); ---- -Also in this case we directly set the number of clusters to 3 and provide the same initial central points of the clusters. -You can also see that we really pass only the data point for the training, not the labels. +Also, in this case, we directly set the number of clusters to 3 and provide the same initial central points to the clusters. +We also only pass the data points for training, not the labels. As mentioned above, we can use the labels to show them together with the predictions: @@ -452,9 +450,9 @@ JavaPairDStream predict = test.mapToPair(lp -> new Tuple2<>(lp.l model.predictOnValues(predict).print(11); ---- -On the resulting stream with the predictions we print 11 elements of the stream to the console, as this is the size of our test sample. -Similar to Flink, the results after initial training on a very small data sample are bad. -The first number in the tuple is data point label, while the second one is the corresponding prediction done by our model: +We print 11 stream elements to the console on the resulting stream with the predictions, as this is the size of our test sample. +Like Flink, the results after initial training on a very small data sample could be better. +The first number in the tuple is the data point label, while the second one is the corresponding prediction done by our model: [source] ---- @@ -488,7 +486,7 @@ spark_1 | (0.0,0) spark_1 | (1.0,0) ---- -and if we pass the second training data sample once again for training, our model makes correct predictions for whole test sample: +If we pass the second training data sample once again for the training, our model makes correct predictions for the whole test sample: [source] --- @@ -508,23 +506,24 @@ spark_1 | (1.0,1) [WARNING] ==== The prediction is a number of the cluster which k-means algorithm created and has no relation to labels in our data sample. -This means that e.g. `(0.0,1)` doesn't have to be a wrong prediction. +That means that e.g. `(0.0,1)` doesn't have to be a wrong prediction. It can happen that a data point with label 0 was assigned to the correct cluster, however, Spark internally marked it as a cluster number 1. This needs to be kept in mind when evaluating the model. ==== -So, similar to Flink, we get better results as we pass more training data, without the need to re-train and re-deploy the model. -In this case, we get even better results than from the Flink model. +So, similar to Flink, we get better results as we pass more training data without the need to re-train and re-deploy the model. +In this case, we get even better results than Flink's model. == Conclusions -In this blog post we continued with the exploration how Debezium can help to make data ingestion into various ML frameworks seamless. -We have shown how to pass the data from the database to Apache Flink and Apache Spark in the real time as a stream of the data. -In both cases the integration is easy to set up and works very well. -We demonstrated it in an example which allows us to use an online learning algorithm, namely online k-means algorithm, to highlight the power of data streaming. -Online machine learning allows not only to do the predictions on the stream of the data in the real time, but also allows to improve or adjust the model immediately as the new training data arrives. -Model adjustment doesn't require any model re-training on a separate compute cluster and re-deploying a new model, which makes ML-ops much more easy and cost effective. +In this blog post, we continued exploring how Debezium can help make data ingestion into various ML frameworks seamless. +We have shown how to pass the data from the database to Apache Flink and Apache Spark in real time as a stream of the data. +The integration is easy to set up in both cases and works well. +We demonstrated it in an example that allows us to use an online learning algorithm, namely the online k-means algorithm, to highlight the power of data streaming. +Online machine learning allows us to make real-time predictions on the data stream and improve or adjust the model immediately as the new training data arrives. +Model adjustment doesn't require any model re-training on a separate compute cluster and re-deploying a new model, making ML-ops more straightforward and cost-effective. As usual, we would appreciate any feedback on this blog post. -We would also appreciate any new ideas on how Debezium, or in general, change data capture, can be helpful in this area as well as your tips, what would be helpful for you to investigate, being it either integration with another ML framework, integration with e.g. ML feature store or anything else. +Do you have any ideas on how Debezium or change data capture can be helpful in this area? +What would be helpful to investigate, whether integration with another ML framework, integration with a specific ML feature store, etc.? In case you have any input any this regard, don't hesitate to reach out to us on the http://debezium.zulipchat.com/[Zulip chat], https://groups.google.com/forum/#!forum/debezium[mailing list] or you can transform your ideas directly into http://issues.redhat.com/projects/DBZ/issues[Jira feature requests]. From 70659c862d043e2fd7a67eb9a13ba016910b5f40 Mon Sep 17 00:00:00 2001 From: Chris Cranford Date: Fri, 22 Sep 2023 17:05:31 -0400 Subject: [PATCH 3/4] Update date --- ...earning.adoc => 2023-09-23-flink-spark-online-learning.adoc} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename _posts/{2023-09-22-flink-spark-online-learning.adoc => 2023-09-23-flink-spark-online-learning.adoc} (99%) diff --git a/_posts/2023-09-22-flink-spark-online-learning.adoc b/_posts/2023-09-23-flink-spark-online-learning.adoc similarity index 99% rename from _posts/2023-09-22-flink-spark-online-learning.adoc rename to _posts/2023-09-23-flink-spark-online-learning.adoc index 76e6597dccb..e2ffce05c0d 100644 --- a/_posts/2023-09-22-flink-spark-online-learning.adoc +++ b/_posts/2023-09-23-flink-spark-online-learning.adoc @@ -1,7 +1,7 @@ --- layout: post title: Online machine learning with the data streams from the database -date: 2023-09-22 00:00:00 -0000 +date: 2023-09-23 00:00:00 -0000 tags: [ machine-learning, flink, spark, online-learning, examples, apache-kafka ] featured: true author: vjuranek From 63a5640927deb5fbed4293c97e673cfee2513780 Mon Sep 17 00:00:00 2001 From: Vojtech Juranek Date: Mon, 25 Sep 2023 13:22:07 +0200 Subject: [PATCH 4/4] Update date and links --- _posts/2023-09-23-flink-spark-online-learning.adoc | 12 ++++++------ .../flink_dag.png | Bin .../iris_versicolor.jpg | Bin .../postgres_to_flink.png | Bin .../postgres_to_spark.png | Bin 5 files changed, 6 insertions(+), 6 deletions(-) rename assets/images/{2023-09-15-flink-spark-online-learning => 2023-09-23-flink-spark-online-learning}/flink_dag.png (100%) rename assets/images/{2023-09-15-flink-spark-online-learning => 2023-09-23-flink-spark-online-learning}/iris_versicolor.jpg (100%) rename assets/images/{2023-09-15-flink-spark-online-learning => 2023-09-23-flink-spark-online-learning}/postgres_to_flink.png (100%) rename assets/images/{2023-09-15-flink-spark-online-learning => 2023-09-23-flink-spark-online-learning}/postgres_to_spark.png (100%) diff --git a/_posts/2023-09-23-flink-spark-online-learning.adoc b/_posts/2023-09-23-flink-spark-online-learning.adoc index e2ffce05c0d..8444da2711d 100644 --- a/_posts/2023-09-23-flink-spark-online-learning.adoc +++ b/_posts/2023-09-23-flink-spark-online-learning.adoc @@ -24,7 +24,7 @@ We use https://flink.apache.org/[Apache Flink] and https://spark.apache.org/[Apa Both these frameworks are very popular data processing frameworks and include a machine learning library, which, besides others, implements online k-means algorithms. Thus, we can focus on building a complete pipeline for delivering the data from the database into a given model, processing it in real time, and not having to deal with the algorithm's implementation details. -All the code mentioned later in this blog post is available as a Debezium example in https://github.com/debezium/debezium-examples/tree/main/machine-learning[Debezium example repository], with all other useful stuff, like Docker composes and step-by-step instructions in the README file. +All the code mentioned later in this blog post is available as a Debezium example in https://github.com/debezium/debezium-examples/tree/blog_flink_spark_ml/machine-learning/flink-spark-iris[Debezium example repository], with all other useful stuff, like Docker composes and step-by-step instructions in the https://github.com/debezium/debezium-examples/blob/blog_flink_spark_ml/machine-learning/flink-spark-iris/README.adoc[README] file. == Data set preparation @@ -34,7 +34,7 @@ Our goal is to determine the Iris species based on a couple of measurements of t ++++ @@ -69,7 +69,7 @@ The following figure depicts the high-level schema for the entire pipeline. ++++
- Postgres to Flink schema + Postgres to Flink schema
++++ @@ -221,7 +221,7 @@ $ docker compose -f docker-compose-flink.yaml exec kafka /kafka/bin/kafka-topics ---- Now, we are ready to submit our application to Flink. -For the complete code, please see the corresponding source code in Debezium https://github.com/debezium/debezium-examples[example repository] +For the complete code, please see the corresponding source code in Debezium https://github.com/debezium/debezium-examples/blob/blog_flink_spark_ml/machine-learning/flink-spark-iris/iris-flink/src/main/java/io/github/vjuranek/FlinkKafkaKmeans.java[example repository] [NOTE] ==== @@ -233,7 +233,7 @@ There, you can check, besides other things, the status of your jobs and also, e. ++++
- Postgres to Flink schema + Postgres to Flink schema
++++ @@ -372,7 +372,7 @@ The big picture of our pipelines thus looks like this: ++++
- Postgres to Spark schema + Postgres to Spark schema
++++ diff --git a/assets/images/2023-09-15-flink-spark-online-learning/flink_dag.png b/assets/images/2023-09-23-flink-spark-online-learning/flink_dag.png similarity index 100% rename from assets/images/2023-09-15-flink-spark-online-learning/flink_dag.png rename to assets/images/2023-09-23-flink-spark-online-learning/flink_dag.png diff --git a/assets/images/2023-09-15-flink-spark-online-learning/iris_versicolor.jpg b/assets/images/2023-09-23-flink-spark-online-learning/iris_versicolor.jpg similarity index 100% rename from assets/images/2023-09-15-flink-spark-online-learning/iris_versicolor.jpg rename to assets/images/2023-09-23-flink-spark-online-learning/iris_versicolor.jpg diff --git a/assets/images/2023-09-15-flink-spark-online-learning/postgres_to_flink.png b/assets/images/2023-09-23-flink-spark-online-learning/postgres_to_flink.png similarity index 100% rename from assets/images/2023-09-15-flink-spark-online-learning/postgres_to_flink.png rename to assets/images/2023-09-23-flink-spark-online-learning/postgres_to_flink.png diff --git a/assets/images/2023-09-15-flink-spark-online-learning/postgres_to_spark.png b/assets/images/2023-09-23-flink-spark-online-learning/postgres_to_spark.png similarity index 100% rename from assets/images/2023-09-15-flink-spark-online-learning/postgres_to_spark.png rename to assets/images/2023-09-23-flink-spark-online-learning/postgres_to_spark.png