[Epic] Create entity-intializer project for the 25.01 release

The entity-initializer is a new project that inserts the entities into the exposure database. It brings together many different sources (GHSL, OSM, EUBucco, Microsoft, Google and various 3D building datasets) and conflates them into the entities table with attributes and a taxonomy definition.

rule-lib

rabotnik-rules

exposure-lib

entity-initializer

  • Create a new project entity-initializer, prepare the basic repository structure for entity-intializer (!1 (merged))).
  • Create the __init__ function for the class EntityInitializer and add its main arguments (#4 (closed)).
  • Create function to insert reference tiles, insert_baseline_tiles(). This is the first process within the package, and requires several implementations of exposure-lib functions mentioned within exposure-lib #167 (#2 (closed)). @pdlmora
  • Create functions worker_init(), worker() and `worker_exit() for multiprocessing (#9 (closed)).
  • Create function multiprocess_insert_buildings() (#10 (closed)).
  • Create function to insert_buildings() (#11 (closed)
  • Create argparse CLI (#17 (closed)).
  • Create a beta version (#15 (closed))

database-exposure

\rfc @gislars @ds @chengzhi @pdlmora

Edited by Danijel Schorlemmer