Topik Kafka

Pengantar Apache Kafka

Mike Metzger

Data Engineering Consultant

Apa itu topik?

  • Topik adalah pengelompokan event secara logis
    • Mirip tabel pada basis data relasional
    • Log event
    • Pesan bersifat immutable
    • Pesan dalam topik dapat dibaca atau ditulis, tetapi tidak diubah
    • Pesan dapat dihapus berdasarkan umur

Ilustrasi topik Kafka.png

Pengantar Apache Kafka

Membuat topik

  • Ada beberapa cara membuat topik
  • Kita akan gunakan skrip bin/kafka-topics.sh
    bin/kafka-topics.sh 
        --bootstrap-server <server> 
        --topic <topicname>
        --create
    
  • Contoh
    $ bin/kafka-topics.sh --bootstrap-server localhost:9092 \
    --topic orders --create
    
Created topic orders
Pengantar Apache Kafka

Variasi lainnya

  • Argumen opsional untuk bin/kafka-topics.sh --create

    • --replication-factor <x>
      • Menentukan replication factor topik
    • --partitions <x>
      • Menetapkan jumlah partisi secara manual
  • Contoh

    $ bin\kafka-topics.sh --bootstrap-server localhost:9092 \
    --topic orders --create --replication-factor 3 \
    --partitions 3
    
Created topic orders
Pengantar Apache Kafka

--describe

  • bin/kafka-topics.sh --bootstrap-server <server> --topic <topicname> --describe

    • Melihat detail konfigurasi topik
  • Contoh

    $ bin/kafka-topics.sh --bootstrap-server localhost:9092 \
       --topic orders --describe
    
Topic: orders-new TopicId: <topicid> PartitionCount: 3 ReplicationFactor: 1    
  Configs:
    Topic: orders-new    Partition: 0    Leader: 0    Replicas: 0    Isr: 0
    Topic: orders-new    Partition: 1    Leader: 0    Replicas: 0    Isr: 0
    Topic: orders-new    Partition: 2    Leader: 0    Replicas: 0    Isr: 0
Pengantar Apache Kafka

Menghapus topik

  • bin/kafka-topics.sh --bootstrap-server <server> --topic <topicname> --delete
    • Menghapus topik dari server Kafka
    • Menghapus topik juga menghapus semua pesan di dalamnya
  • Contoh
    $ bin/kafka-topics.sh --bootstrap-server localhost:9092
      --topic orders --delete
    
$
Pengantar Apache Kafka

Ayo berlatih!

Pengantar Apache Kafka

Preparing Video For Download...