Kafka as a storage system can be a data store for long term data. It can replicate and distribute without problem. So can I create RDD from all historical data in Kafka and create batch view then combine it with Spark Streaming Views?
Can I use Apache Kafka as for Batch Layer to save historical data in Lambda Architecture?
473 views Asked by Milad Khajavi At
1
There are 1 answers
Related Questions in APACHE-SPARK
- Getting error while running spark-shell on my system; pyspark is running fine
- ingesting high volume small size files in azure databricks
- Spark load all partions at once
- Databricks Delta table / Compute job
- Autocomplete not working for apache spark in java vscode
- How to overwrite a single partition in Snowflake when using Spark connector
- Parse multiple record type fixedlength file with beanio gives oom and timeout error for 10GB data file
- includeExistingFiles: false does not work in Databricks Autoloader
- Spark connectors from Azure Databricks to Snowflake using AzureAD login
- SparkException: Task failed while writing rows, caused by Futures timed out
- Configuring Apache Spark's MemoryStream to simulate Kafka stream
- Databricks can't find a csv file inside a wheel I installed when running from a Databricks Notebook
- Add unique id to rows in batches in Pyspark dataframe
- Does Spark Dynamic Allocation depend on external shuffle service to work well?
- Does Spark structured streaming support chained flatMapGroupsWithState by different key?
Related Questions in APACHE-KAFKA
- No method found for class java.lang.String in Kafka
- How to create beans of the same class for multiple template parameters in Spring
- Troubleshoot .readStream function not working in kafka-spark streaming (pyspark in colab notebook)
- Handling and ignore UNKNOWN_TOPIC_OR_PARTITION error in Kafka Streams
- Connect Apache Flink with Apache kudu as sink using Pyflink
- Embedded Kafka Failed to Start After Spring Starter Parent Version 3.1.10
- Producer Batching Service Bus Vs Kafka
- How to create a docker composer environment where containers can communicate each other?
- Springboot Kafka Consumer unable to maintain connect to kafka cluster brokers
- Kafka integration between two micro service which can respond back to the same function initiated the request
- Configuring Apache Spark's MemoryStream to simulate Kafka stream
- Opentelemetry Surpresses Kafka Produce Message Java
- Kafka: java.lang.NoClassDefFoundError: Could not initialize class org.apache.logging.log4j.core.appender.mom.kafka.KafkaManager
- MassTransit Kafka producers configure to send several events to the same Kafka topic
- NoClassDefFoundError when running JAR file with Apache Kafka dependencies
Related Questions in SPARK-STREAMING
- Dataframe won't save as anything - table, global temp view or temp view
- old aws-glue libraries in the Glue streaming ETL job 4.0?
- Get all records within a window in spark structured streaming
- Does the streamWrite Function from pyspark, only run concurenttly and not in parellel?
- java.lang.NoClassDefFoundError: Could not initialize class kafka.utils.Json$
- New delta log folder is not getting created
- How to update and share big statefull tables based on event stream?
- orc properties not able to set in writeStream.option() in spark 2.4.0
- Kafka-Spark Streaming Distributed The group coordinate is not available (Host2:9092(id:2147483645))
- Nats Jetstream connector for spark (custom jar) example doesn't work
- Spark streaming with delta tables - update input table in microbatch
- Spark foreachBatch concurrency and time-based triggers
- Higher latency discrepancy in Spark application with Synapse ML package between jar execution and Docker containerization
- Spark Executor Peak JVM Memory onHeap Issue
- Reading Large data files through Databricks streaming tables
Related Questions in BATCH-PROCESSING
- WZZIP not excluding files in @listfile process
- How to inform user of updates on a batch progress in a Spring Boot + Angular web app?
- Simulation of interrupted set-up and delayed server shutdown in batch processing system
- Overcoming SharePoint Online's Data Fetch Limit in .NET Core with Batch Processing
- Restarting a FAILED job is not processing the failed chunk data again : Continuation
- Retirgger aws glue job dynamically
- Aws Glue Batch processing using spark engine
- Preventing PreparedStatement from Clearing Batch in Java JDBC
- Preventing application logic to read (not updated) data during batch runs
- SQL batch insert incorrectly flagging last element of list as duplicate key
- Any advantage to switching between dtypes before/after non-streaming operations in Polars (for larger than memory data)?
- Is it somehow possible to transform an entire collection instead of doing them one by one?
- Parallelizing, Multiprocessing, CSV writer
- Apache Flink JDBC WHERE and JOIN causes buffering of millions of records
- Spring Batch step write_count less than read_count and filter and skip counts are all zero
Related Questions in LAMBDA-ARCHITECTURE
- Kappa architecture: when insert to batch/analytic serving layer happens
- Where can I run terraform?
- Lambda architecture on AWS and API Gateway
- How to trigger airflow jobs based on flink streaming completion for partitions?
- Lambda architecture on AWS: choose database for batch layer
- Why is there no serving layer for the speed layer in the lambda architecture?
- Would it have a performance issue when merge the views using lambda architecture with spark?
- Connect Spark Streaming to Spark Batch automatically
- How does immutable data make eventual consistency trivial?
- Can I use Apache Kafka as for Batch Layer to save historical data in Lambda Architecture?
- What are the differences between kappa-architecture and lambda-architecture
- Can we create local Docker IoT containers for a SMACK-like environment with DC/OS and push them to our AWS VPC - if so, how?
- Batch layer: How does Spark read and process new data from Master Data?
- Hbase for real-time application
- Spark Streaming NoClassDefFoundError error
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
tl;dr Yes, but why?
According to Nathan Marz, formerly of Twitter and author of the Lambda Architecture, these are the storage requirements for the master dataset in the Batch Layers:
Kafka satisfies all of these, so technically it could indeed store the master dataset in your Batch Layer.
However, the Kappa Architecture, devised by Jay Kreps (formerly of LinkedIn) is a lot easier to work with than the Lambda Architecture--and I would say more effective at satisfying modern use cases like IoT. All you need to make it happen is distributed, scalable, immutable, configurable streaming, which is exactly what Kafka provides. So why not just do that?
To use Kafka for data storage in the Batch Layer of the Lambda Architecture is to underutilize its capability--and for the sole purpose of forcing it into an architecture that is actually less effective over time.