Git Product home page Git Product logo

hoidla's Introduction

Introduction

Set of reusable big data real time streaming algorithms. Can be used by Spark Streaming, Storm or any other stream computation framework

Philosophy

  • Plain java API that can be used from any stream computation framework

Blogs

The following blogs of mine are good source of details. These are the only source of detail documentation

Solution

  • Probabilstic frequent count with sketches and count based algorithms
  • Probabilstic cardinality or unique item count
  • Probabilstic set inclusion
  • Different sampling methods
  • Windowing including simple stats
  • Pattern detection
  • Event cluster detection

Getting started

Project's resource directory has various tutorial documents for the use cases described in the blogs.

Help

Please feel free to email me at [email protected]

hoidla's People

Contributors

anujsrc avatar pranab avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hoidla's Issues

Remove target/*.jar from source

Although we ask git to ignore the /target directory through .gitignore, but we still have target/*.jar file checked-in. It results into two issues-

  1. It always results in a conflict when you pull latest changes and only way to resolve is to discard your file.
  2. When you add your changes, you always have to force git to add the file because .gitignore says not to add that. This can be avoided by not checking-in the changes to the JAR file but then you always end up with old JAR file in the repository.

Its better to remove *.jar file from source because it can anyways be built using maven. If you want to package JAR as release, better to use GitHub releases for the same.

Sketches implementation gets stuck with the first 'k' keywords

We are using the sketches implementation. If we start it from scratch, it works well and gets the first 'k' configured trending keywords. After, that it is always stuck with those and the trends do not change. Here is my configuration file-

# Common Properties
debug.on=false

# Topology Properties
spout.threads=1
sketches.bolt.threads=2
aggr.bolt.threads=1
num.workers=1
max.spout.pending=1000
max.task.parallelism=100

# RabbitMQ Spout
epoch.event=100

# Trending Sketches Bolt
id.fld=_FCID
tick.freq.sec=10
sketches.error.lim=0.05
sketches.error.prob.limit=0.02
sketches.most.freq.count=10
sketches.freq.count.lim.percent=10
sketches.expiry.policy=epoch
sketches.max.epoch=2
sketches.epoch.size=60

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.