CatgirlIntelligenceAgency/code/libraries
Viktor 8e1abc3f10
(index-reverse) Parallel construction of the reverse indexes. (#52)
* (index-reverse) Parallel construction of the reverse indexes.

* (array) Remove wasteful calculation of numDistinct before merging two sorted arrays.

* (index-reverse)  Force changes to disk on close, reduce logging.

* (index-reverse)  Clean up merging process and add back logging

* (run)  Add a conservative default for INDEX_CONSTRUCTION_PROCESS_OPTS's parallelism as it eats a lot of RAM

* (index-reverse)  Better logging during processing

* (array) 2GB+ compatible write() function

* (array) 2GB+ compatible write() function

* (index-reverse) We are logging like Bolsonaro and I will not have it.

* (reverse-index) Self-diagnostics

* (btree) Fix bug in btree reader to do with large data sizes
2023-10-07 10:00:00 +02:00
..
array (index-reverse) Parallel construction of the reverse indexes. (#52) 2023-10-07 10:00:00 +02:00
big-string (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
blocking-thread-pool (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
braille-block-punch-cards (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
btree (index-reverse) Parallel construction of the reverse indexes. (#52) 2023-10-07 10:00:00 +02:00
easy-lsh (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
guarded-regex (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
language-processing (build) Move unit test configuration to root build.gradle 2023-10-04 12:46:22 +02:00
message-queue (build) Move unit test configuration to root build.gradle 2023-10-04 12:46:22 +02:00
next-prime (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
random-write-funnel (*) Upgrade to JDK21 with preview enabled. 2023-09-24 10:38:59 +02:00
term-frequency-dict (build) Move unit test configuration to root build.gradle 2023-10-04 12:46:22 +02:00
LICENSE.txt The refactoring will continue until morale improves. 2023-03-12 10:50:31 +01:00
readme.md (mq) Refactor mq and actor library and move it to libraries out of common 2023-08-15 10:53:23 +02:00

Libraries

These are libraries that are not strongly coupled to the search engine's business logic. These libraries may not depend on features, services, processes, models, etc.

NOTE: These libraries are co-licensed under the MIT license.

Libraries

  • The array library is for memory mapping large memory-areas, which Java has bad support for. It's designed to be able to easily replaced when Java's Foreign Function And Memory API is released.
  • The btree library offers a static BTree implementation based on the array library.
  • language-processing contains primitives for sentence extraction and POS-tagging.
  • The message-queue library.

Micro libraries

  • easy-lsh is a simple locality-sensitive hash for document deduplication
  • guarded-regex makes predicated regular expressions clearer
  • big-string offers seamless string compression
  • random-write-funnel is a tool for reducing write amplification when constructing large files out of order.
  • next-prime naive brute force prime sieve.
  • braille-block-punch-cards renders bit masks into human-readable dot matrices using the braille block.