All Projects → cliqz-oss → Keyvi

cliqz-oss / Keyvi

Licence: apache-2.0
Keyvi - a key value index that powers Cliqz search engine. It is an in-memory FST-based data structure highly optimized for size and lookup performance.

Programming Languages

python
139335 projects - #7 most used programming language
cpp
1120 projects

Projects that are alternatives of or similar to Keyvi

Courses
Quiz & Assignment of Coursera
Stars: ✭ 454 (+165.5%)
Mutual labels:  data-structures, big-data
Go
Algorithms Implemented in GoLang
Stars: ✭ 7,385 (+4218.71%)
Mutual labels:  search, data-structures
Sparkler
Spark-Crawler: Apache Nutch-like crawler that runs on Apache Spark.
Stars: ✭ 362 (+111.7%)
Mutual labels:  search, big-data
Dsa.js Data Structures Algorithms Javascript
🥞Data Structures and Algorithms explained and implemented in JavaScript + eBook
Stars: ✭ 6,251 (+3555.56%)
Mutual labels:  search, data-structures
Java
All Algorithms implemented in Java
Stars: ✭ 42,893 (+24983.63%)
Mutual labels:  search, data-structures
C Plus Plus
Collection of various algorithms in mathematics, machine learning, computer science and physics implemented in C++ for educational purposes.
Stars: ✭ 17,151 (+9929.82%)
Mutual labels:  search, data-structures
Pgm Index
🏅State-of-the-art learned data structure that enables fast lookup, predecessor, range searches and updates in arrays of billions of items using orders of magnitude less space than traditional indexes
Stars: ✭ 499 (+191.81%)
Mutual labels:  data-structures, big-data
C
Collection of various algorithms in mathematics, machine learning, computer science, physics, etc implemented in C for educational purposes.
Stars: ✭ 11,897 (+6857.31%)
Mutual labels:  search, data-structures
Javascript
A repository for All algorithms implemented in Javascript (for educational purposes only)
Stars: ✭ 16,117 (+9325.15%)
Mutual labels:  search, data-structures
Trienet
.NET Implementations of Trie Data Structures for Substring Search, Auto-completion and Intelli-sense. Includes: patricia trie, suffix trie and a trie implementation using Ukkonen's algorithm.
Stars: ✭ 122 (-28.65%)
Mutual labels:  search, data-structures
Keyvi
Keyvi - the key value index. It is an in-memory FST-based data structure highly optimized for size and lookup performance.
Stars: ✭ 161 (-5.85%)
Mutual labels:  search, big-data
Astpath
A command-line search utility for Python ASTs using XPath syntax.
Stars: ✭ 167 (-2.34%)
Mutual labels:  search
Query Translator
Query Translator is a search query translator with AST representation
Stars: ✭ 165 (-3.51%)
Mutual labels:  search
Flask Msearch
Full text search for flask.
Stars: ✭ 164 (-4.09%)
Mutual labels:  search
Algoliasearch Magento
Algolia Search integration for Magento 1 - compatible with versions from 1.6.x to 1.9.x
Stars: ✭ 163 (-4.68%)
Mutual labels:  search
Tachyons Tldr
quick lookup for tachyon classes, scales and colour palette
Stars: ✭ 170 (-0.58%)
Mutual labels:  search
Geopyspark
GeoTrellis for PySpark
Stars: ✭ 167 (-2.34%)
Mutual labels:  big-data
Algorithm
The repository algorithms implemented on the Go
Stars: ✭ 163 (-4.68%)
Mutual labels:  search
Lru Cache
💫 A feature complete LRU cache implementation in C++
Stars: ✭ 162 (-5.26%)
Mutual labels:  data-structures
Vue Materialize Datatable
A fancy Materialize CSS datatable VueJS component.
Stars: ✭ 162 (-5.26%)
Mutual labels:  data-structures

Keyvi is developed and maintained by Cliqz Engineering Team and Hendrik Muhs. Cliqz is a provider of innovative, privacy-focused browser technologies with integrated quick-search functionality and anti-tracking.

Travis C++ PythonVersions PythonImpl PythonFormat PyPIVersion Coveralls

DEPRECATED

Hey there, fellow Keyvi lovers! This is to inform you that Keyvi has found a new home, and will continue to be developed under the fork at https://github.com/KeyviDev/keyvi. Please go there to get the latest and greatest Keyvi, packed with new, exciting features and bugfixes.

This repo is kept for historical reasons, and will not be actively maintained.

Keyvi

Keyvi - the short form for "Key value index" - defines a special subtype of the popular key value store (KVS) technologies. As you can imagine from the name, keyvi is an immutable key value store, therefore an index not a store. Keyvi's strengths: high compression ratio and extreme scalability. So if you need online read/writes keyvi is not for you, however, if your use case is mostly reads and infrequent writes you might be interested in checking keyvi out.

Introduction

Install

Quick

Precompiled binary wheels are available for OS X and Linux on PyPi. To install use:

pip install pykeyvi

From Source

The core part is a C++ header-only library, but the TPIE 3rdparty library needs to be compiled once. The commandline tools are also part of the C++ code. For instructions check the Readme file.

For the python extension pykeyvi check the Readme file in the pykeyvi subfolder.

Usage

Internals

If you like to go deep down in the basics, keyvi is inspired by the following 2 papers:

Licence and 3rdparty dependencies

keyvi is licenced under apache license 2.0, see licence for details.

In addition keyvi uses 3rdparty libraries which define their own licence. Please check their respective licence. The 3rdparty libraries can be found at keyvi/3rdparty.

Contributing

  • Bug reports, feature requests and general question can be added as an Issue.

  • PRs are welcome.

  • Questions? Concerns? Feel free to contact us.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].