Updated March 2023 When learning Elasticsearch, it’s important to start with a good foundational understanding of key concepts and terms. In this post we define and explain important Elasticsearch concepts. Elasticsearch Terms and Definitions Elasticsearch Node. An Elasticsearch node is a single Elasticsearch process, and the minimum number of nodes for a highly available Elasticsearch … Continue reading Elasticsearch Definitions
Kafka Definitions
Updated July 2022 Taking a break from Kafka optimization posts to get back to the basics of Apache Kafka and define fundamental Kafka concepts. Kafka Definitions: A Primer for Apache Kafka Fundamentals Kafka Producer. A Kafka producer is a standalone application, or addition to your application, that sends data to Kafka broker(s). Kafka Broker. A … Continue reading Kafka Definitions
Kafka Consumer Optimization
Updated December 2021 Kafka Consumer’s Role. The role of the Kafka consumer is to read data from Kafka. Kafka consumer optimization can help avoid errors and increase performance of your application. While the focus of this blog post is on the consumer, we will also review several broker configurations which affect the performance of consumers. Top … Continue reading Kafka Consumer Optimization
Top 10 Apache Kafka Features That Drive Its Popularity
Updated January 2022 Apache Kafka is hugely popular because of its features that guarantee uptime, make it easy to scale, enable Kafka to handle high volumes, and much more. In this article we will discuss the Top 10 Apache Kafka features to help you evaluate if Kafka is the right technology for your company’s business … Continue reading Top 10 Apache Kafka Features That Drive Its Popularity
What is a Kafka Topic?
Updated April 2022 Kafka topics are the categories used to organize messages. Each topic has a name that is unique across the entire Kafka cluster. Messages are sent to and read from specific topics. In other words, producers write data to topics, and consumers read data from topics. Kafka topics are multi-subscriber. This means that … Continue reading What is a Kafka Topic?
Hosted Kafka: Why Managed Kafka in Your Cloud or Data center is a Better Choice Than Hosted Kafka
In this post we challenge the misconception that managed Kafka services need to be hosted on third party platforms.
Uptime Guarantees for Managed Kafka as a Service
Updated September 2022 Kafka’s primary role in many data architecture designs is ensuring that no data is lost. Databases can fail. Servers can fail. Applications can fail. But a well designed Kafka deployment should provide 24/7, reliable, fault-tolerant message collection and processing. One way to ensure an expertly designed and managed Kafka deployment is to … Continue reading Uptime Guarantees for Managed Kafka as a Service
Open Source Monitoring for Kafka
Updated December 2021 A critical component to ensuring Kafka uptime and maintaining peak performance is through monitoring. Open source monitoring of disk performance, memory usage, CPU, network traffic, and load allow you to identify abnormal metrics in real-time and address potential issues before a performance dip or outage occurs. In other words, monitoring Apache Kafka … Continue reading Open Source Monitoring for Kafka
5 Factors to Consider When Choosing a Kafka as a Service Provider
Updated April 2021 There are a handful of providers offering Kafka as a Service. If you are in the market for managed Kafka you might be wondering what factors to consider when choosing a provider. In this post, we break down the five most important considerations. #1 Is the service fully managed? If the service … Continue reading 5 Factors to Consider When Choosing a Kafka as a Service Provider
Load Balancing With Kafka
Updated February 2023 What is Kafka loading balancing? Load balancing with Kafka is a straightforward process and is handled by the Kafka producers by default. While it isn’t traditional load balancing, it does spread out the message load between partitions while preserving message ordering. Round-robin approach: By default, producers choose the partition assignment for each … Continue reading Load Balancing With Kafka
Understanding Kafka Consumer Offset
Updated January 2023 One aspect of Kafka that can cause some confusion for new users is the consumer offset. In this post, we define consumer offset and outline the factors that determine Kafka Consumer offset. Defining Kafka Consumer Offset The consumer offset is a way of tracking the sequential order in which messages are received … Continue reading Understanding Kafka Consumer Offset
What is ZooKeeper & How Does it Support Kafka?
Updated July 2022 ZooKeeper is used in distributed systems for service synchronization and as a naming registry. When working with Apache Kafka, ZooKeeper is primarily used to track the status of nodes in the Kafka cluster and maintain a list of Kafka topics and messages. Jump to info on using Kafka without ZooKeeper ZooKeeper … Continue reading What is ZooKeeper & How Does it Support Kafka?
Origins of Kafka and Why it Plays Well With Elasticsearch
Updated June 2022 Many companies leverage both Apache Kafka and the Elastic Stack (Elasticsearch, Logstash, and Kibana) for log and/or event processing. Kafka is often used as the transport layer, storing and processing data, typically large amounts of data. Kafka stages data before it makes its way to the Elastic Stack. Logstash transforms the data, … Continue reading Origins of Kafka and Why it Plays Well With Elasticsearch
Kafka Use Cases
Updated April 2021 Apache Kafka is a high-throughput, open source message queue used by Fortune 100 companies, government entities, and startups alike. Part of Kafka’s appeal is its wide array of use cases. In this post we will outline several of Kafka’s uses cases from event sourcing to tracking web activities to metrics and more. … Continue reading Kafka Use Cases
Performance Tuning for Apache Kafka
For Apache Kafka performance tuning measure latency and throughput for your Kafka implementation. Latency is the measure of how long it takes Kafka to process a single event. Throughput is the measure of how many events arrive within a particular period of time.
Elasticsearch Shards — Definitions, Sizes, Optimizations, and More
Updated September 2022 Optimizing Elasticsearch for shard size is an important component for achieving maximum performance from your cluster. To get started let’s review a few definitions that are an important part of the Elasticsearch jargon. If you are already familiar with Elasticsearch, you can continue straight to the next section. Defining Elasticsearch Jargon: Cluster, … Continue reading Elasticsearch Shards — Definitions, Sizes, Optimizations, and More
Elasticsearch Optimization for Small, Medium, and Large Clusters
Updated January 2023 The way nodes are organized in an Elasticsearch cluster changes depending on the size of the cluster. For small, medium, and large Elasticsearch clusters there will be different approaches for optimization. Dattell’s team of engineers are expert at designing, optimizing, and maintaining Elasticsearch implementations and supporting technologies. Click here to learn more … Continue reading Elasticsearch Optimization for Small, Medium, and Large Clusters
Kafka Optimization: Kafka Security Checklist
Updated July 2022 There are six key components to securing Kafka. These best practices will help you optimize Kafka and protect your data from avoidable exposure. #1 Encryption By default, data is plaintext in Kafka, which leaves it vulnerable to a man-in-the-middle attack as data is routed over your network. Transport layer security (TLS) and/or … Continue reading Kafka Optimization: Kafka Security Checklist
Kafka Optimization — How many partitions are needed?
Updated February 2023 Apache Kafka is a distributed system, running in a cluster with each of the nodes referred to as brokers. Kafka topics are partitioned and replicated across the brokers throughout the entirety of the implementation. Why are Partitions Important? Partitions allow users to parallelize topics, meaning data for any topic can be divided … Continue reading Kafka Optimization — How many partitions are needed?
Creating a Kafka Topic: What Are Kafka Topics & How Are They Created?
In this post, we will define what Kafka topics are and explain how to create them.
Kafka vs. RabbitMQ: How to choose an open source message broker
There are several message queue programs to choose from: Kafka, RabbitMQ, ActiveMQ, ZeroMQ, Redis, among others. How do you choose which is right for you?
Kafka Monitoring With Elasticsearch and Kibana
Monitoring Kafka cluster performance is crucial for diagnosing system issues and preventing future problems. We recommend using Elasticsearch for Kafka monitoring because Elasticsearch is free and highly versatile as a single source of truth throughout any organization.
Top 10 Questions: Elasticsearch Consulting & Managed Services
Dattell’s engineers work one-on-one with companies to design, implement, manage, and improve their Elasticsearch deployments. Get answers to top questions about Elasticsearch consulting and managed services.
Frequently Asked Questions: Apache Kafka
Our team is experienced with implementing and fixing Kafka on a wide-range of systems for an even wider-range of business needs. From our real-world experience with Kafka consulting, we found that there are common questions that many new clients have about the technology.
Here are some quick answers to those questions.
4 Approaches to Data Backup
We outlined the four primary ways for backing up data and their benefits and drawbacks to help you decide on which approach best meets your company’s needs.
Dashboards for Data-Driven Decision Making: As Easy as Driving Your Car
When we are driving, we are routinely making data-driven decisions using the gauges on our dashboard to guide us. Data-driven decision making should be just as easy when it comes to business.
6 Tips for Choosing Between AWS Elasticsearch and a Custom Elasticsearch Solution
We broke down the thought process for choosing between AWS Elasticsearch and a custom Elasticsearch solution here to help you think through what will be right for you and your team.
3 Business Questions to Guide Data Collection, Storage, and Insights
With this guide, you will be able to define the business and technical requirements for your data platform, making the implementation process efficient and successful.
Open Source Tools for Data Architecture, Business Analytics, and Operational Intelligence: Tech’s Little Free Library
When designing a custom data architecture, business analytics, or operational intelligence platform for a client, four benefits of open source tools make them undoubtedly a better option in the vast majority of cases.
Improving Your Company’s Relationship With Data: Centralized Reporting for Data-Driven Decision Making
The implementation of a data handling platform, whether it is a centralized reporting system, Business Analytics, Operational Intelligence, or single point of truth for your company, will improve the way you make data-driven decisions.
Dattell Announces Consulting Partnership With Confluent
Dattell is partnering with the creators of Kafka and Confluent to strengthen our commitment to improve messaging and data infrastructure for companies of all sizes.
Kafka Optimization
Issues with Apache Kafka performance are directly tied to system optimization and utilization. Here, we compiled the best practices for a high volume, clustered, general use case.
When to Consider Physical and Logical Separation With Kafka
When companies scale, their data handling needs change, and systems that worked a year ago are now over-taxed with the increase in message volume. One particular component of the data handling system, the cluster architecture, should be revisited.