CatgirlIntelligenceAgency/code/processes
2024-02-28 11:40:39 +01:00
..
converting-process (docs) Begin un-fucking the docs after refactoring 2024-02-27 21:22:21 +01:00
crawling-process (docs) Begin un-fucking the docs after refactoring 2024-02-27 21:22:21 +01:00
index-constructor-process Clean up documentation and rename domain-links to link-graph 2024-02-28 11:40:39 +01:00
loading-process Clean up documentation and rename domain-links to link-graph 2024-02-28 11:40:39 +01:00
test-data (refac) Remove src/main from all source code paths. 2024-02-23 16:13:40 +01:00
website-adjacencies-calculator Clean up documentation and rename domain-links to link-graph 2024-02-28 11:40:39 +01:00
readme.md Clean up documentation and rename domain-links to link-graph 2024-02-28 11:40:39 +01:00

Processes

1. Crawl Process

The crawling-process fetches website contents, temporarily saving them as WARC files, and then re-converts them into parquet models. Both are described in crawling-model.

The operation is optionally defined by a crawl specification, which can be created in the control GUI.

2. Converting Process

The converting-process reads crawl data from the crawling step and processes them, extracting keywords and metadata and saves them as parquet files described in processed-data.

3. Loading Process

The loading-process reads the processed data.

It has creates an index journal, a link database, and loads domains and domain-links into the MariaDB database.

4. Index Construction Process

The index-construction-process constructs indices from the data generated by the loader.

Overview

Schematically the crawling and loading process looks like this:

    +-----------+  
    |  CRAWLING |  Fetch each URL and 
    |    STEP   |  output to file
    +-----------+
          |
    //========================\\
    ||  Parquet:              || Crawl
    ||  Status, HTML[], ...   || Files
    ||  Status, HTML[], ...   ||
    ||  Status, HTML[], ...   ||
    ||     ...                ||
    \\========================//
          |
    +------------+
    | CONVERTING |  Analyze HTML and 
    |    STEP    |  extract keywords 
    +------------+  features, links, URLs
          |
    //==================\\
    || Parquet:         ||  Processed
    ||  Documents[]     ||  Files
    ||  Domains[]       ||
    ||  Links[]         ||  
    \\==================//
          |
    +------------+ Insert domains into mariadb
    |  LOADING   | Insert URLs, titles in link DB
    |    STEP    | Insert keywords in Index
    +------------+    
          |
    +------------+
    | CONSTRUCT  | Make the data searchable
    |   INDEX    | 
    +------------+