Your browser sucks, JavaScript disabled! Gunnar's console needs JavaScript and WebAssembly. Git over SSH on port 2222 does not.

nordisk/knut

crates/knut-popviz/mappings/population.yml

# knut's synthetic Swedish population (knut-popload --target iceberg) as a graph: every
# label's table a vertex keyed on `id` (= the table's `_gar_id`), every rel_<REL> table a
# Person -> <label> edge. The SAME graph as population.json and population.sql. mode cdc: a
# permutate round's copy-on-write commits arrive as inserts, updates and deletes.
version: 1
tables:
  - table: Person
    mode: cdc
    pipeline:
      - vertex: { label: Person, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, lon, lat, kommun, ekonomiskt_bistand, round] }
  - table: Address
    mode: cdc
    pipeline:
      - vertex: { label: Address, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, lon, lat, kommun, round] }
  - table: Company
    mode: cdc
    pipeline:
      - vertex: { label: Company, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: Debt
    mode: cdc
    pipeline:
      - vertex: { label: Debt, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: Loan
    mode: cdc
    pipeline:
      - vertex: { label: Loan, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: TaxRecord
    mode: cdc
    pipeline:
      - vertex: { label: TaxRecord, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: KfmCase
    mode: cdc
    pipeline:
      - vertex: { label: KfmCase, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: PoliceRecord
    mode: cdc
    pipeline:
      - vertex: { label: PoliceRecord, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: FkBenefit
    mode: cdc
    pipeline:
      - vertex: { label: FkBenefit, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: AfRecord
    mode: cdc
    pipeline:
      - vertex: { label: AfRecord, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: Vehicle
    mode: cdc
    pipeline:
      - vertex: { label: Vehicle, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, round] }
  - table: Property
    mode: cdc
    pipeline:
      - vertex: { label: Property, id_column: _gar_id, rename: { _gar_id: id }, properties: [idx, name, lon, lat, kommun, round] }
  - table: rel_LIVES_AT
    mode: cdc
    pipeline:
      - edge:
          type: LIVES_AT
          src: { label: Person, column: src, id_column: id }
          dst: { label: Address, column: dst, id_column: id }
          properties: [round]
  - table: rel_OWNS
    mode: cdc
    pipeline:
      - edge:
          type: OWNS
          src: { label: Person, column: src, id_column: id }
          dst: { label: Company, column: dst, id_column: id }
          properties: [round]
  - table: rel_OWES
    mode: cdc
    pipeline:
      - edge:
          type: OWES
          src: { label: Person, column: src, id_column: id }
          dst: { label: Debt, column: dst, id_column: id }
          properties: [round]
  - table: rel_HOLDS
    mode: cdc
    pipeline:
      - edge:
          type: HOLDS
          src: { label: Person, column: src, id_column: id }
          dst: { label: Loan, column: dst, id_column: id }
          properties: [round]
  - table: rel_FILED
    mode: cdc
    pipeline:
      - edge:
          type: FILED
          src: { label: Person, column: src, id_column: id }
          dst: { label: TaxRecord, column: dst, id_column: id }
          properties: [round]
  - table: rel_SUBJECT_OF
    mode: cdc
    pipeline:
      - edge:
          type: SUBJECT_OF
          src: { label: Person, column: src, id_column: id }
          dst: { label: KfmCase, column: dst, id_column: id }
          properties: [round]
  - table: rel_FLAGGED_BY
    mode: cdc
    pipeline:
      - edge:
          type: FLAGGED_BY
          src: { label: Person, column: src, id_column: id }
          dst: { label: PoliceRecord, column: dst, id_column: id }
          properties: [round]
  - table: rel_RECEIVES
    mode: cdc
    pipeline:
      - edge:
          type: RECEIVES
          src: { label: Person, column: src, id_column: id }
          dst: { label: FkBenefit, column: dst, id_column: id }
          properties: [round]
  - table: rel_REGISTERED_AT
    mode: cdc
    pipeline:
      - edge:
          type: REGISTERED_AT
          src: { label: Person, column: src, id_column: id }
          dst: { label: AfRecord, column: dst, id_column: id }
          properties: [round]
  - table: rel_DRIVES
    mode: cdc
    pipeline:
      - edge:
          type: DRIVES
          src: { label: Person, column: src, id_column: id }
          dst: { label: Vehicle, column: dst, id_column: id }
          properties: [round]
  - table: rel_OWNS_PROPERTY
    mode: cdc
    pipeline:
      - edge:
          type: OWNS_PROPERTY
          src: { label: Person, column: src, id_column: id }
          dst: { label: Property, column: dst, id_column: id }
          properties: [round]